portage.git
14 years agoDon't encode the env in py3k since it expects strings for the env that's
Zac Medico [Mon, 21 Sep 2009 20:12:40 +0000 (20:12 -0000)]
Don't encode the env in py3k since it expects strings for the env that's
passed into os.execve().

svn path=/main/trunk/; revision=14363

14 years agoTemporarily disable use of pty in py3k since it triggers an unresolved
Zac Medico [Mon, 21 Sep 2009 19:56:26 +0000 (19:56 -0000)]
Temporarily disable use of pty in py3k since it triggers an unresolved
issue, http://bugs.python.org/issue5380. With this workaround,
portage.tests.ebuild.test_spawn.SpawnTestCase.testLogfile() does
not raise IOError.

svn path=/main/trunk/; revision=14362

14 years agoFix decodeint() for py3k compat, since bytes are a sequence of integers
Zac Medico [Mon, 21 Sep 2009 19:51:02 +0000 (19:51 -0000)]
Fix decodeint() for py3k compat, since bytes are a sequence of integers
instead of characters.

svn path=/main/trunk/; revision=14361

14 years agoUse input() instead of raw_input() when Python 3 is used.
Arfrever Frehtes Taifersar Arahesis [Mon, 21 Sep 2009 18:34:38 +0000 (18:34 -0000)]
Use input() instead of raw_input() when Python 3 is used.

svn path=/main/trunk/; revision=14358

14 years agoDecode database name passed to portage.cache.sqlite.database._db_module.connect(...
Arfrever Frehtes Taifersar Arahesis [Mon, 21 Sep 2009 18:19:39 +0000 (18:19 -0000)]
Decode database name passed to portage.cache.sqlite.database._db_module.connect() for compatibility with Python 3.

svn path=/main/trunk/; revision=14357

14 years agoUse next(iterator) instead of iterator.next() for compatibility with Python 3.
Arfrever Frehtes Taifersar Arahesis [Mon, 21 Sep 2009 18:14:01 +0000 (18:14 -0000)]
Use next(iterator) instead of iterator.next() for compatibility with Python 3.
(2to3-3.1 -f next -nw ${FILES})

svn path=/main/trunk/; revision=14355

14 years agoDecode all keys in dictionary containing environment passed to os.execve() in portage...
Arfrever Frehtes Taifersar Arahesis [Mon, 21 Sep 2009 18:02:08 +0000 (18:02 -0000)]
Decode all keys in dictionary containing environment passed to os.execve() in portage.process._exec() for compatibility with Python 3.

svn path=/main/trunk/; revision=14352

14 years ago'filtered_auxdbkeys' should be a list to allow sorting.
Arfrever Frehtes Taifersar Arahesis [Mon, 21 Sep 2009 17:46:21 +0000 (17:46 -0000)]
'filtered_auxdbkeys' should be a list to allow sorting.

svn path=/main/trunk/; revision=14347

14 years agoDefine long as int when Python 3 is used.
Arfrever Frehtes Taifersar Arahesis [Mon, 21 Sep 2009 17:41:45 +0000 (17:41 -0000)]
Define long as int when Python 3 is used.

svn path=/main/trunk/; revision=14343

14 years agoSupport bytes in portage.util.normalize_path() with Python 3.
Arfrever Frehtes Taifersar Arahesis [Mon, 21 Sep 2009 17:03:17 +0000 (17:03 -0000)]
Support bytes in portage.util.normalize_path() with Python 3.

svn path=/main/trunk/; revision=14333

14 years agoFix portage._unicode_func_wrapper.__call__() to properly handle bytes with Python 3.
Arfrever Frehtes Taifersar Arahesis [Mon, 21 Sep 2009 17:00:59 +0000 (17:00 -0000)]
Fix portage._unicode_func_wrapper.__call__() to properly handle bytes with Python 3.

svn path=/main/trunk/; revision=14331

14 years agoFix dep_expand so that it doesn't use deprecated dep_getcpv() usage
Zac Medico [Mon, 21 Sep 2009 16:57:17 +0000 (16:57 -0000)]
Fix dep_expand so that it doesn't use deprecated dep_getcpv() usage
(with missing category).

svn path=/main/trunk/; revision=14330

14 years agoFix infinite recursion in items and values methods.
Zac Medico [Mon, 21 Sep 2009 16:25:27 +0000 (16:25 -0000)]
Fix infinite recursion in items and values methods.

svn path=/main/trunk/; revision=14329

14 years agoFix infinite recursion in items and values methods.
Zac Medico [Mon, 21 Sep 2009 16:23:20 +0000 (16:23 -0000)]
Fix infinite recursion in items and values methods.

svn path=/main/trunk/; revision=14328

14 years agoUse dict.(keys|values|items)() instead of dict.(iterkeys|itervalues|iteritems)()...
Arfrever Frehtes Taifersar Arahesis [Mon, 21 Sep 2009 16:07:07 +0000 (16:07 -0000)]
Use dict.(keys|values|items)() instead of dict.(iterkeys|itervalues|iteritems)() for compatibility with Python 3.
(2to3-3.1 -f dict -nw ${FILES})

svn path=/main/trunk/; revision=14327

14 years agoFix case for 0 args in args unicode conversion.
Zac Medico [Mon, 21 Sep 2009 15:44:51 +0000 (15:44 -0000)]
Fix case for 0 args in args unicode conversion.

svn path=/main/trunk/; revision=14326

14 years agoSimplify match_to_list(). Thanks to Marat Radchenko <marat@slonopotamus.org>
Zac Medico [Mon, 21 Sep 2009 15:29:25 +0000 (15:29 -0000)]
Simplify match_to_list(). Thanks to Marat Radchenko <marat@slonopotamus.org>
for this patch from bug #276813.

svn path=/main/trunk/; revision=14325

14 years agoShow deprecation warnings when dep_* legacy code is triggered.
Zac Medico [Mon, 21 Sep 2009 15:24:12 +0000 (15:24 -0000)]
Show deprecation warnings when dep_* legacy code is triggered.

svn path=/main/trunk/; revision=14324

14 years agoFix breakage in _unicode_encode() for non-string types.
Zac Medico [Mon, 21 Sep 2009 14:47:40 +0000 (14:47 -0000)]
Fix breakage in _unicode_encode() for non-string types.

svn path=/main/trunk/; revision=14323

14 years agoDeprecate key_expand and portage.dbapi.porttree.portagetree.resolve_specific
Zac Medico [Mon, 21 Sep 2009 14:34:13 +0000 (14:34 -0000)]
Deprecate key_expand and portage.dbapi.porttree.portagetree.resolve_specific
which calls it.

svn path=/main/trunk/; revision=14322

14 years agoSupport both Python 2 and 3 in portage._unicode_encode() and portage._unicode_decode().
Arfrever Frehtes Taifersar Arahesis [Mon, 21 Sep 2009 14:15:49 +0000 (14:15 -0000)]
Support both Python 2 and 3 in portage._unicode_encode() and portage._unicode_decode().
Update decoding in some files.

svn path=/main/trunk/; revision=14321

14 years agoUse dep_expand instead of key_expand in the blocker display, since it seems
Zac Medico [Mon, 21 Sep 2009 13:48:15 +0000 (13:48 -0000)]
Use dep_expand instead of key_expand in the blocker display, since it seems
like a better fit. Also, use str(atom) since we don't want to assume that
Atoms are string type (though they happen to be now). This assumption is
what caused the traceback in bug 285637, comment #5.

svn path=/main/trunk/; revision=14320

14 years agoMake key_expand() always return Atom type.
Zac Medico [Mon, 21 Sep 2009 13:16:12 +0000 (13:16 -0000)]
Make key_expand() always return Atom type.

svn path=/main/trunk/; revision=14319

14 years agoAdd deprecation warnings to vartree.exists_specific_cat(), getnode(), and
Zac Medico [Mon, 21 Sep 2009 13:06:29 +0000 (13:06 -0000)]
Add deprecation warnings to vartree.exists_specific_cat(), getnode(), and
hasnode(). Use dbapi methods instead.

svn path=/main/trunk/; revision=14318

14 years agoUse range() instead of xrange() for compatibility with Python 3.
Arfrever Frehtes Taifersar Arahesis [Mon, 21 Sep 2009 12:49:33 +0000 (12:49 -0000)]
Use range() instead of xrange() for compatibility with Python 3.
(2to3-3.1 -f xrange -nw ${FILES})

svn path=/main/trunk/; revision=14317

14 years agoDefine basestring as str when Python 3 is used.
Arfrever Frehtes Taifersar Arahesis [Mon, 21 Sep 2009 12:44:37 +0000 (12:44 -0000)]
Define basestring as str when Python 3 is used.

svn path=/main/trunk/; revision=14316

14 years agoFix all remaining SyntaxErrors with Python 3.
Arfrever Frehtes Taifersar Arahesis [Mon, 21 Sep 2009 12:16:07 +0000 (12:16 -0000)]
Fix all remaining SyntaxErrors with Python 3.

svn path=/main/trunk/; revision=14315

14 years agoUse filter() and zip() instead of itertools.ifilter() and itertools.izip() for compat...
Arfrever Frehtes Taifersar Arahesis [Mon, 21 Sep 2009 11:49:13 +0000 (11:49 -0000)]
Use filter() and zip() instead of itertools.ifilter() and itertools.izip() for compatibility with Python 3.
(2to3-3.1 -f itertools -f itertools_imports -nw ${FILES})

svn path=/main/trunk/; revision=14314

14 years agoMake Atom.__init__ call the base class constructor, though it doesn't seem
Zac Medico [Mon, 21 Sep 2009 02:06:49 +0000 (02:06 -0000)]
Make Atom.__init__ call the base class constructor, though it doesn't seem
to matter.

svn path=/main/trunk/; revision=14313

14 years agoWhen generating config.prevmaskdict, only call the Atom constructor when
Zac Medico [Mon, 21 Sep 2009 02:04:47 +0000 (02:04 -0000)]
When generating config.prevmaskdict, only call the Atom constructor when
necessary.

svn path=/main/trunk/; revision=14312

14 years agoFix AtomArg constructor calls to pass in Atom instances, so the constructor
Zac Medico [Mon, 21 Sep 2009 01:54:01 +0000 (01:54 -0000)]
Fix AtomArg constructor calls to pass in Atom instances, so the constructor
never has to construct one.

svn path=/main/trunk/; revision=14311

14 years agoTread blockers as invalid.
Zac Medico [Mon, 21 Sep 2009 01:43:35 +0000 (01:43 -0000)]
Tread blockers as invalid.

svn path=/main/trunk/; revision=14310

14 years agoFix redundant Atom construtor call in _show_unsatisfied_dep().
Zac Medico [Mon, 21 Sep 2009 01:20:49 +0000 (01:20 -0000)]
Fix redundant Atom construtor call in _show_unsatisfied_dep().

svn path=/main/trunk/; revision=14309

14 years agoRemove virtuals from the cache because they're unused since portage-2.1.6
Zac Medico [Sun, 20 Sep 2009 23:31:28 +0000 (23:31 -0000)]
Remove virtuals from the cache because they're unused since portage-2.1.6
and it won't hurt older portage.

svn path=/main/trunk/; revision=14308

14 years agoFix typos in http.client imports.
Zac Medico [Sun, 20 Sep 2009 23:14:08 +0000 (23:14 -0000)]
Fix typos in http.client imports.

svn path=/main/trunk/; revision=14307

14 years agoFix typo from previous commit.
Zac Medico [Sun, 20 Sep 2009 23:01:21 +0000 (23:01 -0000)]
Fix typo from previous commit.

svn path=/main/trunk/; revision=14306

14 years agoFix depgraph._validate_blockers() so that it doesn't do prohibited Atom(Atom)
Zac Medico [Sun, 20 Sep 2009 22:59:04 +0000 (22:59 -0000)]
Fix depgraph._validate_blockers() so that it doesn't do prohibited Atom(Atom)
constructor calls.

svn path=/main/trunk/; revision=14305

14 years agoAdd fallback in ImportError for io.StringIO. This is needed for python-2.6
Zac Medico [Sun, 20 Sep 2009 22:45:32 +0000 (22:45 -0000)]
Add fallback in ImportError for io.StringIO. This is needed for python-2.6
with USE=build since io imports threading which imports thread which is
unavailable.

svn path=/main/trunk/; revision=14304

14 years agoAdd support in ConsoleStyleFile.write() for unicode encoding when writing to
Zac Medico [Sun, 20 Sep 2009 22:23:58 +0000 (22:23 -0000)]
Add support in ConsoleStyleFile.write() for unicode encoding when writing to
stdout/stderr in python-2.x.

svn path=/main/trunk/; revision=14303

14 years agoMisc unicode fixes for repoman.
Zac Medico [Sun, 20 Sep 2009 22:08:22 +0000 (22:08 -0000)]
Misc unicode fixes for repoman.

svn path=/main/trunk/; revision=14302

14 years agoUse _unicode_encode() to ensure that only unicode strings are passed into
Zac Medico [Sun, 20 Sep 2009 20:00:57 +0000 (20:00 -0000)]
Use _unicode_encode() to ensure that only unicode strings are passed into
io.StringIO text streams.

svn path=/main/trunk/; revision=14301

14 years agoMake Atom inherit from str. Thanks to Marat Radchenko
Zac Medico [Sun, 20 Sep 2009 19:34:34 +0000 (19:34 -0000)]
Make Atom inherit from str. Thanks to Marat Radchenko
<marat@slonopotamus.org> for this patch from bug #276813.

svn path=/main/trunk/; revision=14300

14 years agoMake _unicode_module_wrapper cache wrappers and reuse them. Thanks to
Zac Medico [Sun, 20 Sep 2009 18:54:57 +0000 (18:54 -0000)]
Make _unicode_module_wrapper cache wrappers and reuse them. Thanks to
Marat Radchenko <marat@slonopotamus.org> for this patch from bug #276813.

svn path=/main/trunk/; revision=14299

14 years agoIn doebuild_environment(), detect if setcpv() hasn't been called properly,
Zac Medico [Sun, 20 Sep 2009 18:38:00 +0000 (18:38 -0000)]
In doebuild_environment(), detect if setcpv() hasn't been called properly,
and call it if necessary (mainly for api consumers).

svn path=/main/trunk/; revision=14298

14 years agoAdd back a line which I erroneously removed when committing the patch for
Zac Medico [Sun, 20 Sep 2009 18:13:06 +0000 (18:13 -0000)]
Add back a line which I erroneously removed when committing the patch for
bug 203733. Thanks to Alexis Ballier <aballier@g.o> for reporting the related
KeyError.

svn path=/main/trunk/; revision=14297

14 years agoFix position of imports from __future__.
Arfrever Frehtes Taifersar Arahesis [Sun, 20 Sep 2009 16:48:13 +0000 (16:48 -0000)]
Fix position of imports from __future__.

svn path=/main/trunk/; revision=14296

14 years agoSupport print() function with Python 2 in more files.
Arfrever Frehtes Taifersar Arahesis [Sun, 20 Sep 2009 16:41:30 +0000 (16:41 -0000)]
Support print() function with Python 2 in more files.

svn path=/main/trunk/; revision=14295

14 years agoUpdate system imports for compatibility with Python 3.
Arfrever Frehtes Taifersar Arahesis [Sun, 20 Sep 2009 16:22:08 +0000 (16:22 -0000)]
Update system imports for compatibility with Python 3.

svn path=/main/trunk/; revision=14294

14 years agoUpdate syntax of numbers in some files which were missing in previous commit.
Arfrever Frehtes Taifersar Arahesis [Sun, 20 Sep 2009 12:39:22 +0000 (12:39 -0000)]
Update syntax of numbers in some files which were missing in previous commit.

svn path=/main/trunk/; revision=14293

14 years agoUpdate syntax of numbers for compatibility with Python 3.
Arfrever Frehtes Taifersar Arahesis [Sun, 20 Sep 2009 11:47:45 +0000 (11:47 -0000)]
Update syntax of numbers for compatibility with Python 3.
(2to3-3.1 -f numliterals -nw ${FILES})

svn path=/main/trunk/; revision=14292

14 years agoSupport print() function with Python 2 in some files.
Arfrever Frehtes Taifersar Arahesis [Sun, 20 Sep 2009 11:28:14 +0000 (11:28 -0000)]
Support print() function with Python 2 in some files.

svn path=/main/trunk/; revision=14291

14 years agoUpdate syntax of calls to print() for compatibility with Python 3.
Arfrever Frehtes Taifersar Arahesis [Sun, 20 Sep 2009 11:08:30 +0000 (11:08 -0000)]
Update syntax of calls to print() for compatibility with Python 3.
(2to3-3.1 -f print -nw ${FILES})

svn path=/main/trunk/; revision=14290

14 years agoUpdate syntax of 'except' statements for compatibility with Python 3.
Arfrever Frehtes Taifersar Arahesis [Sun, 20 Sep 2009 10:57:44 +0000 (10:57 -0000)]
Update syntax of 'except' statements for compatibility with Python 3.
(2to3-3.1 -f except -nw ${FILES})

svn path=/main/trunk/; revision=14289

14 years agoBug #285637 - Fix NameError exception triggered by InvalidAtom in
Zac Medico [Sun, 20 Sep 2009 06:56:46 +0000 (06:56 -0000)]
Bug #285637 - Fix NameError exception triggered by InvalidAtom in
grabfile_package().

svn path=/main/trunk/; revision=14288

14 years agoAdd isinstance(mydep, Atom) checks to the dep_* functions since we don't use a v2.2_rc41
Zac Medico [Sat, 19 Sep 2009 23:05:24 +0000 (23:05 -0000)]
Add isinstance(mydep, Atom) checks to the dep_* functions since we don't use a
metaclass to do that anymore (due to performance).

svn path=/main/trunk/; revision=14286

14 years agoFix config.setinst() to add Atom instances to the provider lists instead of
Zac Medico [Sat, 19 Sep 2009 21:30:08 +0000 (21:30 -0000)]
Fix config.setinst() to add Atom instances to the provider lists instead of
plain str.

svn path=/main/trunk/; revision=14285

14 years agoRevert accidental changes _unicode_module_wrapper.__getattribute__ from
Zac Medico [Sat, 19 Sep 2009 20:14:25 +0000 (20:14 -0000)]
Revert accidental changes _unicode_module_wrapper.__getattribute__ from
previous commit.

svn path=/main/trunk/; revision=14284

14 years agoRemove obsolete InvalidAtom handler in _add_pkg_dep_string().
Zac Medico [Sat, 19 Sep 2009 20:10:56 +0000 (20:10 -0000)]
Remove obsolete InvalidAtom handler in _add_pkg_dep_string().

svn path=/main/trunk/; revision=14283

14 years agoAvoid lots of redundant Atom constructor calls. Thanks to Marat Radchenko
Zac Medico [Sat, 19 Sep 2009 17:05:52 +0000 (17:05 -0000)]
Avoid lots of redundant Atom constructor calls. Thanks to Marat Radchenko
<marat@slonopotamus.org> for the initial patch from bug #276813.

svn path=/main/trunk/; revision=14282

14 years agoFix _expand_new_virtuals() to preserve USE deps in atoms for new-style
Zac Medico [Sat, 19 Sep 2009 14:57:18 +0000 (14:57 -0000)]
Fix _expand_new_virtuals() to preserve USE deps in atoms for new-style
virtuals, and update the corresponding depgraph code.

svn path=/main/trunk/; revision=14281

14 years agoUse a dict for Package.metadata, because it's faster. Thanks to Marat
Zac Medico [Sat, 19 Sep 2009 12:58:52 +0000 (12:58 -0000)]
Use a dict for Package.metadata, because it's faster. Thanks to Marat
Radchenko <marat@slonopotamus.org> for this patch from bug #276813.

svn path=/main/trunk/; revision=14280

14 years agoAtom optimizations. Remove the metaclass and cache since it just slows it
Zac Medico [Fri, 18 Sep 2009 15:18:34 +0000 (15:18 -0000)]
Atom optimizations. Remove the metaclass and cache since it just slows it
down. Thanks to Marat Radchenko <marat@slonopotamus.org> for this patch.

svn path=/main/trunk/; revision=14279

14 years agoUpdate documentation of inherit. Reported by Jeremy Olexa.
Arfrever Frehtes Taifersar Arahesis [Tue, 15 Sep 2009 21:39:57 +0000 (21:39 -0000)]
Update documentation of inherit. Reported by Jeremy Olexa.

svn path=/main/trunk/; revision=14274

14 years agoFix broken virtual depth code from previous commit.
Zac Medico [Mon, 14 Sep 2009 13:44:53 +0000 (13:44 -0000)]
Fix broken virtual depth code from previous commit.

svn path=/main/trunk/; revision=14273

14 years agoAdd support in depgraph._add_pkg_dep_string() for adding indirect virtual
Zac Medico [Mon, 14 Sep 2009 13:35:01 +0000 (13:35 -0000)]
Add support in depgraph._add_pkg_dep_string() for adding indirect virtual
deps to the graph. This takes advantage of circular dependency avoidance
that's done by dep_zapdeps, while avoiding the dependency graph distortion
reported in bug #283795.

svn path=/main/trunk/; revision=14272

14 years agoMake depgraph._select_atoms() return a dict, in order to separate selected
Zac Medico [Mon, 14 Sep 2009 12:51:31 +0000 (12:51 -0000)]
Make depgraph._select_atoms() return a dict, in order to separate selected
direct deps from indirect virtual deps.

svn path=/main/trunk/; revision=14271

14 years agoWhen _expand_new_virtuals() is called by repoman, skip expansion of new-style
Zac Medico [Mon, 14 Sep 2009 11:18:21 +0000 (11:18 -0000)]
When _expand_new_virtuals() is called by repoman, skip expansion of new-style
virtuals.

svn path=/main/trunk/; revision=14270

14 years agoReimplement the code from bug #283795 so that indirect deps are preserved
Zac Medico [Mon, 14 Sep 2009 11:05:16 +0000 (11:05 -0000)]
Reimplement the code from bug #283795 so that indirect deps are preserved
for later use. TODO: Write code to add selected indirect virtual deps to
the graph. This will take advantage of circular dependency avoidance that's
done by dep_zapdeps.

svn path=/main/trunk/; revision=14269

14 years agoSimplify cpv_getkey() by just calling dep_getkey('=' + mycpv).
Zac Medico [Mon, 14 Sep 2009 08:24:30 +0000 (08:24 -0000)]
Simplify cpv_getkey() by just calling dep_getkey('=' + mycpv).

svn path=/main/trunk/; revision=14264

14 years agoMake dep_getcpv() use Atom, and fall back to legacy code for backward compat.
Zac Medico [Mon, 14 Sep 2009 08:11:22 +0000 (08:11 -0000)]
Make dep_getcpv() use Atom, and fall back to legacy code for backward compat.

svn path=/main/trunk/; revision=14262

14 years agoInsice match_from_list(), use remove_slot() instead of dep_getcpv() where
Zac Medico [Mon, 14 Sep 2009 07:59:47 +0000 (07:59 -0000)]
Insice match_from_list(), use remove_slot() instead of dep_getcpv() where
appropriate.

svn path=/main/trunk/; revision=14261

14 years agoUse a regular expression for cpv_getkey(), and fall back to legacy code if
Zac Medico [Mon, 14 Sep 2009 07:52:45 +0000 (07:52 -0000)]
Use a regular expression for cpv_getkey(), and fall back to legacy code if
no match is found.

svn path=/main/trunk/; revision=14259

14 years agoMake get_operator() use Atom, and remove unnecessary reflection code from
Zac Medico [Mon, 14 Sep 2009 07:02:18 +0000 (07:02 -0000)]
Make get_operator() use Atom, and remove unnecessary reflection code from
dep_getkey(). Thanks to Marat Radchenko <marat@slonopotamus.org> for
suggestions.

svn path=/main/trunk/; revision=14256

14 years agoMake isspecific() use the Atom class and fall back to legacy code if the
Zac Medico [Mon, 14 Sep 2009 06:49:01 +0000 (06:49 -0000)]
Make isspecific() use the Atom class and fall back to legacy code if the
atom is invalid. Also, optimize called isjustname() legacy code to only
check the last 2 components.

svn path=/main/trunk/; revision=14255

14 years agoUse the Atom class to implement dep_getkey(), and fall back to legacy code
Zac Medico [Mon, 14 Sep 2009 06:02:36 +0000 (06:02 -0000)]
Use the Atom class to implement dep_getkey(), and fall back to legacy code
when necessary for backward compatibility.

svn path=/main/trunk/; revision=14254

14 years agoAdd more test cases.
Zac Medico [Mon, 14 Sep 2009 05:54:39 +0000 (05:54 -0000)]
Add more test cases.

svn path=/main/trunk/; revision=14253

14 years agoSimplify isvalidatom() to simply use the Atom class. Thanks to Marat
Zac Medico [Mon, 14 Sep 2009 05:51:28 +0000 (05:51 -0000)]
Simplify isvalidatom() to simply use the Atom class. Thanks to Marat
Radchenko <marat@slonopotamus.org> for the suggestion.

svn path=/main/trunk/; revision=14252

14 years agoSimplify the _pkg regex and fix validation for some cases by using the
Zac Medico [Mon, 14 Sep 2009 05:46:21 +0000 (05:46 -0000)]
Simplify the _pkg regex and fix validation for some cases by using the
_version regex to match unwanted version-like components which can not
be at the end of a _pkg match. For example
isvalidatom('app-doc/php-docs-20071125-r2') now correctly returns False.

svn path=/main/trunk/; revision=14251

14 years agoBug #240656 - Unmerge broken symlinks where a directory was expected.
Zac Medico [Mon, 14 Sep 2009 03:32:30 +0000 (03:32 -0000)]
Bug #240656 - Unmerge broken symlinks where a directory was expected.
(merged from branches/prefix r14248)

svn path=/main/trunk/; revision=14250

14 years agoSimlify the Atom regex. Thanks to Marat Radchenko <marat@slonopotamus.org>
Zac Medico [Mon, 14 Sep 2009 02:45:33 +0000 (02:45 -0000)]
Simlify the Atom regex. Thanks to Marat Radchenko <marat@slonopotamus.org>
for this patch.

svn path=/main/trunk/; revision=14249

14 years agoUse cpv_getkey() instead of dep_getkey() where appropriate.
Zac Medico [Sun, 13 Sep 2009 00:07:50 +0000 (00:07 -0000)]
Use cpv_getkey() instead of dep_getkey() where appropriate.

svn path=/main/trunk/; revision=14242

14 years agoMake the Atom constructor use regular expression match groups for
Zac Medico [Sun, 13 Sep 2009 00:01:18 +0000 (00:01 -0000)]
Make the Atom constructor use regular expression match groups for
initialization. Thanks to Marat Radchenko <marat@slonopotamus.org> for this
patch.

svn path=/main/trunk/; revision=14241

14 years agoFix docs for isjustname() since it doesn't raise InvalidAtom now.
Zac Medico [Sat, 12 Sep 2009 23:21:32 +0000 (23:21 -0000)]
Fix docs for isjustname() since it doesn't raise InvalidAtom now.

svn path=/main/trunk/; revision=14240

14 years agoAdd backward compatibility to isjustname(), so the tests don't fail.
Zac Medico [Sat, 12 Sep 2009 23:18:56 +0000 (23:18 -0000)]
Add backward compatibility to isjustname(), so the tests don't fail.

svn path=/main/trunk/; revision=14239

14 years agoAdd tests for the Atom class.
Zac Medico [Sat, 12 Sep 2009 22:52:19 +0000 (22:52 -0000)]
Add tests for the Atom class.

svn path=/main/trunk/; revision=14238

14 years agoFix bug in _expand_new_virtuals() reported by Arfrever:
Zac Medico [Sat, 12 Sep 2009 21:24:44 +0000 (21:24 -0000)]
Fix bug in _expand_new_virtuals() reported by Arfrever:
TypeError: coercing to Unicode: need string or buffer, Atom found

svn path=/main/trunk/; revision=14237

14 years agoUse isjustname() where appropriate.
Zac Medico [Sat, 12 Sep 2009 18:10:03 +0000 (18:10 -0000)]
Use isjustname() where appropriate.

svn path=/main/trunk/; revision=14236

14 years agoFix isjustname docstring to have a valid atom in the example.
Zac Medico [Sat, 12 Sep 2009 17:51:44 +0000 (17:51 -0000)]
Fix isjustname docstring to have a valid atom in the example.

svn path=/main/trunk/; revision=14235

14 years agoReimplement isjustname() using the Atom class. Thanks to Marat Radchenko
Zac Medico [Sat, 12 Sep 2009 17:47:58 +0000 (17:47 -0000)]
Reimplement isjustname() using the Atom class. Thanks to Marat Radchenko
<marat@slonopotamus.org> for the suggestion.

svn path=/main/trunk/; revision=14234

14 years agoIn config.getvirtuals(), save Atom instances in order to avoid revalidation.
Zac Medico [Sat, 12 Sep 2009 17:26:32 +0000 (17:26 -0000)]
In config.getvirtuals(), save Atom instances in order to avoid revalidation.
Also, fix cpv_expand() to handle Atom instances from config.getvirtuals().

svn path=/main/trunk/; revision=14233

14 years agoMake dbapi.move_ent() take advantage of Atom instances when validating
Zac Medico [Sat, 12 Sep 2009 16:29:23 +0000 (16:29 -0000)]
Make dbapi.move_ent() take advantage of Atom instances when validating
arguments.

svn path=/main/trunk/; revision=14232

14 years agoAdd missing InvalidAtom import.
Zac Medico [Sat, 12 Sep 2009 16:20:41 +0000 (16:20 -0000)]
Add missing InvalidAtom import.

svn path=/main/trunk/; revision=14231

14 years agoMake parse_updates() and update_dbentry() use Atom instances.
Zac Medico [Sat, 12 Sep 2009 16:09:40 +0000 (16:09 -0000)]
Make parse_updates() and update_dbentry() use Atom instances.

svn path=/main/trunk/; revision=14230

14 years agoFix bad assumptions.
Zac Medico [Sat, 12 Sep 2009 15:29:09 +0000 (15:29 -0000)]
Fix bad assumptions.

svn path=/main/trunk/; revision=14229

14 years agoFix poor assumptions.
Zac Medico [Sat, 12 Sep 2009 15:17:08 +0000 (15:17 -0000)]
Fix poor assumptions.

svn path=/main/trunk/; revision=14228

14 years agoFix bugs and poor assumptions.
Zac Medico [Sat, 12 Sep 2009 15:06:02 +0000 (15:06 -0000)]
Fix bugs and poor assumptions.

svn path=/main/trunk/; revision=14227

14 years agoUpdate grabdict_package and grabfile_package calling code to take advantage
Zac Medico [Sat, 12 Sep 2009 14:43:27 +0000 (14:43 -0000)]
Update grabdict_package and grabfile_package calling code to take advantage
of Atom instances, and convert *atom from 'packages' to a normal Atom instance
when it's stored in prevmaskdict.

svn path=/main/trunk/; revision=14226

14 years agoMake grabfile_package() accept *atom only for files named 'packages' since
Zac Medico [Sat, 12 Sep 2009 14:37:45 +0000 (14:37 -0000)]
Make grabfile_package() accept *atom only for files named 'packages' since
they are not valid in any other files.

svn path=/main/trunk/; revision=14225

14 years agoMake grabdict_package() and grabfile_package() return Atom instances when
Zac Medico [Sat, 12 Sep 2009 13:13:05 +0000 (13:13 -0000)]
Make grabdict_package() and grabfile_package() return Atom instances when
possible, in order to avoid revalidation.

svn path=/main/trunk/; revision=14224

14 years agoImplement Atom.__copy__ and __deepcopy__ to return self, since instances are
Zac Medico [Sat, 12 Sep 2009 13:10:59 +0000 (13:10 -0000)]
Implement Atom.__copy__ and __deepcopy__ to return self, since instances are
immutable.

svn path=/main/trunk/; revision=14223