Zac Medico [Fri, 25 Sep 2009 05:03:13 +0000 (05:03 -0000)]
Fix ValueError in digestcheck(), reported by Arfrever.
svn path=/main/trunk/; revision=14419
Zac Medico [Fri, 25 Sep 2009 03:29:54 +0000 (03:29 -0000)]
Remove unnecessary dict.has_key() call (fix for python 3).
svn path=/main/trunk/; revision=14418
Zac Medico [Thu, 24 Sep 2009 22:47:09 +0000 (22:47 -0000)]
Show an appropriate error message in _create_pty_or_pipe() if openpty()
fails inside _test_pty_eof().
svn path=/main/trunk/; revision=14417
Zac Medico [Thu, 24 Sep 2009 22:15:48 +0000 (22:15 -0000)]
Fix regression in _getitem() from r14398, since myf.read().split("\n")
yields an empty string at the end which is causes _parse_data() to
catch a ValueError and raise CacheCorruption.
svn path=/main/trunk/; revision=14416
Zac Medico [Thu, 24 Sep 2009 21:50:10 +0000 (21:50 -0000)]
Add a test case for bugs.python.org/issue5380 and mark it as 'todo'
since it fails with current versions of python 3.
svn path=/main/trunk/; revision=14415
Zac Medico [Thu, 24 Sep 2009 21:48:07 +0000 (21:48 -0000)]
Make _test_pty_eof() return None if openpty() fails.
svn path=/main/trunk/; revision=14414
Zac Medico [Thu, 24 Sep 2009 21:32:30 +0000 (21:32 -0000)]
Use a runtime check to see if bugs.python.org/issue5380 is fixed.
svn path=/main/trunk/; revision=14413
Zac Medico [Thu, 24 Sep 2009 20:43:14 +0000 (20:43 -0000)]
Use dict.__iter__ instead of keys(), since it behaves identically in python
2 and 3.
svn path=/main/trunk/; revision=14412
Zac Medico [Thu, 24 Sep 2009 06:46:37 +0000 (06:46 -0000)]
Fix previous commit.
svn path=/main/trunk/; revision=14402
Zac Medico [Thu, 24 Sep 2009 06:45:18 +0000 (06:45 -0000)]
Warn if cpv_getkey() is given invalid input that triggers legacy code.
svn path=/main/trunk/; revision=14401
Zac Medico [Thu, 24 Sep 2009 06:36:47 +0000 (06:36 -0000)]
Avoid unicode errors in python 3. Thanks to Arfrever for reporting.
svn path=/main/trunk/; revision=14400
Zac Medico [Thu, 24 Sep 2009 06:03:58 +0000 (06:03 -0000)]
Decode directory names where appropriate in digestcheck(). Thanks to
Arfrever for reporting.
svn path=/main/trunk/; revision=14399
Zac Medico [Thu, 24 Sep 2009 05:48:33 +0000 (05:48 -0000)]
Misc performance enhancements. Thanks to Marat Radchenko
<marat@slonopotamus.org> for this patch from bug #276813.
svn path=/main/trunk/; revision=14398
Zac Medico [Thu, 24 Sep 2009 05:35:08 +0000 (05:35 -0000)]
Fix test case for recent changes.
svn path=/main/trunk/; revision=14397
Zac Medico [Wed, 23 Sep 2009 20:01:52 +0000 (20:01 -0000)]
Bug #286118 - Fix dbapi.move_ent() methods so they don't assume Atom instances
can be concatenated with strings (even though they can now, it's not really
a good assumption).
svn path=/main/trunk/; revision=14396
Arfrever Frehtes Taifersar Arahesis [Wed, 23 Sep 2009 17:48:34 +0000 (17:48 -0000)]
Fix "TypeError: object of type 'filter' has no len()".
svn path=/main/trunk/; revision=14395
Arfrever Frehtes Taifersar Arahesis [Wed, 23 Sep 2009 14:04:48 +0000 (14:04 -0000)]
Fix formatting of size of downloads with Python 3.
svn path=/main/trunk/; revision=14394
Zac Medico [Wed, 23 Sep 2009 06:44:54 +0000 (06:44 -0000)]
Bug #285979 - Replace references to CDEPEND with UNUSED_00, to make it clear
that this key really is unused.
svn path=/main/trunk/; revision=14393
Zac Medico [Wed, 23 Sep 2009 06:35:55 +0000 (06:35 -0000)]
Optimize vardbapi.getpath(). Thanks to Marat Radchenko
<marat@slonopotamus.org> for this patch.
svn path=/main/trunk/; revision=14392
Zac Medico [Tue, 22 Sep 2009 22:30:49 +0000 (22:30 -0000)]
Optimize SlotDict.iteritems() a little.
svn path=/main/trunk/; revision=14391
Zac Medico [Tue, 22 Sep 2009 22:29:32 +0000 (22:29 -0000)]
Make SlotDict use call self.iteritems() where appropriate since it implements
that method even when running in python 3.x.
svn path=/main/trunk/; revision=14390
Zac Medico [Tue, 22 Sep 2009 22:00:42 +0000 (22:00 -0000)]
Fix stack_dicts() to always return a dict.
svn path=/main/trunk/; revision=14389
Zac Medico [Tue, 22 Sep 2009 21:59:19 +0000 (21:59 -0000)]
Don't pass the ignore_none parameter to stack_dicts() since it does nothing
now.
svn path=/main/trunk/; revision=14388
Zac Medico [Tue, 22 Sep 2009 21:58:38 +0000 (21:58 -0000)]
Clean up stack_dicts() a little.
svn path=/main/trunk/; revision=14387
Zac Medico [Tue, 22 Sep 2009 21:42:07 +0000 (21:42 -0000)]
Disable the ignore_none parameter for stack_dicts() since having it return
None instead of a dict sometimes is hazardous.
svn path=/main/trunk/; revision=14386
Zac Medico [Tue, 22 Sep 2009 21:37:53 +0000 (21:37 -0000)]
Replace dict.keys() usage with __iter__(), since it behaves identically in
both python 2.x and 3.x.
svn path=/main/trunk/; revision=14385
Zac Medico [Tue, 22 Sep 2009 21:26:20 +0000 (21:26 -0000)]
Replace dict.keys() usage with __iter__(), since it behaves identically in
both python 2.x and 3.x.
svn path=/main/trunk/; revision=14384
Zac Medico [Tue, 22 Sep 2009 20:47:11 +0000 (20:47 -0000)]
Remove code that's been commented out.
svn path=/main/trunk/; revision=14383
Zac Medico [Tue, 22 Sep 2009 20:43:34 +0000 (20:43 -0000)]
Replace dict.keys() usage with __iter__(), since it behaves identically in
both python 2.x and 3.x.
svn path=/main/trunk/; revision=14382
Zac Medico [Tue, 22 Sep 2009 20:33:01 +0000 (20:33 -0000)]
Fix for python 3.x compatibility.
svn path=/main/trunk/; revision=14381
Zac Medico [Tue, 22 Sep 2009 20:18:45 +0000 (20:18 -0000)]
Replace dict.keys() usage with __iter__(), since it behaves identically in
both python 2.x and 3.x.
svn path=/main/trunk/; revision=14380
Zac Medico [Tue, 22 Sep 2009 20:03:10 +0000 (20:03 -0000)]
Replace doct.keys() usage with __iter__(), since it behaves identically in
both python 2.x and 3.x.
svn path=/main/trunk/; revision=14379
Zac Medico [Tue, 22 Sep 2009 19:48:26 +0000 (19:48 -0000)]
Do manual unicode handling (instead of using the wrapped os module) in
portdbapi.findname2(), since it's a hotspot. Thanks to Marat Radchenko
<marat@slonopotamus.org> for the initial patch.
svn path=/main/trunk/; revision=14378
Zac Medico [Tue, 22 Sep 2009 18:54:27 +0000 (18:54 -0000)]
For python 3.x with boolean target, len() results in TypeError, so
make __len__ return 0 or 1 in this case.
svn path=/main/trunk/; revision=14377
Zac Medico [Tue, 22 Sep 2009 18:37:31 +0000 (18:37 -0000)]
Optimize unicode wrappers. Thanks to Marat Radchenko <marat@slonopotamus.org>
for this patch from bug #276813.
svn path=/main/trunk/; revision=14376
Zac Medico [Tue, 22 Sep 2009 03:57:58 +0000 (03:57 -0000)]
Fix another potential 'RuntimeError: dictionary changed size during iteration'
exception in _owners_db._populate() for py3k.
svn path=/main/trunk/; revision=14375
Zac Medico [Tue, 22 Sep 2009 03:51:12 +0000 (03:51 -0000)]
Fix 'iteritems' attribute detection to look for 'items' instead.
svn path=/main/trunk/; revision=14374
Zac Medico [Tue, 22 Sep 2009 03:44:27 +0000 (03:44 -0000)]
Fix 'RuntimeError: dictionary changed size during iteration' in
bindbapi.aux_update() with py3k.
svn path=/main/trunk/; revision=14373
Zac Medico [Tue, 22 Sep 2009 02:46:02 +0000 (02:46 -0000)]
Remove redundant list() since starred expressions work with iterators.
svn path=/main/trunk/; revision=14372
Zac Medico [Tue, 22 Sep 2009 02:02:45 +0000 (02:02 -0000)]
Fix items to prevent infinite recursion.
svn path=/main/trunk/; revision=14371
Zac Medico [Mon, 21 Sep 2009 22:26:56 +0000 (22:26 -0000)]
Fix 'RuntimeError: dictionary changed size during iteration' in
_owners_db._populate() with py3k.
svn path=/main/trunk/; revision=14370
Zac Medico [Mon, 21 Sep 2009 22:20:28 +0000 (22:20 -0000)]
Don't wrap os.statvfs since it requires unicode string args in py3k.
svn path=/main/trunk/; revision=14369
Zac Medico [Mon, 21 Sep 2009 22:08:33 +0000 (22:08 -0000)]
Fix sorted() keyword arg for py3k.
svn path=/main/trunk/; revision=14368
Zac Medico [Mon, 21 Sep 2009 22:02:09 +0000 (22:02 -0000)]
Encode/decode names from the xpak index where appropriate.
svn path=/main/trunk/; revision=14367
Zac Medico [Mon, 21 Sep 2009 20:50:59 +0000 (20:50 -0000)]
In _unicode_func_wrapper, only encode keyword argument values, and not the
keys.
svn path=/main/trunk/; revision=14366
Zac Medico [Mon, 21 Sep 2009 20:44:30 +0000 (20:44 -0000)]
Fix PORTAGE_WORKDIR_MODE parsing code so it doesn't store python's octal
syntax in the environment variable.
svn path=/main/trunk/; revision=14365
Zac Medico [Mon, 21 Sep 2009 20:29:30 +0000 (20:29 -0000)]
Make find_binary() use os.environ.get instead of os.getenv, since os.getenv
isn't behaving correctly in py3k (maybe a unicode wrapper issue?).
svn path=/main/trunk/; revision=14364
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Zac Medico [Mon, 21 Sep 2009 01:43:35 +0000 (01:43 -0000)]
Tread blockers as invalid.
svn path=/main/trunk/; revision=14310
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
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
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
Zac Medico [Sun, 20 Sep 2009 23:01:21 +0000 (23:01 -0000)]
Fix typo from previous commit.
svn path=/main/trunk/; revision=14306
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
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
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
Zac Medico [Sun, 20 Sep 2009 22:08:22 +0000 (22:08 -0000)]
Misc unicode fixes for repoman.
svn path=/main/trunk/; revision=14302
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
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
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
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
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
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
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
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
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
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
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
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
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