]> granicus.if.org Git - python/commitdiff
bpo-33944: note about the intended use of code in .pth files (GH-10131)
authornative-api <ivan_pozdeev@mail.ru>
Wed, 11 Sep 2019 13:21:04 +0000 (16:21 +0300)
committerMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Wed, 11 Sep 2019 13:21:04 +0000 (06:21 -0700)
https://bugs.python.org/issue33944

Doc/library/site.rst
Misc/NEWS.d/next/Documentation/2018-10-26-18-10-29.bpo-33944.V1YeOA.rst [new file with mode: 0644]

index 9e4d402c1f5e703bafbd4593e8ea570c3af452de..e1ca160c107b8b88983546d2b006f66d99b1e9b8 100644 (file)
@@ -61,6 +61,19 @@ directory rather than a file.  No item is added to ``sys.path`` more than
 once.  Blank lines and lines beginning with ``#`` are skipped.  Lines starting
 with ``import`` (followed by space or tab) are executed.
 
+.. note::
+
+   An executable line in a :file:`.pth` file is run at every Python startup,
+   regardless of whether a particular module is actually going to be used.
+   Its impact should thus be kept to a minimum.
+   The primary intended purpose of executable lines is to make the
+   corresponding module(s) importable
+   (load 3rd-party import hooks, adjust :envvar:`PATH` etc).
+   Any other initialization is supposed to be done upon a module's
+   actual import, if and when it happens.
+   Limiting a code chunk to a single line is a deliberate measure
+   to discourage putting anything more complex here.
+
 .. index::
    single: package
    triple: path; configuration; file
diff --git a/Misc/NEWS.d/next/Documentation/2018-10-26-18-10-29.bpo-33944.V1YeOA.rst b/Misc/NEWS.d/next/Documentation/2018-10-26-18-10-29.bpo-33944.V1YeOA.rst
new file mode 100644 (file)
index 0000000..29bec88
--- /dev/null
@@ -0,0 +1 @@
+Added a note about the intended use of code in .pth files.