Path: csiph.com!news.mixmin.net!news.unit0.net!news.panservice.it!bofh.it!news.nic.it!robomod From: Piotr =?UTF-8?Q?O=C5=BCarowski?= Newsgroups: linux.debian.bugs.dist,linux.debian.maint.python Subject: Bug#834809: dh-python: requires.txt versions ignored when writing control Date: Fri, 19 Aug 2016 11:30:02 +0200 Message-ID: References: X-Original-To: Anthony Dempsey X-Mailbox-Line: From debian-bugs-dist-request@lists.debian.org Fri Aug 19 09:21:11 2016 Old-Return-Path: X-Spam-Flag: NO X-Spam-Score: -4.748 Reply-To: debian-python@lists.debian.org, 834809@bugs.debian.org Resent-To: debian-bugs-dist@lists.debian.org Resent-Cc: Piotr =?UTF-8?Q?O=C5=BCarowski?= X-Debian-Pr-Message: followup 834809 X-Debian-Pr-Package: dh-python X-Debian-Pr-Source: dh-python X-Spam-Bayes: score:0.0000 Tokens: new, 14; hammy, 150; neutral, 127; spammy, 0. spammytokens: hammytokens:0.000-+--dhpython, 0.000-+--dh-python, 0.000-+--HX-Operating-System:Debian, 0.000-+--HX-Operating-System:GNU, 0.000-+--Oarowski Mail-Followup-To: Anthony Dempsey , 834809@bugs.debian.org, debian-python@lists.debian.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit X-Operating-System: Debian GNU/Linux (4.5.0-0.bpo.2-amd64) User-Agent: Mutt/1.6.2-neo (2016-07-23) X-Debian-Message: from BTS X-Mailing-List: archive/latest/1300706 List-ID: List-URL: Approved: robomod@news.nic.it Lines: 31 Organization: linux.* mail to news gateway Sender: robomod@news.nic.it X-Original-Cc: 834809@bugs.debian.org, debian-python@lists.debian.org X-Original-Date: Fri, 19 Aug 2016 11:16:29 +0200 X-Original-Message-ID: <20160819091629.e5dgq7xncpjyujlr@sar0.p1otr.com> X-Original-References: <20160819083209.7531.76100.reportbug@BRA-98N4P12.vyatta.com> Xref: csiph.com linux.debian.bugs.dist:760956 linux.debian.maint.python:8789 Control: tags -1 wontfix > I've been using dh-python to build a package and I've had to add a version > dependency in my setup.py (requests >= 2.4.2) but this isn't being picked up > and added to the debian/control. dh_python{2,3} ignores version on purpose. It does more than that, it removes recognized dependency from requires.txt so the version is ignored later by pkg_resources as well. I'm sure Python guys hate me for that. There was PEP386, there is PEP440 and plenty of other related PEPs or ideas on how to handle versions. The other thing is to put latest or unreleased version into install_requires (AKA requires.txt AKA Requires header) just because that's the version upstream worked with during development. Until I'm convinced that they finally figured that out and the exception is when an upstream project doesn't follow the standard rather than when it actually follows it - Debian maintainer will have to confirm that upstream is sane WRT versioning to get it copied/translated into Debian dependency (and to do that: pydist file with "PEP386" flag has to be installed or maintainers have to add versioned build dependency - which is my preferred solution as in most cases that version is required for tests during build anyway) PS I heard some rumors that PyPI will enforce one of the standards, but I don't know the status of that -- Piotr Ożarowski Debian GNU/Linux Developer www.ozarowski.pl www.griffith.cc www.debian.org GPG Fingerprint: 1D2F A898 58DA AF62 1786 2DF7 AEF6 F1A2 A745 7645