Update dependency setuptools-scm to >=10.3.4 - #244
Merged
Merged
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #244 +/- ##
=======================================
Coverage 54.73% 54.73%
=======================================
Files 33 33
Lines 4149 4149
=======================================
Hits 2271 2271
Misses 1878 1878 🚀 New features to boost your workflow:
|
olehermanse
requested review from
SimonThalvorsen,
aleksandrychev,
craigcomstock,
larsewi and
victormlg
September 25, 2026 11:51
SimonThalvorsen
approved these changes
Sep 25, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
>=10.2.3→>=10.3.4Release Notes
pypa/setuptools-scm (setuptools-scm)
v10.3.4: setuptools-scm v10.3.4Compare Source
Fixed
Ship the tracked files of projects whose
pyproject.tomlsits in a subdirectoryof the checkout.
rootdefaults to the project directory, so version inferencecorrectly finds no SCM there and answers from
SETUPTOOLS_SCM_PRETEND_VERSIONor
fallback_version-- but that says nothing about which files git tracks, andthe sdist and wheel came out with none of them. This was the 10.3.0 regression
fixed in 10.3.3, surviving in the subdirectory layout.
File discovery now follows the checkout the project sits in, independently of
the
rootthat scopes versioning, and recordsscm_file_list.jsonin theegg-info as a root-level project already did. (#1543)
Require
vcs-versioning>=2.5.0. The subdirectory file-discovery fix (#1543) importsdiscover_file_workdir, which no earlier release has, while the declared floor stillnamed 2.4.0 -- an install against a published vcs-versioning raised
ImportErrorduring the build. (#1546)
v10.3.3: setuptools-scm v10.3.3Compare Source
Fixed
Keep file discovery working when the version is pretended.
SETUPTOOLS_SCM_PRETEND_VERSIONand its scoped_FOR_<DIST>form madeversion inference return before discovering a workdir, and the
egg_infomixin read the absent workdir as "searched, found no checkout" -- the signal
it acts on by suppressing the
setuptools.file_finderschain. EverySCM-tracked file that setuptools' own package discovery does not find was
then dropped from the sdist and the wheel, silently, since the build
succeeded and the version was correct.
A pretended version still skips discovery, because most builds only want a
version and probing for a checkout nobody asks about costs subprocesses for
nothing. What no longer happens is passing that off as an answer: "nobody
looked yet" is now distinct from "looked and found nothing", and the workdir
is discovered on demand the first time a consumer needs a file list.
scm_file_list.jsonis now written to the egg-info for pretended builds aswell. It describes which files the checkout tracks, which a pretended
version says nothing about.
scm_version.jsonstays absent there, becausea pretended version must not be recorded as what the SCM said. (#1540)
v10.3.2: setuptools-scm v10.3.2Compare Source
Fixed
Stop the command mixins from reordering a project's own
build_py,egg_infoor
bdist_wheelMRO.ScmVersionFileMixinand friends inherited from thecorresponding setuptools command, so wrapping a project class built on a disjoint
hierarchy --
distutils.command.build_py, or the standalonewheelpackage'sbdist_wheel-- placed setuptools' command ahead of the project's class.setuptools.build_py.run()does not delegate any further, so the project'srun()was silently skipped, surfacing aserror: package directory '...' does not exist. The mixins now carry no runtimebase class and linearise to
(wrapped, mixin, *project_command.__mro__). (#1531)Leave a project's
cmdclassalone when setuptools-scm is installed but notactually inferring a version.
build_py,egg_infoandbdist_wheelarenow registered only once version inference has stored data on the distribution --
the precondition for any of the mixins doing something. Previously every project
with a
pyproject.tomlhad its commands wrapped, including projects with no[tool.setuptools_scm]section at all.Note for projects that used to configure setuptools-scm and no longer do: a
scm_version.jsonleft behind in a stale*.egg-infodirectory is no longerstripped from built wheels, because the
bdist_wheelmixin that strips it is nolonger registered either. Remove the stale
*.egg-infodirectory. (#1533)v10.3.1: setuptools-scm v10.3.1Compare Source
Fixed
vcs-versioning>=2.4.0. setuptools-scm 10.3.0 declared>=2.3.2butimports
vcs_versioning._file_finders.scm_search_known_failed, which vcs-versioningonly gained in 2.4.0, so installing it alongside an older vcs-versioning failed with
ImportError. CI now installs setuptools-scm against the oldest vcs-versioning itsmetadata permits, so the lower bound can no longer go stale unnoticed. (#1528)
v10.3.0: setuptools-scm v10.3.0Compare Source
Deprecated
DeprecationWarningwhen thesetuptools.file_findersentry point is invoked for a project that does not configure setuptools-scm. The entry point will be removed in a future major release. (#1407)Fixed
Run the
setuptools.file_findershook inside a setuptools-scm override context. It previously resolved settings under theVCS_VERSIONINGprefix only, so documented variables such asSETUPTOOLS_SCM_SUBPROCESS_TIMEOUTandSETUPTOOLS_SCM_HG_COMMANDwere ignored when finding files.When version inference has already run and found no SCM checkout, the
egg_infomixin now tells the file finders so, rather than lettingwalk_revctrl()re-probe every backend for a repository known to be absent. (#1212)Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate CLI.