diff options
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/plistlib.py | 71 | ||||
-rw-r--r-- | Lib/test/test_plistlib.py | 15 |
2 files changed, 10 insertions, 76 deletions
diff --git a/Lib/plistlib.py b/Lib/plistlib.py index 09be5fd..8262fb0 100644 --- a/Lib/plistlib.py +++ b/Lib/plistlib.py @@ -47,7 +47,7 @@ Parse Plist example: """ __all__ = [ "readPlist", "writePlist", "readPlistFromBytes", "writePlistToBytes", - "Plist", "Data", "Dict", "InvalidFileException", "FMT_XML", "FMT_BINARY", + "Data", "InvalidFileException", "FMT_XML", "FMT_BINARY", "load", "dump", "loads", "dumps" ] @@ -76,44 +76,6 @@ globals().update(PlistFormat.__members__) # -class _InternalDict(dict): - - # This class is needed while Dict is scheduled for deprecation: - # we only need to warn when a *user* instantiates Dict or when - # the "attribute notation for dict keys" is used. - __slots__ = () - - def __getattr__(self, attr): - try: - value = self[attr] - except KeyError: - raise AttributeError(attr) - warn("Attribute access from plist dicts is deprecated, use d[key] " - "notation instead", DeprecationWarning, 2) - return value - - def __setattr__(self, attr, value): - warn("Attribute access from plist dicts is deprecated, use d[key] " - "notation instead", DeprecationWarning, 2) - self[attr] = value - - def __delattr__(self, attr): - try: - del self[attr] - except KeyError: - raise AttributeError(attr) - warn("Attribute access from plist dicts is deprecated, use d[key] " - "notation instead", DeprecationWarning, 2) - - -class Dict(_InternalDict): - - def __init__(self, **kwargs): - warn("The plistlib.Dict class is deprecated, use builtin dict instead", - DeprecationWarning, 2) - super().__init__(**kwargs) - - @contextlib.contextmanager def _maybe_open(pathOrFile, mode): if isinstance(pathOrFile, str): @@ -124,31 +86,6 @@ def _maybe_open(pathOrFile, mode): yield pathOrFile -class Plist(_InternalDict): - """This class has been deprecated. Use dump() and load() - functions instead, together with regular dict objects. - """ - - def __init__(self, **kwargs): - warn("The Plist class is deprecated, use the load() and " - "dump() functions instead", DeprecationWarning, 2) - super().__init__(**kwargs) - - @classmethod - def fromFile(cls, pathOrFile): - """Deprecated. Use the load() function instead.""" - with _maybe_open(pathOrFile, 'rb') as fp: - value = load(fp) - plist = cls() - plist.update(value) - return plist - - def write(self, pathOrFile): - """Deprecated. Use the dump() function instead.""" - with _maybe_open(pathOrFile, 'wb') as fp: - dump(self, fp) - - def readPlist(pathOrFile): """ Read a .plist from a path or file. pathOrFile should either @@ -160,8 +97,7 @@ def readPlist(pathOrFile): DeprecationWarning, 2) with _maybe_open(pathOrFile, 'rb') as fp: - return load(fp, fmt=None, use_builtin_types=False, - dict_type=_InternalDict) + return load(fp, fmt=None, use_builtin_types=False) def writePlist(value, pathOrFile): """ @@ -184,8 +120,7 @@ def readPlistFromBytes(data): """ warn("The readPlistFromBytes function is deprecated, use loads() instead", DeprecationWarning, 2) - return load(BytesIO(data), fmt=None, use_builtin_types=False, - dict_type=_InternalDict) + return load(BytesIO(data), fmt=None, use_builtin_types=False) def writePlistToBytes(value): diff --git a/Lib/test/test_plistlib.py b/Lib/test/test_plistlib.py index c77a6bf..58b885f 100644 --- a/Lib/test/test_plistlib.py +++ b/Lib/test/test_plistlib.py @@ -173,7 +173,6 @@ class TestPlistlib(unittest.TestCase): pl = self._create() data = plistlib.dumps(pl) pl2 = plistlib.loads(data) - self.assertNotIsInstance(pl, plistlib._InternalDict) self.assertEqual(dict(pl), dict(pl2)) data2 = plistlib.dumps(pl2) self.assertEqual(data, data2) @@ -454,14 +453,14 @@ class TestPlistlibDeprecated(unittest.TestCase): 'data': b'buffer', } } - pl_out = plistlib._InternalDict({ + pl_out = { 'key': 42, - 'sub': plistlib._InternalDict({ + 'sub': { 'key': 9, 'alt': 'value', 'data': plistlib.Data(b'buffer'), - }) - }) + } + } self.addCleanup(support.unlink, support.TESTFN) with self.assertWarns(DeprecationWarning): @@ -499,10 +498,10 @@ class TestPlistlibDeprecated(unittest.TestCase): with self.assertWarns(DeprecationWarning): pl2 = plistlib.readPlistFromBytes(data) - self.assertIsInstance(pl2, plistlib._InternalDict) - self.assertEqual(pl2, plistlib._InternalDict( + self.assertIsInstance(pl2, dict) + self.assertEqual(pl2, dict( key=42, - sub=plistlib._InternalDict( + sub=dict( key=9, alt='value', data=plistlib.Data(b'buffer'), |