Re: [gentoo-dev] [PATCHES] python-r1.eclass: any-of dep API support
On sob, 2017-05-20 at 15:30 +0200, Michał Górny wrote: > Hi, everyone. > > 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. > > The basic goal is relatively simple -- to improve handling of pure > build-time dependencies in the eclass. It solves two common problems: > > a. dependencies on packages that support only a subset of PYTHON_COMPAT, > > b. dependencies that need to be implementation-bound between themselves >(e.g. Sphinx plugins). > > 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. > > 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. > > 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. > Merged them a while back. -- Best regards, Michał Górny signature.asc Description: This is a digitally signed message part
Re: [gentoo-dev] [PATCHES] python-r1.eclass: any-of dep API support
On 05/20/2017 06:30 AM, Michał Górny wrote: > > > Please review. > > -- > Best regards, > Michał Górny > > It looks much as you mentioned it'd be: moving code around and cutting down duplication. Looks good to me. I really appreciate the example in patch 7, which makes it a little more clear how to use it. Thanks for putting all of this together. I'm not sure how to express this because I don't know which question to ask. Is there anything I can help with once this gets committed? -- Daniel Campbell - Gentoo Developer OpenPGP Key: 0x1EA055D6 @ hkp://keys.gnupg.net fpr: AE03 9064 AE00 053C 270C 1DE4 6F7A 9091 1EA0 55D6 signature.asc Description: OpenPGP digital signature
Re: [gentoo-dev] [PATCHES] python-r1.eclass: any-of dep API support
On nie, 2017-05-21 at 09:44 +0700, Alex Turbov wrote: > When it'll be possible to start to use it? > I'll send a reply to the patch when it's committed. Usually takes a week, unless somebody opposes. -- Best regards, Michał Górny signature.asc Description: This is a digitally signed message part
Re: [gentoo-dev] [PATCHES] python-r1.eclass: any-of dep API support
When it'll be possible to start to use it? On Sat, May 20, 2017 at 8:30 PM, Michał Górnywrote: > Hi, everyone. > > 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. > > The basic goal is relatively simple -- to improve handling of pure > build-time dependencies in the eclass. It solves two common problems: > > a. dependencies on packages that support only a subset of PYTHON_COMPAT, > > b. dependencies that need to be implementation-bound between themselves >(e.g. Sphinx plugins). > > 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. > > 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. > > 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. > > Please review. > > -- > Best regards, > Michał Górny > > >
[gentoo-dev] [PATCHES] python-r1.eclass: any-of dep API support
Hi, everyone. 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. The basic goal is relatively simple -- to improve handling of pure build-time dependencies in the eclass. It solves two common problems: a. dependencies on packages that support only a subset of PYTHON_COMPAT, b. dependencies that need to be implementation-bound between themselves (e.g. Sphinx plugins). 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. 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. 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. Please review. -- Best regards, Michał Górny