Package: lintian
Version: 2.116.3
Severity: normal
Tags: patch

Dear Maintainer,

Consider this watchfile:

version=3
# Search the version number on this page
https://download.qt.io/development_releases/qt/6.7/
# Then use downloadurlmangle to transform it to the URL to the archive.
#
# We don't use repacksuffix=+ds because in salsa-ci we want to have the +ds
suffix, even if we use --no-exclusion (ie even if we ignore Files-Excluded)
#
opts="uversionmangle=s/(\d)[_\.\-\+]?((RC|rc|pre|dev|beta|alpha)\d*)$/$1~$2/, 
\
 dversionmangle=s/@DEB_EXT@//, \
 oversionmangle=s/$/\+ds.1/, \
downloadurlmangle=s/\/([\d\.]*(-((RC|rc|pre|dev|beta|alpha)\d*))?)\/$/\/$1\/
single\/qt-
everywhere-src-$1\.tar\.xz/, \
 filenamemangle=s/.*\/([\d\.]*(-((RC|rc|pre|dev|beta|alpha)\d*))?)\/$/qt-
everywhere-src-$1\.tar\.xz/" \
 https://download.qt.io/development_releases/qt/6\.(?:[\d\.]*)/ ([\d\.]*-.*)/
debian bash debian/scripts/repack.sh



Lintian will output:

debian-watch-not-mangling-version
opts="uversionmangle=s/(\d)[_\.\-\+]?((RC|rc|pre|dev|beta|alpha)\d*)$/$1~$2/,
dversionmangle=s/@DEB_EXT@//, oversionmangle=s/$/\+ds.1/,
downloadurlmangle=s/\/([\d\.]*(-((RC|rc|pre|dev|beta|alpha)\d*))?)\/$/\/$1\/
single\/qt-
everywhere-src-$1\.tar\.xz/,
filenamemangle=s/.*\/([\d\.]*(-((RC|rc|pre|dev|beta|alpha)\d*))?)\/$/qt-
everywhere-src-$1\.tar\.xz/"
https://download.qt.io/development_releases/qt/6\.(?:[\d\.]*)/ ([\d\.]*-.*)/
debian bash debian/scripts/repack.sh [debian/watch:12]


I suspect this is because lintian considers that @DEB_EXT@ is only valid for a
watchfile version >= 4 (see $DMANGLES_AUTOMATICALLY variable), but according 
to
source code in uscan, it seems it requires version >= 2.


BTW, I noticed that:
- if I use version=4 with @DEB_EXT@, the lintian warning is gone
- if I use version=3 + dversionmangle=auto, the lintian warning is gone as
well.

But version=3 with @DEB_EXT@ triggers the warning.

I'm attaching a patch without being sure that it is the correct way to fix the 
issue, but when it is applied lintian doesn't report a warning.



-- System Information:
Debian Release: 12.4
  APT prefers stable-updates
  APT policy: (991, 'stable-updates'), (991, 'stable-security'), (991, 
'stable'), (990, 'proposed-updates'), (390, 'oldstable-security'), (390, 
'oldstable'), (389, 'oldstable-updates'), (380, 'oldoldstable'), (379, 
'oldoldstable-updates'), (370, 'oldoldstable'), (95, 'testing'), (94, 
'unstable'), (93, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 6.1.0-17-amd64 (SMP w/4 CPU threads; PREEMPT)
Kernel taint flags: TAINT_WARN, TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8), 
LANGUAGE=fr:en_US
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages lintian depends on:
ii  binutils                        2.40-2
ii  bzip2                           1.0.8-5+b1
ii  diffstat                        1.65-1
ii  dpkg                            1.21.22
ii  dpkg-dev                        1.21.22
ii  file                            1:5.44-3
ii  gettext                         0.21-12
ii  gpg                             2.2.40-1.1
ii  intltool-debian                 0.35.0+20060710.6
ii  iso-codes                       4.15.0-1
ii  libapt-pkg-perl                 0.1.40+b2
ii  libarchive-zip-perl             1.68-1
ii  libberkeleydb-perl              0.64-2+b1
ii  libcapture-tiny-perl            0.48-2
ii  libclass-xsaccessor-perl        1.19-4+b1
ii  libclone-perl                   0.46-1
ii  libconfig-tiny-perl             2.28-2
ii  libconst-fast-perl              0.014-2
ii  libcpanel-json-xs-perl          4.35-1
ii  libdata-dpath-perl              0.58-2
ii  libdata-validate-domain-perl    0.10-1.1
ii  libdata-validate-uri-perl       0.07-2
ii  libdevel-size-perl              0.83-2+b1
pn  libdigest-sha-perl              <none>
ii  libdpkg-perl                    1.21.22
ii  libemail-address-xs-perl        1.05-1+b1
ii  libfile-basedir-perl            0.09-2
ii  libfile-find-rule-perl          0.34-3
ii  libfont-ttf-perl                1.06-2
ii  libhtml-html5-entities-perl     0.004-3
ii  libhtml-tokeparser-simple-perl  3.16-4
ii  libio-interactive-perl          1.023-2
ii  libipc-run3-perl                0.048-3
ii  libjson-maybexs-perl            1.004004-1
ii  liblist-compare-perl            0.55-2
ii  liblist-someutils-perl          0.59-1
ii  liblist-utilsby-perl            0.12-2
ii  libmldbm-perl                   2.05-4
ii  libmoo-perl                     2.005005-1
ii  libmoox-aliases-perl            0.001006-2
ii  libnamespace-clean-perl         0.27-2
ii  libpath-tiny-perl               0.144-1
ii  libperlio-gzip-perl             0.20-1+b1
ii  libperlio-utf8-strict-perl      0.010-1
ii  libproc-processtable-perl       0.634-1+b2
ii  libregexp-wildcards-perl        1.05-3
ii  libsereal-decoder-perl          5.003+ds-1
ii  libsereal-encoder-perl          5.003+ds-1
ii  libsort-versions-perl           1.62-3
ii  libsyntax-keyword-try-perl      0.28-1
ii  libterm-readkey-perl            2.38-2+b1
ii  libtext-levenshteinxs-perl      0.03-5+b1
ii  libtext-markdown-discount-perl  0.16-1
ii  libtext-xslate-perl             3.5.9-1+b2
ii  libtime-duration-perl           1.21-2
ii  libtime-moment-perl             0.44-2+b1
ii  libtimedate-perl                2.3300-2
ii  libunicode-utf8-perl            0.62-2
ii  liburi-perl                     5.17-1
ii  libwww-mechanize-perl           2.16-1
ii  libwww-perl                     6.68-1
ii  libxml-libxml-perl              2.0207+dfsg+really+2.0134-1+b1
ii  libyaml-libyaml-perl            0.86+ds-1
ii  lzop                            1.04-2
ii  man-db                          2.11.2-2
ii  patchutils                      0.4.2-1
ii  perl [libencode-perl]           5.36.0-7+deb12u1
ii  plzip [lzip-decompressor]       1.10-5
ii  t1utils                         1.41-4
ii  unzip                           6.0-28
ii  xz-utils                        5.4.1-0.2

lintian recommends no packages.

Versions of packages lintian suggests:
pn  binutils-multiarch     <none>
ii  libtext-template-perl  1.61-1

-- no debconf information
--- a/usr/share/lintian/lib/Lintian/Check/Debian/Watch.pm
+++ b/usr/share/lintian/lib/Lintian/Check/Debian/Watch.pm
@@ -44,7 +44,7 @@
 const my $URL_ACTION_FIELDS => 4;
 const my $VERSION_ACTION_FIELDS => 3;
 
-const my $DMANGLES_AUTOMATICALLY => 4;
+const my $DMANGLES_AUTOMATICALLY => 2;
 
 sub source {
     my ($self) = @_;

Reply via email to