[Python-Dev] Distutils2 scripts
Tarek Ziadé
ziade.tarek at gmail.com
Fri Oct 8 15:22:11 CEST 2010
2010/10/8 Fred Drake <fdrake at acm.org>:
> On Fri, Oct 8, 2010 at 7:24 AM, Dirkjan Ochtman <dirkjan at ochtman.nl> wrote:
>> It doesn't seem very nice to have a version in the script. Can we just
>> call it distutils? Or py-dist?
>
> If we go this route, then
>
> - "make altinstall" should include the version number in the name of *any*
> scripts it installs.
>
> - "make install" would then add links without the version numbers.
>
> This mirrors the name of the Python executable, so is likely as "right" as
> it's going to get (*if* we install separate scripts).
Yes that what I was thinking about -- I am not too worried about this,
since every Linux deals with the 'more than one python installed'
case.
>
> Georg:
>> What happened to "python setup.py action"? Or is this a step towards
>> not requiring setup.py at all?
>
> I'm in favor of add a top-level setup module that can be invoked using
> "python -m setup ...". There will be three cases:
Nice idea ! I wouldn't call it setup though, since it does many other
things. I can't think of a good name yet, but I'd like such a script
to express the idea that it can be used to:
- query pypi
- browse what's installed
- install/remove projects
- create releases and upload them
pkg_manager ?
>
> - d2 projects without a setup.py, where this will invoke the module from
> the standard library,
Yes !
>
> - d2 projects with a setup.py, where the local setup.py will be invoked,
> and
Mmm.. setup.py is gone in D2, and setup.py will be the marker of d1.
Some project might want to provide both setups for backward
compatibility:
- a setup.py (d1)
- a setup,cfg (d2 and optionally some d1 options)
It's easy enough in that case to detect if the .cfg has what d2
requires (like the [metadata] section)
>
> - d1 projects, which always have a setup.py, which will be invoked.
Yes
>
> This would provide the most consistent story for package users, where the
> only command they'll need to remember (for Python versions with the setup
> module) will be
>
> python -m setup ...
Nice ! And I'd like to extend this idea with what we said at the last
Summit. What if a project like Pip is able to replace d1 and or d2
when it comes to install a package. As long as we agree on the same
command line interface, we could provide a way for pip to be called by
this global script.
Tarek
--
Tarek Ziadé | http://ziade.org
More information about the Python-Dev
mailing list