Commit Graph

172 Commits

Author SHA1 Message Date
Miss Islington (bot) ec4343c3b4 bpo-30167: Prevent site.main() exception if PYTHONSTARTUP is set. (GH-6731) (GH-7606)
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 2487f30d55)

Co-authored-by: Steve Weber <steverweber@gmail.com>
2018-06-10 21:21:35 -04:00
Ned Deily 763f094b1f
bpo-28440: Don't add /Library/Python/3.x/site-packages to sys.path (#5445)
No longer add /Library/Python/3.x/site-packages, the Apple-supplied
system Python site-packages directory, to sys.path for macOS framework
builds in case Apple ships a version of Python 3. A similar change
was made earlier to Python 2.7 where it was found that the coupling
between the system Python and a user-installed framework Python often
caused confusion or pip install failures.
2018-01-30 05:14:09 -05:00
INADA Naoki 5e742fa922 bpo-30804: fix macOS build with framework enabled. (#2516) 2017-06-30 19:38:02 +02:00
Victor Stinner b01c574ad6 bpo-29585: Define PYTHONFRAMEWORK in PC/pyconfig.h (#2477)
* bpo-29585: Fix PC/pyconfig.h whitespaces

Run "make patchcheck".

* bpo-29585: Define PYTHONFRAMEWORK in PC/pyconfig.h

* site: Fix path separator in _get_path() on Windows
2017-06-28 18:34:42 +02:00
INADA Naoki a8f8d5b4bd bpo-29585: optimize site.py startup time (GH-136)
Avoid importing `sysconfig` from `site` by copying minimum code.
Python startup is 5% faster on Linux and 30% faster on macOS
2017-06-29 00:31:53 +09:00
Serhiy Storchaka 55fe1ae970 bpo-30022: Get rid of using EnvironmentError and IOError (except test… (#1051) 2017-04-16 10:46:38 +03:00
INADA Naoki 2e4e011795 bpo-29592: site: skip abs_paths() when it's redundant (GH-167)
Call abs_paths() only if removeduppaths() changed sys.path
2017-03-15 00:52:19 +09:00
Serhiy Storchaka 727ba7c6f4 Issue #28637: No longer use re in site.py.
This makes Python startup from a virtual environment a little faster.
2016-11-08 20:17:35 +02:00
Ned Deily c6ef503b49 Issue #28323: Remove vestigal MacOS 9 checks from exit() and quit().
Patch by Chi Hsuan Yen.
2016-10-01 21:12:16 -04:00
Steve Dower 313523ce2d Issue #28192: Don't import readline in isolated mode 2016-09-17 12:22:41 -07:00
Steve Dower 4db86bc1b4 Changes pyvenv.cfg trick into an actual sys.path file. 2016-09-09 09:17:35 -07:00
Steve Dower f5aba58480 Issue #27959: Adds oem encoding, alias ansi to mbcs, move aliasmbcs to codec lookup 2016-09-06 19:42:27 -07:00
Martin Panter 0b7d84de6b Issue #27171: Merge typo fixes from 3.5 2016-06-02 10:11:18 +00:00
Martin Panter e26da7c03a Issue #27171: Fix typos in documentation, comments, and test function names 2016-06-02 10:07:09 +00:00
Brett Cannon 5f0507d8ab Issue #26587: Allow .pth files to specify file paths as well as
directories.

Thanks to Wolfgang Langner for the bug report and initial version of
the patch.
2016-04-08 15:04:28 -07:00
Ned Deily 0a85c69f1d Revert back to 3.6.0, buildbots do not want chocolate for 04-01 2016-03-31 19:20:03 -04:00
Victor Stinner 49f324f1d4 Python 8: no pep8, no chocolate! 2016-03-31 23:30:53 +02:00
Serhiy Storchaka 885bdc4946 Issue #25985: sys.version_info is now used instead of sys.version
to format short Python version.
2016-02-11 13:10:36 +02:00
Victor Stinner e3560a7dc9 site: error on sitecustomize import error
Issue #26099: The site module now writes an error into stderr if sitecustomize
module can be imported but executing the module raise an ImportError. Same
change for usercustomize.
2016-01-22 12:22:07 +01:00
Vinay Sajip 2934fd66ae Closes #25185: merged fix from 3.4. 2015-10-01 11:27:57 +01:00
Vinay Sajip f223c53218 Closes #25185: Use UTF-8 encoding when reading pyvenv.cfg. 2015-10-01 11:27:00 +01:00
Steve Dower 2d37cb2e1d Fixes sys.path for applocal environments. 2015-07-17 11:59:21 -07:00
Eric Snow 32439d6eb6 Issue #23911: Move path-based bootstrap code to a separate frozen module. 2015-05-02 19:15:18 -06:00
Benjamin Peterson ad9f99e41f merge 3.4 2015-02-01 20:18:29 -05:00
Benjamin Peterson d40f136d35 https goodness 2015-02-01 20:17:22 -05:00
Antoine Pitrou 9e82b17e9d Issue #21711: support for "site-python" directories has now been removed from the site module (it was deprecated in 3.4). 2014-06-12 19:41:30 -04:00
Ned Deily 5f8784b7cc Issue #21572: Change license command to fallback to generic license URL. 2014-05-30 23:46:19 -07:00
Martin v. Löwis c00d39e96a Issue #16047: Fix module exception list and __file__ handling in freeze.
Patch by Meador Inge.
2014-03-30 21:07:25 +02:00
Jason R. Coombs 4d91490579 Issue #20411: Use readline.get_current_history_length to check for the presence of a history, rather than get_history_item, which assumes a history is present. 2014-01-28 09:06:58 -05:00
Antoine Pitrou 3b2f0f0459 Issue #19375: The site module adding a "site-python" directory to sys.path, if it exists, is now deprecated. 2013-10-25 21:39:26 +02:00
Christian Heimes bfc3a9a5c3 Issue #19205 fix 406529adf156
I forgot to hit save.
2013-10-12 00:28:17 +02:00
Christian Heimes 8c9cd5a3d4 Issue #19205: Don't import the 're' module in site and sysconfig module to
to speed up interpreter start.
2013-10-12 00:24:55 +02:00
Antoine Pitrou fd4722cacf Issue #9548: Add a minimal "_bootlocale" module that is imported by the _io module instead of the full locale module. 2013-10-12 00:13:50 +02:00
Antoine Pitrou 5d23e6d543 Issue #5845: In site.py, only load readline history from ~/.python_history if no history has been read already. This avoids double writes to the history file at shutdown. 2013-09-29 22:18:38 +02:00
R David Murray 692ee9eaf0 #18206: Re-fix license URL. 2013-09-14 13:31:44 -04:00
R David Murray 4a0430166b #18852: Handle readline.__doc__ being None in site.py readline activation.
Patch by Berker Peksag.
2013-09-06 13:08:08 -04:00
Antoine Pitrou 853395b448 Issue #18621: Prevent the site module's patched builtins from keeping too many references alive for too long. 2013-08-06 22:56:40 +02:00
Antoine Pitrou f93c7b8061 Remove Lib/site.py hack to unregister patched builtins.
It creates a refleak in subinterpreters, as atexit callbacks aren't triggered at their end.
2013-08-01 19:46:04 +02:00
Antoine Pitrou dcedaf6e53 Issue #18214: Improve finalization of Python modules to avoid setting their globals to None, in most cases. 2013-07-31 23:14:08 +02:00
Brett Cannon cd171c8e92 Issue #18200: Back out usage of ModuleNotFoundError (8d28d44f3a9a) 2013-07-04 17:43:24 -04:00
Brett Cannon 0a140668fa Issue #18200: Update the stdlib (except tests) to use
ModuleNotFoundError.
2013-06-13 20:57:26 -04:00
Mark Dickinson 9d351332a7 Issue #5845: avoid an exception at startup on OS X if no .editrc file exists. 2013-05-06 15:39:31 +02:00
Antoine Pitrou 1a6cb30a34 Issue #5845: Enable tab-completion in the interactive interpreter by default, thanks to a new sys.__interactivehook__.
(original patch by Éric Araujo)
2013-05-04 20:08:35 +02:00
Meador Inge 2581bdb86a Issue #16804: Fix 'python -S -m site' failure.
This commit fixes a bug in the 'site' module that was causing an exception
to incorrectly be thrown when running 'python -S -m site'.  The problem was
that 'USER_BASE' and 'USER_SITE' were being accessed before they were properly
initialized.  The code has been changed to use 'getuserbase' and
'getusersitepackages' instead so that the initialization always happens.
2013-04-13 20:51:04 -05:00
Meador Inge 9a7a81195c Issue #16804: Fix 'python -S -m site' failure.
This commit fixes a bug in the 'site' module that was causing an exception
to incorrectly be thrown when running 'python -S -m site'.  The problem was
that 'USER_BASE' and 'USER_SITE' were being accessed before they were properly
initialized.  The code has been changed to use 'getuserbase' and
'getusersitepackages' instead so that the initialization always happens.
2013-04-13 20:29:49 -05:00
Roger Serwy 663a390454 #17585: merge with 3.3. 2013-04-11 19:18:22 -05:00
Roger Serwy 1eafd1076e #17585: Fixed IDLE regression. Now closes when using exit() or quit(). 2013-04-11 19:16:44 -05:00
Giampaolo Rodola' 2f50aaf2ff modernize some modules' code by using with statement around open() 2013-02-12 02:04:27 +01:00
Brett Cannon 13252b8770 Issue #16972: Have site.addpackage() consider known paths even when
none are explicitly passed in.
2013-01-25 13:57:16 -05:00
Andrew Svetlov f7a17b48d7 Replace IOError with OSError (#16715) 2012-12-25 16:47:37 +02:00