summaryrefslogtreecommitdiffstats
path: root/bin/emerge
Commit message (Collapse)AuthorAgeFilesLines
* In depgraph.altlist(), measure the bias of circularZac Medico2007-11-221-0/+20
| | | | | | | RDEPEND <-> PDEPEND relationships and use it to optimize merge order. (trunk r8593) svn path=/main/branches/2.1.2/; revision=8594
* Generate an eerror elog message when an ebuild prerm orZac Medico2007-11-211-21/+0
| | | | | | postrm phase fails. (trunk r8577) svn path=/main/branches/2.1.2/; revision=8580
* In the slot collision display, show a maximum of 3 parentsZac Medico2007-11-201-0/+14
| | | | | | | for each package in order to avoid flooding the display. (trunk r8500) svn path=/main/branches/2.1.2/; revision=8557
* Make the slot collision display show all collisions insteadZac Medico2007-11-201-21/+33
| | | | | | of just the first one. (trunk r8498) svn path=/main/branches/2.1.2/; revision=8556
* Fix blocker handling to properly handle SLOT atoms inZac Medico2007-11-201-1/+3
| | | | | | depgraph.validate_blockers(). (trunk r8495) svn path=/main/branches/2.1.2/; revision=8555
* For unsatisfied dependencies, shorten the per-package EAPI maskZac Medico2007-11-201-4/+23
| | | | | | | output and show an informative message whenever an EAPI mask is encountered. (trunk r8457) svn path=/main/branches/2.1.2/; revision=8544
* Simplify and fix bugs in is_valid_package_atom(). (trunk r8445)Zac Medico2007-11-061-11/+5
| | | | svn path=/main/branches/2.1.2/; revision=8446
* Remove the installed package masking hack from bug #149816 sinceZac Medico2007-11-061-5/+0
| | | | | | | installed packages should be able to satisfy dependencies whether they are masked or not (matches current trunk behavior). svn path=/main/branches/2.1.2/; revision=8441
* Allow multislot packages to be added to the world fileZac Medico2007-11-061-7/+30
| | | | | | | | | | | | | | | | via --noreplace. Having these atoms in the world file will trigger recommendations to run emaint in some cases, like when running `emerge -e world`. The atoms need to be in the world file to prevent multislot packages from being removed by --depclean though. (trunk r8436) Bug #198129 - Prevent SLOT atoms like sys-devel/binutils:0 from being inappropriately recorded in the world file when USE=multislot is enabled. (trunk r8437:8439) svn path=/main/branches/2.1.2/; revision=8440
* Optimize merge order to try and select nodes that only haveZac Medico2007-11-021-20/+28
| | | | | | | | | | | | | | | | | | | | | | unsatisfied PDEPEND slightly earlier. This solves a problem with xorg-server being merged too early during an all binary install (since DEPEND is ignored for binaries), triggering built_with_use() calls to fail as reported in bug #189966. Since DEPEND is discarded in cases like this, it is important to exploit the difference between PDEPEND and RDEPEND in order to optimize merge order. Without this optimization, the merge order is technically correct, but not as optimal as it should be and has lots of potential to trigger issues with built_with_use() or similar things that require better optimization of merge order. (trunk r8357:8359) Fix ignore_priority logic in depgraph.altlist() in order to handle some cases where it was possible for nodes to be selected without their PDEPENDs being propperly added to the asap_nodes list. (trunk r8360) svn path=/main/branches/2.1.2/; revision=8378
* Remove a few unused depgraph attributes. (trunk r8345)Zac Medico2007-11-021-12/+0
| | | | svn path=/main/branches/2.1.2/; revision=8372
* Optimize stdout_spinner.update() methods so that they don'tZac Medico2007-11-021-3/+22
| | | | | | | waste cpu time by flushing output to the tty too frequently. (trunk r8332) svn path=/main/branches/2.1.2/; revision=8371
* Make world atoms non-greedy for SLOTs in action_depclean()Zac Medico2007-11-021-71/+1
| | | | | | | and depgraph.xcreate() since users can simply add SLOT atoms to world for any specific SLOTs that they want to keep. svn path=/main/branches/2.1.2/; revision=8362
* In depgraph.create(), if a direct circular dependency isZac Medico2007-10-221-6/+9
| | | | | | | | not an unsatisfied buildtime dependency then drop it here since otherwise it can skew the merge order calculation in an unwanted way. (trunk r8233) svn path=/main/branches/2.1.2/; revision=8234
* Fix portage_exception namespace typo.Zac Medico2007-10-221-1/+1
| | | | svn path=/main/branches/2.1.2/; revision=8232
* In depgraph.create(), don't ignore direct circular dependenciesZac Medico2007-10-221-36/+23
| | | | | | | | | | | | | | | anymore since altlist() is able to handle it properly in cases where the dependency is satisfied. If the dep is unsatisfied then it can not be ignored. (trunk r8225) Allow the depgraph to add old-style virtual providers but prefer any pre-existing providers over new ones that are added. This prevents things like ghc-6.4.2 from selecting itself to satisfy it's own virtual/ghc dependency (creating a circular dependency) in cases where it should select the default ghc-bin provider. (trunk r8185:8187) svn path=/main/branches/2.1.2/; revision=8229
* Bug #195370 - Filter some more bogus matches due toZac Medico2007-10-121-1/+5
| | | | | | old-style virtuals. (trunk r8093) svn path=/main/branches/2.1.2/; revision=8094
* Raise a PackageNotFound exception instead of a ValueErrorZac Medico2007-10-121-2/+2
| | | | | | | in order to avoid ambiguity if an unexpected ValueError occurs. (trunk r8043) svn path=/main/branches/2.1.2/; revision=8072
* Bug #195370 - Prevent bogus upgrade display when aZac Medico2007-10-121-4/+9
| | | | | | | new-style virtual is first installed and it replaces an old-style virtual. (trunk r8039) svn path=/main/branches/2.1.2/; revision=8070
* Add EAPI masking support for binary packages. (trunk r7913)Zac Medico2007-10-051-4/+19
| | | | svn path=/main/branches/2.1.2/; revision=7935
* Bug #194398 - Do not log "exiting successfully" in emerge.logZac Medico2007-10-051-2/+5
| | | | | | | unless the status really is successful. Otherwise, log "exiting unsuccessfully". Thanks to David Watzke. (trunk r7900) svn path=/main/branches/2.1.2/; revision=7927
* Bug #193548 - When scanning for config updates and an errorZac Medico2007-09-281-4/+6
| | | | | | | occurs, send find's stdout to /dev/null so that only an error message is shown. (trunk r7875) svn path=/main/branches/2.1.2/; revision=7876
* When scanning for config updates, treat a symlink to an existingZac Medico2007-09-281-0/+9
| | | | | | directory as if it's just a normal directory. (trunk r7873) svn path=/main/branches/2.1.2/; revision=7874
* Bug #193548 - When emerge spawns find to search for config updates,Zac Medico2007-09-281-1/+2
| | | | | | show the find output if there is an error. (trunk r7871) svn path=/main/branches/2.1.2/; revision=7872
* Bug #192706 - Do not print a summary at the end of --depclean ifZac Medico2007-09-281-0/+3
| | | | | | there is nothing to clean and --quiet is enabled. (trunk r7838) svn path=/main/branches/2.1.2/; revision=7868
* Fix portage.exception namespace typo.Zac Medico2007-09-271-1/+1
| | | | svn path=/main/branches/2.1.2/; revision=7860
* Move a newline to fix formatting. (trunk r7858)Zac Medico2007-09-271-1/+2
| | | | svn path=/main/branches/2.1.2/; revision=7859
* Bug #194025 - Lock /var/db/pkg in post_merge() during theZac Medico2007-09-271-3/+10
| | | | | | "Regenerating GNU info directory index" routine. (trunk r7853) svn path=/main/branches/2.1.2/; revision=7854
* When --deep is not enabled, many dependencies are dicarded andZac Medico2007-09-261-13/+25
| | | | | | | | | | | | | | left out of the digraph. This patch prevents dependencies from being discarded in some cases where the are needed in order to optimize merge order. It also modifies the DepPriority.rebuild attribute so that it only applies to build time dependencies. This leads to better merge order in some cases when --deep is not enabled. For example, `emerge xf86-input-keyboard xorg-server` will now properly merge xorg-server before xf86-input-keyboard (problem from bug #192254, comment #5). (trunk r7797) svn path=/main/branches/2.1.2/; revision=7825
* When --with-bdeps=y is enabled for built packages, pull in build time deps asZac Medico2007-09-261-6/+16
| | | | | | | | | | requested, but marked them as "satisfied" since they are not strictly required. This allows more freedom in the merge order calculation for solving circular dependencies. Don't convert to PDEPEND since that could make --with-bdeps=y less effective if it is used to adjust merge order to prevent built_with_use() calls from failing. (trunk r7793) svn path=/main/branches/2.1.2/; revision=7823
* Mask binary packages if their CHOST does not match the oneZac Medico2007-09-261-6/+22
| | | | | | defined in make.conf. (trunk r7792) svn path=/main/branches/2.1.2/; revision=7822
* Bug #190781 - Don't include --oneshot in the options thatZac Medico2007-09-261-2/+1
| | | | | | --update implies. (trunk r7790) svn path=/main/branches/2.1.2/; revision=7821
* Bug #192321 - Clean dir.old cruft so that they don't prevent unmergeZac Medico2007-09-261-0/+10
| | | | | | of otherwise empty directories. (trunk r7774) svn path=/main/branches/2.1.2/; revision=7814
* In depgraph.altlist(), try to merge asap_nodes sooner by giving them an ↵v2.1.3.9Zac Medico2007-09-081-1/+2
| | | | | | exemption from the accept_root_node flag. svn path=/main/branches/2.1.2/; revision=7762
* In the topological sort for merge order, try to avoid selecting root nodesZac Medico2007-09-061-2/+34
| | | | | | | | | | | | whenever possible. This helps ensure that the maximimum possible number of soft dependencies have been removed from the graph before their parent nodes have been selected. This is especially important when those dependencies are going to be rebuilt by revdep-rebuild or `emerge -e system` after the CHOST has been changed (like when building a stage3 from a stage2). With this patch, `emerge -e system` properly rebuilds dev-lang/python before sys-apps/file, which helps to avoid a potential build failure. (trunk r7727:7729) svn path=/main/branches/2.1.2/; revision=7745
* Move blocker handling from depgraph.create() to select_dep(). (trunk r7701)Zac Medico2007-09-061-12/+11
| | | | svn path=/main/branches/2.1.2/; revision=7733
* Remove pointless information from --info output (trunk r7695)Zac Medico2007-09-061-6/+0
| | | | svn path=/main/branches/2.1.2/; revision=7731
* Make depgraph.select_dep() node reuse work when in --usepkgonly mode. (trunk ↵Zac Medico2007-08-231-54/+55
| | | | | | r7686) svn path=/main/branches/2.1.2/; revision=7687
* Make depgraph.create() avoid metadata lookups for binary packages and ↵Zac Medico2007-08-231-2/+11
| | | | | | ebuilds in cases where an installed package has already been added to the graph. This greatly improves performance when the graph contains a large number of installed packages. (trunk r7680) svn path=/main/branches/2.1.2/; revision=7681
* Fix a typo from r7663. (trunk r7676)Zac Medico2007-08-231-1/+1
| | | | svn path=/main/branches/2.1.2/; revision=7677
* Make depgraph.select_dep() reuse cached metadata from nodes that have ↵Zac Medico2007-08-221-6/+25
| | | | | | already been added to the graph. (trunk r7666) svn path=/main/branches/2.1.2/; revision=7670
* Pass complete package metadata from depgraph.select_dep() into create() in ↵Zac Medico2007-08-221-40/+37
| | | | | | order to minimize aux_get calls. (trunk r7663) svn path=/main/branches/2.1.2/; revision=7667
* For bug #189219, use pkgcmp() to sort versions in selected/protected/omitted ↵Zac Medico2007-08-171-5/+7
| | | | | | unmerge display. (trunk r7639) svn path=/main/branches/2.1.2/; revision=7640
* Combine 2 locations in depgraph.create() where nodes are added to the ↵Zac Medico2007-08-161-35/+25
| | | | | | digraph. This ensures that dependencies on "rebuild" nodes always have their priority increased. (trunk r7626:7628) svn path=/main/branches/2.1.2/; revision=7629
* Always assign higher priority to dependencies on packages that are being ↵Zac Medico2007-08-161-11/+13
| | | | | | rebuilt (except when --emptytree is enabled since all packages are merged in that case). This optimizes merge order so that dependencies are rebuilt/updated as soon as possible. (trunk r7625) svn path=/main/branches/2.1.2/; revision=7626
* For bug #188782, dependencies on packages specified as arguments are given ↵Zac Medico2007-08-151-24/+39
| | | | | | higher priority since the currently installed version has been rendered useless by ABI breakage. It's okay to increase the priority here even if the caller is not revdep-rebuild. (trunk r7604) svn path=/main/branches/2.1.2/; revision=7605
* Make sure to skip info dir files with the .old extension. (trunk r7602)Zac Medico2007-08-141-1/+2
| | | | svn path=/main/branches/2.1.2/; revision=7603
* For bug #188782, keep "nomerge" nodes in the graph during the merge order ↵Zac Medico2007-08-141-4/+2
| | | | | | calculation so that merge order is better in cases where installed packages have unsatisfied dependencies. (trunk r7599) svn path=/main/branches/2.1.2/; revision=7600
* For bug #33585, leave the old info dir file in place if there is nothing to ↵Zac Medico2007-08-121-9/+35
| | | | | | generate. (trunk r7593) svn path=/main/branches/2.1.2/; revision=7594
* For bug #187806, use mkstemp to create tmpservertimestampfile (instead of ↵Zac Medico2007-08-051-4/+4
| | | | | | using PORTAGE_TMPDIR). (trunk r7576) svn path=/main/branches/2.1.2/; revision=7577