Zac Medico [Sat, 21 Jun 2008 16:14:03 +0000 (16:14 -0000)]
Fix Atom -> str breakage in depgraph.display_problems().
svn path=/main/trunk/; revision=10755
Zac Medico [Sat, 21 Jun 2008 14:58:13 +0000 (14:58 -0000)]
Make LibraryConsumerSet.mapPathsToAtoms() use the contents index for more
efficient owner lookups.
svn path=/main/trunk/; revision=10754
Zac Medico [Sat, 21 Jun 2008 11:58:44 +0000 (11:58 -0000)]
Fix implicit_pattern to match different quote character found in warnings
generated by gcc-4.3. Thanks to aballier for reporting with sample log.
svn path=/main/trunk/; revision=10753
Zac Medico [Sat, 21 Jun 2008 10:53:58 +0000 (10:53 -0000)]
Exclude calls to autoheader and makeinfo from the automake "maintainer mode"
check (filter some false positives). Thanks to Flameeyes.
svn path=/main/trunk/; revision=10752
Zac Medico [Sat, 21 Jun 2008 09:26:53 +0000 (09:26 -0000)]
Use bash's built-in echo instead of the actual echo binary since it has
compatibility issues on FreeBSD systems. Thanks to aballier for reporting
the issue and testing this patch.
svn path=/main/trunk/; revision=10751
Mike Frysinger [Sat, 21 Jun 2008 05:18:26 +0000 (05:18 -0000)]
drop old -i,--include-masked option #226429 by Tobias Klausmann
svn path=/main/trunk/; revision=10750
Zac Medico [Fri, 20 Jun 2008 22:31:17 +0000 (22:31 -0000)]
Fix Atom -> str breakage in WorldSet.write().
svn path=/main/trunk/; revision=10749
Zac Medico [Fri, 20 Jun 2008 20:36:41 +0000 (20:36 -0000)]
Remove unused Atom.string attribute.
svn path=/main/trunk/; revision=10748
Zac Medico [Fri, 20 Jun 2008 19:43:33 +0000 (19:43 -0000)]
Add subversion support for repoman. (thanks grobian)
svn path=/main/trunk/; revision=10747
Zac Medico [Fri, 20 Jun 2008 18:00:25 +0000 (18:00 -0000)]
Bug #228595 - Use os.path.realpath() before comparing paths to those
returned from portdbapi.getRepositoryPath() since those paths are
also cannonical.
svn path=/main/trunk/; revision=10746
Zac Medico [Fri, 20 Jun 2008 17:36:18 +0000 (17:36 -0000)]
Make isvalidatom() use the Atom cache to avoid validating the same atom
twice.
svn path=/main/trunk/; revision=10745
Zac Medico [Fri, 20 Jun 2008 17:04:13 +0000 (17:04 -0000)]
Make Atom use str.__eq__ and __ne__ also.
svn path=/main/trunk/; revision=10744
Zac Medico [Fri, 20 Jun 2008 16:59:56 +0000 (16:59 -0000)]
Make Atom use str.__hash__.
svn path=/main/trunk/; revision=10743
Zac Medico [Fri, 20 Jun 2008 16:47:45 +0000 (16:47 -0000)]
Make the Atom cache dict private and add a docstring for _AtomCache.
svn path=/main/trunk/; revision=10742
Zac Medico [Fri, 20 Jun 2008 16:18:46 +0000 (16:18 -0000)]
Use a metaclass to cache Atom instances transparently. This should improve
performance and conserve memory in cases when the same atom is more than
once.
svn path=/main/trunk/; revision=10741
Zac Medico [Fri, 20 Jun 2008 14:37:49 +0000 (14:37 -0000)]
Instead of having Atom inherit from str, just emulate the interface. This
allows us to define __slots__ (not allowed when inheriting from str) and
therefore should conserve some memory by avoiding a __dict__ attribute
on every Atom.
svn path=/main/trunk/; revision=10740
Zac Medico [Fri, 20 Jun 2008 13:39:14 +0000 (13:39 -0000)]
Make the visibility related config methods such as getMaskAtom() and
getProfileMaskAtom() private since these methods really should take
Package instances before we expose them as public api.
svn path=/main/trunk/; revision=10739
Marius Mauch [Fri, 20 Jun 2008 05:12:46 +0000 (05:12 -0000)]
reenable warning about missing repository names
svn path=/main/trunk/; revision=10735
Marius Mauch [Fri, 20 Jun 2008 05:01:55 +0000 (05:01 -0000)]
revert accidential commit
svn path=/main/trunk/; revision=10734
Marius Mauch [Fri, 20 Jun 2008 04:59:45 +0000 (04:59 -0000)]
update release notes/news
svn path=/main/trunk/; revision=10733
Zac Medico [Fri, 20 Jun 2008 03:46:40 +0000 (03:46 -0000)]
Document the new emerge <file> feature.
svn path=/main/trunk/; revision=10732
Zac Medico [Fri, 20 Jun 2008 03:14:20 +0000 (03:14 -0000)]
Fix typo.
svn path=/main/trunk/; revision=10731
Zac Medico [Fri, 20 Jun 2008 03:13:13 +0000 (03:13 -0000)]
Make emerge <path> path search for multiple owners of directories. This
makes it possible to use `emerge /lib/modules` as a decent substitute
for module-rebuild.
svn path=/main/trunk/; revision=10730
Zac Medico [Thu, 19 Jun 2008 05:26:49 +0000 (05:26 -0000)]
Pass a Package instance into LineCheck.new(), and use this to avoid
passing the ebuild mtime into the EbuildHeader constructor (the
mtime is given when the new() method is called).
svn path=/main/trunk/; revision=10725
Zac Medico [Thu, 19 Jun 2008 05:01:18 +0000 (05:01 -0000)]
Refactor the 'inherit.autotools' and 'IUSE.undefined' checks
into classes derived from LineCheck.
svn path=/main/trunk/; revision=10723
Zac Medico [Wed, 18 Jun 2008 21:33:30 +0000 (21:33 -0000)]
Bug #228075 - Explicitly call gc.collect() to try and free memory
when checking for blockers. This avoids a heap overflow that triggers
'Cannot allocate memory' errors (reported with python-2.5).
svn path=/main/trunk/; revision=10717
Zac Medico [Wed, 18 Jun 2008 08:11:24 +0000 (08:11 -0000)]
As suggested by remi`, make the 'inherit.autotools' check only ebuilds that
inherit the autotools eclass directly (rather than indirectly through an
eclass such as apache-2 or x-modular).
svn path=/main/trunk/; revision=10715
Zac Medico [Wed, 18 Jun 2008 06:55:41 +0000 (06:55 -0000)]
Add an exemption for x-modular in the "inherit.autotools" check. Thanks to
remi` for reporting.
svn path=/main/trunk/; revision=10714
Zac Medico [Wed, 18 Jun 2008 04:49:32 +0000 (04:49 -0000)]
Bug #225285 - Add support for persistent options stored in the EBUILD_DEFAULT_OPTS
environment variable (similar to {EMERGE,QUICKPKG}_DEFAULT_OPTS).
svn path=/main/trunk/; revision=10713
Zac Medico [Wed, 18 Jun 2008 04:38:32 +0000 (04:38 -0000)]
Bug #225285 - Add a --skip-manifest option that disables all interaction
with the manifest.
svn path=/main/trunk/; revision=10712
Zac Medico [Wed, 18 Jun 2008 03:36:38 +0000 (03:36 -0000)]
Add a help string for --debug.
svn path=/main/trunk/; revision=10711
Zac Medico [Wed, 18 Jun 2008 03:30:55 +0000 (03:30 -0000)]
Use optparse instead of getopt.
svn path=/main/trunk/; revision=10710
Zac Medico [Tue, 17 Jun 2008 20:16:03 +0000 (20:16 -0000)]
More eblank.
svn path=/main/trunk/; revision=10704
Zac Medico [Tue, 17 Jun 2008 19:39:38 +0000 (19:39 -0000)]
Remove eblank docs.
svn path=/main/trunk/; revision=10698
Marius Mauch [Tue, 17 Jun 2008 18:13:56 +0000 (18:13 -0000)]
remove stray line
svn path=/main/trunk/; revision=10696
Marius Mauch [Tue, 17 Jun 2008 17:35:46 +0000 (17:35 -0000)]
Remove eblank nonsense
svn path=/main/trunk/; revision=10695
Marius Mauch [Tue, 17 Jun 2008 17:35:18 +0000 (17:35 -0000)]
Remove eblank nonsense
svn path=/main/trunk/; revision=10694
Marius Mauch [Tue, 17 Jun 2008 17:03:40 +0000 (17:03 -0000)]
Do not preserve the master link of a library to avoid packages being linked against preserved libs on rebuilds
svn path=/main/trunk/; revision=10693
Marius Mauch [Tue, 17 Jun 2008 16:12:34 +0000 (16:12 -0000)]
fix typo
svn path=/main/trunk/; revision=10690
Zac Medico [Tue, 17 Jun 2008 07:46:23 +0000 (07:46 -0000)]
* Document eblank and eqawarn in the ebuild.5 man page.
* Create "Ebuild Helper Functions" section docbook format,
including all the functions documented in the ebuild.5
man page.
svn path=/main/trunk/; revision=10687
Zac Medico [Tue, 17 Jun 2008 06:01:04 +0000 (06:01 -0000)]
Add note about bug #226505.
svn path=/main/trunk/; revision=10685
Zac Medico [Tue, 17 Jun 2008 05:44:21 +0000 (05:44 -0000)]
Add a "Interaction with previous installed version" section to document the
upgrade/downgrade phase execution order change from bug #226505.
svn path=/main/trunk/; revision=10683
Zac Medico [Tue, 17 Jun 2008 05:07:36 +0000 (05:07 -0000)]
Add "blank" to the default PORTAGE_ELOG_CLASSES setting.
svn path=/main/trunk/; revision=10681
Zac Medico [Tue, 17 Jun 2008 04:57:34 +0000 (04:57 -0000)]
Fix BLANK order and color.
svn path=/main/trunk/; revision=10679
Zac Medico [Tue, 17 Jun 2008 04:05:20 +0000 (04:05 -0000)]
* Rename NEUTRAL color to BLANK for eblank.
* Document the new BLANK code in color.map.5.
* Implement python version of eblank for mod_echo.
svn path=/main/trunk/; revision=10677
Zac Medico [Tue, 17 Jun 2008 03:31:43 +0000 (03:31 -0000)]
Add support for an new "eblank" elog function that shows a blank line.
Consecutive eblank calls are all collapsed into a single blank line.
Thanks to Joe Peterson <lavajoe@g.o> for this patch.
svn path=/main/trunk/; revision=10675
Zac Medico [Mon, 16 Jun 2008 14:40:30 +0000 (14:40 -0000)]
Fix typo.
svn path=/main/trunk/; revision=10673
Zac Medico [Mon, 16 Jun 2008 14:30:11 +0000 (14:30 -0000)]
Document the new ACCEPT_CHOSTS variable.
svn path=/main/trunk/; revision=10671
Zac Medico [Mon, 16 Jun 2008 11:48:36 +0000 (11:48 -0000)]
Tweak the config._accept_chost() regex.
svn path=/main/trunk/; revision=10669
Zac Medico [Mon, 16 Jun 2008 10:24:43 +0000 (10:24 -0000)]
Re-enable vardbapi.cpv_all() cache now that bug #223417 is solved.
svn path=/main/trunk/; revision=10661
Zac Medico [Mon, 16 Jun 2008 10:19:50 +0000 (10:19 -0000)]
Bug #223417 - Due to 1 second mtime granularity in < python-1.5, mtime checks
are not always sufficient to invalidate vardbapi caches. Therefore,
the caches need to be actively invalidated when packages are added and removed.
svn path=/main/trunk/; revision=10660
Zac Medico [Mon, 16 Jun 2008 08:32:54 +0000 (08:32 -0000)]
Make some post_merge() things conditional on the vdb lock being held
(mtimedb commit and info dirs processing).
svn path=/main/trunk/; revision=10659
Zac Medico [Mon, 16 Jun 2008 08:10:49 +0000 (08:10 -0000)]
Add some write access checks in post_merge() in order to avoid triggering
permission related exceptions.
svn path=/main/trunk/; revision=10658
Zac Medico [Sun, 15 Jun 2008 04:50:09 +0000 (04:50 -0000)]
Fix config._accept_chost_re so it's only an instance variable.
svn path=/main/trunk/; revision=10656
Zac Medico [Sun, 15 Jun 2008 04:38:15 +0000 (04:38 -0000)]
Add support for and ACCEPT_CHOSTS variable that controls masking behavior
for binary packages wrt CHOST. The variable is a space separated list of
chosts. It support regular expressions, so if the actual chost contains
any special characters then the user must escape them when setting
ACCEPT_CHOSTS.
svn path=/main/trunk/; revision=10654
Zac Medico [Sat, 14 Jun 2008 13:15:44 +0000 (13:15 -0000)]
Fix the 'inherit.autotools' check to account for apache-2_src_unpack()
calling eautoreconf.
svn path=/main/trunk/; revision=10653
Zac Medico [Sat, 14 Jun 2008 07:15:21 +0000 (07:15 -0000)]
Add two new build log qa checks, suggested by Diego Pettenò:
* Detect automake "maintainer mode". See
http://www.gentoo.org/proj/en/qa/autofailure.xml for more information.
* Detect "Unrecognized options" messages from configure scripts.
svn path=/main/trunk/; revision=10652
Zac Medico [Thu, 12 Jun 2008 02:41:32 +0000 (02:41 -0000)]
Pass missing "installed" parameter into Package constructor.
svn path=/main/trunk/; revision=10651
Zac Medico [Wed, 11 Jun 2008 09:33:41 +0000 (09:33 -0000)]
Handle InvalidDependString in _package_cache.__setitem__().
svn path=/main/trunk/; revision=10648
Zac Medico [Wed, 11 Jun 2008 09:16:53 +0000 (09:16 -0000)]
Fix indent.
svn path=/main/trunk/; revision=10646
Zac Medico [Wed, 11 Jun 2008 09:15:39 +0000 (09:15 -0000)]
Handle InvalidDependString.
svn path=/main/trunk/; revision=10645
Zac Medico [Wed, 11 Jun 2008 09:06:54 +0000 (09:06 -0000)]
Bug #225767 - Suppress warnings for installed packages masked by keywords
if there is an equivalent ebuild in the portage tree (same cpv) with
visible keywords.
svn path=/main/trunk/; revision=10644
Zac Medico [Wed, 11 Jun 2008 03:37:55 +0000 (03:37 -0000)]
Use spawn() instead of system().
svn path=/main/trunk/; revision=10642
Zac Medico [Tue, 10 Jun 2008 05:31:48 +0000 (05:31 -0000)]
Add another sanity check in the owners cache.
svn path=/main/trunk/; revision=10640
Zac Medico [Tue, 10 Jun 2008 04:48:51 +0000 (04:48 -0000)]
Use isinstance() instead of handling TypeError.
svn path=/main/trunk/; revision=10638
Zac Medico [Tue, 10 Jun 2008 04:13:24 +0000 (04:13 -0000)]
Bug #225285 - Allow digestcheck() to succeed when the Manifest is empty and
strict mode is disabled.
svn path=/main/trunk/; revision=10636
Zac Medico [Tue, 10 Jun 2008 03:31:30 +0000 (03:31 -0000)]
Add some sanity checks and error tolerance in the owners cache.
svn path=/main/trunk/; revision=10633
Zac Medico [Tue, 10 Jun 2008 02:13:59 +0000 (02:13 -0000)]
Fix typo.
svn path=/main/trunk/; revision=10631
Zac Medico [Tue, 10 Jun 2008 01:05:45 +0000 (01:05 -0000)]
Fix typo.
svn path=/main/trunk/; revision=10628
Zac Medico [Mon, 9 Jun 2008 23:25:29 +0000 (23:25 -0000)]
Fix missing initialization.
svn path=/main/trunk/; revision=10626
Zac Medico [Mon, 9 Jun 2008 14:24:09 +0000 (14:24 -0000)]
Remove unused PackageVirtualDbapi.__getitem__() method.
svn path=/main/trunk/; revision=10612
Zac Medico [Mon, 9 Jun 2008 13:55:06 +0000 (13:55 -0000)]
Add CONTENTS indexing support for optimization of owner lookups. The
vardbapi cache maintains a hash table (inside vdb_metadata.pickle)
that serves to index package contents by mapping the basename of file
to a list of possible packages that own it. This is used to optimize
owner lookups by narrowing the search down to a smaller number of
packages. It increases the size of vdb_metadata.pickle by approximately
30% and it's used in the following cases:
* When an unexpected file collision occurs (whether
or not collision-protect is enabled)
* `emerge <filename>`
* `portageq owners`
The
svn path=/main/trunk/; revision=10609
Zac Medico [Sun, 8 Jun 2008 20:23:14 +0000 (20:23 -0000)]
When inside fakeroot, directories with portage's gid appear
to have root's gid. Therefore, use root's gid instead of
portage's gid to avoid spurrious permissions adjustments
when inside fakeroot.
svn path=/main/trunk/; revision=10608
Marius Mauch [Sun, 8 Jun 2008 19:01:17 +0000 (19:01 -0000)]
make sure that scanelf is called with the right paths, and properly register all preserved objects to fix bug #223591
svn path=/main/trunk/; revision=10607
Zac Medico [Sun, 8 Jun 2008 05:11:39 +0000 (05:11 -0000)]
Bug #225285 - Allow digestcheck() to succeed when the Manifest is missing
and strict mode is disabled.
svn path=/main/trunk/; revision=10604
Zac Medico [Sun, 8 Jun 2008 04:20:21 +0000 (04:20 -0000)]
Make portdbapi.aux_get() return float type for _mtime_.
svn path=/main/trunk/; revision=10603
Zac Medico [Sun, 8 Jun 2008 03:15:06 +0000 (03:15 -0000)]
Add additional functions such as eaclocal and eautoheader to the
inherit.autotools regex. Thanks to Arfrever.
svn path=/main/trunk/; revision=10602
Zac Medico [Sun, 8 Jun 2008 02:22:43 +0000 (02:22 -0000)]
Fix typo.
svn path=/main/trunk/; revision=10601
Zac Medico [Sun, 8 Jun 2008 02:19:46 +0000 (02:19 -0000)]
Make repoman pass Package instances into run_checks(), so that the checks
can use the Package.mtime and inherited attributes.
svn path=/main/trunk/; revision=10600
Zac Medico [Sat, 7 Jun 2008 23:50:16 +0000 (23:50 -0000)]
Inside, create_trees(), pass target_root="/" into the config constructor
when necessary to override the setting in make.conf.
svn path=/main/trunk/; revision=10598
Zac Medico [Sat, 7 Jun 2008 22:51:16 +0000 (22:51 -0000)]
Validate ROOT from make.conf.
svn path=/main/trunk/; revision=10596
Zac Medico [Sat, 7 Jun 2008 22:40:29 +0000 (22:40 -0000)]
Make load_emerge_config() filter out empty PORTAGE_CONFIGROOT and ROOT
values, and those containing only whitespace.
svn path=/main/trunk/; revision=10594
Zac Medico [Sat, 7 Jun 2008 22:18:17 +0000 (22:18 -0000)]
Bug #224271 - New check 'IUSE.undefined', renamed from generic
'ebuild.minorsyn'.
svn path=/main/trunk/; revision=10593
Zac Medico [Sat, 7 Jun 2008 22:07:21 +0000 (22:07 -0000)]
As suggested by Flameeyes, add a new 'inherit.autotools' check which warns
when autotools has been inherited but none of the eautomake, eautoconf or
eautoreconf functions are called like they are supposed to be.
svn path=/main/trunk/; revision=10592
Mike Frysinger [Sat, 7 Jun 2008 17:18:35 +0000 (17:18 -0000)]
remove old/unused gen_wrapper function
svn path=/main/trunk/; revision=10591
Zac Medico [Sat, 7 Jun 2008 09:23:56 +0000 (09:23 -0000)]
Bug #224271 - Add a 'IUSE is not defined' ebuild.minorsyn warning.
svn path=/main/trunk/; revision=10589
Zac Medico [Fri, 6 Jun 2008 00:22:35 +0000 (00:22 -0000)]
Add a PackageVirtualDbapi.__getitem__() method.
svn path=/main/trunk/; revision=10588
Zac Medico [Thu, 5 Jun 2008 23:35:23 +0000 (23:35 -0000)]
Add Package.counter and mtime attributes.
svn path=/main/trunk/; revision=10587
Zac Medico [Thu, 5 Jun 2008 17:30:46 +0000 (17:30 -0000)]
Add vardbapi.aux_get() support for an "_mtime_" value which corresponds to
the installed package directory's mtime (numeric value from stat result).
This value can be used to validate indexes or caches used in the optimization
of vdb query operations for various types of package metadata such as
dependencies and file contents.
svn path=/main/trunk/; revision=10586
Zac Medico [Wed, 4 Jun 2008 23:44:50 +0000 (23:44 -0000)]
Bug #224713 - Avoid TypeError when make.conf is missing:
TypeError: argument of type 'NoneType' is not iterable
svn path=/main/trunk/; revision=10582
Zac Medico [Wed, 4 Jun 2008 21:15:22 +0000 (21:15 -0000)]
Mention PORTAGE_RO_DISTDIRS in the DISTDIR docs.
svn path=/main/trunk/; revision=10580
Zac Medico [Wed, 4 Jun 2008 20:24:31 +0000 (20:24 -0000)]
Use sets for more accurate cache modification counts BlockerCache and vardbapi.
svn path=/main/trunk/; revision=10578
Zac Medico [Wed, 4 Jun 2008 03:50:44 +0000 (03:50 -0000)]
Use platform module to make it clear what we're displaying. Instead of
an 'uname -mrp' call use platform.platform() to describe the system in
emerge --info. (branches/prefix r10555)
svn path=/main/trunk/; revision=10575
Zac Medico [Wed, 4 Jun 2008 03:47:56 +0000 (03:47 -0000)]
Use "platform" module instead of os.uname, or -- even worse -- a system
call to uname. Change repoman's identification string not to use
"processor" on Linux (where it is huge), Interix (where it doesn't
exist) and AIX/HP-UX (where it prints "unknown"), but "machine" instead.
(branches/prefix r10554)
svn path=/main/trunk/; revision=10574
Zac Medico [Wed, 4 Jun 2008 01:07:32 +0000 (01:07 -0000)]
Fix typo.
svn path=/main/trunk/; revision=10566
Zac Medico [Wed, 4 Jun 2008 00:48:07 +0000 (00:48 -0000)]
Use a distdir_writable variable in fetch(), for better control of write
operations inside ${DISTDIR}.
svn path=/main/trunk/; revision=10564
Zac Medico [Tue, 3 Jun 2008 23:33:54 +0000 (23:33 -0000)]
Update --depclean and package.provided docs to indicate interaction
between them.
svn path=/main/trunk/; revision=10563
Zac Medico [Tue, 3 Jun 2008 20:44:29 +0000 (20:44 -0000)]
Make PackagesSystemSet.description refer to the real profile rather than
/etc/portage/profile when possible.
svn path=/main/trunk/; revision=10561
Zac Medico [Tue, 3 Jun 2008 20:37:11 +0000 (20:37 -0000)]
Avoid an unhandled IndexError thrown from the PackagesSystemSet constructor
when neither /etc/make.profile nor /etc/portage/profile exist.
svn path=/main/trunk/; revision=10560
Zac Medico [Tue, 3 Jun 2008 20:11:00 +0000 (20:11 -0000)]
Fix regex for compatibility with the regex implementation from FreeBSD's
libc (used by bash on FreeBSD). Thanks to Alexis Ballier <aballier@g.o>
for the patch.
svn path=/main/trunk/; revision=10558