On vrijdag, dec 6, 2002, at 13:52 Europe/Amsterdam, Fredrik Lundh wrote: > Just van Rossum wrote: > >> It seems the majority doesn't like non-strings on sys.path, which to >> me is >> understandable, especially if you take PYTHONPATH into consideration. >> Let's try >> to focus on that. > > Has anyone presented any hard data, or are people just guessing? As > far > as I can tell, I'm the only one here who has posted fragile code from > a real > shipping product -- and I still believe it's a bogus argument. There are 3 distinct types of problems in Mac/Lib. 1. macresource locates .rsrc files on sys.path. I think this is a similar use case Fredrik presented: finding what is essentially a data file on sys.path. This is going to be a real problem if everything is packed into a zipfile. 2. buildtools loops over sys.path looking for a specific module (using os.path calls). This is a problem, but these uses can be converted to case (3). 3. buildtools (in another place) and bundlebuilder use imp.find_module to find modules and then proceed to do things like use the resulting pathname (like copying the file found). These will probably fail if there are zipfiles on sys.path, but at least there is a chance of fixing them. imp.find_module should return a recognizable magic cookie in stead of the pathname for zipfiles (and, later, for any other non-filesystem importers). I think we have to leave it at "magic cookie" and declare this Somebody Else's Problem, every time I try to think of functionality to put in the cookie I end up with something resembling a complete virtual filesystem interface. As a partial fix the file object returned by find_module could be an object that would "work". -- - Jack Jansen <Jack.Jansen@oratrix.com> http://www.cwi.nl/~jack - - If I can't dance I don't want to be part of your revolution -- Emma Goldman -
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4