Package: pypy
Version: 2.2.1+dfsg-1

The PEP3147 patch to PyPy caused PyPy to create __pycache__ folders even in
directories where there are no .py files to compile. This results in extra
__pycache__ directories laying around. Specifically this has broken pip
installs from Wheel files because it records which _files_ were installed but
not directories. This bug causes a __pycache__ directory to be present in the
.dist-info metadata directory which makes pip unable to install it.

You can reproduce it by simply doing:

mkdir -p foo/bar
mkdir -p foo/win
touch foo/win/PKG-INFO
touch foo/bar/a.py

pypy -c "import compileall; compileall.compile_dir('foo', force=True)"

You'll see it has the __pycache__ directory inside the foo/win directory. If
you compare this to Python3 you'll see that it does not have this directory.

You can see output here: https://gist.github.com/dstufft/9643283

-----------------
Donald Stufft
PGP: 0x6E3CBCE93372DCFA // 7C6B 7C5D 5E2B 6356 A926 F04F 6E3C BCE9 3372 DCFA

Attachment: signature.asc
Description: Message signed with OpenPGP using GPGMail

Reply via email to