Mailinglist Archive: opensuse-packaging (48 mails)

< Previous Next >
Re: [opensuse-packaging] rpmlint(?): W: no-version-in-last-changelog
On Fri, Dec 28, 2018 at 5:29 AM Michal Rostecki <mrostecki@xxxxxxx> wrote:

On 12/27/18 10:19 PM, Neal Gompa wrote:
On Thu, Dec 27, 2018 at 2:17 PM Michal Rostecki <mrostecki@xxxxxxx> wrote:

On 12/26/18 8:15 PM, Neal Gompa wrote:
The purpose of this check is to ensure that each newest changelog
entry mapped to the version-release built of the package. However,
openSUSE changelogs are not structured that way, so this particular
check has never been satisfied properly. If you look at Fedora or
Mageia packages, the changelog entries are structured in such a way
that this warning never triggers. The SUSE-style changes format
doesn't include enough information for that check to pass
post-conversion.Thus, I agree it should be disabled in openSUSE, or at
least have a variation of the check that makes more sense.


To be more concrete - rpmlint expects a version in the same line where you
have
date, time, name and email. Example:

https://src.fedoraproject.org/cgit/rpms/systemd.git/tree/systemd.spec#n691

I agree that this check should be disabled in openSUSE, unless we want to
introduce the same format of changelog which Fedora has.

I'm surprised and impressed that someone knows where to look for
Fedora packaging sources. I always had the impression that most folks
seemed to be ignorant of how it's done in Fedora.

That said, it's technically also supposed to be able to be satisfied
by the first line of the changelog text including it, but again, the
way openSUSE does packaging and changelogs makes this completely fail
anyway.


Could you be more specific? What exactly makes this check fail anyway in
openSUSE packages? What's wrong with the structure of specs and changelogs in
openSUSE?

You mentioned earlier that "SUSE-style changes format doesn't include enough
information". What information is missing except the version in the first line
of changelog entries? I tried out whether adding version to last changelog
entries makes that warning disappear in several openSUSE packages - and indeed
it does. I also didn't notice anything else when taking a look at random
openSUSE and Fedora rpmspecs.

I see that some packages in Fedora also started to include versions at some
point, not from the beginning, i.e.:

https://src.fedoraproject.org/rpms/emacs/blob/master/f/emacs.spec#_1877

So, in case we decide to keep no-version-in-last-changelog check, fixing it is
not a big deal.

But yeah, I'm probably "ignorant" and I hope that you are going to enlighten
me.

We didn't always do it in Red Hat/Fedora, yes. We actually picked up
the behavior from Mandrake, who started the practice and *also*
created rpmlint. In fact, the whole concept of marking each changelog
entry with the version-release started with Mandrake. They took it a
step further and also always included the VCS revision of the package
sources the package was built from as the first line in the changelog
entry. This practice was carried over into Mageia.

For example, generated RPM changelogs look like this in Mageia:

* Sun Feb 21 2016 Rémi Verschelde <akien@xxxxxxxxxx> 2.0-0.dev.1.mga6
+ Revision: 975107
- imported package godot

(Source:
https://src.fedoraproject.org/rpms/godot/blob/93e6af9cdac55edd1cae52f165f7d462d70c608b/f/godot.spec#_392
)

In fact, the concept of a distribution tag in the package release also
came from Mandrake, as they used it to distinguish their packages from
Red Hat's whenever they forked packages or created their own. Today,
every distribution except openSUSE uses a distribution tag for various
reasons. I'm pretty sure that we started putting the version-release
in changelogs sometime late 2000 or early 2001, which I think
corresponds to when Red Hat started using rpmlint. The usage of a
DistTag in Fedora started sometime in 2006 with the introduction of
Koji (https://koji.build/ / https://koji.fedoraproject.org/koji/).

I don't mean to be rude about the ignorant thing, I meant that it
surprised me that someone from SUSE knew a bit about how Fedora
packaging worked. Most folks seemed to have little idea about how it's
done in Fedora.

--
真実はいつも一つ!/ Always, there's only one truth!
--
To unsubscribe, e-mail: opensuse-packaging+unsubscribe@xxxxxxxxxxxx
To contact the owner, e-mail: opensuse-packaging+owner@xxxxxxxxxxxx

< Previous Next >
Follow Ups