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

Reply via email to