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

Bug#887660: RFS: minidb/2.0.2-1 [ITP]



Control: owner -1 !
Control: tags -1 + moreinfo

I intend to sponsor this because the urlwatch RFS needs it.

On Fri, Jan 19, 2018 at 4:42 AM, Maxime Werlen wrote:

> I am looking for a sponsor for my package "minidb"

In future, I'd recommend using the BTS block command when filing an RFS
that depends on another RFS.

https://www.debian.org/Bugs/server-control#block

You can use this syntax when mailing submit@ or existing bugs (-1 means
the bug you are mailing or submitting):

Control: block 887659 by -1

These issues block the upload of minidb to Debian:

Since minidb only includes a Python 3 module, you need to rename the
binary package to python3-minidb. The source package can stay the same.

The orig.tar.gz you uploaded to Debian mentors is different to the one
that the debian/watch file downloads. You can use diffoscope to see the
differences, but it looks like you used the one from pip? That is
missing example.py but has a new PKG-INFO file.

It would be nice to fix these issues at some point:

Upstream is using distutils but debian/control has python3-setuptools.
The package still builds because python3-distutils is installed anyway.

Please include example.py from the github tar.gz as an example in the
binary package, using dh_installexamples.

Once minidb is accepted, please file a bug against gpodder asking the
maintainer to depend on minidb instead of using the internal copy.

I suggest licensing the debian/ directory under the same license as
upstream, so that they can include any patches or other info from
Debian with zero friction.

Please remove the comment characters, the ASCII minidb logo and the
Copyright line from the ISC license in debian/copyright.

Please remove the commented-out Vcs-* fields from debian/control unless
you intend to use them, please note that alioth has been replaced by
salsa.debian.org.

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.

uscan fails unless I delete the filenamemangle:

$ uscan --verbose --download-current-version --destdir .
...
Could not read .//thp/minidb/archive/minidb-2.0.2.tar.gz: No such file or directory at /usr/bin/mk-origtargz line 397.
uscan: error: mk-origtargz --package minidb --version 2.0.2 --rename --compression gzip --directory . --copyright-file debian/copyright .//thp/minidb/archive/minidb-2.0.2.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

Automatic checks:

lintian

I: minidb source: binary-control-field-duplicates-source field "section" in package minidb
P: minidb source: file-contains-trailing-whitespace debian/changelog (line 3)
P: minidb source: file-contains-trailing-whitespace debian/control (line 4)
P: minidb source: package-uses-old-debhelper-compat-version 10
P: minidb source: insecure-copyright-format-uri http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
I: minidb source: testsuite-autopkgtest-missing
P: minidb source: debian-watch-may-check-gpg-signature
P: minidb: no-upstream-changelog
I: minidb: extended-description-is-probably-too-short

check-all-the-things

$ env PERL5OPT=-m-lib=. duck
I: debian/copyright:1: URL: http://www.debian.org/doc/packaging-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:48: URL: http://www.gnu.org/licenses/: INFORMATION (Certainty:possible)
   The web page at http://www.gnu.org/licenses/ works, but is also available via https://www.gnu.org/licenses/, please consider switching to HTTPS urls.

I: debian/control: Homepage: http://thp.io/2010/minidb/: INFORMATION (Certainty:certain)
   URL schema changed from HTTP to HTTPS during redirect(s): http://thp.io -> https://thp.io
   Please investigate and update the URL eventually, to avoid unneccesary redirects!

# check if these can be switched to https://
$ grep -nHrF http: .
./PKG-INFO:5:Home-page: http://thp.io/2010/minidb/
./PKG-INFO:9:Download-URL: http://thp.io/2010/minidb/minidb-2.0.2.tar.gz
./test/test_minidb.py:277:    # http://probablyprogramming.com/2009/03/15/the-tiniest-gif-ever
./debian/copyright:1:Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
./debian/copyright:48: along with this program. If not, see <http://www.gnu.org/licenses/>
./debian/control:9:Homepage: http://thp.io/2010/minidb/
./debian/control:11:#Vcs-Browser: http://git.debian.org/?p=collab-maint/minidb.git;a=summary
./minidb.py:27:__url__ = 'http://thp.io/2010/minidb/'

$ find . -type f -iname '*.py' -exec mypy --fast-parser {} +
<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.
$ find . -type f -iname '*.py' -exec pycodestyle --ignore W191 {} +
<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.
$ pydocstyle .
<lots>

$ find . -type f -iname '*.py' -exec pyflakes3 {} +
<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=. spellintian --picky {} +
./README: python -> Python
./debian/copyright: python -> Python
./minidb.py: python -> Python

$ grep -nHriE 'fixme|todo|hack|xxx+|broken' .
./minidb.py:201:                # TODO: What to do with extraneous columns?

$ vulture .
<lots>

-- 
bye,
pabs

https://wiki.debian.org/PaulWise

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: