Perfect your code
With built-in code review tools, GitHub makes it easy to raise the quality bar before you ship. Join the 40 million developers who've merged over 200 million pull requests.
Sign up for free See pricing for teams and enterprisesbpo-39395: os.putenv() is now always available #18135
Conversation
This comment has been minimized.
This comment has been minimized.
|
If this PR is merged, I plan to also require unsetenv() to build and always make os.unsetenv() available, once https://bugs.python.org/issue39413 will be fixed. |
This comment has been minimized.
This comment has been minimized.
bedevere-bot
commented
Jan 23, 2020
This comment has been minimized.
This comment has been minimized.
|
The PR built successfully on all tested buildbots: Linux (Ubuntu, Fedora, RHEL7, RHEL8, Gentoo, Arch Linux, ...), Windows (7, 8.1, 10, ...), macOS, FreeBSD. I checked the 3 buildbot failures: they are unrelated. |
This comment has been minimized.
This comment has been minimized.
|
Hum, I think I will wait until my PR #18163 is merged, so I can also require os.unsetenv() to be available in this PR. |
The os.putenv() and os.unsetenv() functions are now always available. On non-Windows platforms, Python now requires setenv() and unsetenv() functions to build. Remove putenv_dict from posixmodule.c: it's not longer needed.
This comment has been minimized.
This comment has been minimized.
|
I merged my PR #18163 so os.unsetenv() is now also available on Windows. I updated my PR to also require unsetenv() to build Python. setenv() and unsetenv() should be available on all platforms supported by Python. If it's not the case, someone can maintain a downstream patch which is a revert of this PR. Or we can revisit the idea of unsetting variables set by Python at exit, to workaround putenv() issue: https://bugs.python.org/issue39395 |
This comment has been minimized.
This comment has been minimized.
I'm talking about something this PR #18078 that I just closed. But only if someone asks to support a platform which doesn't provide setenv() and unsetenv(). |
b8d1262
into
python:master


vstinner commentedJan 23, 2020
•
edited by bedevere-bot
On non-Windows platforms, Python now requires setenv() to build.
https://bugs.python.org/issue39395