Not all that revolutionary, but an interesting migration path. FWIW, I
think the underlying issue is a real one. We're starting to have more and
more conflicts, even among package names. (Of course the symlink solution
doesn't work on Win32, but that's a detail =).
--david
---------- Forwarded message ----------
Date: Thu, 17 Jun 1999 13:44:33 -0400 (EDT)
From: Andy Dustman
M.A.L. wrote:
Or maybe we should start the com.domain.mypackage thing ASAP.
I know many are against this proposal (makes Python look Feudal? Reminds people of the J language?), but I think it's the only thing that makes sense. It does mean you have to do some ugly things to get Pickle working properly.
Actually, it can be done very easily. I just tried this, in fact: cd /usr/lib/python1.5 mkdir -p org/python (cd org/python; ln -s ../.. core) touch __init__.py org/__init__.py org/python/__init__.py
from org.python.core import rfc822 import profile
So this seems to make things nice and backwards compatible. My only concern was having __init__.py in /usr/lib/python1.5, but this doesn't seem to break anything. Of course, if you are using some trendy new atrocity like Windoze, this might not work. -- andy dustman | programmer/analyst | comstar communications corporation telephone: 770.485.6025 / 706.549.7689 | icq: 32922760 | pgp: 0xc72f3f1d _______________________________________________ Crew maillist - Crew@starship.python.net http://starship.python.net/mailman/listinfo/crew
David forwards from Starship Crew list:
Not all that revolutionary, but an interesting migration path. FWIW, I think the underlying issue is a real one. We're starting to have more and more conflicts, even among package names. (Of course the symlink solution doesn't work on Win32, but that's a detail =).
--david
---------- Forwarded message ---------- Date: Thu, 17 Jun 1999 13:44:33 -0400 (EDT) From: Andy Dustman
To: Gordon McMillan Cc: M.-A. Lemburg , Crew List Subject: Re: [Crew] Wizards' Resolution to Zope/PIL/mxDateTime conflict? On Thu, 17 Jun 1999, Gordon McMillan wrote:
M.A.L. wrote:
Or maybe we should start the com.domain.mypackage thing ASAP.
I know many are against this proposal (makes Python look Feudal? Reminds people of the J language?), but I think it's the only thing that makes sense. It does mean you have to do some ugly things to get Pickle working properly.
Actually, it can be done very easily. I just tried this, in fact:
cd /usr/lib/python1.5 mkdir -p org/python (cd org/python; ln -s ../.. core) touch __init__.py org/__init__.py org/python/__init__.py
from org.python.core import rfc822 import profile
So this seems to make things nice and backwards compatible. My only concern was having __init__.py in /usr/lib/python1.5, but this doesn't seem to break anything. Of course, if you are using some trendy new atrocity like Windoze, this might not work.
In vanilla cases it's backwards compatible. I try packag-izing almost everything I install. Sometimes it works, sometimes it doesn't. In your example, rfc822 uses only builtins at the top level. It's main will import os. Would that work if os lived in org.python.core? Though I really don't think we need to packagize the std distr, (if that happens, I would think it would be for a different reason). The 2 main problems I run across in packagizing things are intra-package imports (where M.A.L's proposal for relative names in dotted imports might ease the pain) and Pickle / cPickle (where the ugliness of the workarounds has often made me drop back to marshal). - Gordon
participants (2)
-
David Ascher
-
Gordon McMillan