Gentoo Archives: gentoo-portage-dev

From: Zac Medico <zmedico@g.o>
To: gentoo-portage-dev@l.g.o, Matt Turner <mattst88@g.o>
Subject: Re: [gentoo-portage-dev] [PATCH gentoolkit 1/2] eclean: Inline _sort_keys method
Date: Thu, 05 Dec 2019 02:17:52
Message-Id: ce6ca21f-13f9-cce1-14f4-3371d4add877@gentoo.org
In Reply to: [gentoo-portage-dev] [PATCH gentoolkit 1/2] eclean: Inline _sort_keys method by Matt Turner
1 On 12/4/19 6:12 PM, Matt Turner wrote:
2 > The boilerplate for calling this method was larger than what it actually
3 > contained. Additionally I think this change will allow the loop to run
4 > on a generator rather than a full list.
5 >
6 > Signed-off-by: Matt Turner <mattst88@g.o>
7 > ---
8 > pym/gentoolkit/eclean/clean.py | 21 ++++++---------------
9 > 1 file changed, 6 insertions(+), 15 deletions(-)
10 >
11 > diff --git a/pym/gentoolkit/eclean/clean.py b/pym/gentoolkit/eclean/clean.py
12 > index fd59976..b790de0 100644
13 > --- a/pym/gentoolkit/eclean/clean.py
14 > +++ b/pym/gentoolkit/eclean/clean.py
15 > @@ -36,10 +36,9 @@ class CleanUp(object):
16 > @return: total size that was cleaned
17 > """
18 > file_type = 'file'
19 > - clean_keys = self._sort_keys(clean_dict)
20 > clean_size = 0
21 > - # clean all entries one by one
22 > - for key in clean_keys:
23 > + # clean all entries one by one; sorting helps reading
24 > + for key in sorted(clean_dict.keys()):
25 > clean_size += self._clean_files(clean_dict[key], key, file_type)
26 > # return total size of deleted or to delete files
27 > return clean_size
28 > @@ -57,10 +56,9 @@ class CleanUp(object):
29 > @return: total size that was cleaned
30 > """
31 > file_type = 'binary package'
32 > - clean_keys = self._sort_keys(clean_dict)
33 > clean_size = 0
34 > - # clean all entries one by one
35 > - for key in clean_keys:
36 > + # clean all entries one by one; sorting helps reading
37 > + for key in sorted(clean_dict.keys()):
38 > clean_size += self._clean_files(clean_dict[key], key, file_type)
39 >
40 > # run 'emaint --fix' here
41 > @@ -83,10 +81,9 @@ class CleanUp(object):
42 > @return: total size that would be cleaned
43 > """
44 > file_type = 'file'
45 > - clean_keys = self._sort_keys(clean_dict)
46 > clean_size = 0
47 > - # tally all entries one by one
48 > - for key in clean_keys:
49 > + # tally all entries one by one; sorting helps reading
50 > + for key in sorted(clean_dict.keys()):
51 > key_size = self._get_size(clean_dict[key])
52 > self.controller(key_size, key, clean_dict[key], file_type)
53 > clean_size += key_size
54 > @@ -110,12 +107,6 @@ class CleanUp(object):
55 > print( pp.error("Error: %s" %str(er)), file=sys.stderr)
56 > return key_size
57 >
58 > - def _sort_keys(self, clean_dict):
59 > - """Returns a list of sorted dictionary keys."""
60 > - # sorting helps reading
61 > - clean_keys = sorted(clean_dict)
62 > - return clean_keys
63 > -
64 > def _clean_files(self, files, key, file_type):
65 > """File removal function."""
66 > clean_size = 0
67 >
68
69 Looks good except you can just use sorted(clean_dict) without calling
70 the keys() method.
71 --
72 Thanks,
73 Zac

Attachments

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

Replies