Paul Moore <p.f.moore <at> gmail.com> writes:

> That implies that any wheel reference implementation needs to expose APIs
> for reading and writing the metadata to/from the wheel.

Not necessarily. For example, distlib's approach side-steps the need for such
a write API: you tell Wheel.build which directories contain purelib, platlib,
scripts, headers etc. and it puts all the stuff that it finds in those
directories into appropriate locations in the wheel, then updates RECORD, 
WHEEL
etc. This way, it doesn't need to worry about what custom files installers put
in .dist-info, and reduces the coupling between the wheel code and users of 
it.

There's no need for a special read API either, since wheels are just zip files
and you can use the zipfile API to look at anything inside a wheel. As a 
convenience, distlib's Wheel instances have a metadata property, which returns
as a dict the pydist.json from the wheel's .dist-info.

Why make it more complicated than that?

Regards,

Vinay Sajip

_______________________________________________
Distutils-SIG maillist  -  Distutils-SIG@python.org
http://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to