On Sun, Jul 1, 2012 at 1:52 AM, Daniel Holth <dho...@gmail.com> wrote:

> I got tired of waiting for lxml to compile over and over again, so I
> invented a binary packaging format called 'wheel' (of cheese) that
> uses Metadata 1.2 and .dist-info directories instead of .egg-info,
> patched pkg_resources.py to be able to load .dist-info directories,
> implemented "python setup.py bdist_wheel", and patched pip to be able
> to install .whl files.
>
> The gist of the spec is that it is a zip file with the .whl extension
> containing the contents of 'purelib' for a distribution, plus a
> Name-1.0.dist-info/ directory with the metadata files, plus
> Name-1.0.data/subdir directories for scripts, platlib, packaging's
> "categories", ...
>
> My specification so far is at
>
> https://docs.google.com/document/d/1mWPyvoeiqCrAy4UPNnvaz7Cgrqm4s_cfaTauAeJWABI/edit
> and an lxml compiled for linux-x86-64 is at
> https://docs.google.com/open?id=0BxHz5bC4iN5TN0VWTFNrZGtCbWs
>
> http://bitbucket.org/dholth/distribute
> http://github.com/dholth/pip
> http://pypi.python.org/pypi/wheel
>
> Perhaps it will be useful. The implementation is still pretty rough,
> for example it does not check the architecture while installing, but
> it could be a handy way to speed up repeated virtualenv builds.
>
>
While I haven't studied the spec in detail yet, I just want to say
"hurray!" for somebody Just Doing Something About It.  From a feature
perspective, the only thing missing (IMO) would be the ability for pip to
consume .egg and win32.exe's in order to provide a migration path.
Win32.exe->egg conversion code exists in easy_install, and converting eggs
to wheels should be straightforward  as well, despite the mixed metaphor.
;-)

Btw, looking at the packaging docs cited in the spec, I'm confused about
something: it's not clear to me what resource category most data files
would be placed in, if they are actually application code.  For example, a
ZCML spec file is not editable and would thus not properly go into
"config".  ZPT files (or for that matter, most other HTML templating
language files) aren't data in any meaningful sense, either.  So what *is*
the correct category for such *code* files which are part of the library or
application, yet which are not Python modules?  The doc provides no
guidance on this point.
_______________________________________________
Distutils-SIG maillist  -  Distutils-SIG@python.org
http://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to