En Tue, 26 Feb 2008 11:44:48 -0200, D'Arcy J.M. Cain <[EMAIL PROTECTED]> escribió: > On Tue, 26 Feb 2008 03:01:33 -0200 > "Gabriel Genellina" <[EMAIL PROTECTED]> wrote: >> En Sat, 23 Feb 2008 12:52:45 -0200, D'Arcy J.M. Cain <[EMAIL PROTECTED]> >> escribió:
>> > I have more information now. It seems that it recurses the .pth files >> > it finds in PYTHONPATH but not for directories found in the .pth files >> > in site-packages. Is this expected behaviour? The documentation >> > suggests that it should pick up both. >> >> If a .pth file contains a valid directory, it is added to sys.path but >> it's not searched for additional .pth files. From >> http://docs.python.org/lib/module-site.html >> >> "A path configuration file is a file whose name has the form >> package.pth >> AND EXISTS IN ONE OF THE FOUR DIRECTORIES MENTIONED ABOVE" (emphasis by >> me) >> >> (the four directories being .../lib/python2.5/site-packages, >> site-python, >> etc.) > > But that is not true. If I add a path by setting PYTHONPATH and there > is a .pth in that directory then it is read and recursively searched > for more .pth files. It is only when the path is added because it is > in site-packages that it doesn't load the .pth files found. This is not the behavior I see, at least not with 2.5.1 on Windows. > In http://www.python.org/doc/inst/search-path.html there is > more specific language: > > "Paths can be absolute or relative, in which case they're relative to > the directory containing the .pth file. Any directories added to the > search path will be scanned in turn for .pth files. See site module > documentation for more information." > > Directories listed in .pth files in site-packages are "added to the > search path" so they should be scanned for more .pth files. There was a proposed patch to do that, rejected, basically because doing so could potentially slow down the interpreter start up; see http://bugs.python.org/issue1174614; PEP 370 http://www.python.org/dev/peps/pep-0370/ if approved, may be useful to you. Note that you can always do the processing in sitecustomize.py, calling site.addsitedir for all entries in sys.path until no more entries are added. > This really smells like a bug in either the code or the docs. I hope > it is in the code and will eventually be fixed. Looks like the docs are wrong; the code in site.py, its docstring, and the above quoted docs are slightly different. -- Gabriel Genellina -- http://mail.python.org/mailman/listinfo/python-list