Skip to content

fix: use PEP 440 direct URL syntax instead of deprecated #egg= fragment#281

Merged
aldbr merged 1 commit intoDIRACGrid:develfrom
aldbr:fix-egg
Apr 9, 2026
Merged

fix: use PEP 440 direct URL syntax instead of deprecated #egg= fragment#281
aldbr merged 1 commit intoDIRACGrid:develfrom
aldbr:fix-egg

Conversation

@aldbr
Copy link
Copy Markdown
Contributor

@aldbr aldbr commented Apr 7, 2026

Summary

  • Replace deprecated #egg= fragment syntax with PEP 440 direct URL syntax (name[extra] @ URL) in pilotCommands.py
  • Fixes pip install failures when using --modules with pip >= 25.0, which rejects #egg= fragments with error: invalid-egg-fragment

Motivation

Since pip 25.0 (January 2025), the #egg= URL fragment is no longer accepted and raises an invalid-egg-fragment error:

× The 'DIRAC[pilot]' egg fragment is invalid
╰─> from 'git+https://github.com/ryuwd/DIRAC.git@feat/cwl-job-submission#egg=DIRAC[pilot]'

hint: Try using the Direct URL requirement syntax: 'name[extra] @ URL'

This breaks any pilot installation using the modules option (e.g. url:::project:::branch syntax) to install a non-released DIRAC version from a git repository.

Changes

# Before
pip install git+https://github.com/fstagni/DIRAC.git@v7r2-fixes33#egg=DIRAC[pilot]

# After
pip install DIRAC[pilot] @ git+https://github.com/fstagni/DIRAC.git@v7r2-fixes33

@aldbr
Copy link
Copy Markdown
Contributor Author

aldbr commented Apr 9, 2026

@fstagni tests are all passing 🎉

Copy link
Copy Markdown

@ryuwd ryuwd left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! 🏁

@aldbr aldbr merged commit ddcb990 into DIRACGrid:devel Apr 9, 2026
8 checks passed
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.

3 participants