Bug#889816: lintian: Complain when epoch has been bumped but upstream version did not go backwards

2018-05-08 Thread Raphael Hertzog
Hi,

On Tue, 08 May 2018, Mattia Rizzolo wrote:
> > > I think this warning was not in place yet when you made that mistake.
> > 
> > This warning was added in 2007 so it's likely I just missed it.
> 
> I doubt you missed it.
> latest-debian-changelog-entry-without-new-version is really what it
> says: the overall version decreases.  You can see it when you use a
> 'backports like' without targetting backports.
> 
> If you bump an epoch you should never see it.

That's not true, the code drops the epoch:
tag 'latest-debian-changelog-entry-without-new-version'
  unless versions_gt(
$first_version =~ s/^([^:]+)://r,
$second_version =~ s/^([^:]+)://r
  )
  or $entries[0]->Changes =~ /backport/i
  or $entries[0]->Source ne $entries[1]->Source;

This is a recent change (2.5.75):
  * checks/changelog-file.desc:
+ [CL] When checking latest-debian-changelog-entry-without-new-version
  ignore any change of epoch.  (Closes: #889991)

IMO reusing this tag to implement what was requested in #889991 was
a bad decision. The two problems are not really related. The fact that
the version (with epoch included!) is not increasing is a real problem
except when we backport.

The fact that we are reusing a version (with epoch stripped) that already
existed in the past is another problem. I'm going to reopen #889991.

Cheers,
-- 
Raphaël Hertzog ◈ Debian Developer

Support Debian LTS: https://www.freexian.com/services/debian-lts.html
Learn to master Debian: https://debian-handbook.info/get/



Bug#889816: lintian: Complain when epoch has been bumped but upstream version did not go backwards

2018-05-08 Thread Mattia Rizzolo
On Tue, May 08, 2018 at 03:57:23AM +0100, Chris Lamb wrote:
> > >  "W: latest-debian-changelog-entry-without-new-version"
> > > 
> > > Do you think it's still worth adding (essentially) an "E:" version
> > > of this? I would tend to be in favour, given that at least I did not
> > > see this warning when uploading "that" Django version.
> > 
> > I think this warning was not in place yet when you made that mistake.
> 
> This warning was added in 2007 so it's likely I just missed it.

I doubt you missed it.
latest-debian-changelog-entry-without-new-version is really what it
says: the overall version decreases.  You can see it when you use a
'backports like' without targetting backports.

If you bump an epoch you should never see it.
Also looking at your commit I don't see it added to the expected tags of
the new tests, so I don't see how you felt like it was a duplicate.

-- 
regards,
Mattia Rizzolo

GPG Key: 66AE 2B4A FCCF 3F52 DA18  4D18 4B04 3FCD B944 4540  .''`.
more about me:  https://mapreri.org : :'  :
Launchpad user: https://launchpad.net/~mapreri  `. `'`
Debian QA page: https://qa.debian.org/developer.php?login=mattia  `-


signature.asc
Description: PGP signature


Processed: Re: Bug#889816: lintian: Complain when epoch has been bumped but upstream version did not go backwards

2018-05-07 Thread Debian Bug Tracking System
Processing commands for cont...@bugs.debian.org:

> tags 889816 + pending
Bug #889816 [lintian] lintian: Complain when epoch has been bumped but upstream 
version did not go backwards
Added tag(s) pending.
> thanks
Stopping processing here.

Please contact me if you need assistance.
-- 
889816: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=889816
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems



Bug#889816: lintian: Complain when epoch has been bumped but upstream version did not go backwards

2018-05-07 Thread Chris Lamb
tags 889816 + pending
thanks

Hi Raphael,

> >  "W: latest-debian-changelog-entry-without-new-version"
> > 
> > Do you think it's still worth adding (essentially) an "E:" version
> > of this? I would tend to be in favour, given that at least I did not
> > see this warning when uploading "that" Django version.
> 
> I think this warning was not in place yet when you made that mistake.

This warning was added in 2007 so it's likely I just missed it. Anyway,
I have implemented this in Git, pending upload:

  
https://salsa.debian.org/lintian/lintian/commit/bb13a144e8b2b4326dc5a1d65bf7a1b8f1881247

> Still I think that [latest-debian-changelog-entry-without-new-version]
> was not correctly implemented. It should really ensure that […]

(If so, could you clone and/or re-file etc. with concrete examples?)


Best wishes,

-- 
  ,''`.
 : :'  : Chris Lamb
 `. `'`  la...@debian.org / chris-lamb.co.uk
   `-



Bug#889816: lintian: Complain when epoch has been bumped but upstream version did not go backwards

2018-05-07 Thread Raphael Hertzog
Hi Chris,

On Mon, 07 May 2018, Chris Lamb wrote:
> I've just implemented this, but I notice that it overlaps with
> 
>  "W: latest-debian-changelog-entry-without-new-version"
> 
> Do you think it's still worth adding (essentially) an "E:" version
> of this? I would tend to be in favour, given that at least I did not
> see this warning when uploading "that" Django version.

I think this warning was not in place yet when you made that mistake.

Still I think that this warning was not correctly implemented. It should
really ensure that the epoch-less version does not match any former
epoch-less version (of entries matching the same source package name).

Ensuring that the version is greater is not sufficient as we can have had
multiple epoch jumps in the past and we can potentially have again the
same version even though the last two changelog entries have increasing
version numbers.

So yes I think that this "error-level" tag is still deserved and that we
should better implement latest-debian-changelog-entry-without-new-version. 

Cheers,
-- 
Raphaël Hertzog ◈ Debian Developer

Support Debian LTS: https://www.freexian.com/services/debian-lts.html
Learn to master Debian: https://debian-handbook.info/get/



Bug#889816: lintian: Complain when epoch has been bumped but upstream version did not go backwards

2018-05-07 Thread Chris Lamb
Hi Raphael Hertzog,

I've just implemented this, but I notice that it overlaps with

 "W: latest-debian-changelog-entry-without-new-version"

Do you think it's still worth adding (essentially) an "E:" version
of this? I would tend to be in favour, given that at least I did not
see this warning when uploading "that" Django version.


Regards,

-- 
  ,''`.
 : :'  : Chris Lamb
 `. `'`  la...@debian.org / chris-lamb.co.uk
   `-



Bug#889816: lintian: Complain when epoch has been bumped but upstream version did not go backwards

2018-05-07 Thread Chris Lamb
Dear Raphael,

> Bad:
> 
> python-django (2:2.0-1) experimental; urgency=medium
> 
>   * New upstream stable release.
> https://docs.djangoproject.com/en/2.0/releases/2.0/
> 
>  -- Chris Lamb   Sat, 02 Dec 2017 18:36:33 +
> 
> python-django (1:2.0~rc1-1) experimental; urgency=medium
> 
>   * New upstream release candidate.

Well played sir, well played… :)


Best wishes,

-- 
  ,''`.
 : :'  : Chris Lamb
 `. `'`  la...@debian.org / chris-lamb.co.uk
   `-



Bug#889816: lintian: Complain when epoch has been bumped but upstream version did not go backwards

2018-05-07 Thread Raphael Hertzog
On Fri, 04 May 2018, Chris Lamb wrote:
> Could you provide some concrete "good" and "bad" cases? I'm pretty
> sure I know what you're after here but want to be 100% certain,
> especially if we want this to be an "error". :)

Good (in the context of this lintian tag, though I would have used
1.10~beta1+really1.9.7 in this case):

python-django (1:1.9.7-2) unstable; urgency=medium

  * Re-upload 1.9.7 to unstable with epoch.

 -- Chris Lamb   Sun, 26 Jun 2016 09:58:19 +0200

python-django (1.10~beta1-1) unstable; urgency=medium

  * New upstream beta release.

 -- Chris Lamb   Sat, 25 Jun 2016 19:17:49 +0200



Bad:

python-django (2:2.0-1) experimental; urgency=medium

  * New upstream stable release.
https://docs.djangoproject.com/en/2.0/releases/2.0/

 -- Chris Lamb   Sat, 02 Dec 2017 18:36:33 +

python-django (1:2.0~rc1-1) experimental; urgency=medium

  * New upstream release candidate.


  * Drop trailing whitespace in debian/changelog.

 -- Chris Lamb   Thu, 16 Nov 2017 09:55:14 +0900


;-)

Cheers,
-- 
Raphaël Hertzog ◈ Debian Developer

Support Debian LTS: https://www.freexian.com/services/debian-lts.html
Learn to master Debian: https://debian-handbook.info/get/



Bug#889816: lintian: Complain when epoch has been bumped but upstream version did not go backwards

2018-05-04 Thread Chris Lamb
tags 889816 + moreinfo
thanks

Hi Raphaël,

> lintian: Complain when epoch has been bumped but upstream version did not go 
> backwards

Could you provide some concrete "good" and "bad" cases? I'm pretty
sure I know what you're after here but want to be 100% certain,
especially if we want this to be an "error". :)


Best wishes,

-- 
  ,''`.
 : :'  : Chris Lamb
 `. `'`  la...@debian.org / chris-lamb.co.uk
   `-



Bug#889816: lintian: Complain when epoch has been bumped but upstream version did not go backwards

2018-02-07 Thread Raphaël Hertzog
Package: lintian
Version: 2.5.73
Severity: wishlist

When the last changelog entry implements an epoch bump, we want to make
sure that the epoch is justified by the fact that the upstream version
is lower than the former entry in the changelog.

e.g when you switch from E¹:U¹-D¹ to E²:U²-D² (E=epoch, U=upstream
version, D=Debian revision) you want to ensure that U¹ > U².

This is similar in spirit to epoch-change-without-comment but would
be a somewhat stronger subset (maybe Error while the other is Warning?)...
It could only be ignored if overriden while the other would
not trigger as soon as some sort of explanation seems to be given
in the changelog.

I believe both tags should trigger on the source package only.

-- System Information:
Debian Release: buster/sid
  APT prefers oldoldstable
  APT policy: (500, 'oldoldstable'), (500, 'unstable'), (500, 'testing'), (500, 
'stable'), (500, 'oldstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.14.0-3-amd64 (SMP w/4 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8), 
LANGUAGE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages lintian depends on:
ii  binutils  2.30-1
ii  bzip2 1.0.6-8.1
ii  diffstat  1.61-1+b1
ii  dpkg  1.19.0.5
ii  file  1:5.32-1
ii  gettext   0.19.8.1-4
ii  intltool-debian   0.35.0+20060710.4
ii  libapt-pkg-perl   0.1.33
ii  libarchive-zip-perl   1.60-1
ii  libclass-accessor-perl0.51-1
ii  libclone-perl 0.39-1
ii  libdpkg-perl  1.19.0.5
ii  libemail-valid-perl   1.202-1
ii  libfile-basedir-perl  0.07-1
ii  libipc-run-perl   0.96-1
ii  liblist-moreutils-perl0.416-1+b3
ii  libparse-debianchangelog-perl 1.2.0-12
ii  libperl5.26 [libdigest-sha-perl]  5.26.1-4+b1
ii  libtext-levenshtein-perl  0.13-1
ii  libtimedate-perl  2.3000-2
ii  liburi-perl   1.73-1
ii  libxml-simple-perl2.24-1
ii  libyaml-libyaml-perl  0.69+repack-1
ii  man-db2.8.0-2
ii  patchutils0.3.4-2
ii  perl  5.26.1-4+b1
ii  t1utils   1.41-2
ii  xz-utils  5.2.2-1.3

Versions of packages lintian recommends:
ii  libperlio-gzip-perl  0.19-1+b4

Versions of packages lintian suggests:
pn  binutils-multiarch 
ii  dpkg-dev   1.19.0.5
ii  libhtml-parser-perl3.72-3+b2
ii  libtext-template-perl  1.47-1

-- no debconf information