Description
Environment
- pip version: 19.0.2
- Python version: 3.7.2
- OS: Linux, macOS, Windows
Description
According to PEP 491, the distribution-1.0.dist-info/RECORD file is supposed to contain the installed paths. However, with pip 19.0.2, when the ChimeraX_Test wheel is installed, it puts in the pathname from the wheel, instead of where it was installed. So ChimeraX_Test-1.0.dist-info/RECORD contains:
ChimeraX_Test-1.0.data/purelib/chimerax/test/__init__.py,sha256=P-PYqFv-5p3uEWWg4S7ztdqb8ypeOQtckMqrxk4tbyA,1277
ChimeraX_Test-1.0.data/purelib/chimerax/test/bin/exectest.exe,sha256=4o0kWxymci14Rjvn9szfRh8n_N5aYRFY4iXKlJr5Vw4,31752
ChimeraX_Test-1.0.data/purelib/chimerax/test/test.py,sha256=CVpSUb2TwHNHYa_IZG3w2ooeTpdW88xRmIstjWlE0mc,4360
Expected behavior
ChimeraX_Test-1.0.dist-info/RECORD should contain:
chimerax/test/__init__.py,sha256=P-PYqFv-5p3uEWWg4S7ztdqb8ypeOQtckMqrxk4tbyA,1277
9,10d10
chimerax/test/bin/exectest.exe,sha256=4o0kWxymci14Rjvn9szfRh8n_N5aYRFY4iXKlJr5Vw4,31752
chimerax/test/test.py,sha256=CVpSUb2TwHNHYa_IZG3w2ooeTpdW88xRmIstjWlE0mc,4360
How to Reproduce
Use the wheel for your OS in the attached wheels.zip and the examine the contents of site-packages/ChimeraX_Test-1.0.dist-info/RECORD after installing it.
Try with pip 19.0.1 and 19.0.2.
On Linux:
python3.7 -m pip install pip==19.0.1
python3.7 -m pip install ChimeraX_Test-1.0-cp37-cp37m-linux_x86_64.whl
python3.7 -m pip uninstall ChimeraX_Test
Examine that Python's site-packages/ChimeraX_Test-1.0.dist-info/RECORD and see the contents of site-packages/chimerax/test/. The locations exist . A separate issue is that uninstalling fails with
Can't uninstall 'ChimeraX-Test'. No files were found to uninstall.
Next:
python3.7 -m pip install pip==19.0.2
python3.7 -m pip install -U ChimeraX_Test-1.0-cp37-cp37m-linux_x86_64.whl
python3.7 -m pip uninstall ChimeraX_Test
Examine that Python's site-packages/ChimeraX_Test-1.0.dist-info/RECORD and see the contents of site-packages/chimerax/test/. The filenames in RECORD are incorrect, but the right files are installed. Uninstalling fails in the same manner.
Activity