Skip to content

Commit

Permalink
Merge pull request #4522 from pypa/feature/graceful-drop-tests
Browse files Browse the repository at this point in the history
Restore the tests command and deprecate access to the module.
  • Loading branch information
jaraco authored Jul 29, 2024
2 parents 5e1b3c4 + c437aaa commit 59aff44
Show file tree
Hide file tree
Showing 3 changed files with 45 additions and 0 deletions.
1 change: 1 addition & 0 deletions newsfragments/4520.feature.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Restore the tests command and deprecate access to the module. (#4519)
42 changes: 42 additions & 0 deletions setuptools/command/test.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
from setuptools import Command
from setuptools.warnings import SetuptoolsDeprecationWarning


def __getattr__(name):
if name == 'test':
SetuptoolsDeprecationWarning.emit(
"The test command is disabled and references to it are deprecated.",
"Please remove any references to `setuptools.command.test` in all "
"supported versions of the affected package.",
due_date=(2024, 11, 15),
stacklevel=2,
)
return _test
raise AttributeError(name)


class _test(Command):
"""
Stub to warn when test command is referenced or used.
"""

description = "stub for old test command (do not use)"

user_options = [
('test-module=', 'm', "Run 'test_suite' in specified module"),
(
'test-suite=',
's',
"Run single test, case or suite (e.g. 'module.test_suite')",
),
('test-runner=', 'r', "Test runner to use"),
]

def initialize_options(self):
pass

def finalize_options(self):
pass

def run(self):
raise RuntimeError("Support for the test command was removed in Setuptools 72")
2 changes: 2 additions & 0 deletions setuptools/tests/integration/test_pip_install_sdist.py
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,8 @@
("pyyaml", LATEST), # cython + custom build_ext + custom distclass
("charset-normalizer", LATEST), # uses mypyc, used by aiohttp
("protobuf", LATEST),
("requests", LATEST),
("celery", LATEST),
# When adding packages to this list, make sure they expose a `__version__`
# attribute, or modify the tests below
]
Expand Down

0 comments on commit 59aff44

Please sign in to comment.