portage.git
11 years agoFix success_without_autounmask logic wrt rebuilds
Zac Medico [Sat, 23 Jun 2012 05:10:14 +0000 (22:10 -0700)]
Fix success_without_autounmask logic wrt rebuilds

11 years agodepgraph: fix broken _complete_mode assignment
Zac Medico [Sat, 23 Jun 2012 03:01:43 +0000 (20:01 -0700)]
depgraph: fix broken _complete_mode assignment

11 years ago_slot_abi_update_probe: respect --exclude
Zac Medico [Sat, 23 Jun 2012 02:46:52 +0000 (19:46 -0700)]
_slot_abi_update_probe: respect --exclude

11 years agodepgraph: fix bugs in force_reinstall handling
Zac Medico [Sat, 23 Jun 2012 02:35:42 +0000 (19:35 -0700)]
depgraph: fix bugs in force_reinstall handling

11 years agoPackage: save validated_atoms as tuple
Zac Medico [Sat, 23 Jun 2012 01:23:20 +0000 (18:23 -0700)]
Package: save validated_atoms as tuple

11 years agotreewalk: fix USE=multislot breakage
Zac Medico [Sat, 23 Jun 2012 01:13:56 +0000 (18:13 -0700)]
treewalk: fix USE=multislot breakage

It broke in commit e4ba8f36e6a4624f4fec61c7ce8bed0e3bd2fa01.

11 years agotest_match_from_list: test slot-abi more
Zac Medico [Sat, 23 Jun 2012 01:01:29 +0000 (18:01 -0700)]
test_match_from_list: test slot-abi more

11 years agoNEWS: 2.1.11: experimental EAPI 4-slot-abi
Zac Medico [Sat, 23 Jun 2012 00:52:20 +0000 (17:52 -0700)]
NEWS: 2.1.11: experimental EAPI 4-slot-abi

11 years agoman/portage.5: profile-formats = portage-2
Zac Medico [Sat, 23 Jun 2012 00:45:32 +0000 (17:45 -0700)]
man/portage.5: profile-formats = portage-2

11 years agoRELEASE-NOTES: 2.1.11: User-defined package sets
Zac Medico [Sat, 23 Jun 2012 00:38:45 +0000 (17:38 -0700)]
RELEASE-NOTES: 2.1.11: User-defined package sets

11 years agoDocument /etc/portage/sets and world_sets more.
Zac Medico [Sat, 23 Jun 2012 00:29:39 +0000 (17:29 -0700)]
Document /etc/portage/sets and world_sets more.

11 years agoEnable /etc/portage/sets for stable, bug #384061.
Zac Medico [Fri, 22 Jun 2012 23:49:46 +0000 (16:49 -0700)]
Enable /etc/portage/sets for stable, bug #384061.

11 years agoAdd UNINSTALL_IGNORE variable for bug #421659.
Zac Medico [Fri, 22 Jun 2012 22:33:07 +0000 (15:33 -0700)]
Add UNINSTALL_IGNORE variable for bug #421659.

UNINSTALL_IGNORE = [space delimited list of fnmatch patterns]

This variable prevents uninstallation of files that match
specific fnmatch(3) patterns. In order to ignore file collisions
with these files at install time, the same patterns can be
added to the COLLISION_IGNORE variable.

12 years agoAdd experimental EAPI 4-slot-abi support.
Zac Medico [Fri, 22 Jun 2012 09:59:53 +0000 (02:59 -0700)]
Add experimental EAPI 4-slot-abi support.

Refer to 4-slot-abi.docbook for a full description.

12 years agofakedbapi: use _pkg_str more
Zac Medico [Fri, 22 Jun 2012 09:45:36 +0000 (02:45 -0700)]
fakedbapi: use _pkg_str more

12 years agogetportageversion: handle repo: in parent file
Zac Medico [Fri, 22 Jun 2012 07:18:11 +0000 (00:18 -0700)]
getportageversion: handle repo: in parent file

12 years agoResolverPlayground: fix repo for binpkgs
Zac Medico [Thu, 21 Jun 2012 22:32:16 +0000 (15:32 -0700)]
ResolverPlayground: fix repo for binpkgs

12 years agoaction_build: always display_problems
Zac Medico [Thu, 21 Jun 2012 21:58:02 +0000 (14:58 -0700)]
action_build: always display_problems

12 years agoresolver/output: cleanup counters
Zac Medico [Thu, 21 Jun 2012 04:42:49 +0000 (21:42 -0700)]
resolver/output: cleanup counters

12 years agoInheritEclass: add user esethome func
Zac Medico [Thu, 21 Jun 2012 01:02:22 +0000 (18:02 -0700)]
InheritEclass: add user esethome func

12 years agodepgraph._complete_graph: old virt sanity check
Zac Medico [Wed, 20 Jun 2012 23:01:01 +0000 (16:01 -0700)]
depgraph._complete_graph: old virt sanity check

12 years agomisc-functions.sh: unwrap die messages
Zac Medico [Wed, 20 Jun 2012 21:56:49 +0000 (14:56 -0700)]
misc-functions.sh: unwrap die messages

Jeremy Olexa <darkside@gentoo.org> complained that die was not handling
these line continuations as it's supposed to. Maybe there's a bug in
die's line continuation sed expression, but it won't hurt to unwrap
these particular messages.

12 years agobacktracking: only feedback first slot conflict
Zac Medico [Wed, 20 Jun 2012 21:23:47 +0000 (14:23 -0700)]
backtracking: only feedback first slot conflict

Only create BacktrackNode instances for the first conflict which
occurred, since the conflicts that occurred later may have been
caused by the first conflict.

12 years agoResolverPlayground: distinguish uninstall merge
Zac Medico [Wed, 20 Jun 2012 10:05:26 +0000 (03:05 -0700)]
ResolverPlayground: distinguish uninstall merge

12 years agoResolverPlayground: distinguish binpkg merge
Zac Medico [Wed, 20 Jun 2012 09:51:32 +0000 (02:51 -0700)]
ResolverPlayground: distinguish binpkg merge

12 years agoResolverPlayground: support binary packages
Zac Medico [Wed, 20 Jun 2012 09:02:55 +0000 (02:02 -0700)]
ResolverPlayground: support binary packages

12 years agoAtom: cleanup str()/unicode() usage
Zac Medico [Wed, 20 Jun 2012 07:00:28 +0000 (00:00 -0700)]
Atom: cleanup str()/unicode() usage

12 years agodepgraph._iter_atoms_for_pkg: fix for --rebuild-*
Zac Medico [Wed, 20 Jun 2012 04:30:00 +0000 (21:30 -0700)]
depgraph._iter_atoms_for_pkg: fix for --rebuild-*

The SetArg instances that are generated for --rebuild-if-* behvior need
to be passed into _set_args() in order for _iter_atoms_for_pkg to be
aware of these arguments.

12 years agodepgraph: optimize slot conflict backtrack order
Zac Medico [Tue, 19 Jun 2012 21:27:11 +0000 (14:27 -0700)]
depgraph: optimize slot conflict backtrack order

12 years agodepgraph: defer slot conflict backtracking
Zac Medico [Tue, 19 Jun 2012 00:40:04 +0000 (17:40 -0700)]
depgraph: defer slot conflict backtracking

Defer slot conflict backtracking until after _complete_graph is used to
complete the graph, so that all relevant reverse dependencies are
available for making informed backtracking decisions.

12 years agodepgraph._add_pkg: preserve previous pkg depth
Zac Medico [Sun, 17 Jun 2012 19:44:56 +0000 (12:44 -0700)]
depgraph._add_pkg: preserve previous pkg depth

12 years agodepgraph: use package sets for rebuild/reinstall
Zac Medico [Sun, 17 Jun 2012 17:52:28 +0000 (10:52 -0700)]
depgraph: use package sets for rebuild/reinstall

12 years agoDependencyArg: add __slots__
Zac Medico [Sun, 17 Jun 2012 16:16:15 +0000 (09:16 -0700)]
DependencyArg: add __slots__

12 years agorepoman: add 'VIRTUAL.suspect' class of warnings
Sergei Trofimovich [Sun, 17 Jun 2012 08:42:51 +0000 (11:42 +0300)]
repoman: add 'VIRTUAL.suspect' class of warnings

Searches all the *DEPENDS against static
map of:
    { 'package' : 'virtual' }

Example output:

>  VIRTUAL.suspect               1
>   dev-haskell/cabal/cabal-1.15.0_pre20120608.ebuild: consider using 'virtual/pkgconfig' insted of 'dev-util/pkgconf'

Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
12 years agograbfile_package: show real file name in error
Zac Medico [Sun, 17 Jun 2012 15:22:00 +0000 (08:22 -0700)]
grabfile_package: show real file name in error

12 years ago_process_slot_conflicts: do one slot at a time
Zac Medico [Sun, 17 Jun 2012 04:58:38 +0000 (21:58 -0700)]
_process_slot_conflicts: do one slot at a time

This allows us to avoid redundant processing of slots that have
already been processed by a previous call.

12 years agodepgraph: split out _handle_slot_conflict method
Zac Medico [Sun, 17 Jun 2012 03:06:36 +0000 (20:06 -0700)]
depgraph: split out _handle_slot_conflict method

12 years agodepgraph: simplify _select_pkg_highest_available
Zac Medico [Sat, 16 Jun 2012 20:27:30 +0000 (13:27 -0700)]
depgraph: simplify _select_pkg_highest_available

This hunk of code is no longer needed since the content of
_highest_pkg_cache is discarded each time a package is added to the
graph.

12 years agodepgraph: _autounmask in _highest_pkg_cache key
Zac Medico [Sat, 16 Jun 2012 20:24:12 +0000 (13:24 -0700)]
depgraph: _autounmask in _highest_pkg_cache key

12 years agorepoman: warn about every 'pkgconfig' implementation in RDEPENDs
Sergei Trofimovich [Fri, 15 Jun 2012 18:10:25 +0000 (21:10 +0300)]
repoman: warn about every 'pkgconfig' implementation in RDEPENDs

Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
12 years agoUnmerge symlink listed as dir for bug #421165.
Zac Medico [Fri, 15 Jun 2012 23:42:44 +0000 (16:42 -0700)]
Unmerge symlink listed as dir for bug #421165.

12 years agoAdd USE + license autounmask for bug #420847.
Zac Medico [Fri, 15 Jun 2012 23:03:59 +0000 (16:03 -0700)]
Add USE + license autounmask for bug #420847.

12 years agotest_autounmask: add case for bug #420847
Zac Medico [Thu, 14 Jun 2012 00:23:54 +0000 (17:23 -0700)]
test_autounmask: add case for bug #420847

12 years agoFix test failure with Python 2.6.
Arfrever Frehtes Taifersar Arahesis [Wed, 13 Jun 2012 17:44:44 +0000 (19:44 +0200)]
Fix test failure with Python 2.6.

12 years agoruntests.sh: add pypy-1.9 to PYTHON_VERSIONS
Zac Medico [Wed, 13 Jun 2012 10:15:23 +0000 (03:15 -0700)]
runtests.sh: add pypy-1.9 to PYTHON_VERSIONS

12 years agorepoman: handle trailing newlines better
Mike Frysinger [Tue, 12 Jun 2012 22:07:58 +0000 (18:07 -0400)]
repoman: handle trailing newlines better

Automatically strip trailing newlines from the ChangeLog, and be
better about not adding them in the first place (still not perfect,
but getting there).

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
12 years agorepoman: update cat/pkg info in header all the time
Mike Frysinger [Mon, 11 Jun 2012 20:16:59 +0000 (16:16 -0400)]
repoman: update cat/pkg info in header all the time

There are edge cases where repoman's changelog code is not as good as
the existing echangelog.  Mostly related to out of date headers.  Have
the code check the header in more cases not just for missing lines, but
also outdated values all the time.

While we're at it, write some tests!

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
12 years agotest_match_from_list: fix _pkg_str usage
Zac Medico [Tue, 12 Jun 2012 07:21:57 +0000 (00:21 -0700)]
test_match_from_list: fix _pkg_str usage

12 years agodbapi: construct _pkg_str during match on-demand
Zac Medico [Tue, 12 Jun 2012 06:40:52 +0000 (23:40 -0700)]
dbapi: construct _pkg_str during match on-demand

12 years agorepoman: tweak code for bug #420735
Zac Medico [Tue, 12 Jun 2012 02:18:15 +0000 (19:18 -0700)]
repoman: tweak code for bug #420735

12 years agoconfig: pass tolerant param to getconfig more
Zac Medico [Tue, 12 Jun 2012 02:00:09 +0000 (19:00 -0700)]
config: pass tolerant param to getconfig more

12 years agorepoman: Manifest after ChangeLog, bug #420735
Zac Medico [Mon, 11 Jun 2012 23:23:59 +0000 (16:23 -0700)]
repoman: Manifest after ChangeLog, bug #420735

12 years agoMove post_src_install metadata code to one func.
Zac Medico [Mon, 11 Jun 2012 23:08:21 +0000 (16:08 -0700)]
Move post_src_install metadata code to one func.

12 years agoQueryCommand: add get_db() classmethod
Zac Medico [Mon, 11 Jun 2012 22:37:30 +0000 (15:37 -0700)]
QueryCommand: add get_db() classmethod

12 years agoPackage: move SLOT validation to _pkg_str
Zac Medico [Mon, 11 Jun 2012 05:32:24 +0000 (22:32 -0700)]
Package: move SLOT validation to _pkg_str

12 years agoAdd a _get_slot_re() function.
Zac Medico [Mon, 11 Jun 2012 01:15:07 +0000 (18:15 -0700)]
Add a _get_slot_re() function.

12 years agoPackage: use _eapi_attrs
Zac Medico [Mon, 11 Jun 2012 00:58:14 +0000 (17:58 -0700)]
Package: use _eapi_attrs

12 years ago_get_pv_re: use _eapi_attrs
Zac Medico [Sun, 10 Jun 2012 23:41:25 +0000 (16:41 -0700)]
_get_pv_re: use _eapi_attrs

12 years agodep: remove old "DEPEND SYNTAX" comments
Zac Medico [Sun, 10 Jun 2012 23:18:15 +0000 (16:18 -0700)]
dep: remove old "DEPEND SYNTAX" comments

12 years agouse_reduce: use _eapi_attrs
Zac Medico [Sun, 10 Jun 2012 23:16:25 +0000 (16:16 -0700)]
use_reduce: use _eapi_attrs

12 years ago_get_eapi_attrs: move to eapi module
Zac Medico [Sun, 10 Jun 2012 23:05:21 +0000 (16:05 -0700)]
_get_eapi_attrs: move to eapi module

12 years agodep: move regex constants to top of file
Zac Medico [Sun, 10 Jun 2012 22:43:40 +0000 (15:43 -0700)]
dep: move regex constants to top of file

12 years ago_get_atom_wildcard_re: use _eapi_attrs
Zac Medico [Sun, 10 Jun 2012 22:37:06 +0000 (15:37 -0700)]
_get_atom_wildcard_re: use _eapi_attrs

12 years ago_get_atom_re: share cache between more EAPIs
Zac Medico [Sun, 10 Jun 2012 22:20:23 +0000 (15:20 -0700)]
_get_atom_re: share cache between more EAPIs

12 years ago_get_useflag_re: use _eapi_attrs
Zac Medico [Sun, 10 Jun 2012 22:16:03 +0000 (15:16 -0700)]
_get_useflag_re: use _eapi_attrs

12 years ago_get_usedep_re: use _eapi_attrs
Zac Medico [Sun, 10 Jun 2012 21:51:25 +0000 (14:51 -0700)]
_get_usedep_re: use _eapi_attrs

12 years agoAtom: use _eapi_attrs in constructor
Zac Medico [Sun, 10 Jun 2012 21:08:14 +0000 (14:08 -0700)]
Atom: use _eapi_attrs in constructor

12 years ago_get_atom_re: handle many combinations
Zac Medico [Sun, 10 Jun 2012 20:48:24 +0000 (13:48 -0700)]
_get_atom_re: handle many combinations

A namedtuple of _eapi_attrs is used to hash atom regular expressions,
making it easy to handle many different combinations, as will be
necessary for the addition of new features such as abi-slot deps.

12 years agocache/sqlite.py: dynamically add columns to table
Zac Medico [Sun, 10 Jun 2012 08:24:59 +0000 (01:24 -0700)]
cache/sqlite.py: dynamically add columns to table

12 years agoInheritEclass: avoid false positive in func regex
Zac Medico [Sat, 9 Jun 2012 02:03:42 +0000 (19:03 -0700)]
InheritEclass: avoid false positive in func regex

12 years agodepgraph: pass use_reduce result to dep_check
Zac Medico [Fri, 8 Jun 2012 22:08:19 +0000 (15:08 -0700)]
depgraph: pass use_reduce result to dep_check

This allows us to avoid extraneous use_reduce/paren_enclose calls.

12 years agoInheritEclass: avoid false positive in func regex
Zac Medico [Fri, 8 Jun 2012 02:51:48 +0000 (19:51 -0700)]
InheritEclass: avoid false positive in func regex

12 years agorepoman: try to sign Manifest only if it exists
Zac Medico [Wed, 6 Jun 2012 01:35:35 +0000 (18:35 -0700)]
repoman: try to sign Manifest only if it exists

This case occurs with "thin-manifests = true" in metadata/layout.conf
when there are no distfiles (like for live ebuilds), as reported in
bug #419717.

12 years agoparse_layout_conf: fix cache-formats pms fallback
Zac Medico [Wed, 6 Jun 2012 00:11:00 +0000 (17:11 -0700)]
parse_layout_conf: fix cache-formats pms fallback

This fixes an issue where egencache would not generate metadata/cache
unless the directory already existed.

12 years agohelper-functions.sh: multijob support bash <4.1 v2.2.0_alpha110
Zac Medico [Mon, 4 Jun 2012 22:22:21 +0000 (15:22 -0700)]
helper-functions.sh: multijob support bash <4.1

The redirect_alloc_fd() compatibility function is borrowed from Mike
Frysinger's proposed multiprocessing.eclass:

http://archives.gentoo.org/gentoo-dev/msg_5ecd3b1dd0720522807c136d8fd2cd5f.xml

12 years agoHandle more import exceptions involving xml.
Zac Medico [Mon, 4 Jun 2012 21:59:12 +0000 (14:59 -0700)]
Handle more import exceptions involving xml.

See http://bugs.python.org/issue14988

12 years agorepoman: fix _mask_manager assignment
Zac Medico [Mon, 4 Jun 2012 20:34:09 +0000 (13:34 -0700)]
repoman: fix _mask_manager assignment

This broke in commit 09980f19e584b644b9e2cf4d5e1e0369b6062ca1.

12 years agoInheritEclass: exempt auto/libtool for multilib
Zac Medico [Mon, 4 Jun 2012 04:06:10 +0000 (21:06 -0700)]
InheritEclass: exempt auto/libtool for multilib

12 years agoInheritEclass: exempt autotools for libtool
Zac Medico [Mon, 4 Jun 2012 03:25:10 +0000 (20:25 -0700)]
InheritEclass: exempt autotools for libtool

12 years agoPackage: calc visiblity on demand
Zac Medico [Mon, 4 Jun 2012 01:19:10 +0000 (18:19 -0700)]
Package: calc visiblity on demand

This delays visiblity calculations until after FakeVartree applies its
metadata tweaks, so commit 650c960be3170bade8bb63ddedcd4796c75ec374
will work as intended.

12 years agoFakeVartree: use KEYWORDS from unbuilt ebuild
Zac Medico [Mon, 4 Jun 2012 00:36:28 +0000 (17:36 -0700)]
FakeVartree: use KEYWORDS from unbuilt ebuild

This allows us to avoid triggering the code from bug #350285 (see
commit b7de3d1fb10e40b4ef03462f8a145968689ac587) in cases when the
KEYWORDS from the unbuilt ebuild would unmask the package.

12 years agoDelete workaround for http://bugs.python.org/issue14007.
Arfrever Frehtes Taifersar Arahesis [Sun, 3 Jun 2012 06:34:34 +0000 (08:34 +0200)]
Delete workaround for bugs.python.org/issue14007.

12 years agoebuild.sh: export EAPI for helpers v2.2.0_alpha109
Zac Medico [Sat, 2 Jun 2012 06:45:18 +0000 (23:45 -0700)]
ebuild.sh: export EAPI for helpers

This fixes some cases where it wouldn't be exported since commit
20817801dd4ef0117bcc7b33c90650da1e920385.

12 years agoInheritEclass: remove unused inherited_api code
Zac Medico [Sat, 2 Jun 2012 06:24:10 +0000 (23:24 -0700)]
InheritEclass: remove unused inherited_api code

12 years agoInheritEclass: exempt eclasses that export src_*
Zac Medico [Sat, 2 Jun 2012 06:21:49 +0000 (23:21 -0700)]
InheritEclass: exempt eclasses that export src_*

We really need to annotate exceptions like these directly in the
eclasses, but hardcode them for now.

12 years agorepoman: inherit.missing non-fatal (experimental)
Zac Medico [Sat, 2 Jun 2012 06:19:14 +0000 (23:19 -0700)]
repoman: inherit.missing non-fatal (experimental)

12 years agoInheritEclass: kde4-base exemptions
Zac Medico [Sat, 2 Jun 2012 05:14:33 +0000 (22:14 -0700)]
InheritEclass: kde4-base exemptions

12 years agoInheritEclass: add stable / conservative mode
Zac Medico [Sat, 2 Jun 2012 04:52:17 +0000 (21:52 -0700)]
InheritEclass: add stable / conservative mode

12 years agoecompressdir: fix brokenlink newdest logic
Zac Medico [Sat, 2 Jun 2012 04:06:14 +0000 (21:06 -0700)]
ecompressdir: fix brokenlink newdest logic

Was broken in commit bbacf8674168cf033de0ccb161f568d0b26f032b.

12 years agorepoman.1: document inherit.missing/unused
Zac Medico [Sat, 2 Jun 2012 03:05:41 +0000 (20:05 -0700)]
repoman.1: document inherit.missing/unused

12 years agoconfig: whitelist PORTAGE_COMPRESS, don't save it
Zac Medico [Sat, 2 Jun 2012 02:55:21 +0000 (19:55 -0700)]
config: whitelist PORTAGE_COMPRESS, don't save it

12 years agoecompressdir: avoid ecompress.break interference
Zac Medico [Sat, 2 Jun 2012 02:45:37 +0000 (19:45 -0700)]
ecompressdir: avoid ecompress.break interference

12 years agoecompressdir: fix ln -s for bug #418309
Zac Medico [Sat, 2 Jun 2012 02:36:52 +0000 (19:36 -0700)]
ecompressdir: fix ln -s for bug #418309

This fixes parallel funk_up_dir decompress calls so that they don't
inappropriately compete with eachother to fix the same broken symlinks.

12 years agoecompressdir: fix funk_up_dir return value
Zac Medico [Sat, 2 Jun 2012 02:28:31 +0000 (19:28 -0700)]
ecompressdir: fix funk_up_dir return value

12 years agoconfig: lazy VirtualsManager instantiation
Zac Medico [Sat, 2 Jun 2012 00:13:13 +0000 (17:13 -0700)]
config: lazy VirtualsManager instantiation

12 years agoconfig: lazy MaskManager instantiation
Zac Medico [Fri, 1 Jun 2012 22:51:10 +0000 (15:51 -0700)]
config: lazy MaskManager instantiation

12 years agoconfig: lazy KeywordsManager instantiation
Zac Medico [Fri, 1 Jun 2012 22:12:02 +0000 (15:12 -0700)]
config: lazy KeywordsManager instantiation

This allows a config instance to be instantiated by portageq, while
accessing /etc/portage/package.keywords only on demand, solving
bug #418475 by avoiding PermissionDenied exceptions when possible.

12 years agoportageexit: skip SANDBOX_ON check
Zac Medico [Fri, 1 Jun 2012 21:43:41 +0000 (14:43 -0700)]
portageexit: skip SANDBOX_ON check

This check is redundant, since the portdbapi constructor already has
special SANDBOX_ON / SANDBOX_WRITE handling.

12 years agograblines: raise PermissionDenied if appropriate
Zac Medico [Fri, 1 Jun 2012 21:30:37 +0000 (14:30 -0700)]
grablines: raise PermissionDenied if appropriate

12 years agoportageexit: skip secpass check
Zac Medico [Fri, 1 Jun 2012 21:27:46 +0000 (14:27 -0700)]
portageexit: skip secpass check

The portdbapi should handle secpass already internally, and access to
secpass here can trigger unnecessary instantiation of a config instance
via the portage.data module.