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 75501139694 for ; Tue, 6 Jun 2017 07:01:24 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id C708C224186; Tue, 6 Jun 2017 07:00:08 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 5F9A422417B for ; Tue, 6 Jun 2017 06:59:53 +0000 (UTC) Received: from pomiot (d202-252.icpnet.pl [109.173.202.252]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: mgorny) by smtp.gentoo.org (Postfix) with ESMTPSA id C5E37341986; Tue, 6 Jun 2017 06:59:41 +0000 (UTC) Message-ID: <1496732378.1945.2.camel@gentoo.org> Subject: Re: [gentoo-dev] [PATCHES] python-r1.eclass: any-of dep API support From: =?UTF-8?Q?Micha=C5=82_G=C3=B3rny?= To: gentoo-dev@lists.gentoo.org Cc: python@gentoo.org Date: Tue, 06 Jun 2017 08:59:38 +0200 In-Reply-To: <20170520133044.9692-1-mgorny@gentoo.org> References: <20170520133044.9692-1-mgorny@gentoo.org> Organization: Gentoo Content-Type: multipart/signed; micalg="pgp-sha512"; protocol="application/pgp-signature"; boundary="=-j4QIWLyTG5wOqTbaqr7h" X-Mailer: Evolution 3.22.6 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 Mime-Version: 1.0 X-Archives-Salt: 8438e47d-03da-43a3-8314-41e73e67d043 X-Archives-Hash: dbac99c419c3566e4f751d1fc00598d6 --=-j4QIWLyTG5wOqTbaqr7h Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On sob, 2017-05-20 at 15:30 +0200, Micha=C5=82 G=C3=B3rny wrote: > Hi, everyone. >=20 > Here's a set of patches inspired by the recent Sphinx dependency > discussion. They make python-r1 (and therefore distutils-r1) capable > of any-of dependency logic similar to the one used in python-any-r1. >=20 > The basic goal is relatively simple -- to improve handling of pure > build-time dependencies in the eclass. It solves two common problems: >=20 > a. dependencies on packages that support only a subset of PYTHON_COMPAT, >=20 > b. dependencies that need to be implementation-bound between themselves > (e.g. Sphinx plugins). >=20 > The new API improves both of those cases significantly. For the former, > we no longer force user to select additional targets via REQUIRED_USE -- > instead, we just any-of dependencies + python_check_deps() to select > implementation independently of whether it is enabled or not. >=20 > For the latter, we no longer have to force all targets of the package > on all the involved dependencies. Again, using any-of dep > and appropriate python_check_deps() we can enforce a single (any) > target throughout all the packages and use it. >=20 > The first three patches do some code refactoring that makes the change > easier and possibly improves maintainability of the code. The next two > patches add support for python_check_deps() and python_gen_any_dep() > respectively. The last two patches provide examples for both use cases > mentioned. >=20 Merged them a while back. --=20 Best regards, Micha=C5=82 G=C3=B3rny --=-j4QIWLyTG5wOqTbaqr7h Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- iQKmBAABCgCQFiEEbbsHzE8NrQbqCv5BsHoa6u+0Rk4FAlk2UtpfFIAAAAAALgAo aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDZE QkIwN0NDNEYwREFEMDZFQTBBRkU0MUIwN0ExQUVBRUZCNDQ2NEUSHG1nb3JueUBn ZW50b28ub3JnAAoJELB6GurvtEZOU9sQAI51ujBpRlROHulNe32/jTx8S9thfptv B9weShDzWZnvvUn0CEOwEoy+M45TSRsiL0b8kP6Fd50Q8brp2G1PUFhjN7NFe7Xj KGHXYyzXzowotWWB8FEOQELnrIFHBH0ANxG6GzEZJ/K4BP5yptQdlgkkDziMZcF4 sLdk7Zmds8Jw9hYE4mnYDYkpMQzPYj/gHkSisv2SZRQPuNzuivieG3j7TI56UdqU bHSxnpP1CK8h5pK3iBW+oJuIfVXz0ce97xxKeP7uvNnGWJxiZulIS+QyfhFAYCKe d8X+Wa9/itp3qSOYwmwt+QcikA6kgaxs407R1pbpMtLdpbZ4z5/69Ftyel7EaMlj Am5Jbqaxuxkf+8AQiIAkd2lQKVzNvxFEpwfhmjl/ohO2yzUlwdSYoyz1qY4pzJeR eYxjdys/JRJw2cbMSdVK8ej31WPR3yurXxoGnpUInMZshjLudJlsYz0r76sfYYkK SYURR+9aKBCpoofQgZIQzp6j1C5Rii+AQEPjDCf3Uqn5nbsyT/DDfCs0STNY8FjP QJph02ICfDHkkMT1w0exIyfkGh0PvNWFU7za09C5U6+RUzBABHnXWqYLd1gwrmaT ccFJEI7aqpPB1IKOBmsSJS1yhl561nXwmNAc6/8A9u5gbBuPcFZA6TwW7rvOb83M 1WEkFzoioQDF =DnS0 -----END PGP SIGNATURE----- --=-j4QIWLyTG5wOqTbaqr7h--