[Distutils] PEP 426 moved back to Draft status
ncoghlan at gmail.com
Mon Mar 13 06:32:48 EDT 2017
On 11 March 2017 at 14:17, Nick Coghlan <ncoghlan at gmail.com> wrote:
> On 11 March 2017 at 07:03, Daniel Holth <dholth at gmail.com> wrote:
>> You lost me a bit at 'extra sets'. FYI it is already possible to depend
>> on your own extras in another extra.
>> Extra pseudo code:
>> extra['spam'] = 'spampackage[eggs]'
>> extra['eggs'] = ...
> Oh, nice. In that case, we can drop the '*' idea and just make "all"
> another pre-declared extra with a SHOULD that says sdist build tools should
> implicitly populate it as:
> "requires": "thisproject[extra1,extra2,extra3,extra4]"
> "extra": "all"
> given an extras clause containing '["extra1",'extra2","extra3","extra4"]'.
> Endorsing that approach to handling "extra sets" does impose a design
> constraint though, which is that installation tools will need to
> special-case self-referential requirements so they don't get stuck in a
> recursive loop. (That will become a new MUST in the spec)
- metadata version bumped to 3.0
- expected filename changed to pysdist.json and stated to be immutable once
generated for a given release
- project obsolescence changes deferred to a possible future metadata
- no proposed changes to extras syntax and the "self" and "runtime"
- "all" added as an implied extra for all declared extras
- "alldev" added as an implied superset of "test", "build", "doc" and "dev"
Even though it's not strictly necessary, I'd still kind of like to have a
standard way to say "install all the dev dependencies, but not the package
itself or its runtime dependencies". I guess if we take distro build tools
as an example though, they handle that as a separate command (e.g. "dnf
builddep" vs "dnf install") rather than as a variation on the normal
Nick Coghlan | ncoghlan at gmail.com | Brisbane, Australia
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Distutils-SIG