[3.14] gh-135427: Fix DeprecationWarning for os.fork when run in threads with -Werror (GH-136796)#140191
Conversation
…ds with -Werror (pythonGH-136796) Don't ignore errors raised by `PyErr_WarnFormat` in `warn_about_fork_with_threads` Instead, ignore the warnings in all test code that forks. (That's a lot of functions.) In `test_support`, make `ignore_warnings` a context manager (as well as decorator), and add a `message` argument to it. Also add a `ignore_fork_in_thread_deprecation_warnings` helper for the deadlock-in-fork warning.
|
🤖 New build scheduled with the buildbot fleet by @gpshead for commit b02aefc 🤖 Results will be shown at: https://buildbot.python.org/all/#/grid?branch=refs%2Fpull%2F140191%2Fmerge If you want to schedule another build, you need to add the 🔨 test-with-buildbots label again. |
|
Should we backport this? Warnings changes in patch releases make it harder to update, and from comments like #135427 (comment) it sounds like it's important to fix this now. But, if you think it should get a backport, let's do it :) |
|
I don't think this one is actually urgent to backport. I'll close this, the PR is ready and can be resurrected if deemed important. So -Werror doesn't turn it into an error in 3.14 but we've fixed that in 3.15? good enough. This is an odd warning - it'll probably never become an error because our detection can only ever be best effort (it cannot be guaranteed to detect if other threads exist), it's more of the best way to surface an application design flaw to users. |
cherry-pick fd8f42d for a backport to 3.14
Don't ignore errors raised by
PyErr_WarnFormatinwarn_about_fork_with_threadsInstead, ignore the warnings in all test code that forks. (That's a lot of functions.)In
test_support, makeignore_warningsa context manager (as well as decorator), and add amessageargument to it.Also add a
ignore_fork_in_thread_deprecation_warningshelper for the deadlock-in-fork warning.