Peter Simons wrote:
> Karl Berry writes:
> > However, I also see no harm in looking at the first 20 lines instead
> > of the first 10 lines to match the version.
>
> yes, I agree with Karl here. The current implementation enforces a
> policy that feels rather odd. A NEWS file that features the release
> heading in line 10 is considered valid, but one that features the
> heading in line 11 is not. This is really quite arbitrary and not
> particularly intuitive.
The penalty for an inadequate test would be to release without updating NEWS.
That particular file is so visible that I think it's worth making the default
test
very strict.
As with nearly all gnulib-imported files, if you don't like
the way it's done by default, you have options:
- disable this particular test
- patch the file (via gnulib-tool) to test the way you'd prefer
FYI, other tools (build-aux/do-release-commit-and-tag) require
that line 3 of NEWS contain the magic line, so relaxing this test to
look at 10 lines was already throwing a bone to those who do things differently.
$ build-aux/do-release-commit-and-tag --help
Usage: do-release-commit-and-tag VERSION RELEASE_TYPE
Run this script to perform the final pre-release NEWS update
in which the date, release-type and version string are recorded.
Commit that result with a log entry marking the release, and apply
a signed tag. Run it from your project's top-level directory.
Requirements:
- you use git for version-control
- a NEWS file, with line 3 identical to this:
* Noteworthy changes in release ?.? (????-??-??) [?]
- a version-controlled .prev-version file
Options:
--help print this help, then exit
--version print version number, then exit
EXAMPLE:
To update NEWS and tag the beta 8.1 release of coreutils, I would run this:
do-release-commit-and-tag 8.1 beta
Report bugs and patches to <[email protected]>.