[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#973637: flag debian/watch files that use older versions of the format



> Hi Jelmer
>
> On Mon, Nov 2, 2020 at 9:57 AM Jelmer Vernooij <jelmer@debian.org>
> wrote:
> >
> > It would be great if lintian could flag debian/watch files that
> > didn't use a watch file format version or use an older version
> > (< 4).
>
> Can you just use the existing classification tag
> debian-watch-file-standard [1] [2]? It will give you the version.
>
> Please feel free to close if that tag works for you. Thanks!

Hi all,

1. We could have a "info" lintian tag for version 3, deprecated but
compatible with version 4. But version 2 is really deprecated and it's
not easy to maintain uscan with 4 versions (It took me a lot of hours to
rewrite old uscan to modern Perl-OO).
That's why I'd like to see a "error" tag for version ≤ 2.

2. Since version 3 is compatible with version 4, debian-janitor could
automatically update debian/watch from version 3 to version 4 [1], but
without changing debian/watch when version is ≤ 2 [1] (I think only a
few packages still use version 2 and version < 2 [= no-version] already
generates an error).

3. After bullseye release, I'd like to propose to remove version=2
support from uscan.

Cc to debian-devel for advices if I'm wrong;

NB:
 * Version 2:  4 Feb 2002
 * Version 3: 15 Mar 2005
 * Version 4: 30 Dec 2015

[1]: https://salsa.debian.org/jelmer/debian-janitor/-/issues/144

==== 8< ==== end of uscan(1) manpage ==== 8< ====
HISTORY AND UPGRADING

This section briefly describes the backwards-incompatible watch file
features which have been added in each watch file version, and the first
version of the devscripts package which understood them.

  Pre-version 2
    The watch file syntax was significantly different in those days.
    Don't use it.  If you are upgrading from a pre-version 2 watch file,
    you are advised to read this manpage and to start from scratch.

  Version 2
    devscripts version 2.6.90: The first incarnation of the current
    style of watch files.

  Version 3
    devscripts version 2.8.12: Introduced the following: correct
    handling of regex special characters in the path part,
    directory/path pattern matching, version number in several parts,
    version number mangling. Later versions have also introduced URL
    mangling.

    If you are upgrading from version 2, the key incompatibility is if
    you have multiple groups in the pattern part; whereas only the first
    one would be used in version 2, they will all be used in version 3.
    To avoid this behavior, change the non-version-number groups to be
    (?:  ... ) instead of a plain (  ...  ) group.

    • uscan invokes the custom script as "script --upstream-version
      version ../spkg_version.orig.tar.gz".

    • uscan invokes the standard uupdate as "uupdate --no-symlink
      --upstream-version version ../spkg_version.orig.tar.gz".

  Version 4
    devscripts version 2.15.10: The first incarnation of watch files
    supporting multiple upstream tarballs.

    The syntax of the watch file is relaxed to allow more spaces for
    readability.

    If you have a custom script in place of uupdate, you may also
    encounter problems updating from Version 3.

    • uscan invokes the custom script as "script --upstream-version
      version".

    • uscan invokes the standard uupdate as "uupdate --find
      --upstream-version version".

    Restriction for --dehs is lifted by redirecting other output to
    STDERR when it is activated.
==== >8 ====


Reply to: