Re: scripting automated lintian fixes
On Sat, Oct 13, 2018 at 11:12:28PM +0100, Chris Lamb wrote:
> [adding isomer@gmail.com to CC]
>
> > It looks like you are the other two committers of many automated changes across
> > Debian for various simple lintian issues.
>
> So, as you know, "changes across Debian" is somewhat ambiguous as the
> actual-canonical source for Debian is not even (!) on salsa.d.o or the
> specified Vcs-*. Are you referring to my changes in the Debian Python
> Module Team? (I can't think of any other such large changes I have made.)
Ah, hmm. I didn't realize yours were just for the Debian Python Module team.
Ondřej's are definitely across a wide variety of teams and packages on salsa.debian.org.
> Alas, my "scripts" are literally horrible shell one-liners such as the
> following recovered from my ~/.histfile:
>
> $ cd /home/lamby/git/debian/python-team/modules; for X in */; do (cd $X; pwd; sed -i -e 's@[[:space:]]*$@@g' debian/control debian/changelog; sed -i -e 's@[ ]*$@@g' debian/rules; sed -i -e :a -e '/^\n*$/{$d;N;};/\n$/ba' debian/rules debian/control debian/changelog debian/copyright; git add debian/control debian/changelog debian/rules debian/copyright && git commit -m "Remove trailing whitespaces." && read PAUSE && git push); done
That's fair, mine are actual scripts - but usually also only just three or four lines.
I.e. here's my "script" for stripping trailing whitespace:
https://salsa.debian.org/jelmer/lintian-brush/blob/master/fixers/lintian/file-contains-trailing-whitespace.sh
(the changelog editing and git magic is handled by the wrapper script)
> Some quick thoughts before I head to bed:
>
> * I wonder if this could be incorporated in lintian.git. At the very
> least this might ensure that things stay-up-date and we could even
> grow some kind of "--auto-fix" (or, more-likely, a separate command
> but whatever..)
That's pretty much what the wrapper code I have so far does.
http://salsa.debian.org/jelmer/lintian-brush contains a "lintian-brush" command
that can apply (with changelog entry + VCS commit) all the lintian fixers it
knows about on a local (versioned) source package.
> * I feel, personally, that I can move the needle more effectively on
> QA efforts in Debian by focusing on implementing new checks, most of
> which cannot be sedded away.
>
> I thus won't be in a position to contribute here in the short- to
> medium-term. Naturally, I would not stop in anyone's way making such
> changes nor question their value - it's just a time tradeoff for me.
Sorry, I should have been clearer in my original mail.
I was hoping Ondřej and you would be open to sharing your existing one-liner
lintian issue fixers, so we could put them in a common pool (i.e. a git
repository). I'm happy to take it from there. :-)
Cheers,
Jelmer
Reply to: