[packages/flake8] explicit runtime deps on python-{entrypoints,mccabe,pycodestyle,pyflakes}; rel 3

Jan Palus atler at pld-linux.org
Tue Mar 2 11:49:24 CET 2021


On 02.03.2021 11:38, Elan Ruusamäe wrote:
> On 01.03.2021 18:53, atler wrote:
> 
> > commit 9c7664000af796dea8cd3794ae3ac37ff08274bb
> > Author: Jan Palus <atler at pld-linux.org>
> > Date:   Mon Mar 1 17:52:20 2021 +0100
> > 
> >      explicit runtime deps on python-{entrypoints,mccabe,pycodestyle,pyflakes}; rel 3
> >      ...because poldek cannot handle boolean dep
> > 
> >   flake8.spec | 18 +++++++++++++++++-
> >   1 file changed, 17 insertions(+), 1 deletion(-)
> > ---
> > diff --git a/flake8.spec b/flake8.spec
> > index 5dbcb6f..5ddc216 100644
> > --- a/flake8.spec
> > +++ b/flake8.spec
> > @@ -9,7 +9,7 @@ Summary:	The modular source code checker: pycodestyle, pyflakes and co
> >   Summary(pl.UTF-8):	Modularne narzędzie do sprawdzania kodu źródłowego: pycodestyle, pyflakes itp.
> >   Name:		flake8
> >   Version:	3.7.9
> > -Release:	2
> > +Release:	3
> >   License:	MIT
> >   Group:		Development/Tools
> >   #Source0Download: https://pypi.org/simple/flake8/
> > @@ -85,7 +85,15 @@ dla narzędzi:
> >   Summary:	The modular source code checker: pycodestyle, pyflakes and co
> >   Summary(pl.UTF-8):	Modularne narzędzie do sprawdzania kodu źródłowego: pycodestyle, pyflakes itp.
> >   Group:		Libraries/Python
> > +Requires:	python-entrypoints >= 0.3
> > +Requires:	python-entrypoints < 0.4
> > +Requires:	python-mccabe >= 0.6.0
> > +Requires:	python-mccabe < 0.7.0
> >   Requires:	python-modules >= 1:2.7
> > +Requires:	python-pycodestyle >= 2.5.0
> > +Requires:	python-pycodestyle < 2.6.0
> > +Requires:	python-pyflakes >= 2.1.0
> > +Requires:	python-pyflakes < 2.2.0
> 
> what is boolean dep? can't see any match from here:

https://rpm.org/user_doc/boolean_dependencies.html

in this case it's a dependency that tells ie required python-pyflakes
version should be both '>=' and '<'.

Sample from failing rpmlint build:
http://buildlogs.pld-linux.org//index.php?dist=th&arch=x86_64&ok=0&ns=&cnt=50&off=0&name=rpmlint&id=e978a528-13c2-428f-88f7-22ba68295283&action=text

poldek: warn: (python3.9dist(entrypoints) < 0.4 with python3.9dist(entrypoints) >= 0.3): skipping boolean dependency (not supported yet)
poldek: warn: (python3.9dist(mccabe) < 0.7 with python3.9dist(mccabe) >= 0.6): skipping boolean dependency (not supported yet)
poldek: warn: (python3.9dist(pycodestyle) < 2.6 with python3.9dist(pycodestyle) >= 2.5): skipping boolean dependency (not supported yet)
poldek: warn: (python3.9dist(pyflakes) < 2.2 with python3.9dist(pyflakes) >= 2.1): skipping boolean dependency (not supported yet)
poldek: There are 2 packages to install:
poldek: A python3-flake8-3.7.9-2.noarch  python3-rpm-4.16.1.2-7.x86_64
...
poldek: Executing pm-command.sh --upgrade -vh --test --root / --define _check_dirname_deps 0...
poldek: error: Failed dependencies:
poldek: 	(python3.9dist(entrypoints) < 0.4 with python3.9dist(entrypoints) >= 0.3) is needed by python3-flake8-3.7.9-2.noarch
poldek: 	(python3.9dist(mccabe) < 0.7 with python3.9dist(mccabe) >= 0.6) is needed by python3-flake8-3.7.9-2.noarch
poldek: 	(python3.9dist(pyflakes) < 2.2 with python3.9dist(pyflakes) >= 2.1) is needed by python3-flake8-3.7.9-2.noarch

> - https://www.pld-linux.org/packages/rpm
> 
> 
> from what you solving, seems a dependency generator issue to me
> 
> i  think it's still better to fix dependency generator than again start to
> manually fill dependencies,
> 
> and then those get outdated very soon.

The solution is to add boolean dependency support to poldek.


More information about the pld-devel-en mailing list