Hello c.l.py,
what features would you expect of a Python package manager, similar to CPAN or rubygems?
I am currently planning to write such a thing, at first privately for myself, and if it's proving useful, I think about releasing it.
I've contemplated such a beast myself, but have never got further than a cursory look at "what work has already been done that I should take into account?"
Howevever, it sounds like that info would be useful to you, so here's what I've got:
PEP 314 (Metadata for Python Packages v 1.1) details the properties of the metadata that the Python repository relies on.
Don't worry about PEP 241 - it has been superceded by PEP 314.
PEP 301 describes PyPI (Python Package Index) - the central index of available packages. A running version of it can be found at http://www.python.org/pypi
PEP 243 is probably worth looking at, although I believe it is basically superceded by PEP 301.
PEP 262 describes a proposed (local system) installation database. An implementation already exists in the nondist section of CPython's CVS repository, but further progress is currently stalled due to lack of a champion.
It would also be good to be aware of how distutils currently works (even if that's just by reading its documentation). Doing your own trawl through PEP 0 wouldn't hurt, either (it's possible I missed something relevant). The archives of python-dev and the distutils SIG may also provide good info.
If you're serious about doing a good job (i.e. to a "possibly included with the standard Python distribution some day" standard), it may be worth posting a question on python-dev about it. Just say that you're contemplating writing such a tool for your own use, and are interested in any ideas which aren't currently documented in the places I mentioned above. You'll find several of the authors of the above material frequent python-dev, and will hopefully have some good pointers regarding what needs to be done.
> I plan to model it after gentoo's portage, with less features of course. > Would this be acceptable?
I don't know enough about Portage to answer that question. I do know any package manager which made it into the standard distribution would need to work for at least the big three platforms (Windows/Mac/*nix) :)
Cheers, Nick.
-- Nick Coghlan | [EMAIL PROTECTED] | Brisbane, Australia --------------------------------------------------------------- http://boredomandlaziness.skystorm.net -- http://mail.python.org/mailman/listinfo/python-list