Repair any wheel, anywhere
Project description
repairwheel
Overview
repairwheelcombines the "repair" steps fromauditwheel,delocate, anddelvewheelinto 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,
repairwheelfirst looks at the platform tag on the input wheel. - Based on the tag,
repairwheelselects a repair step fromauditwheel,delocate, ordelvewheel(or nothing, if it's a pure-Python wheel) - Finally,
repairwheelrewrites 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
RECORDare 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.6.0.tar.gz
(293.8 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
repairwheel-0.6.0-py3-none-any.whl
(160.9 kB
view details)
File details
Details for the file repairwheel-0.6.0.tar.gz.
File metadata
- Download URL: repairwheel-0.6.0.tar.gz
- Upload date:
- Size: 293.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: Hatch/1.16.5 cpython/3.12.3 HTTPX/0.28.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
163ad97be7f2e41a7b6c04bcad466fc1d17ed52143650e4d933deb2021dbece9
|
|
| MD5 |
40270373c0bbb24477d51e95d03ad29b
|
|
| BLAKE2b-256 |
09d9ea73c969539b79890a4ebe11a654d82e6b1fc720887dbc5f17b7184c5dab
|
File details
Details for the file repairwheel-0.6.0-py3-none-any.whl.
File metadata
- Download URL: repairwheel-0.6.0-py3-none-any.whl
- Upload date:
- Size: 160.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: Hatch/1.16.5 cpython/3.12.3 HTTPX/0.28.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e06553b0fa02c596e573a5baabd6d9a4b1b1e5964b98f3e2dabf8b3fdb7801de
|
|
| MD5 |
da89770c824290fbfa1e79777b32b96a
|
|
| BLAKE2b-256 |
4c9cd0f0960c73ab03b2d923b0fc78f32549ae3bf3090044f39afe1b5b8a8d2a
|