summaryrefslogtreecommitdiffstats
path: root/pym/portage/versions.py
Commit message (Collapse)AuthorAgeFilesLines
* repoman: fix stable mask to use correct profilev2.2.0_alpha157Zac Medico2013-01-191-4/+6
| | | | | We can't rely on the internal config instance from the given package instance, since it does not refer to the correct profile.
* Fix stable mask logic for repoman.Zac Medico2013-01-191-1/+4
| | | | | | For repoman, if the package has an effective stable keyword that intersects with the effective ACCEPT_KEYWORDS for the current profile, then consider it stable.
* Use unicode_literals more.Zac Medico2013-01-181-2/+4
| | | | | This helps to ensure consistent results, regardless of whether we're using Python 2 or Python 3.
* Use re.UNICODE for category/package name regexes.Zac Medico2012-09-221-2/+2
| | | | | | | | This only affects r'\w' with Python 2.x, since Python 3 already defaults to re.UNICODE behavior when compiling unicode str objects (unless re.ASCII is specified). If a repository wants to ban unicode categore/package names then we can add a layout.conf setting for that, as discussed in bug #435934.
* Rename slot-abi stuff to refer to slot-operator.Zac Medico2012-08-291-5/+5
| | | | | This makes it consistent with the language in the PMS eapi-5 branch: http://git.overlays.gentoo.org/gitweb/?p=proj/pms.git;a=commit;h=5d6749ac9e5ddc5b1daaad7737b65fa81c6ece47
* EAPI 5 stable use.mask/force for bug #431078Zac Medico2012-08-241-0/+14
|
* _pkg_str: pass in config + metadata with KEYWORDSZac Medico2012-08-241-2/+11
| | | | | This will be needed in order to support stable use.mask/force for bug #431078.
* Propagate EAPI for update_dbentry (bug #426476).Zac Medico2012-07-171-0/+2
|
* Add experimental EAPI 4-slot-abi support.Zac Medico2012-06-221-2/+13
| | | | Refer to 4-slot-abi.docbook for a full description.
* Package: move SLOT validation to _pkg_strZac Medico2012-06-101-1/+9
|
* _get_pv_re: use _eapi_attrsZac Medico2012-06-101-13/+20
|
* _pkg_str: validate repo (move code from Package)Zac Medico2012-05-131-1/+7
|
* _pkg_str: make version -r0 consistent with inputZac Medico2012-05-131-1/+4
|
* cpv_sort_key: use _pkg_strZac Medico2012-05-131-8/+18
|
* Use _pkg_str.version more.Zac Medico2012-05-131-4/+14
|
* Don't cache vercmp results.Zac Medico2012-05-131-14/+1
| | | | | It's probably not very helpful to cache vercmp results, since identical version comparisons probably don't recur very often.
* _pkg_str: add version attribute for comparisonsZac Medico2012-05-131-0/+1
| | | | | This attribute can be passed directly into vercmp, avoiding the need to generate this string many times.
* _pkg_str: add slot and repo attributesZac Medico2012-05-121-2/+6
|
* _pkg_str: add cpv attribute for match_from_listZac Medico2012-05-121-0/+2
|
* Add a _pkg_str class to cache catpkgsplit resultsZac Medico2012-05-121-1/+43
| | | | | This will compensate for the removal of the catpkgsplit cache in commit 68888b0450b1967cb70673a5f06b04c167ef879c.
* catpkgsplit: don't cache resultsZac Medico2012-05-121-7/+1
| | | | | | | | The cache has been subtly broken since commit eb2056631021a04b62c228206e44376f5c7a81ba when the eapi parameter was added. If necessary, we can add a cpv class (or something like that) in order to avoid redundant catpkgsplit calls in places like match_from_list.
* Allow dots in package names in EAPI="4-python".Arfrever Frehtes Taifersar Arahesis2012-05-121-25/+47
|
* cpv_sort_key: test suffix orderZac Medico2010-12-021-1/+1
|
* add new cpv_sort_key() functionZac Medico2010-12-011-1/+43
|
* Fix catpkgsplit() to validate the category part. This fixesZac Medico2010-09-251-1/+3
| | | | vardbapi.cp_all() to reject invalid categories.
* Remove unused imports found by pylint.Arfrever Frehtes Taifersar Arahesis2010-08-291-4/+2
|
* Make cpv_getversion handle invalid cpv and add cpv_getversion to __all__.Zac Medico2010-04-101-1/+3
|
* Implement REPLACING_VERSIONS and REPLACED_BY_VERSIONSebastian Luther2010-04-101-0/+5
|
* Remove all svn $Id keywords.Zac Medico2010-03-241-1/+0
|
* Move portage.cpv_getkey() to the portage.versions module.Zac Medico2010-02-201-0/+27
| | | | svn path=/main/trunk/; revision=15410
* Revert r15161 so 12.2.5 is greater than 12.2b once again. Depending on how youZac Medico2010-01-041-16/+11
| | | | | | | | look at, it may seem counter-intuitive. However, if you really think about it, it seems like it's probably safe to assume that 12.2.5 > 12.2b is the behavior that is intended by anyone who would use versions such as these. svn path=/main/trunk/; revision=15166
* Fix vercmp so 1b > 1 and add corresponding tests.Zac Medico2010-01-041-1/+7
| | | | svn path=/main/trunk/; revision=15162
* Revert vercmp() behavior so 12.2b > 12.2.5 which was accidentally changed inZac Medico2010-01-041-6/+11
| | | | | | | r2309 (between portage-2.0.x and portage-2.1). Thanks to Brian Harring for reporting in bug #287848, comment #3. svn path=/main/trunk/; revision=15161
* Make pkgsplit() preserve 'null' category if it's present in the input.Zac Medico2009-10-051-2/+3
| | | | svn path=/main/trunk/; revision=14494
* Use the simpler/stricter _pkgspit in dbapi code.Zac Medico2009-10-041-1/+6
| | | | svn path=/main/trunk/; revision=14492
* Make pkgsplit() accept a cpv again, since accepting a pv only will probablyZac Medico2009-10-041-3/+20
| | | | | | | break lots of api consumers. Thanks to Romain Perier <mrpouet@g.o> for reporting epkginfo breakage. svn path=/main/trunk/; revision=14491
* Take regular expressions from portage.dep and use them to reimplementZac Medico2009-09-301-41/+33
| | | | | | | portage.versions.pkgsplit(). This simplifies the code and helps guarantee consistency package name/version validation. svn path=/main/trunk/; revision=14466
* Update syntax of calls to print() for compatibility with Python 3.Arfrever Frehtes Taifersar Arahesis2009-09-201-4/+4
| | | | | | (2to3-3.1 -f print -nw ${FILES}) svn path=/main/trunk/; revision=14290
* Reimplement isvalidatom() to use a single regular expression match. ThanksZac Medico2009-09-071-1/+3
| | | | | | to Marat Radchenko <marat@slonopotamus.org> for this patch from bug #276813. svn path=/main/trunk/; revision=14213
* Optimize catpkgsplit() by creating a tuple directly instead of generating itZac Medico2009-09-071-4/+3
| | | | | | | from a list. Thanks to Marat Radchenko <slonopotamusorama@gmail.com> for this patch. svn path=/main/trunk/; revision=14211
* In catpkgsplit(), use split('/', 1) since there should never be more than onZac Medico2009-09-071-1/+1
| | | | | | slash to split. svn path=/main/trunk/; revision=14210
* Remove unnecessary redundant dict lookup at the beginning of catpkgsplit().Zac Medico2009-09-051-2/+0
| | | | | | Thanks to Marat Radchenko <slonopotamusorama@gmail.com> for this patch. svn path=/main/trunk/; revision=14186
* Prepare 308 messages to localization.Arfrever Frehtes Taifersar Arahesis2009-08-151-4/+5
| | | | svn path=/main/trunk/; revision=14067
* Simplify pkgcmp(). Thanks to Douglas Anderson <dja@gendja.com> for this patchZac Medico2009-04-181-9/+1
| | | | | | from bug #266493. svn path=/main/trunk/; revision=13354
* Bug #266493 - Never return a long from vercmp() since that can trigger anZac Medico2009-04-171-9/+19
| | | | | | | | | OverflowError if it's returned by a __cmp__ implementation. Thanks to Douglas Anderson <dja@gendja.com> for the initial patch. I've modified it to use the (a > b) - (a < b) construct as suggested in the py3k docs, since cmp() is no longer supported in py3k. svn path=/main/trunk/; revision=13353
* Bug #227265 - Make pkgsplit() allow multiple consecutive hyphens in packageZac Medico2009-03-261-7/+1
| | | | | | names, and add corresponding test cases. svn path=/main/trunk/; revision=13187
* Bug #227265 - Make pkgsplit() allow "versiony looking parts" in package names,Zac Medico2009-03-251-5/+0
| | | | | | for pms compliance. Also, add corresponding test cases. svn path=/main/trunk/; revision=13185
* Normalize try/except indentation for compatibility with 2to3.Zac Medico2009-03-201-4/+8
| | | | svn path=/main/trunk/; revision=13139
* Remove category validation cruft from catpkgsplit().Zac Medico2008-05-251-5/+1
| | | | svn path=/main/trunk/; revision=10400
* Check vercmp() return value to avoid arbitrary results in case it returns NoneMarius Mauch2008-05-131-2/+4
| | | | svn path=/main/trunk/; revision=10322