From bb6997c45e24f4391ed89be08b258aef1f2d872f Mon Sep 17 00:00:00 2001 From: Cory Benfield Date: Mon, 21 Mar 2016 09:31:27 +0000 Subject: Add __delattr__ to _ModuleWithDeprecations. --- src/cryptography/utils.py | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src') diff --git a/src/cryptography/utils.py b/src/cryptography/utils.py index 53795732..da7df76e 100644 --- a/src/cryptography/utils.py +++ b/src/cryptography/utils.py @@ -119,6 +119,9 @@ class _ModuleWithDeprecations(object): def __setattr__(self, attr, value): setattr(self._module, attr, value) + def __delattr__(self, attr): + delattr(self._module, attr) + def __dir__(self): return ["_module"] + dir(self._module) -- cgit v1.2.3 From 2d53db112cec047a7bf38896ddb32e71f60de2eb Mon Sep 17 00:00:00 2001 From: Cory Benfield Date: Mon, 21 Mar 2016 11:38:04 +0000 Subject: Warn when deleting deprecated attributes. --- src/cryptography/utils.py | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src') diff --git a/src/cryptography/utils.py b/src/cryptography/utils.py index da7df76e..64a1c785 100644 --- a/src/cryptography/utils.py +++ b/src/cryptography/utils.py @@ -120,6 +120,10 @@ class _ModuleWithDeprecations(object): setattr(self._module, attr, value) def __delattr__(self, attr): + obj = getattr(self._module, attr) + if isinstance(obj, _DeprecatedValue): + warnings.warn(obj.message, obj.warning_class, stacklevel=2) + delattr(self._module, attr) def __dir__(self): -- cgit v1.2.3