portage.git
14 years agoCall pickle.load() directly on the input pipe, and handle exceptions.
Zac Medico [Fri, 13 Aug 2010 06:58:22 +0000 (23:58 -0700)]
Call pickle.load() directly on the input pipe, and handle exceptions.

14 years agoRefactor interaction between EbuildIpcDaemon and ExitCommand.
Zac Medico [Fri, 13 Aug 2010 06:11:53 +0000 (23:11 -0700)]
Refactor interaction between EbuildIpcDaemon and ExitCommand.

14 years agoClean up a bit.
Zac Medico [Fri, 13 Aug 2010 05:33:56 +0000 (22:33 -0700)]
Clean up a bit.

14 years agoMake IpcDaemonTestCase demonstrate an EbuildIpcDaemon based
Zac Medico [Fri, 13 Aug 2010 05:08:56 +0000 (22:08 -0700)]
Make IpcDaemonTestCase demonstrate an EbuildIpcDaemon based
replacement for EBUILD_EXIT_STATUS_FILE.

14 years agoSplit out an EbuildIpcDaemon class from FifoIpcDaemon.
Zac Medico [Fri, 13 Aug 2010 03:46:53 +0000 (20:46 -0700)]
Split out an EbuildIpcDaemon class from FifoIpcDaemon.

14 years agoFix inverted logic in eapi_supports_prefix() call, which causes a
Zac Medico [Fri, 13 Aug 2010 01:42:08 +0000 (18:42 -0700)]
Fix inverted logic in eapi_supports_prefix() call, which causes a
regression such that ED, EPREFIX, and EROOT where not set in EAPI 3
ebuild environments (just for portage-9999 users).

14 years agoMake locks quiet since unintended locking messages displayed on
Zac Medico [Thu, 12 Aug 2010 18:39:31 +0000 (11:39 -0700)]
Make locks quiet since unintended locking messages displayed on
stdout could corrupt the intended output of this program.

14 years agoDon't use unicode wrapper for mkfifo since it only allows string
Zac Medico [Thu, 12 Aug 2010 18:21:43 +0000 (11:21 -0700)]
Don't use unicode wrapper for mkfifo since it only allows string
arguments in python3.

14 years agoAdd some pieces of an IPC framework that will eventually allow ebuild
Zac Medico [Thu, 12 Aug 2010 17:01:02 +0000 (10:01 -0700)]
Add some pieces of an IPC framework that will eventually allow ebuild
processes can to communicate with portage's main python process.

Here are a few possible uses:

1) Robust subshell/subprocess die support. This allows the ebuild
   environment to reliably die without having to rely on signal IPC.

2) Delegation of portageq calls to the main python process, eliminating
   performance and userpriv permission issues.

3) Reliable ebuild termination in cases when the ebuild has accidentally
   left orphan processes running in the backgraound (as in bug 278895).

14 years agoTests: ResolverPlayground: more debug stuff
Sebastian Luther [Thu, 12 Aug 2010 15:31:43 +0000 (17:31 +0200)]
Tests: ResolverPlayground: more debug stuff

14 years agoAvoid unnecessary sys.hexversion conditional.
Zac Medico [Thu, 12 Aug 2010 13:51:11 +0000 (06:51 -0700)]
Avoid unnecessary sys.hexversion conditional.

14 years agoFactor EBUILD_EXIT_STATUS_FILE code out of AbstractEbuildProcess
Zac Medico [Thu, 12 Aug 2010 12:56:22 +0000 (05:56 -0700)]
Factor EBUILD_EXIT_STATUS_FILE code out of AbstractEbuildProcess
subclasses and into AbstractEbuildProcess itself.

14 years agoTests: ResolverPlayground: add debug option to not supress depgraph output
Sebastian Luther [Thu, 12 Aug 2010 12:00:13 +0000 (14:00 +0200)]
Tests: ResolverPlayground: add debug option to not supress depgraph output

Useful for debugging test cases.

14 years agoTests: ResolverPlayground: create world file
Sebastian Luther [Thu, 12 Aug 2010 11:55:55 +0000 (13:55 +0200)]
Tests: ResolverPlayground: create world file

14 years agoConsolidate EBUILD_EXIT_STATUS_FILE handling in doebuild.spawn()
Zac Medico [Thu, 12 Aug 2010 11:21:05 +0000 (04:21 -0700)]
Consolidate EBUILD_EXIT_STATUS_FILE handling in doebuild.spawn()
and subclasses of AbstractEbuildProcess.

14 years agoFix lazyimport() to handle partially imported modules by creating
Zac Medico [Thu, 12 Aug 2010 10:56:20 +0000 (03:56 -0700)]
Fix lazyimport() to handle partially imported modules by creating
proxies, instead of raising ImportError.

14 years agoautounmask: Print use flag that trigger a given dep in comments
Sebastian Luther [Thu, 12 Aug 2010 10:32:02 +0000 (12:32 +0200)]
autounmask: Print use flag that trigger a given dep in comments

14 years agoTests: more resolver/test_autounmask tests
Sebastian Luther [Thu, 12 Aug 2010 10:31:23 +0000 (12:31 +0200)]
Tests: more resolver/test_autounmask tests

14 years agoportage.dep.extract_affecting_use: Don't raise if atom is not in dep string
Sebastian Luther [Thu, 12 Aug 2010 10:30:20 +0000 (12:30 +0200)]
portage.dep.extract_affecting_use: Don't raise if atom is not in dep string

14 years agoTests: Fix typo bug ResolverPlayground
Sebastian Luther [Thu, 12 Aug 2010 10:29:05 +0000 (12:29 +0200)]
Tests: Fix typo bug ResolverPlayground

14 years agoAdd portage.dep.extract_affecting_use()
Sebastian Luther [Thu, 12 Aug 2010 08:59:33 +0000 (10:59 +0200)]
Add portage.dep.extract_affecting_use()

14 years agoFix faulty $? handling in *into functions (from previous commit).
Zac Medico [Thu, 12 Aug 2010 08:47:04 +0000 (01:47 -0700)]
Fix faulty $? handling in *into functions (from previous commit).

14 years agoMake utilities die on failure in EAPI 4, bug 273651
Dror Levin [Wed, 26 May 2010 20:23:38 +0000 (23:23 +0300)]
Make utilities die on failure in EAPI 4, bug 273651

14 years agoAdd copyright header.
Zac Medico [Thu, 12 Aug 2010 08:29:38 +0000 (01:29 -0700)]
Add copyright header.

14 years agoAdd missing __init__.py
Zac Medico [Thu, 12 Aug 2010 08:19:41 +0000 (01:19 -0700)]
Add missing __init__.py

14 years agoTests: More slot_collision_handler tests
Sebastian Luther [Wed, 11 Aug 2010 11:24:48 +0000 (13:24 +0200)]
Tests: More slot_collision_handler tests

14 years agoFix slot_collision_handler tests
Sebastian Luther [Wed, 11 Aug 2010 11:16:23 +0000 (13:16 +0200)]
Fix slot_collision_handler tests

14 years agoTests: add resolver/test_slot_collisions
Sebastian Luther [Mon, 9 Aug 2010 10:06:31 +0000 (12:06 +0200)]
Tests: add resolver/test_slot_collisions

14 years agoTests: resolver/ResolverPlayground: Create a proper profile
Sebastian Luther [Mon, 9 Aug 2010 10:05:54 +0000 (12:05 +0200)]
Tests: resolver/ResolverPlayground: Create a proper profile

14 years ago_emerge.depgraph: use writemsg() instead of print() (to silence tests)
Sebastian Luther [Mon, 9 Aug 2010 07:25:35 +0000 (09:25 +0200)]
_emerge.depgraph: use writemsg() instead of print() (to silence tests)

14 years agoTests: Fix bug in resolver/ResolverPlayground
Sebastian Luther [Mon, 9 Aug 2010 06:03:00 +0000 (08:03 +0200)]
Tests: Fix bug in resolver/ResolverPlayground

14 years agoTests: resolver/test_slot_collisions: Check for slot_collision_solutions
Sebastian Luther [Mon, 9 Aug 2010 05:54:45 +0000 (07:54 +0200)]
Tests: resolver/test_slot_collisions: Check for slot_collision_solutions

14 years agoslot_collision_handler: Add more documentation
Sebastian Luther [Tue, 15 Jun 2010 21:15:30 +0000 (23:15 +0200)]
slot_collision_handler: Add more documentation

14 years agoslot_collision_handler: Fix function names broken by import changes
Sebastian Luther [Tue, 8 Jun 2010 10:12:24 +0000 (12:12 +0200)]
slot_collision_handler: Fix function names broken by import changes

14 years agoslot_collision_handler: Minor formatting changes
Sebastian Luther [Mon, 7 Jun 2010 21:01:02 +0000 (23:01 +0200)]
slot_collision_handler: Minor formatting changes

14 years agoslot_collision_handler: Pass noiselevel=-1 to writemsg for debug output
Sebastian Luther [Mon, 7 Jun 2010 20:59:57 +0000 (22:59 +0200)]
slot_collision_handler: Pass noiselevel=-1 to writemsg for debug output

14 years agoRemove unused import
Sebastian Luther [Mon, 7 Jun 2010 20:54:12 +0000 (22:54 +0200)]
Remove unused import

14 years agoslot_collision_handler: Return a string instead of priting the messages to screen.
Sebastian Luther [Mon, 7 Jun 2010 18:11:45 +0000 (20:11 +0200)]
slot_collision_handler: Return a string instead of priting the messages to screen.

14 years agoslot_collision_handler: Don't print an explanation for version based conflicts.
Sebastian Luther [Mon, 7 Jun 2010 17:54:37 +0000 (19:54 +0200)]
slot_collision_handler: Don't print an explanation for version based conflicts.

14 years agoRework the way the slot_collision_handler selects packages for display and highlight...
Sebastian Luther [Mon, 7 Jun 2010 15:12:12 +0000 (17:12 +0200)]
Rework the way the slot_collision_handler selects packages for display and highlight violated parts of atoms.

14 years agoAdd new slot collision handler in _emerge/resolver/slot_collision.py
Sebastian Luther [Tue, 1 Jun 2010 06:04:58 +0000 (08:04 +0200)]
Add new slot collision handler in _emerge/resolver/slot_collision.py

14 years agoautounmask: Print comments for USE changes too
Sebastian Luther [Thu, 12 Aug 2010 07:25:10 +0000 (09:25 +0200)]
autounmask: Print comments for USE changes too

14 years agoFix tests
Sebastian Luther [Wed, 11 Aug 2010 17:35:39 +0000 (19:35 +0200)]
Fix tests

14 years agoMake REQUIRED_USE work again. Without paren_reduce this time.
Sebastian Luther [Wed, 11 Aug 2010 17:30:22 +0000 (19:30 +0200)]
Make REQUIRED_USE work again. Without paren_reduce this time.

14 years agoTests: add resolver/test_required_use
Sebastian Luther [Wed, 11 Aug 2010 12:14:37 +0000 (14:14 +0200)]
Tests: add resolver/test_required_use

14 years agoMake sure we don't allow REQUIRED_USE in EAPIs that don't support it
Sebastian Luther [Wed, 11 Aug 2010 12:00:29 +0000 (14:00 +0200)]
Make sure we don't allow REQUIRED_USE in EAPIs that don't support it

14 years agoTests: ResolverPlayground: don't ignore "local config" to not run in "repoman" mode
Sebastian Luther [Sun, 8 Aug 2010 18:20:33 +0000 (20:20 +0200)]
Tests: ResolverPlayground: don't ignore "local config" to not run in "repoman" mode

This is supposed to not introduce any side effects from the running system's config

14 years agoTests: add resolver/test_backtracking
Sebastian Luther [Sun, 8 Aug 2010 17:52:59 +0000 (19:52 +0200)]
Tests: add resolver/test_backtracking

14 years agoTests: add ResolverPlaygroundTestCase and port all resolver tests to it
Sebastian Luther [Sun, 8 Aug 2010 17:50:50 +0000 (19:50 +0200)]
Tests: add ResolverPlaygroundTestCase and port all resolver tests to it

14 years agoMake sure we don't allow IUSE defaults in EAPIs that don't allow them
Sebastian Luther [Wed, 11 Aug 2010 10:50:13 +0000 (12:50 +0200)]
Make sure we don't allow IUSE defaults in EAPIs that don't allow them

14 years agoportage.dep.dep_check: Make sure we don't allow slot deps in EAPi-0 ebuilds
Sebastian Luther [Wed, 11 Aug 2010 10:29:35 +0000 (12:29 +0200)]
portage.dep.dep_check: Make sure we don't allow slot deps in EAPi-0 ebuilds

14 years agoUse eapi_has_required_use for REQUIRED_USE eapi checks
Sebastian Luther [Wed, 11 Aug 2010 08:35:07 +0000 (10:35 +0200)]
Use eapi_has_required_use for REQUIRED_USE eapi checks

14 years agoUse explicit imports, to make pyflakes happy.
Zac Medico [Wed, 11 Aug 2010 08:25:46 +0000 (01:25 -0700)]
Use explicit imports, to make pyflakes happy.

14 years agoIntroduce portage.eapi. Use it everywhere.
Sebastian Luther [Wed, 11 Aug 2010 08:11:58 +0000 (10:11 +0200)]
Introduce portage.eapi. Use it everywhere.

14 years agoportage/dbapi/{bintree.py,porttree.py}: Remove deprecated stuff in all places
Sebastian Luther [Wed, 11 Aug 2010 07:18:49 +0000 (09:18 +0200)]
portage/dbapi/{bintree.py,porttree.py}: Remove deprecated stuff in all places

14 years agoportage/cache/mappings.py: Remove deprecated functions
Sebastian Luther [Wed, 11 Aug 2010 07:15:43 +0000 (09:15 +0200)]
portage/cache/mappings.py: Remove deprecated functions

14 years agoportage/dbapi/bintree.py: Remove deprecated parameter
Sebastian Luther [Wed, 11 Aug 2010 07:13:39 +0000 (09:13 +0200)]
portage/dbapi/bintree.py: Remove deprecated parameter

14 years agoportage/dbapi/porttree.py: Remove deprecated functions, deprecate more cases
Sebastian Luther [Wed, 11 Aug 2010 07:11:54 +0000 (09:11 +0200)]
portage/dbapi/porttree.py: Remove deprecated functions, deprecate more cases

14 years agoportage/dbapi/vartree.py: Remove unused import
Sebastian Luther [Wed, 11 Aug 2010 07:09:56 +0000 (09:09 +0200)]
portage/dbapi/vartree.py: Remove unused import

14 years agoportage/dep/__init__.py: Remove deprecated behaviour
Sebastian Luther [Wed, 11 Aug 2010 07:09:03 +0000 (09:09 +0200)]
portage/dep/__init__.py: Remove deprecated behaviour

14 years agoportage/eclass_cache.py: Remove deprecated parameter
Sebastian Luther [Wed, 11 Aug 2010 07:01:28 +0000 (09:01 +0200)]
portage/eclass_cache.py: Remove deprecated parameter

14 years agoportage/package/ebuild/config.py: Remove deprecated functions and parameters
Sebastian Luther [Wed, 11 Aug 2010 06:19:59 +0000 (08:19 +0200)]
portage/package/ebuild/config.py: Remove deprecated functions and parameters

14 years agoportage/package/ebuild/digestgen: Remove deprecated behaviour
Sebastian Luther [Wed, 11 Aug 2010 06:15:12 +0000 (08:15 +0200)]
portage/package/ebuild/digestgen: Remove deprecated behaviour

14 years agoRemove the now empty pym/portage/_deprecated.py
Sebastian Luther [Wed, 11 Aug 2010 06:05:41 +0000 (08:05 +0200)]
Remove the now empty pym/portage/_deprecated.py

14 years agoRemove deprecated portage.pkgmerge
Sebastian Luther [Wed, 11 Aug 2010 06:05:19 +0000 (08:05 +0200)]
Remove deprecated portage.pkgmerge

14 years agoRemove deprecated portage.getvirtuals
Sebastian Luther [Wed, 11 Aug 2010 06:02:41 +0000 (08:02 +0200)]
Remove deprecated portage.getvirtuals

14 years agoRemove deprecated portage.dep_virtual
Sebastian Luther [Wed, 11 Aug 2010 05:56:31 +0000 (07:56 +0200)]
Remove deprecated portage.dep_virtual

14 years agoRemove deprecated portage.digestParseFile
Sebastian Luther [Wed, 11 Aug 2010 05:54:25 +0000 (07:54 +0200)]
Remove deprecated portage.digestParseFile

14 years agoRemove deprecated portage.commit_mtimedb
Sebastian Luther [Wed, 11 Aug 2010 05:52:10 +0000 (07:52 +0200)]
Remove deprecated portage.commit_mtimedb

14 years agoMake sure portageq doesn't interpret anything that happens to be
Zac Medico [Wed, 11 Aug 2010 06:47:38 +0000 (23:47 -0700)]
Make sure portageq doesn't interpret anything that happens to be
in globals() (such as imported modules) as a valid command.

14 years ago* Configuration files now support atoms with wildcards inside the category and
Zac Medico [Wed, 11 Aug 2010 06:39:03 +0000 (23:39 -0700)]
* Configuration files now support atoms with wildcards inside the category and
  package name parts of the atoms.
* The functionality of the autounmask program is emulated by the new emerge
  --autounmask option, which outputs required configuration changes for
  package.keywords and package.use.

14 years agoAdd stacklevel=2 to warnings.warn() calls.
Zac Medico [Wed, 11 Aug 2010 05:38:32 +0000 (22:38 -0700)]
Add stacklevel=2 to warnings.warn() calls.

14 years agoDon't use deprecated paren_normalize() function.
Zac Medico [Wed, 11 Aug 2010 05:33:32 +0000 (22:33 -0700)]
Don't use deprecated paren_normalize() function.

14 years agoTests: Remove paren_reduce tests
Sebastian Luther [Wed, 11 Aug 2010 05:16:23 +0000 (07:16 +0200)]
Tests: Remove paren_reduce tests

14 years agoAdd deprecation warnings for paren_reduce, strip_empty and use_reduce with paren_redu...
Sebastian Luther [Wed, 11 Aug 2010 05:14:43 +0000 (07:14 +0200)]
Add deprecation warnings for paren_reduce, strip_empty and use_reduce with paren_reduce_d dep arrays

14 years agoTests: More portage,dep.Atom tests
Sebastian Luther [Tue, 10 Aug 2010 22:00:01 +0000 (00:00 +0200)]
Tests: More portage,dep.Atom tests

14 years agoportage.dep.dep_opconvert: remove handling of '&&' operator
Sebastian Luther [Tue, 10 Aug 2010 21:39:44 +0000 (23:39 +0200)]
portage.dep.dep_opconvert: remove handling of '&&' operator

14 years agoTests: Add tests for portage.dep.dep_opconvert
Sebastian Luther [Tue, 10 Aug 2010 21:38:55 +0000 (23:38 +0200)]
Tests: Add tests for portage.dep.dep_opconvert

14 years agoTests: add dep/testStandalone. Test small functions here. Currently: cpvequal, flatten
Sebastian Luther [Tue, 10 Aug 2010 21:29:16 +0000 (23:29 +0200)]
Tests: add dep/testStandalone. Test small functions here. Currently: cpvequal, flatten

14 years agoportage.dep.use_reduce: pass is_src_uri when needed
Sebastian Luther [Tue, 10 Aug 2010 20:45:31 +0000 (22:45 +0200)]
portage.dep.use_reduce: pass is_src_uri when needed

Remove the now unneded _src_uri_validate.

14 years agoportage.dep.use_reduce: Add is_src_uri and allow_src_uri_file_renames
Sebastian Luther [Tue, 10 Aug 2010 19:50:35 +0000 (21:50 +0200)]
portage.dep.use_reduce: Add is_src_uri and allow_src_uri_file_renames

All checks done by portage.dbapi.porttree._src_uri_validate are now done by use_reduce.

14 years agoportage.dep._dep_check_strict: Unused, removed
Sebastian Luther [Tue, 10 Aug 2010 19:23:25 +0000 (21:23 +0200)]
portage.dep._dep_check_strict: Unused, removed

14 years agoportage.dep.use_reduce: Work on depstrings instead of paren_reduce'd dep arrays
Sebastian Luther [Tue, 10 Aug 2010 19:09:09 +0000 (21:09 +0200)]
portage.dep.use_reduce: Work on depstrings instead of paren_reduce'd dep arrays

This change makes paren_reduce and paren_normalize calls for use_reduce redundant,
resp. wrong. All consumers inside portage are adopted.

14 years agoAdd not about RDEPEND not being implicitly set in EAPI 4 or later.
Zac Medico [Wed, 11 Aug 2010 05:13:48 +0000 (22:13 -0700)]
Add not about RDEPEND not being implicitly set in EAPI 4 or later.

14 years agoAdd REQUIRED_USE docs from Brian Harring's GLEP draft.
Zac Medico [Wed, 11 Aug 2010 03:19:47 +0000 (20:19 -0700)]
Add REQUIRED_USE docs from Brian Harring's GLEP draft.

14 years agoEliminate redundant _eclasses_ code from aux_get which is handled
Zac Medico [Wed, 11 Aug 2010 02:41:59 +0000 (19:41 -0700)]
Eliminate redundant _eclasses_ code from aux_get which is handled
by _metadata_callback().

14 years agoDon't cache REQUIRED_USE for EAPIs 1-3 which don't support it.
Zac Medico [Wed, 11 Aug 2010 02:25:15 +0000 (19:25 -0700)]
Don't cache REQUIRED_USE for EAPIs 1-3 which don't support it.

14 years agoAdd some docs for EAPI 4_pre1.
Zac Medico [Wed, 11 Aug 2010 01:54:02 +0000 (18:54 -0700)]
Add some docs for EAPI 4_pre1.

14 years agoAllow flags from IUSE_IMPLICIT in REQUIRED_USE. Move checks to resolution time.
Sebastian Luther [Tue, 13 Apr 2010 20:03:47 +0000 (22:03 +0200)]
Allow flags from IUSE_IMPLICIT in REQUIRED_USE. Move checks to resolution time.

14 years agoAdd repoman check for REQUIRED_USE
Sebastian Luther [Tue, 13 Apr 2010 14:33:28 +0000 (16:33 +0200)]
Add repoman check for REQUIRED_USE

14 years agoAdd missing IUSE check in portage.dep._check_required_use()
Sebastian Luther [Tue, 13 Apr 2010 12:37:49 +0000 (14:37 +0200)]
Add missing IUSE check in portage.dep._check_required_use()

14 years agoAdd REQUIRED_USE check as pre-merge check.
Sebastian Luther [Mon, 12 Apr 2010 19:41:33 +0000 (21:41 +0200)]
Add REQUIRED_USE check as pre-merge check.

14 years agoImplement portage.dep.check_required_use() for checking REQUIRED_USE.
Sebastian Luther [Mon, 12 Apr 2010 19:40:05 +0000 (21:40 +0200)]
Implement portage.dep.check_required_use() for checking REQUIRED_USE.

14 years agoAdd REQUIRED_USE to metadata keys, caches, etc.
Sebastian Luther [Mon, 12 Apr 2010 19:38:06 +0000 (21:38 +0200)]
Add REQUIRED_USE to metadata keys, caches, etc.

14 years agoDon't use os.getlogin() since apparently it's unreliable.
Zac Medico [Tue, 10 Aug 2010 09:28:34 +0000 (02:28 -0700)]
Don't use os.getlogin() since apparently it's unreliable.

14 years agoPretend that the current user's uid/gid are the 'portage' uid/gid,
Zac Medico [Tue, 10 Aug 2010 09:20:33 +0000 (02:20 -0700)]
Pretend that the current user's uid/gid are the 'portage' uid/gid,
so things go smoothly regardless of the current user and global
user/group configuration.

14 years agoAdd suitable default PORTAGE_TMPDIR setting.
Zac Medico [Tue, 10 Aug 2010 08:58:37 +0000 (01:58 -0700)]
Add suitable default PORTAGE_TMPDIR setting.

14 years agoTry using _emerge.main.setconfig_fallback() to make tests pass
Zac Medico [Tue, 10 Aug 2010 08:41:37 +0000 (01:41 -0700)]
Try using _emerge.main.setconfig_fallback() to make tests pass
on the buildbot.

14 years agoportage.dep.paren_reduce: Remove redundant brackets
Sebastian Luther [Tue, 10 Aug 2010 08:10:58 +0000 (10:10 +0200)]
portage.dep.paren_reduce: Remove redundant brackets

14 years agoWhen executing the 'depend' phase inside aux_get(), use the
Zac Medico [Tue, 10 Aug 2010 07:37:54 +0000 (00:37 -0700)]
When executing the 'depend' phase inside aux_get(), use the
EbuildMetadataPhase class, so we can eliminate redundant code.