-
-
Notifications
You must be signed in to change notification settings - Fork 30.4k
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
Update test_crashers #108297
Comments
* Rename Lib/test/crashers/ to Lib/test/test_crashers/. * Move Lib/test/test_crashers.py to Lib/test/test_crashers/__init__.py. * test_crashers is no longer skipped and makes sure that scripts do crash, and no simply fail with a non-zero exit code. * Update bogus_code_obj.py to use CodeType.replace(). * Remove Lib/test/crashers/ scripts which no longer crash: * recursive_call.py: fixed by pythongh-89419 * mutation_inside_cyclegc.py: fixed by pythongh-97922 * trace_at_recursion_limit.py: fixed by Python 3.7
* Rename Lib/test/crashers/ to Lib/test/test_crashers/. * Move Lib/test/test_crashers.py to Lib/test/test_crashers/__init__.py. * test_crashers is no longer skipped and makes sure that scripts do crash, and no simply fail with a non-zero exit code. * Update bogus_code_obj.py to use CodeType.replace(). * Scripts crashing Python now uses SuppressCrashReport of test.support to not create coredump files. * Remove Lib/test/crashers/ scripts which no longer crash: * recursive_call.py: fixed by pythongh-89419 * mutation_inside_cyclegc.py: fixed by pythongh-97922 * trace_at_recursion_limit.py: fixed by Python 3.7
Victor, do you remember we measured the recursion limit for different kind of recursion, like via custom |
It was in 2017, search for "Stack consumption" at https://vstinner.github.io/contrib-cpython-2017q1.html
I added On the main branch with a debug build (pydebug with
On the main branch with a release build (
I'm not sure where 109,060 number comes from. |
* Rename Lib/test/crashers/ to Lib/test/test_crashers/. * Move Lib/test/test_crashers.py to Lib/test/test_crashers/__init__.py. * test_crashers is no longer skipped and makes sure that scripts do crash, and no simply fail with a non-zero exit code. * Update bogus_code_obj.py to use CodeType.replace(). * Scripts crashing Python now uses SuppressCrashReport of test.support to not create coredump files. * Remove Lib/test/crashers/ scripts which no longer crash: * recursive_call.py: fixed by pythongh-89419 * mutation_inside_cyclegc.py: fixed by pythongh-97922 * trace_at_recursion_limit.py: fixed by Python 3.7
Thank you Victor. Other issues:
where there are more examples of stack overflowing code. I think that they could be included instead of the removed We can also add separate test which runs maximally deep recursion (with the limit depending on platform) to ensure that there is no regression in new versions. |
The test was skipped since 2011, commit 89ba56d. Crasher scripts do not crash on a reliable way, they rely on undefined behaviors, like state of the stack memory, and so may or may not crash.
The test was skipped in 2011 by commit 89ba56d. Scripts in Lib/test/crashers/ do not crash on a reliable way. They rely on undefined behaviors, like state of the stack memory, and so may or may not crash. It is not worth it to make sure that they crash in a continious integration, they should be run manually time to time instead.
The test was skipped in 2011 by commit 89ba56d. Scripts in Lib/test/crashers/ do not crash on a reliable way. They rely on undefined behaviors, like state of the stack memory, and so may or may not crash. It is not worth it to make sure that they crash in a continious integration, they should be run manually time to time instead.
In this issue, I looked at crasher scripts and some of them no longer crash. They should be removed. I will try to come up with a change to remove them and maybe update the others based on the closed PR #108299. |
Sadly, I failed track of this issue. While it may be nice to cleanup Lib/test/crashers/, it became a lower priority for me since I removed test_crashers, instead of running it. I close the issue. If someone is motivated to cleanup this directory, go ahead and propose a new issue and/or PR. |
Update Lib/test/crashers/README for test_crashers removal
…thonGH-121475) Update Lib/test/crashers/README for test_crashers removal (cherry picked from commit 59be79a) Co-authored-by: Alyssa Coghlan <[email protected]>
…121476) Update Lib/test/crashers/README for test_crashers removal (cherry picked from commit 59be79a) Co-authored-by: Alyssa Coghlan <[email protected]>
…thon#121475) Update Lib/test/crashers/README for test_crashers removal
…thon#121475) Update Lib/test/crashers/README for test_crashers removal
Feature or enhancement
Has this already been discussed elsewhere?
No response given
Links to previous discussion of this feature:
No response
Proposal:
test_crashers is currently skipped and some scripts in Lib/test/crashers/ no longer crash.
Linked PRs
The text was updated successfully, but these errors were encountered: