On Jul 16, 2013, at 02:02 PM, Thomas Wouters wrote: >In my experience changing the name of a package is problematic for more >reasons than just 'import'. We used to do the put-in-a-package thing for >third-party packages at Google, and we quit doing it because it was just >too painful: it's hard to find all the places that reference the package by >name (think of __import__, or mucking in sys.modules), and it's extra >problematic with packages that contain extension modules. You can't rename >a package, even for 'vendoring a package', without carefully checking >whether it'll work -- unless you don't care if it'll work, of course :) The >alternative is to include a package *without* changing its name (by adding >the right directory, without __init__.py, to sys.path) and that has worked >out a lot better for us.
Vendoring also gives no end of headaches to distro packagers because we have to un-vendor that stuff, which can lead to a mess of patches on top of upstream. >Even so, there's no reason for *the standard library* to use explicit >relative imports, and that's what PEP 8 is supposed to cover, right? :) Right! It doesn't bother me at all that this particular recommendation may be followed by third parties too. :) -Barry _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com