mirror of https://github.com/python/cpython
bpo-33549: Remove shim and deprecation warning to access DocumentLS.async. (GH-6924)
`obj.async` is now a syntax error, so the warning/shim is quasi-unnecessary.
This commit is contained in:
parent
d5f1442608
commit
f90f5d5c1d
|
@ -60,17 +60,7 @@ class MinidomTest(unittest.TestCase):
|
|||
def testDocumentAsyncAttr(self):
|
||||
doc = Document()
|
||||
self.assertFalse(doc.async_)
|
||||
with self.assertWarns(DeprecationWarning):
|
||||
self.assertFalse(getattr(doc, 'async', True))
|
||||
with self.assertWarns(DeprecationWarning):
|
||||
setattr(doc, 'async', True)
|
||||
with self.assertWarns(DeprecationWarning):
|
||||
self.assertTrue(getattr(doc, 'async', False))
|
||||
self.assertTrue(doc.async_)
|
||||
|
||||
self.assertFalse(Document.async_)
|
||||
with self.assertWarns(DeprecationWarning):
|
||||
self.assertFalse(getattr(Document, 'async', True))
|
||||
|
||||
def testParseFromBinaryFile(self):
|
||||
with open(tstfile, 'rb') as file:
|
||||
|
|
|
@ -332,29 +332,10 @@ class DOMBuilderFilter:
|
|||
del NodeFilter
|
||||
|
||||
|
||||
class _AsyncDeprecatedProperty:
|
||||
def warn(self, cls):
|
||||
clsname = cls.__name__
|
||||
warnings.warn(
|
||||
"{cls}.async is deprecated; use {cls}.async_".format(cls=clsname),
|
||||
DeprecationWarning)
|
||||
|
||||
def __get__(self, instance, cls):
|
||||
self.warn(cls)
|
||||
if instance is not None:
|
||||
return instance.async_
|
||||
return False
|
||||
|
||||
def __set__(self, instance, value):
|
||||
self.warn(type(instance))
|
||||
setattr(instance, 'async_', value)
|
||||
|
||||
|
||||
class DocumentLS:
|
||||
"""Mixin to create documents that conform to the load/save spec."""
|
||||
|
||||
async_ = False
|
||||
locals()['async'] = _AsyncDeprecatedProperty() # Avoid DeprecationWarning
|
||||
|
||||
def _get_async(self):
|
||||
return False
|
||||
|
@ -384,9 +365,6 @@ class DocumentLS:
|
|||
return snode.toxml()
|
||||
|
||||
|
||||
del _AsyncDeprecatedProperty
|
||||
|
||||
|
||||
class DOMImplementationLS:
|
||||
MODE_SYNCHRONOUS = 1
|
||||
MODE_ASYNCHRONOUS = 2
|
||||
|
|
Loading…
Reference in New Issue