Hi Paul, Thanks for your time reviewing my packages. I've tried to fix as much issues as I'm capable.
Here is a list of changes I've applied to the new package : * Added missing build-dependencies * Wrapped-and-sorted debian directory files * Simplified debian/clean * Upgraded debian/compat to level 11 * Switched to https on every compatible url * Corrected typo on upstream copyright years * Removed unused patch (example_path.diff) * Created a projet on salsa.debian.org and changed repo URL * Fixed and wrapped debian/watch * Changed license keyword to BSD-3-clause * Added a patch to strip Dependencies section from README.md * Removed trailing whitespaces * Added upstreamMetadata file * Add a NEWS.Debian about migrating from the legacy hooks to the new class-based filter system. * Build now works with a pbuilder chroot * Added a patch to fix setuptools warning about unknown option (accepted upstream) * Added some tests * Updated changelog I've some more work to do but not in the packaging project : * File a bug against gpodder to use python3-minidb package instead of a local copy * Ask upstream to sign their commits and tarballs * Alert upstream about XDG_CONFIG_HOME used for cache (instead of XDG_CACHE_HOME) * Ask upstream to give a warning when the legacy hooks are being used. Best Regards, Maxime 2018-01-20 11:54 GMT+01:00 Paul Wise <p...@debian.org>: > Control: owner -1 ! > Control: tags -1 + moreinfo > > I intend to sponsor this. > > On Thu, 18 Jan 2018 21:42:33 +0100 Maxime Werlen wrote: > > > I am looking for a sponsor for my package "urlwatch" > > These issues block the upload of this package: > > The package FTBFS in a clean chroot, you need to package minidb and > build-depend on python3-minidb, python3-setuptools, python3-keyring, > python3-appdirs and python3-requests. > > https://wiki.debian.org/pbuilder > > It would be nice to fix these issues at some point: > > When you package minidb, if possible, please also make a python-minidb > package so that you can report a bug against gpodder to get it to use > the system minidb as it currently includes a minidb copy. > > I would suggest stripping the DEPENDENCIES section from README.md in > the installed binary package since users of the binary package will > already automatically get the dependencies installed. > > I would suggest adding a NEWS.Debian about migrating from the legacy > hooks to the new class-based filter system. > > debian/copyright has an incorrect copyright year for the upstream code, > upstream mentions 2016 but debian/copyright has 2018. > > debian/copyright should have BSD-3-Clause rather than BSD-3-Clause. > > debian/clean can probably be reduced to one line: > > lib/urlwatch.egg-info/ > > I like to wrap and sort the debian directory: > > wrap-and-sort --short-indent --wrap-always --sort-binary-packages > --trailing-comma > > I like to wrap debian/watch to separate fields: > > version=3 > opts="filenamemangle=s/(\d[\d\.]*)\.tar\.gz/urlwatch-$1.tar.gz/" \ > https://github.com/thp/urlwatch/releases \ > (?:.*/)?v?(\d[\d\.]*)\.tar\.gz > > uscan fails unless I delete the debian/watch opts: > > $ uscan --verbose --download-current-version --destdir . > ... > uscan info: Executing internal command: > mk-origtargz --package urlwatch --version 2.7 --rename --compression > gzip --directory . --copyright-file debian/copyright > .//thp/urlwatch/archive/urlwatch-2.7.tar.gz > Could not read .//thp/urlwatch/archive/urlwatch-2.7.tar.gz: No such file > or directory at /usr/bin/mk-origtargz line 397. > uscan: error: mk-origtargz --package urlwatch --version 2.7 --rename > --compression gzip --directory . --copyright-file debian/copyright > .//thp/urlwatch/archive/urlwatch-2.7.tar.gz subprocess returned exit > status 2 > > Please add some upstream metadata: > > https://wiki.debian.org/UpstreamMetadata > > Please ask upstream to sign their commits and tarballs with OpenPGP: > > https://mikegerwitz.com/papers/git-horror-story > https://wiki.debian.org/Creating%20signed%20GitHub%20releases > > Upstream should give a warning when the legacy hooks are being used. > > Upstream is storing a cache file in the xdg config directory, I suggest > that they probably need to read the specs and fix the code/docs: > > https://specifications.freedesktop.org/basedir-spec/basedir- > spec-latest.html > > examples_path.diff is still present in the source package but is not > present in the series file. IMO it should either get deleted or still > be present in the series file, possibly commented out and with a reason > for being disabled in a comment before that. > > Automatic checks: > > lintian > > P: urlwatch source: file-contains-trailing-whitespace debian/changelog > (line 5) > P: urlwatch source: file-contains-trailing-whitespace debian/control > (line 5) > P: urlwatch source: file-contains-trailing-whitespace debian/control > (line 21) > P: urlwatch source: file-contains-trailing-whitespace debian/rules (line > 7) > P: urlwatch source: package-uses-old-debhelper-compat-version 10 > P: urlwatch source: insecure-copyright-format-uri > http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ > I: urlwatch source: testsuite-autopkgtest-missing > P: urlwatch source: debian-watch-may-check-gpg-signature > > build > > /usr/lib/python3.6/distutils/dist.py:261: UserWarning: Unknown > distribution option: 'copyright' > > check-all-the-things > > $ find .. -maxdepth 1 -type f -iwholename '../*.build' -exec grep -nHw E > {} + > ../urlwatch_2.7-1_amd64.build:375:E: pybuild pybuild:283: clean: plugin > distutils failed with: exit code=1: python3.6 setup.py clean > > $ find .. -maxdepth 1 -type f -iwholename '../*.build' -exec grep -nHi > error {} + > ../urlwatch_2.7-1_amd64.build:374:ModuleNotFoundError: No module named > 'setuptools' > ../urlwatch_2.7-1_amd64.build:378:make: *** [clean] Error 25 > ../urlwatch_2.7-1_amd64.build:379:dpkg-buildpackage: error: fakeroot > debian/rules clean subprocess returned exit status 2 > > $ find .. -maxdepth 1 -type f -iwholename '../*.build' -exec grep -nHi > warn {} + > ../urlwatch_2.7-1_amd64.build:6:/usr/lib/python3.6/distutils/dist.py:261: > UserWarning: Unknown distribution option: 'copyright' > ../urlwatch_2.7-1_amd64.build:7: warnings.warn(msg) > > $ env PERL5OPT=-m-lib=. cme check dpkg > Warning in 'control source Standards-Version' value '4.1.3': Current > standards version is '4.1.1'. Please read file:///usr/share/doc/debian-p > olicy/upgrading-checklist.txt.gz to check what changes need to applied to > your package to upgrade it from standard version '4.1.3' to '4.1.1'. > Warning in 'control source Vcs-Browser' value ' > https://anonscm.debian.org/git/collab-maint/urlwatch.git': URL is not the > canonical one for repositories hosted on Alioth. > Warning in 'copyright Format' value 'http://www.debian.org/doc/pac > kaging-manuals/copyright-format/1.0/': Format uses insecure http protocol > instead of https > Configuration item 'source format' has a wrong value: > enum type does not know '3.0 (quilt) > extend-diff-ignore="^[^/]+\.egg-info/"'. Expected '1.0' or '2.0' or '3.0 > (native)' or '3.0 (quilt)' or '3.0 (custom)' or '3.0 (git)' or '3.0 (bzr)' > > $ env PERL5OPT=-m-lib=. duck > I: debian/copyright:1: URL: http://www.debian.org/doc/pack > aging-manuals/copyright-format/1.0/: INFORMATION (Certainty:possible) > URL schema changed from HTTP to HTTPS during redirect(s): > http://www.debian.org -> https://www.debian.org > Please investigate and update the URL eventually, to avoid unneccesary > redirects! > > I: debian/copyright:4: URL: http://thpinfo.com/2008/urlwatch/: > INFORMATION (Certainty:possible) > Domain redirect detected: http://thpinfo.com -> https://thp.io. > Probably a new upstream website? > > I: debian/control: Homepage: http://thpinfo.com/2008/urlwatch/: > INFORMATION (Certainty:certain) > Domain redirect detected: http://thpinfo.com -> https://thp.io. > Probably a new upstream website? > > # check if these can be switched to https:// > $ grep -nHrF http: . > <lots> > > # This command checks style. While a consistent style > # is a good idea, people who have different style > # preferences will want to ignore some of the output. > # Do not bother adding non-upstreamable patches for this. > $ proselint . > ./README.md:87:44: typography.symbols.ellipsis '...' is an approximation, > use the ellipsis symbol '…'. > > # This command checks style. While a consistent style > # is a good idea, people who have different style > # preferences will want to ignore some of the output. > # Do not bother adding non-upstreamable patches for this. > $ find . -type f -iname '*.py' -exec pycodestyle --ignore W191 {} + > /usr/lib/python3/dist-packages/pycodestyle.py:2190: UserWarning: [pep8] > section is deprecated. Use [pycodestyle]. > warnings.warn('[pep8] section is deprecated. Use [pycodestyle].') > ./test/test_handler.py:113:121: E501 line too long (121 > 120 characters) > > # This command checks style. While a consistent style > # is a good idea, people who have different style > # preferences will want to ignore some of the output. > # Do not bother adding non-upstreamable patches for this. > $ pydocstyle . > <lots> > > $ find . -type f -iname '*.py' -exec pylint3 --rcfile=/dev/null > --msg-template='{path}:{line}:{column}: [{category}:{symbol}] {obj}: > {msg}' --reports=n {} + > <lots> > > $ python3-bandit -r . > <lots> > > $ find . -type d \( -iname .bzr -o -iname .git -o -iname .hg -o -iname > .svn -o -iname CVS -o -iname RCS -o -iname SCCS -o -iname _MTN -o -iname > _darcs -o -iname .pc -o -iname .cabal-sandbox -o -iname .cdv -o -iname > .metadata -o -iname CMakeFiles -o -iname _build -o -iname _sgbak -o -iname > autom4te.cache -o -iname blib -o -iname cover_db -o -iname node_modules -o > -iname '~.dep' -o -iname '~.dot' -o -iname '~.nib' -o -iname '~.plst' \) > -prune -o -type f ! \( -iname '*.bak' -o -iname '*.swp' -o -iname '#.*' -o > -iname '#*#' -o -iname 'core.*' -o -iname '*~' -o -iname '*.gif' -o -iname > '*.jpg' -o -iname '*.jpeg' -o -iname '*.png' -o -iname '*.min.js' -o -iname > '*.js.map' -o -iname '*.js.min' -o -iname '*.min.css' -o -iname '*.css.map' > -o -iname '*.css.min' -o -iname '*.wav' \) -exec env PERL5OPT=-m-lib=