[Distutils] PEP for specifying build dependencies

Paul Moore p.f.moore at gmail.com
Thu May 12 05:21:22 EDT 2016


On 12 May 2016 at 10:07, Nathaniel Smith <njs at pobox.com> wrote:
> ...Given how complicated this is ending up being, I'm sorta inclined
> to just drop semantics-version. It's only in there as a "hey why not
> it doesn't hurt" thing. I can't imagine any situation in which we'd
> actually bump the semantics version. If we need to make some
> incompatible change we'll actually do it by adding a [build-system-2]
> or something, and specify that [build-system] and [build-system-2] are
> both allowed in the same file, and if both are present then new tools
> should ignore [build-system] -- way smoother and backwards-compatible.

That does seem like a simpler solution. I'd like to think that most
changes we'd make to the file format could be done in a
backward-compatible manner - new values that default appropriately,
detectable changes to existing values (like a single string value
becomes a list, just allow a string and treat it as a 1-element list).
If we have to make breaking changes, using a new name (either at the
section level like you suggest, or at the individual item level) seems
perfectly acceptable.

And if we don't need semantics-version in the [package] section, we
can promote [build-system] to top level and just have 2 top level
items, [build-system] and [tools]. Seems clean and manageable to me.

Paul


More information about the Distutils-SIG mailing list