-
-
Notifications
You must be signed in to change notification settings - Fork 32.1k
Not all tests are installed. #115421
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
cc @sobolevn: oh, this bug is bad :-( |
I somehow dodged this bullet this time: none of the directories are mine. I will send a PR with the proposed check that we can run in CI. |
Update the list of installed test subdirectories with all newly added subdirectories of Lib/test, so that the tests in those directories are properly installed.
I've fixed main by updating the list so they're included in the upcoming 3.13.0a4 release. For main we should try and figure out how to avoid the explicit list of test subdirectories to install, so I'll leave the bug open for that. For 3.12-3.10, though, I'm not sure it's worth fixing (and it changes what's getting installed, which is uncomfortable in a patch release), and I don't really want to try to do any invasive changes to the Makefile to avoid listing the directories in them. |
…ython#115422) Update the list of installed test subdirectories with all newly added subdirectories of Lib/test, so that the tests in those directories are properly installed.
Now it's down to @pablogsal to decide if it's worth backporting to 3.11 :) I believe the missing directories in 3.11, and thus tests that aren't being run from installed Python (like during the release process) are test_concurrent_futures and test_multiprocessing_*. |
…H-115813) (#116462) * gh-115421: Test that our Makefile has all needed test folders (GH-115813) * Update the list of installed test subdirectories --------- Co-authored-by: Nikita Sobolev <[email protected]>
I am happy backporting it to 3.11 👍 |
…hem (pythonGH-115813) (pythonGH-116462) * pythongh-115421: Test that our Makefile has all needed test folders (pythonGH-115813) * Update the list of installed test subdirectories --------- Co-authored-by: Nikita Sobolev <[email protected]>
…H-115813) This backports: - GH-115813 - GH-115422 Unlike on the main branch, new directories are added to the end, so they're a bit easier to patch out if a redistributor needs to do so. On main & 3.12, there's a special case for `idlelib/idle_test`; on 3.11 TESTSUBDIRS has several more entries that are not in `test/`. This backport ignores all of them (including idlelib). (The alternative would be list them, as additions to TEST_HOME_DIR. But that's probably too invasive; people might split stdlib up in surprising ways.) Co-authored-by: Nikita Sobolev <[email protected]>
Thanks to everyone involved :) |
Uh oh!
There was an error while loading. Please reload this page.
Bug report
Bug description:
Not all of the tests in Lib/test are being installed, which means some tests are (silently) not run from an installed python:
From a quick look it seems we're missing test_concurrent_futures, test_interpreters, test_multiprocessing_fork, test_multiprocessing_forkserver and test_multiprocessing_spawn. This is a problem in 3.12 and earlier as well.
Besides tests it's also missing the test.support.interpreters package:
... which has not caused issues because its main user, test/test_subinterpreters, isn't being installed, and the other uses of it in the testsuite import ignore the import error if it's not available.
This is a problem back to at least 3.10 (which is missing test_capi as well as various testdata directories).
We should either make the Makefile install all of the test subdirectories automatically, or have a CI check to make sure all subdirectories are listed in TESTSUBDIRS in the Makefile.
CPython versions tested on:
3.10, 3.11, 3.12, CPython main branch
Operating systems tested on:
No response
Linked PRs
Makefile
bymakesetup
#115511The text was updated successfully, but these errors were encountered: