summaryrefslogtreecommitdiffstats
path: root/pym/portage.py
Commit message (Collapse)AuthorAgeFilesLines
* Bug #224713 - Avoid TypeError when make.conf is missing:v2.1.5.4Zac Medico2008-06-041-0/+2
| | | | | | | TypeError: argument of type 'NoneType' is not iterable (trunk r10582) svn path=/main/branches/2.1.2/; revision=10583
* Use sets for more accurate cache modification counts in BlockerCache andZac Medico2008-06-041-4/+4
| | | | | | vardbapi. (trunk r10578) svn path=/main/branches/2.1.2/; revision=10579
* Use float mtime instead of int for finer granularity in vardbapi.match()Zac Medico2008-06-041-1/+1
| | | | | | cache staleness checks. (trunk r10550) svn path=/main/branches/2.1.2/; revision=10570
* Fix vardbapi.flush_cache() so that it only updates the cache when theZac Medico2008-06-041-4/+8
| | | | | | | | number of uncached packages reaches a certain threshold (currently 5). The cache file can be several megabytes in size, so updating it for every vdb change is wasteful. (trunk r10548) svn path=/main/branches/2.1.2/; revision=10568
* Fit typo. (trunk r10566)Zac Medico2008-06-041-1/+1
| | | | svn path=/main/branches/2.1.2/; revision=10567
* Add support for a PORTAGE_RO_DISTDIRS variable. When a given file does notZac Medico2008-06-041-4/+140
| | | | | | | | | exist in DISTDIR, search for the file in this list of directories. Search order is from left to right. Note that the current implementation works by creating a symlink inside DISTDIR, but that may change in the future. (trunk r10547, r10550:10552, and r10564) svn path=/main/branches/2.1.2/; revision=10565
* Now that dbapi._iter_match() is guaranteed to return a real iterator withZac Medico2008-05-301-4/+4
| | | | | | | a next() method, we can just call next() and handle StopIteration. (trunk r10509) svn path=/main/branches/2.1.2/; revision=10510
* For consistency, make sure that a normal iterator is always returnedZac Medico2008-05-301-1/+1
| | | | | | | from dbapi._iter_match() (and never a list). This way the caller can be sure that the returned object has a next() method. (trunk r10507) svn path=/main/branches/2.1.2/; revision=10508
* Make the use_cache=0 listdir() implementation inside vardbapi.cpv_all()Zac Medico2008-05-301-1/+4
| | | | | | raise a PermissionDenied error when appropriate. (trunk r10505) svn path=/main/branches/2.1.2/; revision=10506
* Save the content of CONFIG_MEMORY_FILE in dblink.treewalk() _before_Zac Medico2008-05-291-11/+6
| | | | | | | unmerging other instances, in order to avoid overwritting/undoing the pruning that's done during unmerge. (trunk r10476) svn path=/main/branches/2.1.2/; revision=10477
* Make the unmerge time CONFIG_MEMORY_FILE pruning slightly more aggressive,Zac Medico2008-05-291-3/+2
| | | | | | | so that anything not claimed by another package in the same slot is pruned. (trunk r10474) svn path=/main/branches/2.1.2/; revision=10475
* Bug #223447 - Adjust the "installed packages are masked" display to recognizeZac Medico2008-05-281-3/+3
| | | | | | | | | | packages that are masked by keywords and are eligible for uninstallation by depclean. This is a workaround for the fact that depclean may fail to recognize that the package is eligible for uninstall due to differences in visibility filtering which can lead to differences in || dep evaluation. TODO: Share visibility code to fix this inconsistency. (trunk r10465) svn path=/main/branches/2.1.2/; revision=10466
* Make config._init_dirs() preserver /tmp and /var/tmp permissions ifZac Medico2008-05-271-6/+13
| | | | | | | those directories already exist. This gives freedom to the user to adjust permissions to suit their taste. (trunk r10451:10453) svn path=/main/branches/2.1.2/; revision=10454
* Don't silently swallow instances of UnpicklingError since they are easilyZac Medico2008-05-261-3/+10
| | | | | | | triggered by storing instances of custom classes in a pickle. (trunk r10432:10434) svn path=/main/branches/2.1.2/; revision=10435
* * Enable config.setcpv() to use a Package instance in place of a cpv.Zac Medico2008-05-261-1/+11
| | | | | | | | * Make depgraph._select_package() pass Package instances into setcpv() calls. * Enable the Package constructor to use an iterable for metadata items. (trunk r10427) svn path=/main/branches/2.1.2/; revision=10428
* Fix a broken reference to the Package.cpv_slot attribute. (trunk r10425)Zac Medico2008-05-261-1/+1
| | | | svn path=/main/branches/2.1.2/; revision=10426
* Create Atom instances when validating atoms inside _expand_new_virtuals().Zac Medico2008-05-251-4/+9
| | | | | | (trunk r10396) svn path=/main/branches/2.1.2/; revision=10412
* Remove redundant SLOT dep code in portdbapi.xmatch() since it's nowZac Medico2008-05-251-12/+2
| | | | | | handled by dbapi._iter_match(). (trunk r10410) svn path=/main/branches/2.1.2/; revision=10411
* Bug #223417 - Make the vardbapi.cpv_all() use_cache parameter usefulZac Medico2008-05-251-0/+17
| | | | | | | | | for forcing direct os.listdir() calls. This is more of an issue now that these listdir() calls are frequently triggered when merging packages (due to things like blocker and preserve-libs handling). (trunk r10390) svn path=/main/branches/2.1.2/; revision=10406
* Bug #223417 - use floating point mtime for finer grained validation inZac Medico2008-05-251-1/+1
| | | | | | cachedir(). (trunk r10389) svn path=/main/branches/2.1.2/; revision=10405
* Fix portage_exception namespace.Zac Medico2008-05-251-1/+1
| | | | svn path=/main/branches/2.1.2/; revision=10404
* Merge the Atom class and dbapi._iter_match() from trunk r10387 and r10394.Zac Medico2008-05-251-47/+55
| | | | | | Everything related to USE deps has been omitted for now. svn path=/main/branches/2.1.2/; revision=10403
* * remove NEEDED from list of metadata variables (trunk r10180)v2.1.5.2Zac Medico2008-05-201-11/+4
| | | | | | * Simplify cache code in vardbapi.aux_get(). (trunk r10377) svn path=/main/branches/2.1.2/; revision=10378
* In vardbapi.aux_get(), don't mark cacheed metadata invalid just becauseZac Medico2008-05-201-1/+0
| | | | | | some of the values are missing. (trunk r10375) svn path=/main/branches/2.1.2/; revision=10376
* Inside vardbapi.aux_get(), do more validation on the cache data toZac Medico2008-05-201-0/+9
| | | | | | ensure it contains the expected data types. (trunk r10373) svn path=/main/branches/2.1.2/; revision=10374
* Adjust code order to organize it a bit.Zac Medico2008-05-191-5/+5
| | | | svn path=/main/branches/2.1.2/; revision=10371
* Validate and normalize target_root earlier in the config constructor.Zac Medico2008-05-191-6/+6
| | | | | | (trunk r10369) svn path=/main/branches/2.1.2/; revision=10370
* Fix vardbapi.aux_get() logic so that it will correctly pull the metadataZac Medico2008-05-191-1/+1
| | | | | | value corresponding to an unrecognized metadata key. (trunk r10367) svn path=/main/branches/2.1.2/; revision=10368
* Exclude "env" from use in variable substitution since we want to avoidv2.1.5.1Zac Medico2008-05-191-3/+5
| | | | | | | any interaction with the calling environment that might lead to unexpected results. (trunk r10364) svn path=/main/branches/2.1.2/; revision=10365
* * Make vardbapi.aux_get() preserve newlines in multi-line metadataZac Medico2008-05-181-8/+24
| | | | | | | | | such as NEEDED.* and CONTENTS. * Tweak vardbapi.aux_get() cache logic a bit. (trunk r10358:10360) svn path=/main/branches/2.1.2/; revision=10362
* Add the environment and some more files to the existing make.defaultsZac Medico2008-05-171-34/+55
| | | | | | | | | | | | | | | variable substitution support. Variable substitution occurs in the following order: * env.d * env * make.globals * make.defaults * make.conf (trunk r10351) svn path=/main/branches/2.1.2/; revision=10356
* Detect and filter ebuilds that have invalid versions in portdbapi.cp_list().Zac Medico2008-05-171-0/+6
| | | | | | (trunk r10346) svn path=/main/branches/2.1.2/; revision=10353
* Fix the variable subsitution code from bug #221755 so that variableZac Medico2008-05-121-6/+3
| | | | | | | assignments from earlier files don't leak into variable assignments from later files (except through substitution). (trunk r10294:10297) svn path=/main/branches/2.1.2/; revision=10298
* Bug #221755 - Enable variable substitution in make.defaults to work accrossZac Medico2008-05-111-2/+7
| | | | | | | | multiple files instead of being confined to a single file. This allows profiles to create incremental-like behavior with non-incremental variables when desired. (trunk r10293) svn path=/main/branches/2.1.2/; revision=10294
* For the "blockers" parameter that's passed into the dblink constructorZac Medico2008-05-091-1/+5
| | | | | | | now, make it a callable since it really shouldn't be called until the vdb lock has been acquired. (trunk r10264) svn path=/main/branches/2.1.2/; revision=10265
* Make some confmem behavior modifications in order to try and make itZac Medico2008-05-081-1/+23
| | | | | | | | | | | | | | | less confusing for people who have forgotten about the --noconfmem option or are completely unaware of it. Thanks to Joe Peterson <lavajoe@gentoo.org> for suggesting these: * Always behave like --noconfmem is enabled for downgrades. * Purge confmem entries when a package is unmerged rather than replaced. (trunk r10250) svn path=/main/branches/2.1.2/; revision=10251
* Don't use try/finally to close atomic_ofstream since we don't want toZac Medico2008-05-081-18/+16
| | | | | | call close() on this stream if an error occurs. (trunk r10231) svn path=/main/branches/2.1.2/; revision=10232
* Instead of doing automatic uninstalls in advance, install conflictingZac Medico2008-05-081-6/+55
| | | | | | | | | | | | | | | | | packages first and then do the uninstall afterwards. This requires special handling for file collisions occur, but it's preferred because it ensures that package files remain installed in a usable state whenever possible. When file collisions occur between conflicting packages, the contents entries for those files are removed from the packages that are scheduled for uninstallation. This prevents uninstallation operations from removing overlapping files that have been claimed by conflicting packages. (trunk r10225) svn path=/main/branches/2.1.2/; revision=10227
* Use vardbapi._excluded_dirs to filter results inside cp_list(). (trunk r10208)Zac Medico2008-05-051-5/+2
| | | | svn path=/main/branches/2.1.2/; revision=10209
* Add -MERGING-.* to vardbapi._excluded_dirs. (trunk r10206)Zac Medico2008-05-051-1/+1
| | | | svn path=/main/branches/2.1.2/; revision=10207
* * In vardbapi.cpv_all() use catpkgsplit() for validation since that's whatZac Medico2008-05-051-4/+10
| | | | | | | | | with cp_all() uses. * Use the listdir() dirsonly=1 parameter to avoid unnecessary stat calls via os.path.isdir() (trunk r10204) svn path=/main/branches/2.1.2/; revision=10205
* Handle a potential InvalidData exception in vardbapi.cp_all(). (trunk r10202)Zac Medico2008-05-051-1/+5
| | | | svn path=/main/branches/2.1.2/; revision=10203
* Bug #219286 - Whitelist INSTALL_MASK so that it works properly for binaryZac Medico2008-05-051-0/+5
| | | | | | | | packages. Also, filter INSTALL_MASK when saving or loading environment.bz2. This also applies to PKG_INSTALL_MASK and DOC_SYMLINKS_DIR, so add them too. (trunk r10195) svn path=/main/branches/2.1.2/; revision=10197
* Bug #220171 - Filter out 'lost+found' directories in vardbapi.cpv_all()Zac Medico2008-05-051-1/+9
| | | | | | | in order to avoid fatal 'Permission denied' errors. Currently, CVS and names beginning with '.' are also filtered. (trunk r10192) svn path=/main/branches/2.1.2/; revision=10193
* check if PORTAGE_TMPDIR is mounted readonly/noexec (bug #219957)Zac Medico2008-05-021-0/+28
| | | | | | (trunk r10069) svn path=/main/branches/2.1.2/; revision=10076
* Bug #219918 - Remove the last traces of PORTAGE_TMPFS.Zac Medico2008-05-011-8/+0
| | | | svn path=/main/branches/2.1.2/; revision=10061
* Fix 2 more types.InstanceType comparisons that are broken byZac Medico2008-04-301-2/+2
| | | | | | the transition of dbapi to new-style classes. (trunk r6188) svn path=/main/branches/2.1.2/; revision=10049
* * Fix dep_check() so that it doesn't expand virtual blockers since theZac Medico2008-04-301-0/+6
| | | | | | | | | | | | | | | | | un-expanded virtual atom is more useful for maintaining a cache of blocker atoms. * Expand virtual blockers in depgraph.validate_blockers(), since it's not done by dep_check() anymore. * If blocker data from the graph is available, use it to validate the blocker cache and update the cache if it seems invalid. * Make BlockerCache._load() more tolerant to installs/uninstalls so so that cache isn't rebuilt so often. (trunk r10040:10043) svn path=/main/branches/2.1.2/; revision=10044
* For bug #211833, be explicit that the pkg_prerm() and pkg_postrm() removalZac Medico2008-04-281-1/+2
| | | | | | phases are the ones that are skipped. (trunk r10024) svn path=/main/branches/2.1.2/; revision=10025
* As suggested by Chr. Schaefer in bug #211833, comment #15, note thatZac Medico2008-04-281-5/+7
| | | | | | | removal of the environment.bz2 file is preferred since it may allow the removal phases to execute successfully. (trunk r10022) svn path=/main/branches/2.1.2/; revision=10023