aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* --autounmask: Use >= atoms if possibleSebastian Luther2011-05-141-3/+49
| | | | | | | | | If the package is the latest avaiable it now uses >=cat/pkg-ver instead of =cat/pkg-ver. If the package is not the latest, but the latest in its slot, >=cat/pkg-ver:slot is used. In all other case =cat/pkg-ver is used. Rational is that it's more likely that newer versions, added in the future, will work with the same configuration changes as the currently latest version than not.
* depgraph: in complete mode respect --with-bdepsZac Medico2011-05-111-7/+3
| | | | | If you want the graph as complete as possible, now you'll have to use --with-bdeps=y together with --complete-graph.
* dep_check_composite_db: return early from cp_listZac Medico2011-05-101-1/+4
| | | | | Since this implementation is only intended to check for existence of new-style virtuals, it's a waste of time to return more than one cpv.
* depgraph: traverse ignored DEPEND if "complete"Zac Medico2011-05-101-2/+5
|
* Strip build-time dependencies when they're ignored and we're not in ↵David James2011-05-101-0/+5
| | | | | | | | | | | --rebuild mode. This should improve depgraph calculation performance. TEST=Ran test suite. BUG=chromium-os:15144 Change-Id: I9e06817201d7a17ae9b44b424d01c1a2bd89210a
* depgraph: don't clear vardbapi cache in _load_vdbZac Medico2011-05-091-8/+0
| | | | | | Most of the memory is probably held on the heap by the installed package instances anyway, and the cache is useful for being inherited by subprocess in MergeProcess.
* dep_check_composite_db: remove unused _dep_expandZac Medico2011-05-091-43/+1
| | | | | | | | This code has been unused since dep_check started passing token_class=Atom to use_reduce in commit c9f7930883d62fc26af72bff0c4623db0bbc8221. Since then, any atoms without categories are dropped by dep_check because it returns early after catching an InvalidDependString exception.
* dep_check_composite_db: implement cp_listZac Medico2011-05-091-0/+17
| | | | | This is used by dep_check since commit 6f9ee9c508c1506cdf8eb0dc46796dbe30f268db.
* resume_depgraph: don't call break_refs in loopZac Medico2011-05-081-2/+1
| | | | | | | | | | The break_refs call was unnecessary and it broke the state of the frozen_config instance, causing the following error: File "pym/_emerge/depgraph.py", line 1290, in _wrapped_add_pkg_dep_string inst_pkgs = vardb.match_pkgs(atom) AttributeError: 'vardbapi' object has no attribute 'match_pkgs'
* depgraph: simplify break_refsv2.2.0_alpha31Zac Medico2011-05-051-20/+14
|
* emerge: fix misspell suggestion with categoryZac Medico2011-05-051-3/+2
| | | | A name collision in the "cp" variable caused it to malfunction.
* add_pkg_deps: removal action discard DEPEND earlyZac Medico2011-05-041-0/+3
|
* add_pkg_deps: use dep priority to ignore blockersZac Medico2011-05-041-12/+10
|
* add_pkg_dep_string: respect traverse_ignored_depsZac Medico2011-05-041-3/+6
| | | | | I don't think this makes any difference now, but it clarifies how traverse_ignored_deps should behave.
* emerge: replace --rebuild with finer grained optsDavid James2011-05-041-7/+47
| | | | | | | | | | | | | | | | | | | | | | Replace --rebuild option with --rebuild-if-* options. --rebuild-if-new-rev [ y | n ] Rebuild packages when dependencies that are used at both build-time and run-time are built, if the dependency is not already installed with the same version and revision. --rebuild-if-new-ver [ y | n ] Rebuild packages when dependencies that are used at both build-time and run-time are built, if the dependency is not already installed with the same version. Revision numbers are ignored. --rebuild-if-unbuilt [ y | n ] Rebuild packages when dependencies that are used at both build-time and run-time are built. Change-Id: Ia50c1702bfe1b98a8d1891740e7bbb045921a905 Review URL: http://gerrit.chromium.org/gerrit/280
* Add --rebuild-ignore flag.David James2011-05-031-1/+5
| | | | | | | | | A space separated list of package names or slot atoms. Emerge will not rebuild packages that depend on matching packages due to \fB\-\-rebuild\fR. Change-Id: Ia58fe632ed06c97a22413da0341d7f8da2d65ba8 Review URL: http://gerrit.chromium.org/gerrit/209
* rebuild_config: propagate runtime deps to parentsDavid James2011-05-031-4/+8
| | | | | | | | | | | | | Update rebuild option to propagate runtime deps to parents. Suggested by SebastianLuther@gmx.de BUG=chromium-os:14858 TEST=Added unit test. Ran unit tests. Change-Id: I7228a8558eddd1956c590de39430172476c66228 Review URL: http://gerrit.chromium.org/gerrit/202
* emerge: skip misspell suggestion if cp existsZac Medico2011-05-021-0/+8
|
* depgraph: autounmask account for optional depsZac Medico2011-05-021-0/+14
|
* emerge: rename --no*-atoms to --*-excludeZac Medico2011-05-021-8/+8
|
* depgraph: queue ignored deps for later traversalZac Medico2011-05-011-13/+28
| | | | | | This will fix an issue with some build-time deps being ignored by --complete-graph in cases when --with-bdeps is not enabled. It should help --rebuild to find more rebuilds in this case.
* depgraph: account for new-style virtual/libcZac Medico2011-05-011-71/+93
| | | | This will fix bug #364681.
* trigger_rebuilds: handle circular depsZac Medico2011-05-011-1/+27
|
* depgraph: traverse bdeps in complete modeZac Medico2011-05-011-2/+5
| | | | | This makes the graph as complete as possible, and can help --rebuild to find more rebuilds.
* depgraph: ignore unwanted virtualsZac Medico2011-05-011-2/+3
| | | | | This fixes an unwanted side-effect from commit 470871eeafa89a05486d4eb6f3f7626c1f813e4d.
* emerge: add --rebuild and --norebuild-atoms optsDavid James2011-05-011-16/+174
| | | | | | | | | | | | | | | | | | | | | | | Rebuild when build-time/run-time deps are upgraded. If pkgA has been updated, and pkgB depends on pkgA at both build-time and run-time, pkgB needs to be rebuilt. This feature ensures that all packages are consistent when dependencies that are used at both runtime and build time are changed. This feature only rebuilds packages one layer deep. That means that if you upgrade libcros, for example, packages that depend directly on libcros will be rebuilt and reinstalled, but indirect dependencies will not be rebuilt. BUG=chromium-os:14296 TEST=Test whether packages rebuilding a bunch of packages. Change-Id: Idbc0532b4b1de28fd9e5a0abe3b7dbe1a3abd2c8 Review URL: http://codereview.chromium.org/6905107
* depgraph: migrate implicit libc deps from SchedZac Medico2011-04-301-0/+65
| | | | | Now all the virtual/libc handling is done by the depgraph, which will be helpful when fixing bug #364681.
* emerge: add --misspell-suggestions=n optionZac Medico2011-04-281-1/+3
| | | | This will fix bug #363137.
* emerge: add 3 new options similar to --excludeDavid James2011-04-271-20/+58
| | | | | | | | | | | | | | | | | | | | | | | Add --nousepkg-atoms, --useoldpkg-atoms, and --reinstall-atoms flag to Portage reinstall-atoms accepts a space separated list of package names or slot atoms. Emerge will treat matching packages as if they are not installed, and reinstall them if necessary. useoldpkg-atoms accepts a space separated list of package names or slot atoms. Emerge will prefer matching binary packages over newer unbuilt packages. This is useful in case you want to request that a particular package won't be rebuilt from source. nousepkg-atoms accepts a space separated list of package names or slot atoms. Emerge will ignore matching binary packages. Change-Id: I0d73039c6a4cd63695b28ffc80215628e0e05c95 BUG=chromium-os:12507 TEST=Try out the flag Review URL: http://codereview.chromium.org/6577024
* --autounmask: Don't change masked/forced flagsSebastian Luther2011-04-271-0/+4
| | | | This will fix bug #364701.
* get_dep_chain: handle InvalidDependStringZac Medico2011-03-231-2/+6
|
* depgraph: don't output \b to non-ttyZac Medico2011-03-021-2/+7
| | | | This will fix bug #357093.
* depgraph: case insensitive search for unsatisfiedZac Medico2011-02-281-1/+12
| | | | This will fix bug #356555.
* depgraph: fix virtual code to handle unsatisfiedZac Medico2011-02-141-2/+2
|
* Recognize git-2.eclass when reinstalling self.Zac Medico2011-02-141-1/+2
|
* depgraph: fix KeyError in select_atomsZac Medico2011-02-141-0/+2
| | | | This happens if depstring evaluates to nothing.
* get_dep_chain: fix broken parent_arg referenceZac Medico2011-02-131-1/+1
| | | | Broken since commit b4f98ec5a1eb2e010a455b19db5bef8d61def241.
* depgraph: normalize indentationZac Medico2011-02-131-5/+4
|
* depgraph: ignore fewer depsZac Medico2011-02-131-2/+6
| | | | | This restores some desired logic that was left out of commit 5655b4dcfe5e9dae5e9d6352d791c3d04953baf7.
* depgraph: remove redundant "empty" param checksZac Medico2011-02-131-7/+4
| | | | | Since commit 878f166c5a06b0ab6c5a34dd658c878cc7605fe7, empty implies deep = True, so these checks are redundant.
* get_dep_chain: fix unsatisfied_dependency logicZac Medico2011-02-131-2/+5
| | | | | | Always prefer parents for which the parent atom is unsatisfied by the child node. This seems to be the intention of the code, though it may not have behaved correctly due to continuation of the parent loop.
* get_dep_chain: prefer parents in merge listZac Medico2011-02-131-10/+20
| | | | This will fix bug #354747.
* depgraph: fix and test depth control for virtualsZac Medico2011-02-131-8/+42
|
* depgraph: tweak depth calculation for virtualsZac Medico2011-02-131-3/+12
| | | | | | Recursively traversed virtual dependencies, and their direct dependencies, are considered to have the same depth as direct dependencies.
* depgraph: fix and test --deep control of depthZac Medico2011-02-131-3/+41
| | | | | Control over recursion depth hasn't behaved properly since commit 6503980e0e3bcfce9fbaff85c33d87f616e955a9. Now it is fixed and tested.
* depgraph: avoid atom hash collisions in dep_checkZac Medico2011-02-121-7/+8
| | | | | | | | Atoms are stored in the graph as (atom, id(atom)) tuples since each atom is considered to be a unique entity. For example, atoms that appear identical may behave differently in USE matching, depending on their unevaluated form. Also, specially generated virtual atoms may appear identical while having different _orig_atom attributes.
* depgraph: return virtual edges from select_atomsZac Medico2011-02-121-36/+42
|
* depgraph: don't distort edges for virtualsZac Medico2011-02-111-9/+19
| | | | | | | | In _add_pkg_dep_string(), _add_pkg() was called with generated Dependency instances that created fake/distorted edges in the graph for new-style virtuals (similar to those that were fixed in commit 5b16e0d800f34dc90cdd8c505172ad16b97f0af4). Now there won't be any such distorted edges.
* depgraph: fix distorted display of virtualsZac Medico2011-02-111-0/+13
| | | | | | | | As mentioned in bug #353933, comment #4, special new-style virtual atoms generated/distorted by _expand_new_virtuals() can prevent extract_affecting_use() from working properly. This is fixed by saving the original atoms so that the depgraph can map them back into place at the appropriate step in dependency evaluation.
* depgraph: avoid reinstall of identical binpkgZac Medico2011-02-111-0/+15
| | | | This will fix bug #354441.