summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* movefile: handle EEXIST when os.symlink failsZac Medico2011-05-251-1/+2
|
* _LibGraphNode: re-use the _key attributeZac Medico2011-05-252-6/+13
| | | | | | This allows us to avoid repeating any previous stat calls, which helps to avoid potential race conditions due to inconsistent stat results when the file system is being modified concurrently.
* Fix a typo in a comment.Arfrever Frehtes Taifersar Arahesis2011-05-251-1/+1
|
* find_unused_preserved_libs: fix unmerge handlingZac Medico2011-05-251-15/+31
| | | | | | | Since commit c64d4abee145d083c70273be8fd23bd56dffe7ec (bug #286714), preserved libs have not been properly garbage collected when packages are unmerged without replacement, due to a difference in LinkageMap state. It should behave correcly now.
* prune_plib_registry: display preserved libsZac Medico2011-05-251-0/+7
| | | | | | Since commit c64d4abee145d083c70273be8fd23bd56dffe7ec, sometimes we preserve libs for unmerged packages here (bug #286714), so we should display them like we do in _add_preserve_libs_to_contents().
* treewalk: fix plib_collisions with same cpvZac Medico2011-05-251-8/+14
|
* --autounmask: Use >= atoms if possibleSebastian Luther2011-05-251-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.
* preserve-libs: preserve during uninstallZac Medico2011-05-253-21/+78
| | | | | | This will fix bug #286714. The emerge --depclean-lib-check option will now be ignored when FEATURES=preserve-libs is enabled, since any libraries that have consumers will simply be preserved.
* cache.sqlite: handle readonly morev2.1.9.49Zac Medico2011-05-121-1/+1
|
* porttree: use pure volatile cache if necessaryZac Medico2011-05-121-6/+12
|
* cache.volatile: discard "perms" paramZac Medico2011-05-121-1/+2
|
* cache.sqlite: handle readonlyZac Medico2011-05-121-2/+3
|
* expand_new_virt: return early for non-virtual catZac Medico2011-05-121-0/+5
|
* expand_new_virt: skip match for non-virtual catZac Medico2011-05-121-1/+2
|
* dblink: fix broken counter referencesZac Medico2011-05-111-2/+2
|
* treewalk: fix inverted counter init logicZac Medico2011-05-111-1/+1
|
* portdbapi: tweak cache permission handlingZac Medico2011-05-111-8/+12
| | | | | | This is a reponse to the following issue: http://code.google.com/p/chromium-os/issues/detail?id=15234
* EbuildPhase: extract binpkg env for pkg_pretendZac Medico2011-05-111-1/+1
| | | | This will fix bug #366939.
* unmerge: use frozenset for syslistZac Medico2011-05-111-0/+1
|
* dep_check_composite_db: return early from cp_listZac Medico2011-05-111-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: don't clear vardbapi cache in _load_vdbZac Medico2011-05-111-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.
* get_counter_tick_core: use cpv_allZac Medico2011-05-111-9/+7
| | | | | It's more efficient to use cpv_all since cp_all calls cpv_all anyway, and calls to cp_list induce additional stat calls.
* Cache counter values, avoiding I/O when it doesn't change.David James2011-05-111-33/+38
| | | | | | | | | | This improves merge times by up to 25%, since looping over the vardb for each package install is slow. TEST=Emerge a bunch of packages, notice 25% speed improvement. BUG=chromium-os:15112 Change-Id: I51dd617219cd1820ceeb702291bd790990995be4
* vardbapi: acquire lock during counter_tick_coreZac Medico2011-05-111-9/+17
|
* dep_check_composite_db: remove unused _dep_expandZac Medico2011-05-111-41/+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-111-0/+17
| | | | | This is used by dep_check since commit 6f9ee9c508c1506cdf8eb0dc46796dbe30f268db.
* config: call _populate_treeVirtuals directlyZac Medico2011-05-111-1/+1
|
* cpv_expand: avoid old-style virtuals moreZac Medico2011-05-111-1/+8
|
* dep_check: avoid old-style virtuals codeZac Medico2011-05-112-3/+18
|
* display_news_notification: don't populate virtsZac Medico2011-05-111-4/+0
| | | | | This typically isn't useful anymore, since Gentoo has stopped using old-style virtuals.
* cpv_expand: populate old-style virts on demandZac Medico2011-05-111-0/+4
| | | | | If old-style virtuals code is triggered here and we are given a vartree, use it to avoid creating a temporary instance.
* unmerge: skip getvirtuals() if cat is not virtualZac Medico2011-05-111-2/+8
| | | | | This allows us to avoid triggering the old-style virtual code which scans /var/db/pkg/*/*/PROVIDE.
* unmerge: use expand_new_virt for sys pkg warningsZac Medico2011-05-113-63/+76
|
* Update timestamps in headers of modified files.v2.1.9.48Zac Medico2011-05-082-2/+2
|
* PreservedLibsRegistry: normalize counter as strZac Medico2011-05-081-4/+22
|
* Add back cpv_exists check from previous commit.Zac Medico2011-05-081-0/+2
|
* Remove obsolete others_in_slot plibs code.Zac Medico2011-05-081-12/+2
| | | | | | | | | This code dates back to commit 79a2ade5a6cb5a6c2d7ace838a39a634265c5522 and the preserve-libs logic was different back then. At that time, the dblink._preserve_libs() method would earlier register preserved libs for the new package currently being merged, while the vardb entry was still a -MERGING- node. Current code does not register preserve_paths until later, so this others_in_slot code is obsolete.
* treewalk: always initialize "needed"Zac Medico2011-05-081-3/+3
|
* merge_wait_queue: use deque.clear()Zac Medico2011-05-081-1/+1
|
* 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'
* linkmap: use exclude_pkgs for the registry tooZac Medico2011-05-081-2/+9
|
* Use new vardbapi lock function in FakeVartree.David James2011-05-081-11/+6
| | | | | | | BUG=none TEST=Merged some packages with new code. Ran test suite. Change-Id: Ibb9380122631bf6c79e39691233cfd641931b75a
* Be careful with system pkgs + parallel-install.Zac Medico2011-05-081-10/+18
| | | | | This should prevent FEATURES=parallel-install from interfering with the fixes from bug #256616 and bug #259954.
* Add vardbapi reentrant lock/unlock methods.Zac Medico2011-05-081-22/+39
|
* doebuild: use EbuildBuildDir for lockingZac Medico2011-05-082-3/+14
| | | | | | | | EbuildBuildDir also performs safe removal of the category when it is empty, so ebuild.sh/dyn_clean doesn't need to do it anymore. This fixes a race condition if one process is trying to remove the category directory while another one is trying to create it for PORTAGE_BUILDDIR.
* PreserveLibsRegistry: add lock/unlock assertionsZac Medico2011-05-081-1/+12
| | | | | Also, add comments to store() about unobvious interaction with locking due to atomic replacement of the inode.
* Remove redundant pruneNonExisting() call.Zac Medico2011-05-081-1/+0
| | | | | | Since commit f36b9fa38b5268c2a5579db62acec026625f84a9, the PreservedLibsRegistry automatically prunes itself each time that it is loaded.
* preserve-libs: fix linkmap logic for new plibsZac Medico2011-05-082-11/+40
| | | | | Together with commit f36b9fa38b5268c2a5579db62acec026625f84a9, hopefully this solves bug #366061.
* Cleanup preserved lib locking in portage.David James2011-05-083-124/+114
| | | | | | | | | | | | This change makes preserved lib modification atomic, and prepares us for narrowing the scope of the merge lock. BUG=chromium-os:14983 TEST=Ran test suite and some example emerges. Change-Id: I39abb6a5ec72be3274e508ef807ac1d9e69db1a8 Review URL: http://gerrit.chromium.org/gerrit/417
* depgraph: simplify break_refsv2.1.9.47Zac Medico2011-05-052-21/+23
|