Repair any wheel, anywhere
Project description
repairwheel
Overview
repairwheel
combines the "repair" steps fromauditwheel
,delocate
, anddelvewheel
into a single tool, enabling cross-platform wheel repair.- It includes pure-python replacements for external tools like
patchelf
,otool
,install_name_tool
, andcodesign
, so no non-python dependencies are required.
What's it do?
- When invoked,
repairwheel
first looks at the platform tag on the input wheel. - Based on the tag,
repairwheel
selects a repair step fromauditwheel
,delocate
, ordelvewheel
(or nothing, if it's a pure-Python wheel) - Finally,
repairwheel
rewrites the result in a canonical form ensuring that:- File timestamps are set to a constant value;
- Files in the archive are ordered lexicographically; and
- Files in
RECORD
are ordered lexicographically
The final result should be bitwise-identitcal regardless of the system used to perform the repair.
Usage
usage: repairwheel [-h] -o OUTPUT_DIR [-l LIB_DIR] wheel
positional arguments:
wheel
options:
-h, --help show this help message and exit
-o OUTPUT_DIR, --output-dir OUTPUT_DIR
-l LIB_DIR, --lib-dir LIB_DIR
Example
$ repairwheel \
tests/testwheel/cp36-abi3-macosx_10_11_arm64/testwheel-0.0.1-cp36-abi3-macosx_10_11_arm64.whl \
-l tests/testwheel/cp36-abi3-macosx_10_11_arm64/lib \
-o /tmp/wheelout
$ repairwheel \
tests/testwheel/cp36-abi3-linux_x86_64/testwheel-0.0.1-cp36-abi3-linux_x86_64.whl \
-l tests/testwheel/cp36-abi3-linux_x86_64/lib \
-o /tmp/wheelout
$ ls /tmp/wheelout
testwheel-0.0.1-cp36-abi3-macosx_10_11_arm64.whl
testwheel-0.0.1-cp36-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.whl
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
repairwheel-0.2.2.tar.gz
(241.1 kB
view details)
Built Distribution
repairwheel-0.2.2-py3-none-any.whl
(121.7 kB
view details)
File details
Details for the file repairwheel-0.2.2.tar.gz
.
File metadata
- Download URL: repairwheel-0.2.2.tar.gz
- Upload date:
- Size: 241.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-httpx/0.24.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 29f4a54e68b6bb70a2826c651e8195ca1f06085dd19e2abfb769521d2c078598 |
|
MD5 | 42fad216b7d41f472b4bb885d8afb231 |
|
BLAKE2b-256 | 94ae9a6b6b02d2be1703f77b171bcb82ad11f45398b140c3e8a242a624a075c1 |
File details
Details for the file repairwheel-0.2.2-py3-none-any.whl
.
File metadata
- Download URL: repairwheel-0.2.2-py3-none-any.whl
- Upload date:
- Size: 121.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-httpx/0.24.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e30ea0ad0bf9d9a6f114fb9ec8f03d9edd58acedb5d31fcdfb409c9c332f9051 |
|
MD5 | 40c22f0c6a166b42e2de779b7e39c4d7 |
|
BLAKE2b-256 | e81abcad28ed8776dc56c6bc66bb7db0f96491a7a9b630a47fa021a74a66cd86 |