Zac Medico [Thu, 5 Mar 2009 03:59:10 +0000 (03:59 -0000)]
Make --searchdesc imply --search inside parse_opts().
svn path=/main/trunk/; revision=12754
Zac Medico [Thu, 5 Mar 2009 03:53:38 +0000 (03:53 -0000)]
Only generate PORTAGE_COUNTER_HASH for actions that can involve vdb
modification.
svn path=/main/trunk/; revision=12753
Zac Medico [Thu, 5 Mar 2009 03:43:03 +0000 (03:43 -0000)]
Make --version and action.
svn path=/main/trunk/; revision=12752
Zac Medico [Thu, 5 Mar 2009 03:03:50 +0000 (03:03 -0000)]
Set Unpickler.find_global = None when possible and handle AttributeError
for py3k.
svn path=/main/trunk/; revision=12751
Zac Medico [Thu, 5 Mar 2009 01:40:55 +0000 (01:40 -0000)]
Remove unnecessary creation of lists when iterating over digraphs for
--buildpkgonly hasallzeros check.
svn path=/main/trunk/; revision=12750
Zac Medico [Wed, 4 Mar 2009 23:02:04 +0000 (23:02 -0000)]
Bug #261082 - Prefer remote package instances whenever --getbinpkg is enabled
(previously local instances were preferred unless --getbinpkgonly was enabled).
svn path=/main/trunk/; revision=12749
Zac Medico [Wed, 4 Mar 2009 21:16:33 +0000 (21:16 -0000)]
Make glsa-check executable.
svn path=/main/trunk/; revision=12748
Zac Medico [Wed, 4 Mar 2009 20:30:17 +0000 (20:30 -0000)]
Bug #261082 - Fix --getbinpkgonly code in binarytree._populate() to
update the aux_get cache when it's appropriate for a remote package
to override a local package.
svn path=/main/trunk/; revision=12747
Zac Medico [Wed, 4 Mar 2009 04:14:18 +0000 (04:14 -0000)]
Bug #256289 - When displaying an unsatisfied USE dep and all packages with
the required IUSE are masked, show a normal "masked package" message for
the package(s) that have the required IUSE (instead of showing the unmasked
packages with missing IUSE).
svn path=/main/trunk/; revision=12746
Zac Medico [Wed, 4 Mar 2009 02:26:24 +0000 (02:26 -0000)]
Fix vdb entry writting code in dyn_install() to avoid generating empty entries
in some cases. Thanks to Ned Ludd <solar@g.o> for reporting.
svn path=/main/trunk/; revision=12745
Zac Medico [Tue, 3 Mar 2009 03:39:57 +0000 (03:39 -0000)]
Make KeyValuePairFileLoader store the values as a strings instead of a lists.
svn path=/main/trunk/; revision=12744
Zac Medico [Tue, 3 Mar 2009 00:11:33 +0000 (00:11 -0000)]
ACCEPT_CHOSTS applies to unbuilt ebuild now (not just binary packages).
svn path=/main/trunk/; revision=12743
Zac Medico [Mon, 2 Mar 2009 23:51:12 +0000 (23:51 -0000)]
Fix KeyValuePairFileLoader to only split on '=' once and strip whitespace
for keys and values.
svn path=/main/trunk/; revision=12742
Zac Medico [Mon, 2 Mar 2009 22:59:59 +0000 (22:59 -0000)]
When ACCEPT_CHOSTS is set, enable CHOST masking for unbuilt ebuilds. This
behaves as a sanity check to protect people who are cross-compiling from
accidentally merging an ebuild with CHOST set incorrectly. Thanks to Ned
Ludd <solar@g.o> for reporting the problem.
svn path=/main/trunk/; revision=12741
Zac Medico [Mon, 2 Mar 2009 22:37:58 +0000 (22:37 -0000)]
Use PORTAGE_USE when evaluating LICENSE inside portdbapi.gvisible().
svn path=/main/trunk/; revision=12740
Zac Medico [Mon, 2 Mar 2009 21:50:22 +0000 (21:50 -0000)]
When fetch() is called and there is an existing file with the wrong size that
is smaller than PORTAGE_FETCH_RESUME_MIN_SIZE, rename the file instead of
deleting it. This is more friendly for cases in which the user is attempting
to regenerate the digest but has not used `ebuild --force foo.ebuild manifest`
like they're supposed to. Thanks to Patrick Lauer <patrick@g.o> for reporting.
svn path=/main/trunk/; revision=12739
Zac Medico [Sun, 1 Mar 2009 21:06:37 +0000 (21:06 -0000)]
Don't give portage group write permissions on the mtimedb since it's not
really needed.
svn path=/main/trunk/; revision=12738
Zac Medico [Sun, 1 Mar 2009 20:39:41 +0000 (20:39 -0000)]
Thanks to Petteri Räty <betelgeuse@gentoo.org> for this new cache module which
uses extended attributes (via pyxattr) to attach metadata cache directly to
the ebuild files themselves.
svn path=/main/trunk/; revision=12737
Zac Medico [Sun, 1 Mar 2009 06:29:07 +0000 (06:29 -0000)]
Remove redundant long(_mtime_) conversion since template handles it now.
svn path=/main/trunk/; revision=12736
Zac Medico [Sun, 1 Mar 2009 06:25:07 +0000 (06:25 -0000)]
* Fix portage.cache.template.database.__getitem__() to validate the _mtime_
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
Zac Medico [Sun, 1 Mar 2009 00:05:41 +0000 (00:05 -0000)]
Skip the code from bug #259954 when $ROOT != / since it shouldn't matter if
there are unsatisfied system runtime deps in this case.
svn path=/main/trunk/; revision=12734
Zac Medico [Sat, 28 Feb 2009 08:27:56 +0000 (08:27 -0000)]
When checking ebuild content, use codecs.open() to force utf_8 encoding for
py3k compatibility (all ebuilds should have utf_8 encoding).
svn path=/main/trunk/; revision=12733
Zac Medico [Sat, 28 Feb 2009 05:43:29 +0000 (05:43 -0000)]
In _ensure_default_encoding(), make sure the default encoding is normalized.
svn path=/main/trunk/; revision=12732
Zac Medico [Sat, 28 Feb 2009 05:20:35 +0000 (05:20 -0000)]
Add support to _ensure_default_encoding() for the same ascii and utf_8
aliases that encodings.aliases has.
svn path=/main/trunk/; revision=12731
Zac Medico [Sat, 28 Feb 2009 01:06:30 +0000 (01:06 -0000)]
Make Atom instances consume less memory by implementing str methods at the
class level instead of referencing bound str methods.
svn path=/main/trunk/; revision=12730
Zac Medico [Fri, 27 Feb 2009 05:23:37 +0000 (05:23 -0000)]
Use Popen.communicate() to avoid a potential deadlock.
svn path=/main/trunk/; revision=12729
Zac Medico [Fri, 27 Feb 2009 04:17:14 +0000 (04:17 -0000)]
Open then temp file in text mode for py3k compatibility.
svn path=/main/trunk/; revision=12728
Zac Medico [Fri, 27 Feb 2009 04:14:22 +0000 (04:14 -0000)]
Open the temp file in text mode for py3k compatibility.
svn path=/main/trunk/; revision=12727
Zac Medico [Fri, 27 Feb 2009 04:11:03 +0000 (04:11 -0000)]
Open the temp file in text mode for py3k compatibility.
svn path=/main/trunk/; revision=12726
Zac Medico [Fri, 27 Feb 2009 04:03:00 +0000 (04:03 -0000)]
Use os.fdopen() on file descriptors returned from mkstemp().
svn path=/main/trunk/; revision=12725
Zac Medico [Fri, 27 Feb 2009 03:54:57 +0000 (03:54 -0000)]
Open the temp file in text mode for py3k compatibility.
svn path=/main/trunk/; revision=12724
Zac Medico [Fri, 27 Feb 2009 03:46:40 +0000 (03:46 -0000)]
Open the temp file in text mode for py3k compatibility.
svn path=/main/trunk/; revision=12723
Zac Medico [Fri, 27 Feb 2009 03:24:13 +0000 (03:24 -0000)]
Use unicode() so that 2to3 handles py3k compatibility.
svn path=/main/trunk/; revision=12722
Zac Medico [Fri, 27 Feb 2009 03:08:03 +0000 (03:08 -0000)]
Fix CommandOutputSet to decode binary command output in py3k.
svn path=/main/trunk/; revision=12721
Zac Medico [Fri, 27 Feb 2009 02:43:45 +0000 (02:43 -0000)]
Fix PipeReader and PipeReaderTestCase to work with binary strings in py3k.
svn path=/main/trunk/; revision=12720
Zac Medico [Fri, 27 Feb 2009 01:20:49 +0000 (01:20 -0000)]
Loosen EMakeParallelDisabled.re so it can match more variations.
svn path=/main/trunk/; revision=12719
Zac Medico [Fri, 27 Feb 2009 01:08:01 +0000 (01:08 -0000)]
Add a new upstream.workaround check for hardcoded MAKEOPTS=-j1 (previously
only emake -j1 was recognized). Thanks to Maciej Mrozowski <reavertm@poczta.fm>
for this patch.
svn path=/main/trunk/; revision=12718
Zac Medico [Fri, 27 Feb 2009 00:48:30 +0000 (00:48 -0000)]
Fix test breakage due to change in calling order of AsynchronousTask start
listeners from r12713.
svn path=/main/trunk/; revision=12717
Zac Medico [Fri, 27 Feb 2009 00:03:26 +0000 (00:03 -0000)]
Fix a case in which a SRC_URI is incorrectly idendified as invalid, and add
a corresponding test case. Thanks to Jacob Floyd for reporting.
svn path=/main/trunk/; revision=12716
Zac Medico [Thu, 26 Feb 2009 08:40:41 +0000 (08:40 -0000)]
Remove recursion code from Scheduler._system_merge_started() since indirect
deps are checked when the corresponding parent is merged.
svn path=/main/trunk/; revision=12715
Zac Medico [Thu, 26 Feb 2009 07:50:49 +0000 (07:50 -0000)]
In traversing deps to add to Scheduler._unsatisfied_system_deps, only traverse
completed 'merge' nodes since those are the only ones that need to be checked
for unsatisfied runtime deps, and it's normal for nodes that aren't yet
complete to have unsatisfied runtime deps.
svn path=/main/trunk/; revision=12714
Zac Medico [Thu, 26 Feb 2009 04:26:07 +0000 (04:26 -0000)]
Bug #259954 - Do not spawn parallel build when the system is in a fragile
state due to a system package having an unsatisfied runtime dependency
(such as sys-libs/pam having an unsatisfied PDEPEND on sys-auth/pambase).
svn path=/main/trunk/; revision=12713
Mike Frysinger [Thu, 26 Feb 2009 04:03:10 +0000 (04:03 -0000)]
reject all set*id binaries that have DT_RPATH:$ORIGIN #260331
svn path=/main/trunk/; revision=12712
Zac Medico [Thu, 26 Feb 2009 01:15:02 +0000 (01:15 -0000)]
Remove stray parenthesis.
svn path=/main/trunk/; revision=12711
Zac Medico [Thu, 26 Feb 2009 00:59:06 +0000 (00:59 -0000)]
Inside depgraph._merge_order_bias(), promote deep system runtime deps toward
the front of the merge list. This should help optimize merge order to account
for implicit system dependencies.
svn path=/main/trunk/; revision=12710
Zac Medico [Thu, 26 Feb 2009 00:00:59 +0000 (00:00 -0000)]
Implement BlockerDepPriority.__str__().
svn path=/main/trunk/; revision=12709
Zac Medico [Wed, 25 Feb 2009 23:50:34 +0000 (23:50 -0000)]
Fix typo in DepPriority.__str__().
svn path=/main/trunk/; revision=12708
Zac Medico [Wed, 25 Feb 2009 20:21:12 +0000 (20:21 -0000)]
Implement lazy evaluation of USE_EXPAND variables in config.setcpv(), since
those variables are only needed when an ebuild shell is spawned. Thanks to
Marat Radchenko <slonopotamusorama@gmail.com> for testing this patch. He
reports a 14% reduction in the time consumed for `emerge -vpe world` on an
ARM device (from 3m12.008s to 2m45.055s).
svn path=/main/trunk/; revision=12707
Zac Medico [Wed, 25 Feb 2009 07:50:34 +0000 (07:50 -0000)]
In mirror_cache(), normalize EAPI by mapping EAPI=0 to empty.
svn path=/main/trunk/; revision=12706
Zac Medico [Tue, 24 Feb 2009 23:16:42 +0000 (23:16 -0000)]
Bug #259882 - Disable the ignore-previously-merged option by default since
emerge's confmem already provides similar functionality which is a little
safer.
svn path=/main/trunk/; revision=12705
Zac Medico [Tue, 24 Feb 2009 05:14:37 +0000 (05:14 -0000)]
If deepcopy() raises a TypeError for a lazy item that has been added via a
call to LazyItemsDict.addLazySingleton(), automatically evaluate the
the singleton and instead call deepcopy() on the result.
svn path=/main/trunk/; revision=12704
Zac Medico [Mon, 23 Feb 2009 23:22:08 +0000 (23:22 -0000)]
Make USE_EXPAND wildcard expansion more efficient, and prevent possible
duplicates.
svn path=/main/trunk/; revision=12703
Zac Medico [Mon, 23 Feb 2009 23:16:16 +0000 (23:16 -0000)]
Fix breakage in USE_EXPAND wildcard handling, from r12697.
svn path=/main/trunk/; revision=12702
Zac Medico [Mon, 23 Feb 2009 21:05:22 +0000 (21:05 -0000)]
Fix headers that contain $Header instead of $Id.
svn path=/main/trunk/; revision=12701
Zac Medico [Mon, 23 Feb 2009 20:52:10 +0000 (20:52 -0000)]
In LazyItemsDict, avoid storing empty lists and dicts when no positional or
keyword arguments are given.
svn path=/main/trunk/; revision=12700
Zac Medico [Mon, 23 Feb 2009 18:12:19 +0000 (18:12 -0000)]
In config.setcpv(), increase efficiency by filtering USE with IUSE before
calculating USE_EXPAND variables. Also use a generator expression instead
of a list comprehension in the USE_EXPAND generation code.
svn path=/main/trunk/; revision=12697
Zac Medico [Mon, 23 Feb 2009 17:31:40 +0000 (17:31 -0000)]
Fix getmaskingstatus() so that it doesn't inappropriately return a
'missing keyword' mask is some cases when the user has ** in package.keywords.
Thanks to Raúl Porcel <armin76@g.o> for reporting.
svn path=/main/trunk/; revision=12696
Zac Medico [Mon, 23 Feb 2009 16:41:49 +0000 (16:41 -0000)]
Fix default_encoding logic in _ensure_default_encoding().
svn path=/main/trunk/; revision=12695
Zac Medico [Mon, 23 Feb 2009 16:31:57 +0000 (16:31 -0000)]
Reorganize _ensure_default_encoding().
svn path=/main/trunk/; revision=12694
Zac Medico [Mon, 23 Feb 2009 08:35:57 +0000 (08:35 -0000)]
Revert vardbapi._owners_cache_version and unicode handling since it needs
some more work.
svn path=/main/trunk/; revision=12693
Zac Medico [Mon, 23 Feb 2009 08:32:37 +0000 (08:32 -0000)]
Don't try to call setdefaultencoding() since it's not intended to be called.
svn path=/main/trunk/; revision=12692
Zac Medico [Mon, 23 Feb 2009 06:51:10 +0000 (06:51 -0000)]
When displaying reverse dependencies in verbose --depclean/--prune output,
sort the parent packages by cpv.
svn path=/main/trunk/; revision=12691
Zac Medico [Mon, 23 Feb 2009 03:16:05 +0000 (03:16 -0000)]
Bump vardbapi._owners_cache_version from 1 to 2 since hash value encoding
is now hardcoded as utf_8.
svn path=/main/trunk/; revision=12690
Zac Medico [Mon, 23 Feb 2009 03:12:49 +0000 (03:12 -0000)]
When encoding strings inside vardbapi._counter_hash() and
vardbapi._owners_cache._hash_str(), use 'backslashreplace' in order to avoid
potential UnicodeError exceptions. Use constant ascii and utf_8 codecs,
respectively, since these codecs are guaranteed to be available by
_ensure_default_encoding().
svn path=/main/trunk/; revision=12689
Zac Medico [Mon, 23 Feb 2009 03:03:46 +0000 (03:03 -0000)]
Add support in _ensure_default_encoding(), add support for utf_8 and fall
back to utf_8 if the encoding returned by sys.getdefaultencoding() is
unavailable.
svn path=/main/trunk/; revision=12688
Zac Medico [Sun, 22 Feb 2009 23:39:03 +0000 (23:39 -0000)]
When decoding term codes inside the JobStatusDisplay constructor, use the
'replace' error handling scheme in order to avoid triggering a potential
UnicodeError.
svn path=/main/trunk/; revision=12687
Zac Medico [Sun, 22 Feb 2009 22:24:08 +0000 (22:24 -0000)]
In EbuildFetchonly.execute(), skip builddir creation when the ebuild does
not set RESTRICT=fetch (since it's not possible for pkg_nofetch to be executed
in this case).
svn path=/main/trunk/; revision=12686
Zac Medico [Sun, 22 Feb 2009 21:12:03 +0000 (21:12 -0000)]
Avoid spurious CCACHE_DIR permissions adjustments when fetching with
a temporary PORTAGE_TMPDIR setting (for fetchonly). Thanks to
Marat Radchenko <slonopotamusorama@gmail.com> for reporting.
svn path=/main/trunk/; revision=12685
Zac Medico [Sun, 22 Feb 2009 09:56:27 +0000 (09:56 -0000)]
The python that's inside stage 1 or 2 is built with a minimal
configuration which does not include the /usr/lib/pythonX.Y/encodings
directory. This results in error like the following:
LookupError: no codec search functions registered: can't find encoding
In order to solve this problem, detect it early and manually register
a search function for the ascii codec. Starting with python-3.0 this
problem is more noticeable because of stricter handling of encoding
and decoding between strings of characters and bytes.
svn path=/main/trunk/; revision=12684
Zac Medico [Sun, 22 Feb 2009 06:00:34 +0000 (06:00 -0000)]
Use a lock to ensure that threaded code doesn't cause problems with proxy
registration and unregistration.
svn path=/main/trunk/; revision=12683
Zac Medico [Sun, 22 Feb 2009 05:29:46 +0000 (05:29 -0000)]
Use lazyimport to avoid importing the portage.elog module when portage is
initially imported.
svn path=/main/trunk/; revision=12682
Zac Medico [Sun, 22 Feb 2009 05:23:34 +0000 (05:23 -0000)]
Use lazyimport to avoid importing the dep, output, update, and versions
modules when portage is initially imported.
svn path=/main/trunk/; revision=12681
Zac Medico [Sun, 22 Feb 2009 04:47:25 +0000 (04:47 -0000)]
Use lazyimport to avoid importing the checksum, locks, and util modules
when portage is initially imported.
svn path=/main/trunk/; revision=12680
Zac Medico [Sun, 22 Feb 2009 03:42:37 +0000 (03:42 -0000)]
Fix _LazyImportFrom to use the correct module name when registering and
unregistering.
svn path=/main/trunk/; revision=12679
Zac Medico [Sun, 22 Feb 2009 03:19:50 +0000 (03:19 -0000)]
Make lazyimport proxies trigger automatic destruction of other proxies for
modules that have been imported. This way, destruction of a single proxy
can trigger destruction of all the rest.
svn path=/main/trunk/; revision=12678
Zac Medico [Sun, 22 Feb 2009 02:48:43 +0000 (02:48 -0000)]
Fix typo in __all__.
svn path=/main/trunk/; revision=12677
Zac Medico [Sun, 22 Feb 2009 02:46:26 +0000 (02:46 -0000)]
Reduce bloat in portage.util by splitting ObjectProxy and lazyimport into a
new portage.proxy package.
svn path=/main/trunk/; revision=12676
Zac Medico [Sun, 22 Feb 2009 00:33:41 +0000 (00:33 -0000)]
Make lazy_import() skip proxy creation for modules that already exist
in sys.modules.
svn path=/main/trunk/; revision=12675
Zac Medico [Sat, 21 Feb 2009 22:07:51 +0000 (22:07 -0000)]
Make the UserDict and LazyItemsDict constructors use an optional positional
argument instead of a keyword argument.
svn path=/main/trunk/; revision=12674
Zac Medico [Sat, 21 Feb 2009 21:51:13 +0000 (21:51 -0000)]
In config.setcpv(), use LazyItemsDict to implement lazy evaluation of
PORTAGE_IUSE. The PORTAGE_IUSE value is lazily evaluated since re.escape()
is slow and the value is only used when an ebuild phase needs to be executed
(it's used only to generate QA notices). Thanks to Marat Radchenko
<slonopotamusorama@gmail.com> for identifying this performance issue and
submitting the initial patch which used a memoization approach instead of
lazy evaluation.
svn path=/main/trunk/; revision=12673
Zac Medico [Sat, 21 Feb 2009 19:09:05 +0000 (19:09 -0000)]
In LazyItemsDict, when a singleton is instantiated, replace the wrapper with
the singleton since the wrapper is no longer needed at this point.
svn path=/main/trunk/; revision=12672
Zac Medico [Sat, 21 Feb 2009 02:50:07 +0000 (02:50 -0000)]
Revert r12639 and use string.ascii_letters for python-3.0 compatibility.
svn path=/main/trunk/; revision=12669
Zac Medico [Sat, 21 Feb 2009 02:44:24 +0000 (02:44 -0000)]
Inside portage.spawn(), open files for logfile handling in binary mode, for
compatibility with python-3.0.
svn path=/main/trunk/; revision=12668
Zac Medico [Sat, 21 Feb 2009 01:55:27 +0000 (01:55 -0000)]
Inside summarylist(), it's possible for myglsa.packages.keys() to contain
unicode objects, which trigger and exception like this:
File "//usr/lib64/portage/pym/portage/dep.py", line 535, in __init__
obj_setattr(self, x, getattr(s, x))
AttributeError: 'unicode' object has no attribute '__eq__'
To solve this problem, convert unicode objects to plain str before passing
them to the portage api.
svn path=/main/trunk/; revision=12667
Zac Medico [Sat, 21 Feb 2009 00:18:45 +0000 (00:18 -0000)]
For python-3.0 compatibility, open files in binary mode inside
SpawnProcess._start().
svn path=/main/trunk/; revision=12666
Zac Medico [Fri, 20 Feb 2009 23:37:13 +0000 (23:37 -0000)]
When loading vdb_metadata.pickle inside vardbapi._aux_cache_init(), in
order to avoid an extreme performance issue, disable buffering when opening
the file under python-3.0. Unfortunately, performance is still poor relative
to python-2.x, but buffering makes it much worse.
svn path=/main/trunk/; revision=12665
Zac Medico [Fri, 20 Feb 2009 21:19:40 +0000 (21:19 -0000)]
Add a cross reference from FEATURES=lmirror docs to the "local" mirror docs
in portage(5).
svn path=/main/trunk/; revision=12664
Zac Medico [Fri, 20 Feb 2009 08:10:38 +0000 (08:10 -0000)]
In python-3.0, integer division results in a float, so convert back to int.
svn path=/main/trunk/; revision=12663
Zac Medico [Fri, 20 Feb 2009 07:16:16 +0000 (07:16 -0000)]
Fix StringIO imports so that 2to3 can handle them. Also, replace shlex +
StringIO usage with shlex.split() where appropriate.
svn path=/main/trunk/; revision=12662
Zac Medico [Fri, 20 Feb 2009 06:15:34 +0000 (06:15 -0000)]
Add a new portage.utils.lazy_import() function which behaves similar to the
snakeoil.demandload.demandload() function.
svn path=/main/trunk/; revision=12661
Zac Medico [Fri, 20 Feb 2009 03:00:19 +0000 (03:00 -0000)]
Try to fix svn:keywords again.
svn path=/main/trunk/; revision=12659
Zac Medico [Fri, 20 Feb 2009 02:56:07 +0000 (02:56 -0000)]
Try to fix svn:keywords again.
svn path=/main/trunk/; revision=12658
Zac Medico [Thu, 19 Feb 2009 22:51:40 +0000 (22:51 -0000)]
Add back Rev to svn:keywords (accidentally removed when setting Id). Thanks
to ABCD for reporting.
svn path=/main/trunk/; revision=12656
Zac Medico [Thu, 19 Feb 2009 21:45:01 +0000 (21:45 -0000)]
When displaying the list of failed packages, tell the number that failed.
Thanks to Jeremy Olexa <darkside@g.o> for the suggestion.
svn path=/main/trunk/; revision=12655
Zac Medico [Thu, 19 Feb 2009 19:19:18 +0000 (19:19 -0000)]
Make isvalidatom() identify empty slot as invalid (missing slot is valid) and
add a corresponding test case.
svn path=/main/trunk/; revision=12654
Zac Medico [Thu, 19 Feb 2009 19:01:26 +0000 (19:01 -0000)]
Optimize depgraph._dep_expand() to avoid calling pordbapi.cp_all(),
since it can be more efficient to call cp_list() on each category.
Thanks to Marat Radchenko <slonopotamusorama@gmail.com> for the
suggestion.
svn path=/main/trunk/; revision=12653
Zac Medico [Thu, 19 Feb 2009 12:42:42 +0000 (12:42 -0000)]
Decode terminal codes from binary when necessary, for python-3.0 compatibility
since sys.stdout is a text stream.
svn path=/main/trunk/; revision=12649
Zac Medico [Thu, 19 Feb 2009 12:36:51 +0000 (12:36 -0000)]
Handle ValueError when unpickling, since this can be triggered by an
unsupported pickle protocol.
svn path=/main/trunk/; revision=12648
Zac Medico [Thu, 19 Feb 2009 12:27:28 +0000 (12:27 -0000)]
Fix update() methods to work with python-3.0.
svn path=/main/trunk/; revision=12647
Zac Medico [Thu, 19 Feb 2009 11:48:09 +0000 (11:48 -0000)]
Tweak exception handling indentation to avoid a bug in 2to3.
svn path=/main/trunk/; revision=12646