Gentoo Archives: gentoo-portage-dev

From: Zac Medico <zmedico@g.o>
To: gentoo-portage-dev@l.g.o
Cc: Zac Medico <zmedico@g.o>
Subject: [gentoo-portage-dev] [PATCH] emerge: enable --dynamic-deps=y by default once again (bug 646458)
Date: Sat, 03 Feb 2018 02:25:08
Message-Id: 20180203022331.7829-1-zmedico@gentoo.org
1 There's been a lot of pushback involving the --dynamic-deps=n default.
2 What we really need is a tool to apply dependency changes in-place,
3 without the need for a rebuild.
4
5 Reverts: 2905e1c2c28d ("Disable dynamic-deps by default")
6 Bug: https://bugs.gentoo.org/646458
7 ---
8 man/emerge.1 | 2 +-
9 pym/_emerge/Scheduler.py | 3 ++-
10 pym/_emerge/create_depgraph_params.py | 6 +++---
11 pym/_emerge/depgraph.py | 7 +++----
12 4 files changed, 9 insertions(+), 9 deletions(-)
13
14 diff --git a/man/emerge.1 b/man/emerge.1
15 index 189e6f879..f15532a1d 100644
16 --- a/man/emerge.1
17 +++ b/man/emerge.1
18 @@ -558,7 +558,7 @@ In dependency calculations, substitute the dependencies of installed
19 packages with the dependencies of corresponding unbuilt ebuilds from
20 source repositories. This causes the effective dependencies of
21 installed packages to vary dynamically when source ebuild dependencies
22 -are modified. This option is disabled by default.
23 +are modified. This option is enabled by default.
24
25 \fBWARNING:\fR
26 If you want to disable \-\-dynamic\-deps, then it may be necessary to
27 diff --git a/pym/_emerge/Scheduler.py b/pym/_emerge/Scheduler.py
28 index 9bbc48e0a..eb1cd0108 100644
29 --- a/pym/_emerge/Scheduler.py
30 +++ b/pym/_emerge/Scheduler.py
31 @@ -352,7 +352,8 @@ class Scheduler(PollScheduler):
32 """
33 self._set_graph_config(graph_config)
34 self._blocker_db = {}
35 - dynamic_deps = self.myopts.get("--dynamic-deps", "n") != "n"
36 + depgraph_params = create_depgraph_params(self.myopts, None)
37 + dynamic_deps = "dynamic_deps" in depgraph_params
38 ignore_built_slot_operator_deps = self.myopts.get(
39 "--ignore-built-slot-operator-deps", "n") == "y"
40 for root in self.trees:
41 diff --git a/pym/_emerge/create_depgraph_params.py b/pym/_emerge/create_depgraph_params.py
42 index ecd65335c..2fc907d37 100644
43 --- a/pym/_emerge/create_depgraph_params.py
44 +++ b/pym/_emerge/create_depgraph_params.py
45 @@ -46,9 +46,9 @@ def create_depgraph_params(myopts, myaction):
46 myparams["ignore_soname_deps"] = myopts.get(
47 "--ignore-soname-deps", "y")
48
49 - dynamic_deps = myopts.get("--dynamic-deps")
50 - if dynamic_deps is not None:
51 - myparams["dynamic_deps"] = dynamic_deps
52 + dynamic_deps = myopts.get("--dynamic-deps", "y") != "n"
53 + if dynamic_deps:
54 + myparams["dynamic_deps"] = True
55
56 if myaction == "remove":
57 myparams["remove"] = True
58 diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
59 index ac0afdf07..1c47b4b63 100644
60 --- a/pym/_emerge/depgraph.py
61 +++ b/pym/_emerge/depgraph.py
62 @@ -137,7 +137,7 @@ class _frozen_depgraph_config(object):
63 self.soname_deps_enabled = (
64 ("--usepkgonly" in myopts or "remove" in params) and
65 params.get("ignore_soname_deps") != "y")
66 - dynamic_deps = myopts.get("--dynamic-deps", "n") != "n"
67 + dynamic_deps = "dynamic_deps" in params
68 ignore_built_slot_operator_deps = myopts.get(
69 "--ignore-built-slot-operator-deps", "n") == "y"
70 for myroot in trees:
71 @@ -627,8 +627,7 @@ class depgraph(object):
72
73 for myroot in self._frozen_config.trees:
74
75 - dynamic_deps = self._dynamic_config.myparams.get(
76 - "dynamic_deps", "n") != "n"
77 + dynamic_deps = "dynamic_deps" in self._dynamic_config.myparams
78 preload_installed_pkgs = \
79 "--nodeps" not in self._frozen_config.myopts
80
81 @@ -985,7 +984,7 @@ class depgraph(object):
82 * none of the packages with changed deps are in the graph
83 """
84 if (self._dynamic_config.myparams.get("changed_deps", "n") == "y" or
85 - self._dynamic_config.myparams.get("dynamic_deps", "n") == "y"):
86 + "dynamic_deps" in self._dynamic_config.myparams):
87 return
88
89 report_pkgs = []
90 --
91 2.13.6

Replies