You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Patched Git checkouts can change the package version #1447
With a *-git provider, fromager clones a tag and then changes files in the checkout (patches, project overrides, Rust vendoring).
If the package reads its version from Git (for example, setuptools-scm), these changes make the version look different. Tag v1.1 builds as something like 1.2.dev0+g<hash>, so the sdist fails the version check.
Expected
The sdist and wheel use the resolved version (1.1), whether or not fromager changed files in the checkout. A Git source should build the same version as an archive source.
Notes
Archives aren't affected: they have no .git.
The current workaround is to set SETUPTOOLS_SCM_PRETEND_VERSION_FOR_<NAME>: "${__version__}" for each package.
Not a blocker for #1414: only source: Git providers are affected. It should be fixed before 0.103.0, since patching Git sources is common.
I couldn't find a build-backend-independent way for Fromager to force the resolved version. For a setuptools-scm package whose Git checkout changes during preparation, the package settings should use SETUPTOOLS_SCM_PRETEND_VERSION_FOR_<DIST_NAME>: "${version}". Can we document this for the *-git profiles, then close this issue as a package-specific configuration requirement.
cc: @LalatenduMohanty , @tiran , @rd4398
4. I couldn't find a build-backend-independent way for Fromager to force the resolved version. For a setuptools-scm package whose Git checkout changes during preparation, the package settings should use SETUPTOOLS_SCM_PRETEND_VERSION_FOR_<DIST_NAME>: "${version}". Can we document this for the *-git profiles, then close this issue as a package-specific configuration requirement.
cc: @LalatenduMohanty , @tiran , @rd4398
I am okay with documenting this for now and moving on.
Activity
smoparth commentedon Nov 4, 2026
I couldn't find a build-backend-independent way for Fromager to force the resolved version. For a setuptools-scm package whose Git checkout changes during preparation, the package settings should use SETUPTOOLS_SCM_PRETEND_VERSION_FOR_<DIST_NAME>: "${version}". Can we document this for the *-git profiles, then close this issue as a package-specific configuration requirement.
cc: @LalatenduMohanty , @tiran , @rd4398
rd4398 commentedon Nov 4, 2026
I am okay with documenting this for now and moving on.