From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 2C58B13997D for ; Fri, 15 Nov 2019 08:41:29 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id F344BE082F; Fri, 15 Nov 2019 08:41:24 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 78379E0788 for ; Fri, 15 Nov 2019 08:41:24 +0000 (UTC) Received: from t490.localnet (unknown [IPv6:2001:470:1f15:106:c3e7:950d:bee8:34df]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: alexxy) by smtp.gentoo.org (Postfix) with ESMTPSA id 8A03F34CE6B; Fri, 15 Nov 2019 08:41:22 +0000 (UTC) From: Alexey 'Alexxy' Shvetsov To: gentoo-dev@lists.gentoo.org Cc: =?utf-8?B?TWljaGHFgiBHw7Nybnk=?= Subject: Re: [gentoo-dev] Why adding python3_8 to Gentoo sucks? Date: Fri, 15 Nov 2019 11:41:13 +0300 Message-ID: <4167401.OMHBhdFZHi@t490> Organization: Gentoo In-Reply-To: References: Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply MIME-Version: 1.0 Content-Type: multipart/signed; boundary="nextPart5635616.d86mNh5BT1"; micalg="pgp-sha256"; protocol="application/pgp-signature" X-Archives-Salt: 64586699-568a-4dd1-8478-0b930bd71b20 X-Archives-Hash: af695ee9504b64d06382a0c97dc129b4 --nextPart5635616.d86mNh5BT1 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="UTF-8" I think problem is more global:=20 * many python3_6 packages dont have python3_7 keywords, because its=20 maintainers dont bother about it. So if you want to switch to python3_7 you= =20 still need manualy add python3_7 use for many packages (that actualy work= =20 without problems * we need policy for python packages that force enablement of new python=20 version on existing packages. =D0=92 =D0=BF=D0=B8=D1=81=D1=8C=D0=BC=D0=B5 =D0=BE=D1=82 =D1=87=D0=B5=D1=82= =D0=B2=D0=B5=D1=80=D0=B3, 14 =D0=BD=D0=BE=D1=8F=D0=B1=D1=80=D1=8F 2019 =D0= =B3. 00:16:10 MSK =D0=BF=D0=BE=D0=BB=D1=8C=D0=B7=D0=BE=D0=B2=D0=B0=D1=82=D0= =B5=D0=BB=D1=8C Micha=C5=82 G=C3=B3rny=20 =D0=BD=D0=B0=D0=BF=D0=B8=D1=81=D0=B0=D0=BB: > Hi, >=20 > I'd like to share my frustration at the state of Python in general, > and Python packages in Gentoo. So I'd like to 'bootstrap' python3_8 -- > that is, add it to the most common dependency, dev-python/setuptools. > Simple thing, right? >=20 >=20 > 1. There's no such thing as trivial dependency graph in Python. If you > think that setuptools has a few deps, you're entirely wrong. I actually > had to write a tool to even assemble list of deps to start with, > and the number is: 174. I mean, in order to enable py3.8 on setuptools, > you have to enable it on at least 173 other packages. >=20 > Sure, some of those packages are just doc-deps or test-deps, and some > could be avoided one way or another. However, avoiding them is only > temporary and involves more effort than it saves. >=20 >=20 > 2. There are some packages that dropped Python 2.7 but still have 2.7 > deps. So we need to also add py3.8 to older versions that still has > 2.7. Plus, some packages have explicit <-deps. So we need to add 3.8 > to them, and hope that the old version will actually work with 3.8, > and then to their extra dependencies. >=20 > This is all handiwork. The number is now 178 packages, or 187 ebuilds. >=20 >=20 > 3. Of course there are packages with new deps dropping keywords whose > maintainers (or bumpers) never bothered filing a keywordreq. Because > why bother, somebody else will do that when it blocks everything, > right?! >=20 > Well, guess what. python3_8 flag is going to be masked on non-amd64 > because people didn't bother keywording new versions of their packages > on other arches. >=20 > If you choose to realize your mistake now, and are willing to fix it, > start keywording new versions. >=20 >=20 > Here's the initial CI run: >=20 > https://github.com/gentoo/gentoo/pull/13638 >=20 > The packages haven't been tested yet. If you want to help, feel free to > apply it locally, and run tests in all those packages, and try to > assemble a reasonably readable report of what fails. Then probably diff > the failures against py3.7 because some packages probably fail there > as well. >=20 > Of course many of those packages don't have tests at all. Because it > was too much effort, and the four-letter company didn't pay for them. > Because it was too hard to use GitHub snapshot over pypi tarball that > doesn't bundle tests because obviously nobody wants them. Help with > that welcome too. >=20 > Help with getting rid of py2 revdeps of py3-only packages would be very > welcome too. >=20 > In other words, there's a lot of work to get Python near-sane in Gentoo, > and we'd welcome all the help we can get. TIA. =2D-=20 Best regards, Alexey 'Alexxy' Shvetsov --nextPart5635616.d86mNh5BT1 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part. Content-Transfer-Encoding: 7Bit -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEE+WVL/tIVJamPnFyWcubNMgpvc2oFAl3OZKkACgkQcubNMgpv c2rEpA/+JSP1/+KuY8zZTKB4jMPri7xVAolfUo8mn4B4wwvdCR3CYYhH6fD4TJJi KQGnWEhwReaTSSo4+qNiJzTfR+oqoHXAUW4QfkFFi92Gv/iuxSEb/KLrrUcE4Ycp MCnLeJwSGCRLmN1svEpohvG6J2Ewmyieyz6po9jB9smKp5TwP+xJACEouabQykjV +/O4nveIv0pGu/TCJR7HTLlJ+wdqBNp3/e7RsRVEC1BxQSI7lPdJBybQqkXfbxTo MtGCaRkyb8if93oDxYcqoI4FSZZ3Z1V1ogvrmYY01BLInuUdlsY2uXadWkpYvN2c ckQNvp5811wHQuE26d2CBowTvZoNbCWp/jjnVcx9HyQjgnt/KyrOBbCOJH/WGzvr R+1D8E0Xyr+7WN/fe35w1ihm/VxGJnK+H9NnHicJQNJ9kwLu7Quzf6NNkLP34W14 nuT33mkXEaD0yaaAjH6POPPszdwJY84Ul0XPGdzvcccfjS/quTuQun1jiUqd8Nac iRJnqrGfoc96lFPu/7WbtbLqr3iRTAZhixFJBFiDz2sL5P45MC/kcjdzjo/CVHij Zn7IdbZKL6t0MnbBEi1Kti9DjomFsh6gxqbtndHvXM2xQH0rDASjKmDPdY7HBvRC gyqk3P28r5XRe0f7UXHwtxp43F7dE4BpJL0y2zmvBD8FqmyFkns= =v+Ie -----END PGP SIGNATURE----- --nextPart5635616.d86mNh5BT1--