On Thu, Nov 05, 2009 at 11:45:47PM +0100, Tarek Ziadé wrote:
On Thu, Nov 5, 2009 at 11:39 PM, Sridhar Ratnakumar <sridharr@activestate.com> wrote: [..]
Since release numbers are specific to the installer (and repository), how about having it in the .egg-info/INSTALLER file?
$ cat .egg-info/INSTALLER name: PyPM
[package] release: 2 url: http://pypm.activestate.com/..../python-ldap....pypm pinned: True ...
We specified an INSTALLER file already, see: http://www.python.org/dev/peps/pep-0376/#id33
But just with the name of the installer. The use case was to be able to avoid removing a distribution that was installed by another installer.
I don't think the extra bit ([package]) is necessary in the INSTALLER file, because it's specific to the installer tool. And, as long as you can read/write arbitrary files in /.egg-info, you can put it in a specific file.
It seems a bad idea to put this extra info in a distutils standard, the binary release version have been managed outside of distutils for a long time and it works perfect. Allowing an arbitrary file to to be read via the egg-metadata API seems a much better solution, then any packager using that facility can completely decide what format to use and freely encode more information without hiting new distutils limitations (like your pinning). Of course there's nothing wrong with pypm keeping it's sqlite db for it's own data either, other binary package managers keep that info outside too. Regards Floris -- Debian GNU/Linux -- The Power of Freedom www.debian.org | www.gnu.org | www.kernel.org