Skip to content

Add manylinux_2_34 to supported MANYLINUX_TAGS#900

Open
guenp wants to merge 5 commits intoconda:mainfrom
guenp:guenp/add-manylinux-2_34
Open

Add manylinux_2_34 to supported MANYLINUX_TAGS#900
guenp wants to merge 5 commits intoconda:mainfrom
guenp:guenp/add-manylinux-2_34

Conversation

@guenp
Copy link
Copy Markdown

@guenp guenp commented Mar 17, 2026

Summary

  • Adds _2_34 to MANYLINUX_TAGS in pypi_solver.py
  • Bumps default __glibc from 2.28 to 2.34 in default-virtual-packages.yaml for all Linux subdirs

Follow-up to #847, which added _2_18.

Motivation

pyqir 0.12.3 only publishes Linux wheels for manylinux_2_34 (x86_64) and manylinux_2_38 (aarch64). Since MANYLINUX_TAGS currently maxes out at _2_28, conda-lock's PyPI solver rejects these wheels:

RuntimeError: Unable to find installation candidates for pyqir (0.12.3)

The --virtual-package-spec workaround doesn't help because even if __glibc is set to 2.34, the hardcoded tag list doesn't include _2_34.

Discussion

I'm open to discussing a better long-term solution — e.g., dynamically generating valid manylinux tags from the glibc version rather than maintaining a hardcoded list. Happy to iterate on this.

Test plan

  • Verify pyqir 0.12.3 resolves successfully for linux-64
  • Verify --virtual-package-spec with __glibc: "2.34" works end-to-end
  • Verify backward compatibility (packages with older manylinux tags still resolve)

@netlify
Copy link
Copy Markdown

netlify bot commented Mar 17, 2026

Deploy Preview for conda-lock ready!

Name Link
🔨 Latest commit 841b1f6
🔍 Latest deploy log https://app.netlify.com/projects/conda-lock/deploys/69bacb4b7a98950008a49051
😎 Deploy Preview https://deploy-preview-900--conda-lock.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

guenp added 4 commits March 17, 2026 22:10
Update expected hashes in test_default_virtual_package_input_hash_stability
and test_default_virtual_package_input_hash_stability_cuda_version to
reflect the new glibc 2.34 default. Old glibc 2.28 hashes are preserved
in backward compatibility checks.
Add _replace_glibc_version to backwards_compatible_content_hashes so
that lockfiles generated with the old glibc 2.28 default are still
recognized as valid after bumping to 2.34.

Update HASHES_V2 in the v2-to-v3 upgrade test to match the new default.
Use cast(SubdirMetadata, ...) instead of type: ignore comment,
and use model_copy(deep=True) consistent with rest of file.
@guenp guenp marked this pull request as ready for review March 18, 2026 23:34
@guenp guenp requested a review from a team as a code owner March 18, 2026 23:34
@guenp
Copy link
Copy Markdown
Author

guenp commented Mar 19, 2026

@maresb curious to hear your thoughts on this PR. thank you!

@maresb
Copy link
Copy Markdown
Contributor

maresb commented Apr 7, 2026

Hi @guenp, apologies for the late review.

Looking this over, I think this PR became overcomplicated due to a preexisting flaw in our tests going back to #566. I document and attempt to fix this flaw in #903. Would you please look that over and see if that makes sense to you?

Regarding this PR, assuming that we merge #903, then I think it's sufficient as a temporary fix to simply add the corresponding 2.34 entry to MANYLINUX_TAGS. I think this would be a 1-line PR. (Sorry for all the unnecessary complexity you faced in the current draft, but at least this led me to open #903.)

As for a more sustainable solution, I think we can just remove MANYLINUX_TAGS and instead simplify _compute_compatible_manylinux_tags to just generate the list up to whatever arbitrary value is specified in the virtual packages. (I think the only detail is injecting the special aliases in SPECIAL_CASES.) So unless I'm missing something, this should be a pretty big simplification of the current logic. (I think this implementation would be the logical conclusion to the discussions in #847.)

Is this something you'd be interested in tackling?

@maresb
Copy link
Copy Markdown
Contributor

maresb commented Apr 7, 2026

@romain-intel, if you're available I'd love to get your take on this!

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