Re: PEP-517/PEP-518 Support In Debian
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'. > > 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". > 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. > > For the moment, I guess we are in reasonable shape, but it might be useful to > have a pybuild plugin to use PEP517/setuptools.build_meta in lieu of setup.py > with setuptools/distutils when available. In the future, this will be the > primary API and the sooner we start to use it, the better. One issue that comes to mind: how will we specify the install location in a way that will work with any backend? In other words, what is the replacement for distutils' --install-layout=deb? -- Dmitry Shachnev signature.asc Description: PGP signature
Re: py2removal: drop python-pytest by not running tests for python2 packages
On Sun, Apr 12, 2020 at 11:05:13PM -0400, Scott Kitterman wrote: > On Sunday, April 12, 2020 9:56:01 PM EDT Sandro Tosi wrote: > > Hello, > > python-pytest is blocking 18 packages from removal, most of them would > > be leaves once python-pytest is gone. > > > > so i was playing with the idea of tackling python-pytest removal by > > updating all its rdeps and not run unittests for the python2 binary > > (so dropping pytest and the other b-d* only used for tests). > > > > I know it's suboptimal (some python2 packages can still see updates > > until we're ready to drop them and running tests can still have > > value), but i think the cost/benefit ratio points towards removing > > python-pytest soon rather than wait. > > > > There are only 25 packages that would need updating, and most of them > > are in DPMT/PAPT. > > Go for it. +1 from me too. -- Dmitry Shachnev signature.asc Description: PGP signature
Re: Remove or update pyfeed and xmlelements
Hi Martin, On Sun, 5 Apr 2020 12:05:39 +0200 Martin wrote: > Hi Matteo, hi Thomas, > > the new version of salutatoi does not need python-feed and > python-xe anymore. AFAIK, there are not other dependencies on > them. Maybe you would like to ask for removal? That was the plan indeed, thanks for the reminder, I'll move it on top of my to do list! Cheers, Matteo pgpiXyoBg5Exs.pgp Description: PGP signature
Re: PEP-517/PEP-518 Support In Debian
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'. > > > > 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". 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. > > For the moment, I guess we are in reasonable shape, but it might be useful > > to have a pybuild plugin to use PEP517/setuptools.build_meta in lieu of > > setup.py with setuptools/distutils when available. In the future, this > > will be the primary API and the sooner we start to use it, the better. > > One issue that comes to mind: how will we specify the install location in a > way that will work with any backend? In other words, what is the replacement > for distutils' --install-layout=deb? I think the answer to that question is going to be build-backend specific. The good news is that the legacy processing for setup.py with setuptools/ distutils will be around approximately forever, so a complete answer to the question isn't urgent. One related question is if we are willing to bring pip into our package build process? I took a quick look at python3-pep517 to see how hard it would be to add support for build-backend = "setuptools.build_meta" to pybuild. My quick look answer is not too hard if we are willing to bring pip into the process. If we aren't willing to involve pip (which does bring a lot of complexity), I think there will be substantially more Debian specific code required to support it. I expect build-backend = "sipbuild.api" will need custom support as well, but I haven't looked into it at all. Scott K signature.asc Description: This is a digitally signed message part.
Re: py2removal: drop python-pytest by not running tests for python2 packages
On Mon, Apr 13, 2020 at 12:22:21PM +0300, Dmitry Shachnev wrote: > On Sun, Apr 12, 2020 at 11:05:13PM -0400, Scott Kitterman wrote: > > On Sunday, April 12, 2020 9:56:01 PM EDT Sandro Tosi wrote: > > > so i was playing with the idea of tackling python-pytest removal by > > > updating all its rdeps and not run unittests for the python2 binary > > > (so dropping pytest and the other b-d* only used for tests). > > > > Go for it. > > +1 from me too. Yeah, +1! -- regards, Mattia Rizzolo GPG Key: 66AE 2B4A FCCF 3F52 DA18 4D18 4B04 3FCD B944 4540 .''`. More about me: https://mapreri.org : :' : Launchpad user: https://launchpad.net/~mapreri `. `'` Debian QA page: https://qa.debian.org/developer.php?login=mattia `- signature.asc Description: PGP signature
Re: py2removal: drop python-pytest by not running tests for python2 packages
On 4/13/20 11:22 AM, Dmitry Shachnev wrote: > On Sun, Apr 12, 2020 at 11:05:13PM -0400, Scott Kitterman wrote: >> On Sunday, April 12, 2020 9:56:01 PM EDT Sandro Tosi wrote: >>> Hello, >>> python-pytest is blocking 18 packages from removal, most of them would >>> be leaves once python-pytest is gone. >>> >>> so i was playing with the idea of tackling python-pytest removal by >>> updating all its rdeps and not run unittests for the python2 binary >>> (so dropping pytest and the other b-d* only used for tests). >>> >>> I know it's suboptimal (some python2 packages can still see updates >>> until we're ready to drop them and running tests can still have >>> value), but i think the cost/benefit ratio points towards removing >>> python-pytest soon rather than wait. >>> >>> There are only 25 packages that would need updating, and most of them >>> are in DPMT/PAPT. >> >> Go for it. > > +1 from me too. +1 Please publish a list here, so we can share the workload. Cheers, Thomas Goirand (zigo)
Re: py2removal: drop python-pytest by not running tests for python2 packages
> so i was playing with the idea of tackling python-pytest removal by > updating all its rdeps and not run unittests for the python2 binary > (so dropping pytest and the other b-d* only used for tests). this is completed, and i've just uploaded pytest removing python-pytest Thanks, -- Sandro "morph" Tosi My website: http://sandrotosi.me/ Me at Debian: http://wiki.debian.org/SandroTosi Twitter: https://twitter.com/sandrotosi