mirror of
https://github.com/python/cpython.git
synced 2026-01-06 07:22:09 +00:00
GH-92897: schedule the check_home deprecation to 3.15 (#129102)
This commit is contained in:
parent
5ed5572cac
commit
e52ab564da
4 changed files with 33 additions and 5 deletions
|
|
@ -51,6 +51,11 @@ Pending removal in Python 3.15
|
|||
This function is only useful for Jython support, has a confusing API,
|
||||
and is largely untested.
|
||||
|
||||
* :mod:`sysconfig`:
|
||||
|
||||
* The ``check_home`` argument of :func:`sysconfig.is_python_build` has been
|
||||
deprecated since Python 3.12.
|
||||
|
||||
* :mod:`threading`:
|
||||
|
||||
* :func:`~threading.RLock` will take no arguments in Python 3.15.
|
||||
|
|
|
|||
|
|
@ -220,8 +220,15 @@ def _safe_realpath(path):
|
|||
def is_python_build(check_home=None):
|
||||
if check_home is not None:
|
||||
import warnings
|
||||
warnings.warn("check_home argument is deprecated and ignored.",
|
||||
DeprecationWarning, stacklevel=2)
|
||||
warnings.warn(
|
||||
(
|
||||
'The check_home argument of sysconfig.is_python_build is '
|
||||
'deprecated and its value is ignored. '
|
||||
'It will be removed in Python 3.15.'
|
||||
),
|
||||
DeprecationWarning,
|
||||
stacklevel=2,
|
||||
)
|
||||
for fn in ("Setup", "Setup.local"):
|
||||
if os.path.isfile(os.path.join(_PROJECT_BASE, "Modules", fn)):
|
||||
return True
|
||||
|
|
|
|||
|
|
@ -712,9 +712,9 @@ def test_parse_makefile(self):
|
|||
|
||||
|
||||
class DeprecationTests(unittest.TestCase):
|
||||
def deprecated(self, removal_version, deprecation_msg=None, attribute_msg=None):
|
||||
def deprecated(self, removal_version, deprecation_msg=None, error=Exception, error_msg=None):
|
||||
if sys.version_info >= removal_version:
|
||||
return self.assertRaises(AttributeError, msg=attribute_msg)
|
||||
return self.assertRaises(error, msg=error_msg)
|
||||
else:
|
||||
return self.assertWarns(DeprecationWarning, msg=deprecation_msg)
|
||||
|
||||
|
|
@ -725,10 +725,24 @@ def test_expand_makefile_vars(self):
|
|||
'sysconfig.expand_makefile_vars is deprecated and will be removed in '
|
||||
'Python 3.16. Use sysconfig.get_paths(vars=...) instead.',
|
||||
),
|
||||
attribute_msg="module 'sysconfig' has no attribute 'expand_makefile_vars'",
|
||||
error=AttributeError,
|
||||
error_msg="module 'sysconfig' has no attribute 'expand_makefile_vars'",
|
||||
):
|
||||
sysconfig.expand_makefile_vars('', {})
|
||||
|
||||
def test_is_python_build_check_home(self):
|
||||
with self.deprecated(
|
||||
removal_version=(3, 15),
|
||||
deprecation_msg=(
|
||||
'The check_home argument of sysconfig.is_python_build is '
|
||||
'deprecated and its value is ignored. '
|
||||
'It will be removed in Python 3.15.'
|
||||
),
|
||||
error=TypeError,
|
||||
error_msg="is_python_build() takes 0 positional arguments but 1 were given",
|
||||
):
|
||||
sysconfig.is_python_build('foo')
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
|
|
|
|||
|
|
@ -0,0 +1,2 @@
|
|||
Scheduled the deprecation of the ``check_home`` argument of
|
||||
:func:`sysconfig.is_python_build` to Python 3.15.
|
||||
Loading…
Add table
Add a link
Reference in a new issue