summaryrefslogtreecommitdiffstats
path: root/pym/portage/cache/template.py
Commit message (Collapse)AuthorAgeFilesLines
* reconstruct_eclasses: unicode hashes for python2v2.2.0_alpha108Zac Medico2012-05-241-2/+5
|
* validate_entry: handle KeyError for bug #417253Zac Medico2012-05-231-1/+6
| | | | This error is triggered by corrupt cache entries.
* cache/template.__getitem__: filter INHERITEDZac Medico2011-10-291-0/+5
| | | | | | | Never return INHERITED, since portdbapi.aux_get() will generate it automatically from _eclasses_, and we want to omit it in comparisons between cache entries like those that egencache uses to avoid redundant writes (see commit 0e120da008c9d0d41c9372c81145c6e153028a6d).
* Fix serialize_eclasses = False in cache template.Zac Medico2011-10-171-6/+28
| | | | | | | This fixes volatile cache validation that did not get fixed in commit a63c163a50bf8a4e5ca8673cd8bebae29c36643a. Now all volatile cache problems that have been introduced since commit 2ed1cb53cc4158af08c22d466b15b9a9a7767212 should be fixed.
* cache: rewrite to support arbitrary validation methodBrian Harring2011-10-141-15/+48
| | | | | | | | | | Specifically, the cache can use any portage supported checksum method, or use the standard mtime approach. In addition, support controlling whether or not paths are stored, and generally try to restore some of the centralization/encapsulation that was in place originally. (cherry picked from commit bc1aed614fb588f0ade5bcb5d1265a8db0f8d247) Change-Id: Ic38057e7dbb15063c64a93c99e66e113a7d4c70e
* layout.conf: revert authoritative-cache supportZac Medico2011-10-131-1/+0
| | | | Those who wanted it have decided to use a different approach.
* Fix 'authoritative' spelling.Zac Medico2011-09-301-1/+1
|
* layout.conf: allow a repository to state the cache is authorativeBrian Harring2011-09-301-0/+1
| | | | | | | | | | | | | | | | By authorative, this means "the cache is accurate; skip validation". While a useful hint for a slight speedup in validation, the true gain is for repositories that are distributed in a fashion that doesn't preserve mtime; git primarily. Setting authorative-cache = true results in portage skipping mtime validation checks for the bundled cache, allowing for git vcs based repos to distribute a cache. BUG=chromium-os:21049 TEST=dump a cache into metadata/cache, touch it to now, set layout.conf to authorative-cache=true, verify it doesn't generate cache entries for that repo. Change-Id: I92423e679bc171d2411a18d6d3ac22e8ef457753
* Remove all svn $Id keywords.Zac Medico2010-03-241-1/+0
|
* Replace dict.keys() usage with __iter__(), since it behaves identically inZac Medico2009-09-221-5/+5
| | | | | | both python 2.x and 3.x. svn path=/main/trunk/; revision=14382
* Fix items to prevent infinite recursion.Zac Medico2009-09-221-1/+1
| | | | svn path=/main/trunk/; revision=14371
* Define long as int when Python 3 is used.Arfrever Frehtes Taifersar Arahesis2009-09-211-0/+1
| | | | svn path=/main/trunk/; revision=14343
* Use dict.(keys|values|items)() instead of ↵Arfrever Frehtes Taifersar Arahesis2009-09-211-8/+8
| | | | | | | | dict.(iterkeys|itervalues|iteritems)() for compatibility with Python 3. (2to3-3.1 -f dict -nw ${FILES}) svn path=/main/trunk/; revision=14327
* Use range() instead of xrange() for compatibility with Python 3.Arfrever Frehtes Taifersar Arahesis2009-09-211-2/+2
| | | | | | (2to3-3.1 -f xrange -nw ${FILES}) svn path=/main/trunk/; revision=14317
* Define basestring as str when Python 3 is used.Arfrever Frehtes Taifersar Arahesis2009-09-211-0/+3
| | | | svn path=/main/trunk/; revision=14316
* Update syntax of 'except' statements for compatibility with Python 3.Arfrever Frehtes Taifersar Arahesis2009-09-201-1/+1
| | | | | | (2to3-3.1 -f except -nw ${FILES}) svn path=/main/trunk/; revision=14289
* Bug #281355 - Handle IndexError inside reconstruct_eclasses().Zac Medico2009-08-131-0/+3
| | | | svn path=/main/trunk/; revision=14015
* Always use basestring instead of str with isinstance().Zac Medico2009-03-071-1/+1
| | | | svn path=/main/trunk/; revision=12775
* * Fix portage.cache.template.database.__getitem__() to validate the _mtime_Zac Medico2009-03-011-0/+10
| | | | | | | | | | | field and raise a CacheCorruption exception if necessary. * Make _mtime_ and _eclasses_ validation code in portdbapi and mirror_cache() assume that these fields are the correct type (otherwise a CacheCorruption exeception should be raised earlier). * Fix the sqlite module to implement _getitem() so that it properly inherits __getitem__() _mtime_ and _eclasses_ handling. svn path=/main/trunk/; revision=12735
* For python-3.0 compatibility, make dict-like classes modify their keys(),Zac Medico2009-02-041-0/+4
| | | | | | items(), and values() methods appropriatly for the current python version. svn path=/main/trunk/; revision=12584
* Make serialize_eclasses() sort eclass names.Zac Medico2008-11-181-2/+2
| | | | svn path=/main/trunk/; revision=11992
* Ensure that cache modules always return a dict containing the _eclasses_Zac Medico2008-09-251-0/+2
| | | | | | key. svn path=/main/trunk/; revision=11547
* Py3k compatibility patch #6 by Ali Polatel <hawking@g.o>.Zac Medico2008-07-011-0/+4
| | | | | | Replace dict.has_key() calls with "in" and "not in" operators. svn path=/main/trunk/; revision=10875
* Implement iterkeys on top of __iter__ instead of vice versa. Thanks to ↵Zac Medico2007-06-211-1/+11
| | | | | | Brian Harring for the suggestion. svn path=/main/trunk/; revision=6918
* Remove more unnecessary list generation.Zac Medico2007-06-211-1/+1
| | | | svn path=/main/trunk/; revision=6912
* Namespace sanitizing, step 3Marius Mauch2007-01-251-3/+3
| | | | svn path=/main/trunk/; revision=5782
* Namespace sanitizing, step 1Marius Mauch2007-01-251-0/+200
svn path=/main/trunk/; revision=5778