Gentoo Archives: gentoo-commits

From: Zac Medico <zmedico@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/portage:master commit in: pym/_emerge/
Date: Tue, 04 Apr 2017 03:20:34
Message-Id: 1491275959.f05d0864653e082bd60db67b52132c4ba6515339.zmedico@gentoo
1 commit: f05d0864653e082bd60db67b52132c4ba6515339
2 Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
3 AuthorDate: Mon Apr 3 01:50:45 2017 +0000
4 Commit: Zac Medico <zmedico <AT> gentoo <DOT> org>
5 CommitDate: Tue Apr 4 03:19:19 2017 +0000
6 URL: https://gitweb.gentoo.org/proj/portage.git/commit/?id=f05d0864
7
8 EbuildBuild: eliminate call to digestgen (bug 614116)
9
10 Eliminate the call to digestgen in EbuildBuild._fetchonly_exit,
11 and make Scheduler._generate_digests call it earlier when
12 --fetchonly is enabled. This avoids event loop recursion which
13 is not compatible with asyncio (digestgen makes many calls that
14 can trigger event loop recursion).
15
16 X-Gentoo-bug: 614116
17 X-Gentoo-bug-url: https://bugs.gentoo.org/show_bug.cgi?id=614116
18 Acked-by: Brian Dolbec <dolsen <AT> gentoo.org>
19
20 pym/_emerge/EbuildBuild.py | 5 -----
21 pym/_emerge/Scheduler.py | 3 ---
22 2 files changed, 8 deletions(-)
23
24 diff --git a/pym/_emerge/EbuildBuild.py b/pym/_emerge/EbuildBuild.py
25 index 001f55fff..11eb1c93e 100644
26 --- a/pym/_emerge/EbuildBuild.py
27 +++ b/pym/_emerge/EbuildBuild.py
28 @@ -21,7 +21,6 @@ from _emerge.TaskSequence import TaskSequence
29 import portage
30 from portage import _encodings, _unicode_decode, _unicode_encode, os
31 from portage.package.ebuild.digestcheck import digestcheck
32 -from portage.package.ebuild.digestgen import digestgen
33 from portage.package.ebuild.doebuild import _check_temp_dir
34 from portage.package.ebuild._spawn_nofetch import spawn_nofetch
35
36 @@ -168,10 +167,6 @@ class EbuildBuild(CompositeTask):
37 if self.returncode != os.EX_OK:
38 portdb = self.pkg.root_config.trees[self._tree].dbapi
39 spawn_nofetch(portdb, self._ebuild_path, settings=self.settings)
40 - elif 'digest' in self.settings.features:
41 - if not digestgen(mysettings=self.settings,
42 - myportdb=self.pkg.root_config.trees[self._tree].dbapi):
43 - self.returncode = 1
44 self.wait()
45
46 def _pre_clean_exit(self, pre_clean_phase):
47
48 diff --git a/pym/_emerge/Scheduler.py b/pym/_emerge/Scheduler.py
49 index 58ff97139..079fac7b9 100644
50 --- a/pym/_emerge/Scheduler.py
51 +++ b/pym/_emerge/Scheduler.py
52 @@ -616,9 +616,6 @@ class Scheduler(PollScheduler):
53 tasks are started.
54 """
55
56 - if '--fetchonly' in self.myopts:
57 - return os.EX_OK
58 -
59 digest = '--digest' in self.myopts
60 if not digest:
61 for pkgsettings in self.pkgsettings.values():