Bug#1007002: Lintian breaks existing lintian-overrides due to added []

2022-06-29 Thread Andreas Tille
Hi Axel,

Am Wed, Jun 29, 2022 at 06:01:33PM +0200 schrieb Axel Beckert:
> Andreas: Sorry if I was a bit too opposing because of assuming that
> every DD uses Unstable by default.

No need to be sorry, really not.  I simply missed the point of that
change.

> (Actually I think the Dev Ref says
> you should, though. ;-) Or if DDs pinned Lintian to 2.111.0 from
> Testing…

I'm using testing but pinned lintian on unstable - so at least in my
case it was not what Lucas pointed out.  It was just that I beared the
change for some time ... and than my amount of patience spilled over.
;-P

But its correct that some users might use lintian from testing anyway.

Kind regards

 Andreas.

-- 
http://fam-tille.de



Bug#1007002: Lintian breaks existing lintian-overrides due to added []

2022-06-29 Thread Axel Beckert
Hi again,

Axel Beckert wrote:
> Andreas Tille wrote:
> > I'll start editing lintian-overrides then.
> 
> Maybe wait a bit with that. Given Lucas' comment, I feel a bit more
> urged to provide such a migration script.
> 
> I will look into this for the next upload. No promises as of now,
> though.

A first prototype is now available in git in the branch
"migrate-overrides":

https://salsa.debian.org/lintian/lintian/-/blob/migrate-overrides/bin/lintian-migrate-overrides-to-pointed-hints

So far the script only knows about the tags spelling-error-in-binary
and package-contains-documentation-outside-usr-share-doc, but it is
explicitly written to be expandable. Of course it will also get
support for more tags in the (near) future.

Additionally it currently only prints the transformed result to
STDOUT. The plan is to also support inline editing, either with an -i
option or maybe even by default if it detects that the package is
maintained in git.

Please give me feedback if this approach (especially after inline
editing is supported) is feasible — preferably from those who are
annoyed. :-)

It's not yet in the master branch as neither Perl::Critic nor myself
are happy about the usage of (the expression form of) "eval" in there.
(Maybe one of the other JAPH has an idea on this. :-)

Patches and other improvements suggestions as well as pattern sets for
further tags are of course welcome as well.

(Note: I will probably force-push that feature branch over and over
again until I'm satisfied. If someone else wants to work on the same
branch, too, we can also work without forced pushes and squash-merge
the result at the end. Please contact me, if you're interested.)

Regards, Axel
-- 
 ,''`.  |  Axel Beckert , https://people.debian.org/~abe/
: :' :  |  Debian Developer, ftp.ch.debian.org Admin
`. `'   |  4096R: 2517 B724 C5F6 CA99 5329  6E61 2FF9 CD59 6126 16B5
  `-|  1024D: F067 EA27 26B9 C3FC 1486  202E C09E 1D89 9593 0EDE



Bug#1007002: Lintian breaks existing lintian-overrides due to added []

2022-06-29 Thread Axel Beckert
Hi Lucas,

Lucas Nussbaum wrote:
> Just a note that since the last version of lintian to migrate to testing
> was 2.111 (which was also the last one to be backported to stable), some
> of us might not have updated since 2.111 and might be hit by changes
> that happened since then.

Oh, right! Thanks for that view on Andreas' mail.

I indeed did not think about that case because I do nearly all Debian
development work on Unstable (and occassionally on Stable when a new
package starts as a quick and dirty hack to scratch my own itches at
work :-).

And until my reply to Andreas I also wasn't aware of when Felix
actually started with this. Just knew that it wasn't a one-shot thing,
but quite distributed over at least the past half year (because that's
the timeframe of git commits I most often looked into in the past few
weeks).

Andreas: Sorry if I was a bit too opposing because of assuming that
every DD uses Unstable by default. (Actually I think the Dev Ref says
you should, though. ;-) Or if DDs pinned Lintian to 2.111.0 from
Testing…

Andreas Tille wrote:
> I'll start editing lintian-overrides then.

Maybe wait a bit with that. Given Lucas' comment, I feel a bit more
urged to provide such a migration script.

I will look into this for the next upload. No promises as of now,
though.

Regards, Axel
-- 
 ,''`.  |  Axel Beckert , https://people.debian.org/~abe/
: :' :  |  Debian Developer, ftp.ch.debian.org Admin
`. `'   |  4096R: 2517 B724 C5F6 CA99 5329  6E61 2FF9 CD59 6126 16B5
  `-|  1024D: F067 EA27 26B9 C3FC 1486  202E C09E 1D89 9593 0EDE



Bug#1007002: Lintian breaks existing lintian-overrides due to added []

2022-06-29 Thread Lucas Nussbaum
On 29/06/22 at 15:49 +0200, Axel Beckert wrote:
> Correct, except that it happened for quite a while (7 months at least)
> and was (and maybe still is — see below) a continuous transition. It
> is present since at least 2.114.0 from November 2021. According to the
> git history, the implementation started shortly before the 2.114.0
> upload, but the bug report which requested this is actually from 2014:
> https://bugs.debian.org/743226
> 
> And yes, 2.115.0 (but not 2.115.1 or 2.115.2 from today) had more such
> changes as there were over 200 commits from Felix included which he
> did after 2.114.0, but which weren't uploaded since then.

Hi Axel,

Just a note that since the last version of lintian to migrate to testing
was 2.111 (which was also the last one to be backported to stable), some
of us might not have updated since 2.111 and might be hit by changes
that happened since then.

(I'm not arguing whether it should be kept or reverted, but I'm just
mentioning this as other disruptive changes might be discovered in the
coming days)

Lucas


signature.asc
Description: PGP signature


Bug#1007002: Lintian breaks existing lintian-overrides due to added []

2022-06-29 Thread Andreas Tille
Hi Samuel and Axel,

Am Wed, Jun 29, 2022 at 04:10:49PM +0200 schrieb Samuel Thibault:
> Axel Beckert, le mer. 29 juin 2022 15:49:11 +0200, a ecrit:
> > > I consider these [] not helpful […] no visible advantage.

OK, thanks for making the advantages visible to me then.  I'll
start editing lintian-overrides then.

Kind regards

  Andreas. 

-- 
http://fam-tille.de



Bug#1007002: Lintian breaks existing lintian-overrides due to added []

2022-06-29 Thread Samuel Thibault
Hello,

Axel Beckert, le mer. 29 juin 2022 15:49:11 +0200, a ecrit:
> > I consider these [] not helpful […] no visible advantage.
> 
> The advantage is to clearly mark what is a file with potentially a
> line number in the output of lintian so that further processors like
> the lintian website can do deep links to the proper code position on
> e.g. sources.debian.org or salsa.debian.org. Felix called it "pointed
> hints".
> 
> From my point of view, that's quite an advantage.

Yes, I fully agree.  The format migration poses problem (I had to patch
quite a few lintian files), but it solves a lot other current-and-future
problems: we can now just ignore whole sets of warnings for a given file
(typically one that is generated by some tool such as doxygen)

Samuel



Bug#1007002: Lintian breaks existing lintian-overrides due to added []

2022-06-29 Thread Axel Beckert
Hi Andreas,

Andreas Tille wrote:
> I realised that lintian (at least) starting with version 2.115.1 (may be
> earlier) wraps file names into [] which breaks existing
> lintian-overrides.

Correct, except that it happened for quite a while (7 months at least)
and was (and maybe still is — see below) a continuous transition. It
is present since at least 2.114.0 from November 2021. According to the
git history, the implementation started shortly before the 2.114.0
upload, but the bug report which requested this is actually from 2014:
https://bugs.debian.org/743226

And yes, 2.115.0 (but not 2.115.1 or 2.115.2 from today) had more such
changes as there were over 200 commits from Felix included which he
did after 2.114.0, but which weren't uploaded since then. Many of them
were (IMHO irresponsibly) marked "Gbp-Dch: Ignore" and hence didn't
show up in debian/changelog when I generated it with "gbp dch". (I
though ignored that in some cases and added them manually to the
debian/changelog entry, partially even retroactively.)

> I consider these [] not helpful […] no visible advantage.

The advantage is to clearly mark what is a file with potentially a
line number in the output of lintian so that further processors like
the lintian website can do deep links to the proper code position on
e.g. sources.debian.org or salsa.debian.org. Felix called it "pointed
hints".

From my point of view, that's quite an advantage.

See also https://bugs.debian.org/1007002 for the proper bug report
about the issue with invalidating overrides by this transition. I've
added it to the Cc of this thread and dropped lintian-ma...@debian.org
instead as mails to that bug report get forwarded to the Lintian Team
anyway.

> since it breaks lots of lintian-overrides

Felix decided that it's worth to implement this requested feature and
I at least partially agree as I do clearly see the advantage and also
like the possibilities which this now offers.

> Could this change in lintian please be reverted?

I clearly won't do that — for multiple reasons:

* Far too much work for the gain (IMHO)
* Losing a requested feature.
* Invalidating 7 months of already updated overrides.
* Better ways to invest your (and my) time. (See my proposition
  below.)

Background:

This seems not to have been one big commit but many small commits
whenever a tag was touched by Felix. Reverting it to the old format
would be a huge effort for which I don't have the time as there are
way more pressing issues in lintian. And I'm very sure it can't be
done by just doing a bunch of "git revert". So far I found 15 commits
by Felix mentioning  "pointed hint" reaching from November 2021 to
March 2022. With about 200 other, partially quite invasive commits
inbetween.

And in addition to that, it's IMHO _far_ too late, because many
maintainers already have updated their overrides in the past 7 months.

And I'm currently not sure if I would even accept a Merge Request
which tries to do that.

But I doubt that anyone would a) make that effort and b) make all
those maintainers angry who already updated their overrides in the
past 7 months or more.

Roberto C. Sánchez wrote:
> Or perhaps make the new format default

That was Felix' plan, yes. I just have currently no idea how many tags
have been and how many haven't been converted yet.

If there aren't too many tags left, I might finish this transition.

If there are many tags left, I'd only do that if we have a way to cope
with it with much less effort than it so far caused.

And from my point of view, the only way to get out of this mess
without causing too much work for anyone (maintainers of packages with
affected overrides as well as the current Lintian maintainers):

Someone should write a converter from the old to the new format. That
doesn't sound too difficult. Main work would be gathering for each tag
involved how it looked beforehand and how it looked now. This probably
can be gathered from changes in git to Lintian's test suite.

And maybe it should even try to output overrides which are compatible
with the old and new format, at least in cases where the order of
parameters didn't change. See lintian's own overrides for some examples:
https://salsa.debian.org/lintian/lintian/-/blob/master/debian/source/lintian-overrides
(Although this also accounts for a bug which only ever was present in
Lintian's git repository and never got uploaded, but still got an RC
bug report because people started using lintian off the git repo due
to it no having been maintained for months:
https://bugs.debian.org/1003353)

Regards, Axel
-- 
 ,''`.  |  Axel Beckert , https://people.debian.org/~abe/
: :' :  |  Debian Developer, ftp.ch.debian.org Admin
`. `'   |  4096R: 2517 B724 C5F6 CA99 5329  6E61 2FF9 CD59 6126 16B5
  `-|  1024D: F067 EA27 26B9 C3FC 1486  202E C09E 1D89 9593 0EDE


signature.asc
Description: PGP signature