Gentoo Archives: gentoo-portage-dev

From: Matt Turner <mattst88@g.o>
To: Zac Medico <zmedico@g.o>
Cc: gentoo-portage-dev@l.g.o
Subject: Re: [gentoo-portage-dev] [PATCH v2 gentoolkit 2/2] eclean: Add option to delete binpkgs with changed deps
Date: Wed, 11 Mar 2020 23:33:04
Message-Id: CAEdQ38HfDi2xP8dadQBVVdzH4wNGgpRPf3Q7PJFbavR2THO3TA@mail.gmail.com
In Reply to: Re: [gentoo-portage-dev] [PATCH v2 gentoolkit 2/2] eclean: Add option to delete binpkgs with changed deps by Zac Medico
1 On Tue, Mar 10, 2020 at 8:30 PM Zac Medico <zmedico@g.o> wrote:
2 >
3 > On 3/6/20 10:11 PM, Matt Turner wrote:
4 > > +def _deps_equal(deps_a, deps_b, eapi, uselist=None):
5 > > + """Compare two dependency lists given a set of USE flags"""
6 > > + if deps_a == deps_b: return True
7 > > +
8 > > + deps_a = use_reduce(deps_a, uselist=uselist, eapi=eapi, token_class=Atom)
9 > > + deps_b = use_reduce(deps_b, uselist=uselist, eapi=eapi, token_class=Atom)
10 >
11 > It's pure luck that passing a list of depstrings to use_reduce works
12 > here, so it will be more future-proof to use ' '.join(depstr) instead.
13 > The relevant code in use_reduce looks like this:
14 >
15 > if isinstance(depstr, list):
16 > if portage._internal_caller:
17 > warnings.warn(_("Passing paren_reduced dep arrays to %s is deprecated. " + \
18 > "Pass the original dep string instead.") % \
19 > ('portage.dep.use_reduce',), DeprecationWarning, stacklevel=2)
20 > depstr = paren_enclose(depstr)
21
22 Okay, thank you. I've fixed this with:
23
24 - binpkg_deps = bin_dbapi.aux_get(cpv, keys)
25 - ebuild_deps = port_dbapi.aux_get(cpv, keys)
26 + binpkg_deps = ' '.join(bin_dbapi.aux_get(cpv, keys))
27 + ebuild_deps = ' '.join(port_dbapi.aux_get(cpv, keys))
28
29 With that fixed, do the patches look good to you?

Replies