…thonGH-6731) Before Python 3.6, os.path.abspath(None) used to report an AttributeError which was properly caught inside site.abs_paths, making it ignore __main__, one of sys.modules, which has __file__ and __cached__ set to None. With 3.6, os.path.abspath(None) raises TypeError instead which site.abs_path was not expecting. This resulted in an uncaught exception if a user had PYTHONSTARTUP set and the application called site.main() which a number of third-party programs do. (cherry picked from commit 2487f30) Co-authored-by: Steve Weber <steverweber@gmail.com>
|
@steverweber and @ned-deily: Backport status check is done, and it's a success ✅ . |
|
@steverweber and @ned-deily: Backport status check is done, and it's a success ✅ . |
|
Thanks, @ned-deily! |
Before Python 3.6, os.path.abspath(None) used to report an AttributeError which was properly caught inside site.abs_paths, making it ignore main, one of sys.modules, which has file and cached set to None. With 3.6, os.path.abspath(None) raises TypeError instead which site.abs_path was not expecting. This resulted in an uncaught exception if a user had PYTHONSTARTUP set and the application called site.main() which a number of third-party programs do.
(cherry picked from commit 2487f30)
Co-authored-by: Steve Weber steverweber@gmail.com
https://bugs.python.org/issue30167