We have prepared for this for quite a while and it's time to pull
the plug. Disable dynamic-deps by default and restore the standard
PMS behavior. This will cause some one-time pain but eventually will
result in improvement of ebuild quality, especially when developers
start experiencing the need for revbumps first hand.
---
 man/emerge.1                                    | 2 +-
 pym/_emerge/FakeVartree.py                      | 2 +-
 pym/_emerge/Scheduler.py                        | 2 +-
 pym/_emerge/depgraph.py                         | 4 ++--
 pym/portage/tests/resolver/test_changed_deps.py | 1 +
 pym/portage/tests/resolver/test_virtual_slot.py | 2 +-
 6 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/man/emerge.1 b/man/emerge.1
index 3198ba028..b292954a3 100644
--- a/man/emerge.1
+++ b/man/emerge.1
@@ -547,7 +547,7 @@ In dependency calculations, substitute the dependencies of 
installed
 packages with the dependencies of corresponding unbuilt ebuilds from
 source repositories. This causes the effective dependencies of
 installed packages to vary dynamically when source ebuild dependencies
-are modified. This option is enabled by default.
+are modified. This option is disabled by default.
 
 \fBWARNING:\fR
 If you want to disable \-\-dynamic\-deps, then it may be necessary to
diff --git a/pym/_emerge/FakeVartree.py b/pym/_emerge/FakeVartree.py
index ebe07bba2..3f82e97e9 100644
--- a/pym/_emerge/FakeVartree.py
+++ b/pym/_emerge/FakeVartree.py
@@ -54,7 +54,7 @@ class FakeVartree(vartree):
        is not a matching ebuild in the tree). Instances of this class are not
        populated until the sync() method is called."""
        def __init__(self, root_config, pkg_cache=None, pkg_root_config=None,
-               dynamic_deps=True, ignore_built_slot_operator_deps=False,
+               dynamic_deps=False, ignore_built_slot_operator_deps=False,
                soname_deps=False):
                self._root_config = root_config
                self._dynamic_deps = dynamic_deps
diff --git a/pym/_emerge/Scheduler.py b/pym/_emerge/Scheduler.py
index 3a38cbafd..9bbc48e0a 100644
--- a/pym/_emerge/Scheduler.py
+++ b/pym/_emerge/Scheduler.py
@@ -352,7 +352,7 @@ class Scheduler(PollScheduler):
                """
                self._set_graph_config(graph_config)
                self._blocker_db = {}
-               dynamic_deps = self.myopts.get("--dynamic-deps", "y") != "n"
+               dynamic_deps = self.myopts.get("--dynamic-deps", "n") != "n"
                ignore_built_slot_operator_deps = self.myopts.get(
                        "--ignore-built-slot-operator-deps", "n") == "y"
                for root in self.trees:
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index 6e5ca6508..27bec3b32 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -137,7 +137,7 @@ class _frozen_depgraph_config(object):
                self.soname_deps_enabled = (
                        ("--usepkgonly" in myopts or "remove" in params) and
                        params.get("ignore_soname_deps") != "y")
-               dynamic_deps = myopts.get("--dynamic-deps", "y") != "n"
+               dynamic_deps = myopts.get("--dynamic-deps", "n") != "n"
                ignore_built_slot_operator_deps = myopts.get(
                        "--ignore-built-slot-operator-deps", "n") == "y"
                for myroot in trees:
@@ -627,7 +627,7 @@ class depgraph(object):
                for myroot in self._frozen_config.trees:
 
                        dynamic_deps = self._dynamic_config.myparams.get(
-                               "dynamic_deps", "y") != "n"
+                               "dynamic_deps", "n") != "n"
                        preload_installed_pkgs = \
                                "--nodeps" not in self._frozen_config.myopts
 
diff --git a/pym/portage/tests/resolver/test_changed_deps.py 
b/pym/portage/tests/resolver/test_changed_deps.py
index 2421c531f..420a00172 100644
--- a/pym/portage/tests/resolver/test_changed_deps.py
+++ b/pym/portage/tests/resolver/test_changed_deps.py
@@ -52,6 +52,7 @@ class ChangedDepsTestCase(TestCase):
                                options = {
                                        "--update": True,
                                        "--deep": True,
+                                       "--dynamic-deps": "y",
                                        "--usepkg": True,
                                },
                                mergelist = ["app-misc/B-0"]
diff --git a/pym/portage/tests/resolver/test_virtual_slot.py 
b/pym/portage/tests/resolver/test_virtual_slot.py
index cee1a2373..ef4bd367a 100644
--- a/pym/portage/tests/resolver/test_virtual_slot.py
+++ b/pym/portage/tests/resolver/test_virtual_slot.py
@@ -142,7 +142,7 @@ class VirtualSlotResolverTestCase(TestCase):
                        # bug 526160 - test for missed pypy sub-slot update
                        ResolverPlaygroundTestCase(
                                ["@world"],
-                               options = {"--update": True, "--deep": True},
+                               options = {"--update": True, "--deep": True, 
"--dynamic-deps": "y"},
                                success=True,
                                mergelist = ['dev-python/pypy-2.4.0',
                                        'virtual/pypy-2.4.0',
-- 
2.15.1


Reply via email to