diff options
author | Eric Wieser <wieser.eric@gmail.com> | 2020-06-10 09:16:22 +0100 |
---|---|---|
committer | Eric Wieser <wieser.eric@gmail.com> | 2020-06-12 15:04:16 +0100 |
commit | 70f4526b16b1f5815c7a2d46a2b10f1961166463 (patch) | |
tree | d701b6cf02453b9e71c440209b8a8432faeb556b /numpy/tests/test_public_api.py | |
parent | 4be513d47212a28c000107d7c532c0a5a4312953 (diff) | |
download | numpy-70f4526b16b1f5815c7a2d46a2b10f1961166463.tar.gz |
DEP: Deprecate aliases of builtin types in python 3.7+
This:
* Makes accessing these attributes emit a deprecation warning
* Removes them from `dir(numpy)`, so as not to emit warnings for user of `inspect.getmembers`
These aliases are a continual source of confusion for beginners, and are still often used by accident by experts.
Diffstat (limited to 'numpy/tests/test_public_api.py')
-rw-r--r-- | numpy/tests/test_public_api.py | 28 |
1 files changed, 16 insertions, 12 deletions
diff --git a/numpy/tests/test_public_api.py b/numpy/tests/test_public_api.py index 7ce74bc43..9fa61951a 100644 --- a/numpy/tests/test_public_api.py +++ b/numpy/tests/test_public_api.py @@ -54,18 +54,22 @@ def test_numpy_namespace(): 'show_config': 'numpy.__config__.show', 'who': 'numpy.lib.utils.who', } - # These built-in types are re-exported by numpy. - builtins = { - 'bool': 'builtins.bool', - 'complex': 'builtins.complex', - 'float': 'builtins.float', - 'int': 'builtins.int', - 'long': 'builtins.int', - 'object': 'builtins.object', - 'str': 'builtins.str', - 'unicode': 'builtins.str', - } - whitelist = dict(undocumented, **builtins) + if sys.version_info < (3, 7): + # These built-in types are re-exported by numpy. + builtins = { + 'bool': 'builtins.bool', + 'complex': 'builtins.complex', + 'float': 'builtins.float', + 'int': 'builtins.int', + 'long': 'builtins.int', + 'object': 'builtins.object', + 'str': 'builtins.str', + 'unicode': 'builtins.str', + } + whitelist = dict(undocumented, **builtins) + else: + # after 3.7, we override dir to not show these members + whitelist = undocumented bad_results = check_dir(np) # pytest gives better error messages with the builtin assert than with # assert_equal |