Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 467468 Details for
Bug 294719
emerge --onlydeps and PDEPEND
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
onlydeps=minimal patch
0001-Add-onlydeps-minimal-emerge-option.patch (text/plain), 5.47 KB, created by
William Throwe
on 2017-03-18 19:20:55 UTC
(
hide
)
Description:
onlydeps=minimal patch
Filename:
MIME Type:
Creator:
William Throwe
Created:
2017-03-18 19:20:55 UTC
Size:
5.47 KB
patch
obsolete
>From 081db356e7d669be0fb8a1bb7b4c9a1dc952c220 Mon Sep 17 00:00:00 2001 >From: William Throwe <wtt6@cornell.edu> >Date: Sat, 11 Mar 2017 20:41:59 -0500 >Subject: [PATCH 1/1] Add --onlydeps=minimal emerge option > >--- > man/emerge.1 | 5 ++- > pym/_emerge/depgraph.py | 8 +++- > pym/_emerge/main.py | 13 ++++++- > .../tests/resolver/test_onlydeps_minimal.py | 45 ++++++++++++++++++++++ > 4 files changed, 66 insertions(+), 5 deletions(-) > create mode 100644 pym/portage/tests/resolver/test_onlydeps_minimal.py > >diff --git a/man/emerge.1 b/man/emerge.1 >index 7db4271..2a38f45 100644 >--- a/man/emerge.1 >+++ b/man/emerge.1 >@@ -712,9 +712,10 @@ allowed to be broken when satisfying dependencies of other packages. > Broken dependencies of this sort will invalidate assumptions that make > it possible for \fB\-\-deep\fR to be disabled by default. > .TP >-.BR "\-\-onlydeps " (\fB\-o\fR) >+.BR "\-\-onlydeps[=minimal] " (\fB\-o\fR) > Only merge (or pretend to merge) the dependencies of the packages >-specified, not the packages themselves. >+specified, not the packages themselves. If the \fBminimal\fR argument >+is given then only merge build time dependencies. > .TP > .BR "\-\-package\-moves [ y | n ]" > Perform package moves when necessary. This option is enabled >diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py >index 1379b05..eb06234 100644 >--- a/pym/_emerge/depgraph.py >+++ b/pym/_emerge/depgraph.py >@@ -3000,6 +3000,10 @@ class depgraph(object): > edepend["RDEPEND"] = "" > edepend["PDEPEND"] = "" > >+ if pkg.onlydeps == "minimal": >+ edepend["RDEPEND"] = "" >+ edepend["PDEPEND"] = "" >+ > ignore_build_time_deps = False > if pkg.built and not removal_action: > if self._dynamic_config.myparams.get("bdeps") in ("y", "auto"): >@@ -3637,7 +3641,7 @@ class depgraph(object): > bindb = self._frozen_config.trees[eroot]["bintree"].dbapi > pkgsettings = self._frozen_config.pkgsettings[eroot] > args = [] >- onlydeps = "--onlydeps" in self._frozen_config.myopts >+ onlydeps = self._frozen_config.myopts.get("--onlydeps") > lookup_owners = [] > for x in myfiles: > ext = os.path.splitext(x)[1] >@@ -3987,7 +3991,7 @@ class depgraph(object): > call self._creategraph to process theier deps and return > a favorite list.""" > debug = "--debug" in self._frozen_config.myopts >- onlydeps = "--onlydeps" in self._frozen_config.myopts >+ onlydeps = self._frozen_config.myopts.get("--onlydeps") > myroot = self._frozen_config.target_root > pkgsettings = self._frozen_config.pkgsettings[myroot] > pprovideddict = pkgsettings.pprovideddict >diff --git a/pym/_emerge/main.py b/pym/_emerge/main.py >index 76e963a..e957ee0 100644 >--- a/pym/_emerge/main.py >+++ b/pym/_emerge/main.py >@@ -42,7 +42,7 @@ options=[ > "--newuse", > "--nodeps", "--noreplace", > "--nospinner", "--oneshot", >-"--onlydeps", "--pretend", >+"--pretend", > "--quiet-repo-display", > "--quiet-unmerge-warn", > "--resume", >@@ -147,6 +147,7 @@ def insert_optional_args(args): > '--jobs' : valid_integers, > '--keep-going' : y_or_n, > '--load-average' : valid_floats, >+ '--onlydeps' : ('minimal',), > '--package-moves' : y_or_n, > '--quiet' : y_or_n, > '--quiet-build' : y_or_n, >@@ -559,6 +560,11 @@ def parse_opts(tmpcmdline, silent=False): > "action" : "append", > }, > >+ "--onlydeps": { >+ "help" : "modify interpretation of depedencies", >+ "choices" :("True", "minimal") >+ }, >+ > "--rebuild-exclude": { > "help" :"A space separated list of package names or slot atoms. " + \ > "Emerge will not rebuild these packages due to the " + \ >@@ -890,6 +896,11 @@ def parse_opts(tmpcmdline, silent=False): > else: > myoptions.keep_going = None > >+ if myoptions.onlydeps in true_y: >+ myoptions.onlydeps = True >+ elif myoptions.onlydeps is False: >+ myoptions.onlydeps = None >+ > if myoptions.package_moves in true_y: > myoptions.package_moves = True > >diff --git a/pym/portage/tests/resolver/test_onlydeps_minimal.py b/pym/portage/tests/resolver/test_onlydeps_minimal.py >new file mode 100644 >index 0000000..a7df030 >--- /dev/null >+++ b/pym/portage/tests/resolver/test_onlydeps_minimal.py >@@ -0,0 +1,45 @@ >+# Copyright 2017 Gentoo Foundation >+# Distributed under the terms of the GNU General Public License v2 >+ >+from portage.tests import TestCase >+from portage.tests.resolver.ResolverPlayground import ResolverPlayground, ResolverPlaygroundTestCase >+ >+class OnlydepsMinimalTestCase(TestCase): >+ >+ def testOnlydepsMinimal(self): >+ ebuilds = { >+ "dev-libs/A-1": { "DEPEND": "dev-libs/B", >+ "RDEPEND": "dev-libs/C", >+ "PDEPEND": "dev-libs/D" }, >+ "dev-libs/B-1": { }, >+ "dev-libs/C-1": { }, >+ "dev-libs/D-1": { }, >+ } >+ installed = { >+ } >+ >+ test_cases = ( >+ ResolverPlaygroundTestCase( >+ ["dev-libs/A"], >+ all_permutations = True, >+ success = True, >+ options = { "--onlydeps": True }, >+ mergelist = ["dev-libs/B-1", >+ "dev-libs/C-1", >+ "dev-libs/D-1"]), >+ ResolverPlaygroundTestCase( >+ ["dev-libs/A"], >+ all_permutations = True, >+ success = True, >+ options = { "--onlydeps": "minimal" }, >+ mergelist = ["dev-libs/B-1"]), >+ ) >+ >+ playground = ResolverPlayground(ebuilds=ebuilds, >+ installed=installed, debug=False) >+ try: >+ for test_case in test_cases: >+ playground.run_TestCase(test_case) >+ self.assertEqual(test_case.test_success, True, test_case.fail_msg) >+ finally: >+ playground.cleanup() >-- >2.10.2 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 294719
:
211251
|
466762
|
466830
| 467468 |
467470
|
470200