Gentoo Archives: gentoo-portage-dev

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

Attachments

File name MIME type
signature.asc application/pgp-signature