Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add option to add an extra lib name tag to wheel's short hash #503

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

sgillies
Copy link

@sgillies sgillies commented Jul 30, 2024

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.

@sgillies sgillies changed the title Implement extra lib name tag on top of latest auditwheel Add option to add an extra lib name tag to wheel's short hash Jul 30, 2024
Copy link

codecov bot commented Jul 30, 2024

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 ⚠️
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     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@mayeut
Copy link
Member

mayeut commented Jan 4, 2025

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.

@sgillies
Copy link
Author

sgillies commented Jan 4, 2025

@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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants