From 3b2f0f045903ba9f24d92c053bd6d0fc8561973f Mon Sep 17 00:00:00 2001 From: Antoine Pitrou Date: Fri, 25 Oct 2013 21:39:26 +0200 Subject: [PATCH] Issue #19375: The site module adding a "site-python" directory to sys.path, if it exists, is now deprecated. --- Doc/library/site.rst | 3 +++ Doc/whatsnew/3.4.rst | 3 ++- Lib/site.py | 5 +++++ Misc/NEWS | 3 +++ 4 files changed, 13 insertions(+), 1 deletion(-) diff --git a/Doc/library/site.rst b/Doc/library/site.rst index 2175c3e2e74..d93e938b5c9 100644 --- a/Doc/library/site.rst +++ b/Doc/library/site.rst @@ -38,6 +38,9 @@ Unix and Macintosh). For each of the distinct head-tail combinations, it sees if it refers to an existing directory, and if so, adds it to ``sys.path`` and also inspects the newly added path for configuration files. +.. deprecated:: 3.4 + Support for the "site-python" directory will be removed in 3.5. + If a file named "pyvenv.cfg" exists one directory above sys.executable, sys.prefix and sys.exec_prefix are set to that directory and it is also checked for site-packages and site-python (sys.base_prefix and diff --git a/Doc/whatsnew/3.4.rst b/Doc/whatsnew/3.4.rst index 392af3b3c57..6e261d5913d 100644 --- a/Doc/whatsnew/3.4.rst +++ b/Doc/whatsnew/3.4.rst @@ -685,7 +685,8 @@ Deprecated functions and types of the C API Deprecated features ------------------- -* No feature deprecations are planned for Python 3.4. +* The site module adding a "site-python" directory to sys.path, if it + exists, is deprecated (:issue:`19375`). Porting to Python 3.4 diff --git a/Lib/site.py b/Lib/site.py index bb329b43812..b0d8268f816 100644 --- a/Lib/site.py +++ b/Lib/site.py @@ -326,6 +326,11 @@ def addsitepackages(known_paths, prefixes=None): """Add site-packages (and possibly site-python) to sys.path""" for sitedir in getsitepackages(prefixes): if os.path.isdir(sitedir): + if "site-python" in sitedir: + import warnings + warnings.warn('"site-python" directories will not be ' + 'supported in 3.5 anymore', + DeprecationWarning) addsitedir(sitedir, known_paths) return known_paths diff --git a/Misc/NEWS b/Misc/NEWS index 5f6ccad7521..be64bee591d 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -27,6 +27,9 @@ Core and Builtins Library ------- +- Issue #19375: The site module adding a "site-python" directory to sys.path, + if it exists, is now deprecated. + - Issue #19379: Lazily import linecache in the warnings module, to make startup with warnings faster until a warning gets printed.