Path: csiph.com!aioe.org!bofh.it!news.nic.it!robomod From: Scott Kitterman Newsgroups: linux.debian.maint.python Subject: Re: PEP-517/PEP-518 Support In Debian Date: Fri, 05 Jun 2020 02:00:01 +0200 Message-ID: References: X-Original-To: debian-python@lists.debian.org X-Mailbox-Line: From debian-python-request@lists.debian.org Thu Jun 4 23:58:01 2020 Old-Return-Path: X-Amavis-Spam-Status: No, score=-12.18 tagged_above=-10000 required=5.3 tests=[BAYES_00=-2, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, LDO_WHITELIST=-5, MURPHY_DRUGS_REL8=0.02, PGPSIGNATURE=-5, RCVD_IN_DNSWL_NONE=-0.0001] autolearn=ham autolearn_force=no X-Policyd-Weight: using cached result; rate: -5.5 Dkim-Signature: v=1; a=ed25519-sha256; c=relaxed/simple; d=kitterman.com; i=@kitterman.com; q=dns/txt; s=201903e; t=1591315066; h=from : to : subject : date : message-id : in-reply-to : references : mime-version : content-type : from; bh=OlY7R0dRLwuIm/Y8a1JMM6WaPgPF6abNL51OQaIOj9s=; b=H0QS0+plByhlXaFrfWkbP2BDaKMf+Jz2iTzKhpogmyO51MvHvj8ZC+QN3XiJnnYUFtIzc stldSjLrMASnJA8AQ== Dkim-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kitterman.com; i=@kitterman.com; q=dns/txt; s=201903r; t=1591315066; h=from : to : subject : date : message-id : in-reply-to : references : mime-version : content-type : from; bh=OlY7R0dRLwuIm/Y8a1JMM6WaPgPF6abNL51OQaIOj9s=; b=oWjmztvuW9r6E4OhBvS37IzFVWYi0Vz1OIf/V9eftCiaxTo5zmx7xRJposNrwCfUL+c0A VItHeM2KXHMsYoCN9o84qzxz/d0nmRyE7uOj+amEtsLvbxxsa8Fo22n3aAIwdfpEWFQgsrX Bac4eBuQHfByrhdcpD2e6XHAEIW1WKv7VXi2dl3SqZ7hfE04Rf6gAaGwHdSbstFME+BHAd1 7CS1wVQG0BYqz2Ef2/Ku5hShBplvrEchBXATciA6+94NGvuavPLwIul9vcTuuuMn25Qr8PZ Gp9NNXja8ORugz8WzuVZ/XUD/1fp1+w+WIp6EzIXj+7oCFLTbGG05McFcsDw== MIME-Version: 1.0 Content-Type: multipart/signed; boundary="nextPart9668416.4blRGyc2pk"; micalg="pgp-sha512"; protocol="application/pgp-signature" X-Mailing-List: archive/latest/18331 List-ID: List-URL: List-Archive: https://lists.debian.org/msgid-search/2906900.Ui2l7W3ZyW@sk-desktop Approved: robomod@news.nic.it Lines: 105 Organization: linux.* mail to news gateway Sender: robomod@news.nic.it X-Original-Date: Thu, 04 Jun 2020 19:57:46 -0400 X-Original-Message-ID: <2906900.Ui2l7W3ZyW@sk-desktop> X-Original-References: <1901857.gxORzZljd2@sk-desktop> <3852987.UMqJ38MGZC@sk-desktop> <87v9k6s8mo.fsf@DigitalMercury.dynalias.net> Xref: csiph.com linux.debian.maint.python:12625 --nextPart9668416.4blRGyc2pk Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" On Thursday, June 4, 2020 7:39:59 PM EDT Nicholas D Steeves wrote: > Hi, > > Scott Kitterman writes: > > On Monday, April 13, 2020 5:18:53 AM EDT Dmitry Shachnev wrote: > >> Hi Scott! > >> > >> On Sun, Apr 12, 2020 at 06:31:57PM -0400, Scott Kitterman wrote: > >> > This being roughly the mid-point in the development cycle, I thought it > >> > might be good to see where we are in terms of future Python packaging > >> > developments. > >> > > >> > As I understand it, PEP-517 and PEP-518 are 'the future'. > > While importing the latest release of Fissix (a grammar parser used by > Bowler) I found that it had a pyproject.toml but no setup.py. > > >> > I took a look at the presence of pyproject.toml files in the Debian > >> > archive. There are currently 99 packages. Of those, only 28 specify a > >> > 'build-backend', which is required by 517/518 to be useful for building > >> > a > >> > package. > >> > > >> > 25 specify: build-backend = "setuptools.build_meta" (including > >> > setuptools) > >> > 3 specify: build-backend = "flit_core.buildapi" (including flit) > >> > >> pyqt5 and pyqt5webengine specify: build-backend = "sipbuild.api". > > Is there existing documentation around if/how build-backend can be used > to work around the absence of setup.py? > > > So they do. They didn't show up in my codesearch.d.n results, that makes > > me wonder what else I missed. If anyone has an idea of a better way to > > track this, please speak up. > > > >> > If build-backend is not specified, the build system has to fall back to > >> > setup.py. > >> > > >> > I've recently package flit (just arrived in Testing) and written a flit > >> > plugin for pybuild that's pending review for merging[1]. I also > >> > packaged > >> > pep517 for our pip package, so that's available to support future > >> > Debian > >> > tool development in this area. > > > > P1otr merged the flit plugin a little while ago, so it'll be in the next > > dh- python upload. > > I think this is probably what is needed to unblock work on fissix (and > thus Bowler), because its Makefile has: > > python -m pip install -r requirements.txt > python -m pip install -r requirements-dev.txt > python -m flit install --symlink > > [snip] > > Any advise for existing workarounds would be appreciated. So far the > only idea I've had is writing or generating a setup.py, and then adding > it as a quilt patch. That is probably the best approach for now. Ultimately we have two choices: 1. Add per-backend capability into pybuild as I have done with flit. Depending on how many of them there are, this may or may not be a reasonable approach. 2. Use the pep517 module with pip in our package build system. I think Fedora has gone this direction. I prefer #1 because we want to produce a traditional bdist, not wheels, but we'll have to do the work. I don't think we want an impenetrable morass of zip files in /usr/lib/python3/dist-packages. Scott K --nextPart9668416.4blRGyc2pk Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part. Content-Transfer-Encoding: 7Bit -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEE53Kb/76FQA/u7iOxeNfe+5rVmvEFAl7ZinoACgkQeNfe+5rV mvH0OBAA1PeCfPcE7yH+NccfYps8jnlAlMC6+WwNXg5suzq+XkwM60LKe1P8kKPt NNFccJgiodWHLa4JxKqgdZLZXkBNRVyM3vuxTmE8lLYPj3w6p1jyXyhB6tXI3+T7 ezGvm7SFmpIw9XWym45Ef5aGbyODvwMgVSd1+rOMk0XTpaRdVQdm2qrbTFL3LgRA lRWTeQESIPTnNmOOjg9nrAEIQ2vKBEZQ5ong9BYfZmv5csPc5cN/hqR+3ZG+VMpK U/ORYb9eauf7jjMtWcroJUmq973ck7UYubF9kYVjVZMG3/6MZqgYW0IKUmsTt1Uq cZR+Bg9By+YYLyVC7tfwTis6+Ycaj8k+4a55DXou/ydhFopUsGlLHSVNV9pdSI1g 0wHdf2ziEnv62mkvW4mjKikYfmmYUTSJnRNK6O5ZSRk+RW8w9TgodMOWKoICH1eI OvB/vSri9hgK6UOx6bhBXyab4Ag8K0ePeQBJJuC9k5boJrYdMLxTaW1fDRM4Fnh7 aF78ppipjcNvmoK12zZVM2/TJF/t8wJQdVuusFrkgIzjDmZsHs4vqcVd+LVgqiZ0 dwnQPA56nONNrq2jYo06kQU/OuJhRfn/5ZrJjjPKv8azHqzynpg6BCmweaFHONm2 +Z9iRvuIepGudwEwx1+JcXLTpH4g9nsMI8HK6Sa8pabf6xs6ess= =NmKp -----END PGP SIGNATURE----- --nextPart9668416.4blRGyc2pk--