On Mon, 2020-01-13 at 12:28 +0100, Pierre-Yves Chibon wrote:
If I tag foo 1.0 with a first changelog entry, then koji builds 1.0-1
with that changelog.
I think it would be better if the release were part of the git tag,
instead of automatically generating it. Not all packages use an integer
for the release, and the release also encodes the distro version
(though there is a proposal in the thread to change that too)
currently. Some packages do this due to a policy for packages that
don't have releases from upstream. For example:
$ rpm -q dino
dino-0.0-0.15.20191216.git.11c18cd.fc30.x86_64
Dino doesn't make releases upstream, so the release field encodes the
commit and commit date, along with an incremental "integer", which is
really a float because we want it to sort less than 1, in case Dino
ever makes a 0.0 release.
Now, we could change the policy too to get around this, but I think
"git tag" is a natural way for me to indicate "I want to build and
release this commit to this Fedora release". I can encode the full NEVR
in the git tag, and I can use the tag body to encode the end user
release notes for Bodhi and for the changelog. This also allows the git
commit messages to be logs for packagers to read (I do like the
proposal of a fedpkg feature to prefill the git tag message body with
the git commits since last release as a starting point though!)