Re: Versioned dependencies with stdeb and pybuild
Am 05.12.2016 um 15:13 schrieb Piotr Ożarowski: > [Malte Forkel, 2016-12-05] >> Why do you recommend putting the requirements into Build-Depends? Most >> of those packages are currently not available on the build system (I'm >> not pbuilder for this). > > because you most probably need it for tests anyway and if tests work > with version >= A, you don't need to translate requirements.txt with > ">A.devRELEASED_TODAY_OR_TOMORROW+post7" > > if they're not packaged, you should start with the ones without > dependencies, even in your local repository. It is just too easy to disable the tests with pybuild :-) >> How do you think about an additional option for pybuild that would tell >> it to translate all version specifications provided by upstream into >> Depends? > > pybuild doesn't touch versions at all, you mean dh_python3 > See https://anonscm.debian.org/cgit/dh-python/dh-python.git/tree/README.rst > (pybuild is an implementation of dh_auto_foo) > > dh_python3 doesn't have such option, but I guess I can add optional > --assume-upstream-versions-match-debians-and-are-sane (after finding a > better name for it) Right. Sometimes coming up with an appropriate name seems to be more difficult than implementing the functionality in the first place. I made the following changes to pydist.py to include all upstream version information with a minimal debian/py3dist-overrides that only adds missing mappings. Besides implementing a fictional option '--accept-upstream-versions', the changes allow for a version interval to be specified and support the operator '==' (and translate the deprecated operators '<' and '>'). --- pydist.py.orig 2016-08-18 00:27:52.0 +0200 +++ pydist.py 2016-12-06 09:19:59.092155732 +0100 @@ -54,9 +54,22 @@ REQUIRES_RE = re.compile(r''' (?P<=?|>=?|==|!=) \s* (?P(\w|[-.])+) +(?: # optional interval minimum/maximum version +\s* +, +\s* +(?P<=?|>=?|==|!=) +\s* +(?P(\w|[-.])+) +)? )? \)? # optional closing parenthesis ''', re.VERBOSE) +DEB_VERS_OPS = { +'==': '=', +'<': '<<', +'>': '>>', +} def validate(fpath): @@ -150,9 +163,23 @@ def guess_dependency(impl, req, version= # Debian dependency return item['dependency'] if req_d['version'] and (item['standard'] or item['rules']) and\ -req_d['operator'] not in (None, '==', '!='): +req_d['operator'] not in (None, '!='): +o = _translate_op(req_d['operator']) v = _translate(req_d['version'], item['rules'], item['standard']) -return "%s (%s %s)" % (item['dependency'], req_d['operator'], v) +d = "%s (%s %s)" % (item['dependency'], o, v) +if req_d['version2'] and req_d['operator2'] not in (None,'!='): +o2 = _translate_op(req_d['operator2']) +v2 = _translate(req_d['version2'], item['rules'], item['standard']) +d += ", %s (%s %s)" % (item['dependency'], o2, v2) +return d +elif 'check_accept-upstream-versions_here' and req_d['version'] and \ +req_d['operator'] not in (None,'!='): +o = _translate_op(req_d['operator']) +d = "%s (%s %s)" % (item['dependency'], o, req_d['version']) +if req_d['version2'] and req_d['operator2'] not in (None,'!='): +o2 = _translate_op(req_d['operator2']) +d += ", %s (%s %s)" % (item['dependency'], o2, req_d['version2']) +return d else: if item['dependency'] in bdep: if None in bdep[item['dependency']] and bdep[item['dependency']][None]: @@ -307,3 +334,16 @@ def _translate(version, rules, standard) if standard == 'PEP386': version = PRE_VER_RE.sub(r'~\g<1>', version) return version + + +def _translate_op(operator): +"""Translate Python version operator into Debian one. + +>>> _translate_op('==') +'=' +>>> _translate_op('<') +'<<' +>>> _translate_op('<=') +'<=' +""" +return DEB_VERS_OPS.get(operator, operator)
Fwd: Re: Fwd: Bug#838240: Acknowledgement (ITP: python-dicttoxml -- Python module for converting dict into a XML string)
Hello Hugo I am very sorry for this long delay. I uploaded to git the branches with the changes you pointed out. Hopefully, the package is now ready for upload. Thank you very much for your help and consideration! Greetings, Marcos El 06/10/16 a las 23:06, Hugo Lefeuvre escribió: Hi Marcos, Here is the link to this package: https://mentors.debian.net/package/python-dicttoxml Here is a first review of your package: debian/changelog: - * Even if the package comes from kali, there should be only one entry in the changelog. So, please remove the kali entry. Also, the first changelog entry should only indicate something like "Initial release (Closes: #...).". Other informations are irrelevant. * It looks like you forgot to mention your ITP bug number. debian/copyright: - * The license seems to be GPL-2, not GPL-2+ (see LICENSE.txt, or README.markdown). FYI, this would lead to rejection by ftp-master. * Nitpicking: cme check dpkg reports: # Warning in 'copyright Format' value # 'http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/': # Format uses insecure http protocol instead of https Otherwise, the packaging is fine. Could you create the git repository and correct these problems before I upload the package ? Thanks for your work. Cheers, Hugo
Fwd: Re: Fwd: Bug#838241: Acknowledgement (ITP: python-olefile -- Improved version of the OleFileIO module from PIL)
Mensaje reenviado Asunto: Re: Fwd: Bug#838241: Acknowledgement (ITP: python-olefile -- Improved version of the OleFileIO module from PIL) Fecha: Tue, 29 Nov 2016 23:24:24 +0100 De: Marcos Fouces Para: Hugo Lefeuvre Hello Hugo I am very sorry for this long delay. I uploaded to git the branches with the changes you pointed out. Hopefully, the package is now ready for upload. Thank you very much for your help and consideration! Greetings, Marcos El 06/10/16 a las 23:28, Hugo Lefeuvre escribió: Hi Marcos, Here is the link to this package: https://mentors.debian.net/package/python-olefile Here is a quick review: debian/changelog: - * same problems as python-dicttoxml debian/control: --- * If you use pybuild, dh-python is a mandatory Build-Dependency (have a look at the build logs, there is a warning !). * Homepage field could use protocol https (consider updating the Source field in d/copyright as well). debian/patches: --- * Nitpicking: cme check dpkg reports: # Warning in 'patches:"Get-rid-extra-licence-file.patch" Synopsis' # value 'Get rid of licence files in source code. All licencing info # is provided by debian/copyright': Synopsis is too long. General: * There are a lot of files installed at the wrong place: README.html, doc/*, etc (have a look at lintian's pedantic warnings, they're useful !). You can use debc to see the content of your package. Could you create the git repository and correct these problems before I upload the package ? Thanks for your work. Cheers, Hugo
Bug#847217: RFS: python-django-allauth/0.29.0-1 [ITP]
Package: sponsorship-requests Severity: wishlist Dear mentors, I am looking for a sponsor for my package "python-django-allauth" * Package name: python-django-allauth Version : 0.29.0-1 Upstream Author : Raymond Penners and contributors * URL : http://www.intenct.nl/projects/django-allauth/ * License : MIT Section : python It builds those binary packages: python-django-allauth - Django apps for local and social authentication (Python 2) python-django-allauth-doc - Django apps for local and social authentication (common docs) python3-django-allauth - Django apps for local and social authentication (Python 3) To access further information about this package, please visit the following URL: https://mentors.debian.net/package/python-django-allauth Alternatively, one can download the package with dget using this command: dget -x https://mentors.debian.net/debian/pool/main/p/python-django-allauth/python-django-allauth_0.29.0-1.dsc More information about python-django-allauth can be obtained from http://www.intenct.nl/projects/django-allauth/ . Best regards, Jan
Re: Bug#847217: RFS: python-django-allauth/0.29.0-1 [ITP]
Hey, I forgot to mention that I upload the package to the Git repo of the Python modules team as soon as my request to join the team is accepted. Best regards, Jan On Tue, 06 Dec 2016 16:16:17 +0100 Jan Luca Naumann wrote: > Package: sponsorship-requests Severity: wishlist > > Dear mentors, > > I am looking for a sponsor for my package "python-django-allauth" > > * Package name: python-django-allauth Version : > 0.29.0-1 Upstream Author : Raymond Penners and contributors * URL : > http://www.intenct.nl/projects/django-allauth/ * License : MIT > Section : python > > It builds those binary packages: > > python-django-allauth - Django apps for local and social > authentication (Python 2) python-django-allauth-doc - Django apps > for local and social authentication (common docs) > python3-django-allauth - Django apps for local and social > authentication (Python 3) > > To access further information about this package, please visit the > following URL: > > https://mentors.debian.net/package/python-django-allauth > > Alternatively, one can download the package with dget using this > command: > > dget -x > https://mentors.debian.net/debian/pool/main/p/python-django-allauth/python-django-allauth_0.29.0-1.dsc > > > > > More information about python-django-allauth can be obtained from > http://www.intenct.nl/projects/django-allauth/ . > > Best regards, Jan > > signature.asc Description: OpenPGP digital signature