Add option to add an extra lib name tag to wheel's short hash
I've been using this on wheels for my Fiona and Rasterio projects, which may be used together and which have a score of potentially overlapping dependencies. If it's not deemed useful to auditwheel, I understand.
Codecov Report
Attention: Patch coverage is 66.66667% with 2 lines in your changes missing coverage. Please review.
Project coverage is 91.81%. Comparing base (
7c3501b) to head (d8aa814).
| Files | Patch % | Lines |
|---|---|---|
| src/auditwheel/repair.py | 50.00% | 1 Missing and 1 partial :warning: |
Additional details and impacted files
@@ Coverage Diff @@
## main #503 +/- ##
==========================================
- Coverage 91.94% 91.81% -0.14%
==========================================
Files 20 20
Lines 1266 1270 +4
Branches 279 280 +1
==========================================
+ Hits 1164 1166 +2
- Misses 57 58 +1
- Partials 45 46 +1
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
I don't understand what problem gets solved by this. Can you explain the issue you're trying to solve ? My understanding is that overlapping dependencies is not an issue given the hash is added and thus, whatever version gets loaded, it'll work as they are the same version.
@mayeut my problem is that the Rasterio https://pypi.org/project/rasterio/ and Fiona https://pypi.org/project/fiona wheels, which I maintain, and are widely used in the GIS field, carry some of the same libraries and are sometimes used together. Thus, users can find themselves loading different shared libraries that have the same name and same short hash. Some of the cornerstone GIS libraries, like GEOS and GDAL, are particular about being loaded twice. I've found that adding extra bits to the shared library names in addition to the short hash (which is likely the same for both rasterio and fiona) helps disambguiate the libraries and prevent some conflicts.
It's a pretty special problem, I admit.