On Wed, Feb 25, 2026, at 2:34 AM, Emily Ammundsen wrote: > On 24/02/2026 19:37, Zack Weinberg wrote: >> On Tue, Feb 24, 2026, at 10:33 PM, Emily Ammundsen wrote: >>> On 24/02/2026 13:34, Zack Weinberg wrote: >>>> On Wed, Feb 18, 2026, at 1:56 PM, pluto--- wrote: >>>>> >>>>> if // in a git checkout, but there is no history then // fetch >>>>> the history from the remote repo fi >>>> >>>> I'd be reluctant to make build operations talk to the network, even >>>> in rare circumstances (perhaps _especially_ in rare circumstances). >>> >>> halt building and print instructions for how to download the rest of >>> the needed history seems like a decent compromise? >> >> That we could do, yeah. The scripts that I know would need adjustment >> are gitlog-to-changelog and git-version-gen, both in build-aux. There >> may be others. I'm not going to have time to do this myself anytime >> soon but I'll look at any patches anyone comes up with. > > How do we feel about using `git rev-parse --is-shallow-repository` > even though that would require git >= 2.15, and thus bump our minimum > git version from 1.4.4+ to 2.15.0+ (assuming the minimum git version > listed in README-hacking is accurate). git 2.15.0 is currently about 9 > years old. If not, I can likely figure out something else.
The minimum git version in README-hacking hasn't been updated in a very long time. I wouldn't have a problem with that change myself, but let's open up the question to a wider audience. git-version-gen is used by several more projects besides Autoconf, and is officially maintained as part of Gnulib, so I'm cc:ing both the autoconf mailing list and the gnulib mailing list. > I have a change to just `git-version-gen` which causes ./bootstrap to > print the desired error message on shallow repositories. This would > prevent my mistake. It isn't clear what the correct behaviour for > gitlog-to-changelog would be or the other possible files. For now, let's maybe just make gitlog-to-changelog also print an error message and quit. I can imagine people wanting to run `make dist` in a shallow clone in order to copy the tarball over to a machine that doesn't have Git (yet) for testing purposes, but it'd be OK if that needed to be done slightly differently (e.g. `make test-tarball`). zw
