[Distutils] FINAL DRAFT: Dependency specifier PEP

Paul Moore p.f.moore at gmail.com
Tue Nov 17 15:50:20 EST 2015

On 17 November 2015 at 20:02, Robert Collins <robertc at robertcollins.net> wrote:
> As I understand it, you and Antoine are saying that the current PEP
> *does* define implementation because folk can't trust their URI
> library to error appropriately - and thats the bit I don't understand.
> Just parse however you want as an author, and cross check against the
> full grammar here in case of doubt.

What I'm saying is that for syntax, a conforming implementation has to
stand alone in its conformance to the spec. If the spec says X is
(in)valid, then the implementation should agree. I might want to use
the implementation to *check* that some file conforms to the spec, so
I may not even be using a URL library.

On the other hand, *semantics* are how you use the data - it's
perfectly OK to say that the "urlspec" chunk of data is intended to be
passed to a URL library. In that case, @::: is valid (it conforms to
the syntax) but meaningless. That's a looser spec (and so easier to
implement) but just as useful in any practical sense.

One last point - AIUI, the implementation being added to the packaging
library does full URI parsing. And I doubt anyone claiming to be
implementing the spec would feel comfortable not doing so. So I don't
follow your idea that people implementing the spec can defer to a URL
library for that bit - it's not what's actually happening.

Anyway, as I said it's not going to affect me in practice, so I'll
leave it here. Ultimately it'll be for the BDFL-delegate for this PEP
to decide whether it's worth asking for a change in this area.


More information about the Distutils-SIG mailing list