Since setuptools-scm now requires vcs-versioning to build, vcs-versioning requires hatchling and hatching has an indirect dependency on setuptools-scm, it is no longer possible to bootstrap this cycle on distributions:
(dev-python/vcs-versioning-1.0.1:0/0::gentoo, ebuild scheduled for merge) depends on
(dev-python/hatchling-1.29.0:0/0::gentoo, ebuild scheduled for merge) (buildtime)
(dev-python/pluggy-1.6.0:0/0::gentoo, ebuild scheduled for merge) (buildtime)
(dev-python/setuptools-scm-10.0.1:0/0::gentoo, ebuild scheduled for merge) (buildtime)
(dev-python/vcs-versioning-1.0.1:0/0::gentoo, ebuild scheduled for merge) (buildtime)
Technically, setuptools-scm has a build-system.backend-path that could permit it using vendored vcs-versioning for bootstrap. However, it also has an unconditional build-system.requires on vcs-versioning, and said backend-path refers outside the source distribution (where vcs-versioning is not included).
I suppose the problem could be resolved by either including vcs-versioning inside setuptools-scm for bootstrap purposes, with correct backend-path, or using a build system like flit-core that has no dependencies.
Since
setuptools-scmnow requiresvcs-versioningto build,vcs-versioningrequireshatchlingandhatchinghas an indirect dependency onsetuptools-scm, it is no longer possible to bootstrap this cycle on distributions:Technically,
setuptools-scmhas abuild-system.backend-paththat could permit it using vendoredvcs-versioningfor bootstrap. However, it also has an unconditionalbuild-system.requiresonvcs-versioning, and saidbackend-pathrefers outside the source distribution (wherevcs-versioningis not included).I suppose the problem could be resolved by either including
vcs-versioninginsidesetuptools-scmfor bootstrap purposes, with correctbackend-path, or using a build system likeflit-corethat has no dependencies.