Zac Medico [Thu, 18 Oct 2012 04:58:08 +0000 (21:58 -0700)]
config.setcpv: use constructed _pkg_str for mycpv
Zac Medico [Thu, 18 Oct 2012 04:18:56 +0000 (21:18 -0700)]
emaint: sync MoveHandler check code with dbapi's
Zac Medico [Thu, 18 Oct 2012 04:06:00 +0000 (21:06 -0700)]
emaint: fix MoveHandler for EAPI 5 sub-slot
Zac Medico [Thu, 18 Oct 2012 03:43:17 +0000 (20:43 -0700)]
doebuild: fix REPLACING_VERSIONS EAPI 5 sub-slot
Zac Medico [Thu, 18 Oct 2012 03:32:20 +0000 (20:32 -0700)]
bintree/portree: fix getslot for EAPI 5 sub-slot
Zac Medico [Thu, 18 Oct 2012 03:12:33 +0000 (20:12 -0700)]
SecuritySet: fix for EAPI 5 sub-slot in SLOT
Zac Medico [Thu, 18 Oct 2012 03:06:45 +0000 (20:06 -0700)]
LibraryConsumerSet: fix for EAPI 5 sub-slot
Zac Medico [Thu, 18 Oct 2012 03:02:26 +0000 (20:02 -0700)]
StaticFileSet: fix for EAPI 5 sub-slot in SLOT
Zac Medico [Thu, 18 Oct 2012 02:51:52 +0000 (19:51 -0700)]
_sets/dbapi: fix for EAPI 5 sub-slot in SLOT
Zac Medico [Thu, 18 Oct 2012 02:35:09 +0000 (19:35 -0700)]
depgraph: fix for EAPI 5 sub-slot in SLOT
Zac Medico [Thu, 18 Oct 2012 02:09:49 +0000 (19:09 -0700)]
actions.py: use _pkg_str for EAPI 5 sub-slot
Zac Medico [Thu, 18 Oct 2012 01:59:40 +0000 (18:59 -0700)]
repoman: fix KEYWORDS.dropped for EAPI 5 sub-slot
Zac Medico [Thu, 18 Oct 2012 01:56:18 +0000 (18:56 -0700)]
getmaskingreason: use _pkg_str
Zac Medico [Thu, 18 Oct 2012 01:43:27 +0000 (18:43 -0700)]
ManifestTask: stricter gpg key comparison
Use normalization and == comparison instead of the "in" operator.
Zac Medico [Thu, 18 Oct 2012 01:24:34 +0000 (18:24 -0700)]
ManifestTask: use PopenProcess more
Zac Medico [Thu, 18 Oct 2012 01:23:11 +0000 (18:23 -0700)]
PopenProcess: child_watch_add if no pipe_reader
Zac Medico [Thu, 18 Oct 2012 01:02:50 +0000 (18:02 -0700)]
MaskManager: use _pkg_str
Zac Medico [Thu, 18 Oct 2012 00:50:34 +0000 (17:50 -0700)]
config.setcpv: remove unused slot variable
Zac Medico [Thu, 18 Oct 2012 00:48:13 +0000 (17:48 -0700)]
vartree.py: account for EAPI 5 sub-slot in SLOT
Zac Medico [Thu, 18 Oct 2012 00:11:37 +0000 (17:11 -0700)]
create_world_atom: account for EAPI 5 sub-slot
Zac Medico [Thu, 18 Oct 2012 00:04:53 +0000 (17:04 -0700)]
glsa: account for EAPI 5 sub-slot in SLOT
Zac Medico [Wed, 17 Oct 2012 22:57:38 +0000 (15:57 -0700)]
glsa.py: use try/finally for urlopen
Fixes this error reported with python 2.7.3:
AttributeError: addinfourl instance has no attribute '__exit__'
Arfrever Frehtes Taifersar Arahesis [Wed, 17 Oct 2012 22:54:14 +0000 (00:54 +0200)]
Make __source_all_bashrcs() and install_symlink_html_docs() compatible with subslots.
Arfrever Frehtes Taifersar Arahesis [Wed, 17 Oct 2012 22:41:38 +0000 (00:41 +0200)]
Make keepdir() compatible with subslots.
Zac Medico [Wed, 17 Oct 2012 03:36:49 +0000 (20:36 -0700)]
Scheduler: tweak job_delay calc for bug #438650
* Max delay is reduced to 5 seconds (was 10).
* Calculated delay is now proportional to current/desired load ratio.
* When a delay is triggered, an event loop timeout is used to ensure
that scheduling occurs as soon as the delay expires (rather than
waiting for the _loadavg_latency timeout to expire).
Zac Medico [Wed, 17 Oct 2012 02:01:35 +0000 (19:01 -0700)]
ManifestTask: improve gpg key parsing
This fixes it to correctly parse longer key IDs, which do not fit on
the first line of gpg output. Without this fix, failure to parse the
key results in manifest being re-signed even though they already have
a signature with the correct key.
Zac Medico [Tue, 16 Oct 2012 23:31:48 +0000 (16:31 -0700)]
Move portage.dep._internal_warnings to portage.
Zac Medico [Tue, 16 Oct 2012 23:15:46 +0000 (16:15 -0700)]
emerge: optimize --moo, remove deprecated moo
The --moo action is fast like --help now. The "moo" argument has been
deprecated since bug #389609, and is now removed.
Zac Medico [Tue, 16 Oct 2012 22:45:17 +0000 (15:45 -0700)]
ManifestTask: remove unneeded _proc attribute
It's enough to reference the PopenProcess instance as
self._current_task while it's alive (CompositeTask._cancel() can kill
it via this).
Zac Medico [Tue, 16 Oct 2012 22:35:03 +0000 (15:35 -0700)]
repoman: allow 40 digit gpg key
Zac Medico [Tue, 16 Oct 2012 22:16:22 +0000 (15:16 -0700)]
emerge_main: use parse_opts for --help
Zac Medico [Tue, 16 Oct 2012 21:46:44 +0000 (14:46 -0700)]
repoman: validate PORTAGE_GPG_KEY
Zac Medico [Tue, 16 Oct 2012 19:41:00 +0000 (12:41 -0700)]
Test PopenProcess.
Zac Medico [Tue, 16 Oct 2012 19:27:46 +0000 (12:27 -0700)]
CompositeTask._start_task: propagate scheduler
Zac Medico [Tue, 16 Oct 2012 18:56:13 +0000 (11:56 -0700)]
Handle missing mkfifo for Jython.
Zac Medico [Tue, 16 Oct 2012 17:31:34 +0000 (10:31 -0700)]
PopenProcess: integrate PipeReader support
Zac Medico [Tue, 16 Oct 2012 15:55:22 +0000 (08:55 -0700)]
run_action: gc locals of calling func
Zac Medico [Tue, 16 Oct 2012 08:33:54 +0000 (01:33 -0700)]
emerge_main: split out run_action
Also move post_emerge and chk_updated_cfg_files to separate files.
Zac Medico [Tue, 16 Oct 2012 06:51:35 +0000 (23:51 -0700)]
Add missing PopenProcess class from last commit.
Zac Medico [Tue, 16 Oct 2012 06:46:41 +0000 (23:46 -0700)]
egencache --update-manifests: re-sign when needed
If the Manifest is signed with a different key from the one specified
by --gpg-key or PORTAGE_GPG_KEY, strip the existing signature and
re-sign the Manifest.
Arfrever Frehtes Taifersar Arahesis [Mon, 15 Oct 2012 17:16:22 +0000 (19:16 +0200)]
Add Display._append_repository() to avoid duplication of some code.
Zac Medico [Mon, 15 Oct 2012 15:42:04 +0000 (08:42 -0700)]
emerge_main: move imports to top
Zac Medico [Mon, 15 Oct 2012 15:02:20 +0000 (08:02 -0700)]
emerge_main: disable color earlier
Since commit
2ca487f929962154488999a125a7387eeb44be88, --help has not
respected --color=n and related options, since it's been optimized to
bypass options and config parsing. Now it's fixed to show without
colors in this optimized case (help with colors may be shown in some
other cases, like when emerge is called with zero arguments).
Arfrever Frehtes Taifersar Arahesis [Mon, 15 Oct 2012 04:04:58 +0000 (06:04 +0200)]
Display slots and subslots in output of `emerge -pv ${package}`.
Zac Medico [Mon, 15 Oct 2012 02:59:37 +0000 (19:59 -0700)]
MergeListItem: don't color "binary"
Zac Medico [Mon, 15 Oct 2012 00:11:23 +0000 (17:11 -0700)]
repoman: fix commit_footer NameError
Zac Medico [Sun, 14 Oct 2012 23:49:59 +0000 (16:49 -0700)]
emerge: lazy imports, optimize --help
Zac Medico [Sun, 14 Oct 2012 22:57:12 +0000 (15:57 -0700)]
chk_updated_info_files: move to separate file
Zac Medico [Sun, 14 Oct 2012 22:36:37 +0000 (15:36 -0700)]
display_preserved_libs: move to separate file
Zac Medico [Sun, 14 Oct 2012 21:59:33 +0000 (14:59 -0700)]
emerge: handle KeyboardInterrupt, not SIGINT
We handle KeyboardInterrupt instead of installing a SIGINT handler,
since exiting from signal handlers intermittently causes python to
ignore the SystemExit exception with a message like this:
Exception SystemExit: 130 in <function remove at 0x7fd2146c1320> ignored
Zac Medico [Sun, 14 Oct 2012 21:38:16 +0000 (14:38 -0700)]
emerge.1: broaden description of "r" merge attr
This attribute actually applies to anything matched by the internal
@__auto_* sets, which can mean a number of different things (see
depgraph._gen_reinstall_sets).
Zac Medico [Sun, 14 Oct 2012 20:31:46 +0000 (13:31 -0700)]
repoman: initial caps for git commit msg footers
Zac Medico [Sun, 14 Oct 2012 20:16:21 +0000 (13:16 -0700)]
repoman: special git commit footer, bug #438364
Arfrever Frehtes Taifersar Arahesis [Sun, 14 Oct 2012 20:00:19 +0000 (22:00 +0200)]
Invert order of arguments in Display._set_non_root_columns() and
Display._set_root_columns() for consistency with Display._set_no_columns().
Arfrever Frehtes Taifersar Arahesis [Sun, 14 Oct 2012 19:53:40 +0000 (21:53 +0200)]
Display.set_pkg_info(): Set cp and ver attributes.
Zac Medico [Sun, 14 Oct 2012 19:48:35 +0000 (12:48 -0700)]
repoman: identical Manifest commit message
Include the signed/unsigned part it the initial commit message,
so that it's identical to the Manifest commit message. See
bug #437546, comment #3.
Zac Medico [Sun, 14 Oct 2012 19:25:40 +0000 (12:25 -0700)]
Revert "repoman: identical Manifest commit message"
This reverts commit
b91eefc82e995ba3463d212f95fa9228c5cf53ae.
See bug #437546, comment #3.
Zac Medico [Sun, 14 Oct 2012 19:20:56 +0000 (12:20 -0700)]
match_from_list: rm redundant catpkgsplit(mycpv)
Zac Medico [Sun, 14 Oct 2012 02:53:09 +0000 (19:53 -0700)]
simplify Display.convert_myoldbest().
Zac Medico [Sun, 14 Oct 2012 02:44:18 +0000 (19:44 -0700)]
Simplify Display.get_ver_str().
Arfrever Frehtes Taifersar Arahesis [Sun, 14 Oct 2012 01:33:38 +0000 (03:33 +0200)]
Bug #434970: Disable some warnings during `emerge --sync`.
Arfrever Frehtes Taifersar Arahesis [Sat, 13 Oct 2012 23:57:06 +0000 (01:57 +0200)]
EAPI="5-progress": Add master_repositories(), repository_path(),
available_eclasses(), eclass_path() and license_path() functions.
Zac Medico [Sat, 13 Oct 2012 20:06:05 +0000 (13:06 -0700)]
MergeListItem: color binary display, bug #438254
Zac Medico [Thu, 11 Oct 2012 03:07:01 +0000 (20:07 -0700)]
Add QA_MULTILIB_PATHS for bug #437910.
Zac Medico [Wed, 10 Oct 2012 21:12:40 +0000 (14:12 -0700)]
PollScheduler: fix _schedule() to return True
This fixes a regression like bug #403895, introduced in commit
b696337bf20fdc539ce7721df7a4b42b35999705, since functions have to
return True in order to be continuously scheduled.
Zac Medico [Wed, 10 Oct 2012 19:12:18 +0000 (12:12 -0700)]
Atom: support *_beta* wildcard, bug #437872
Zac Medico [Tue, 9 Oct 2012 02:01:45 +0000 (19:01 -0700)]
_parse_uri_map: preserve order of URIs
Returns a dict of tuples instead of a dict of sets.
Zac Medico [Mon, 8 Oct 2012 22:07:34 +0000 (15:07 -0700)]
fetch: preserve SRC_URI order for primaryuri
Zac Medico [Mon, 8 Oct 2012 20:44:22 +0000 (13:44 -0700)]
PollScheduler: disable default _loadavg_latency
Move the 30 second default to the Scheduler class, since that's the
only place that it's currently needed (all other schedulers have
relatively short-running jobs).
Zac Medico [Mon, 8 Oct 2012 20:30:08 +0000 (13:30 -0700)]
emerge: handle --load-average with no arg
With no argument, removes a previous load limit (same behavior as
make).
Tim Boudreau [Mon, 8 Oct 2012 16:25:36 +0000 (09:25 -0700)]
dyn_spec: s/Copyright/License/, bug #437588
Fixes 'Unknown tag' error with rpm 4.10.0.
Zac Medico [Mon, 8 Oct 2012 16:07:08 +0000 (09:07 -0700)]
Revert "test_ipc_daemon: handle fork/finally race"
This reverts commit
56fbe3fe63adf4e7c5b47400182cd857d145d5b0.
The race is now handled internally by spawn and ForkProcess.
Zac Medico [Mon, 8 Oct 2012 16:03:24 +0000 (09:03 -0700)]
ForkProcess: set _exit finally block before fork
This is the most reliable way to handle the race condition.
Zac Medico [Mon, 8 Oct 2012 15:43:21 +0000 (08:43 -0700)]
spawn: setup _exit finally block before fork
This is the most reliable way to handle the race condition.
Zac Medico [Mon, 8 Oct 2012 15:08:51 +0000 (08:08 -0700)]
test_ipc_daemon: handle fork/finally race
Zac Medico [Mon, 8 Oct 2012 14:54:14 +0000 (07:54 -0700)]
spawn: use finally block for failure os._exit()
Also, use writemsg for unicode safety.
Zac Medico [Mon, 8 Oct 2012 14:34:09 +0000 (07:34 -0700)]
repoman: check EXTRA_ECONF/EMAKE, bug #437348
Zac Medico [Mon, 8 Oct 2012 14:17:20 +0000 (07:17 -0700)]
repoman: simplify EbuildAssignment check
The line continuation code is no longer needed since commit
a1578c654f26cab07309bc9cbddd3c95c0c205b5, because wrapped lines are
automatically joined before they are passed to the check. Also, inherit
ignore_comment = True from LineCheck.
Zac Medico [Mon, 8 Oct 2012 13:48:55 +0000 (06:48 -0700)]
ForkProcess: increase scope of try/finally/_exit
This minimizes the probability of triggering irrelevant finally blocks
from earlier in the call stack (bug #345289).
Zac Medico [Mon, 8 Oct 2012 02:30:51 +0000 (19:30 -0700)]
PollScheduler: rename sched_iface to _sched_iface
It isn't used externally anymore, since SchedulerInterface is used
directly in those places now. Many of the self.sched_iface references
updated here, it's more appropriate to use self._event_loop.
Zac Medico [Sun, 7 Oct 2012 22:02:35 +0000 (15:02 -0700)]
Show slot + repo for colliding packages.
See bug #437516 for example.
Zac Medico [Sun, 7 Oct 2012 21:31:39 +0000 (14:31 -0700)]
repoman: identical Manifest commit message
This will fix bug #437546.
Zac Medico [Sun, 7 Oct 2012 19:12:52 +0000 (12:12 -0700)]
Substitute SchedulerInterface for PollScheduler.
SchedulerInterface suffices for all of these cases.
EventLoop(main=False) is used for thread safety where
API consumers may be using threads.
Zac Medico [Sun, 7 Oct 2012 18:17:35 +0000 (11:17 -0700)]
PollScheduler: split out SchedulerInterface
Zac Medico [Sun, 7 Oct 2012 16:59:41 +0000 (09:59 -0700)]
action_uninstall: use PollScheduler not Scheduler
The PollScheduler class suffices here, if we just add a small amount of
logic to calculate the _background attribute from the emerge opts.
Arfrever Frehtes Taifersar Arahesis [Sun, 7 Oct 2012 05:32:28 +0000 (07:32 +0200)]
best_version() and has_version(): Improve die() messages.
- Print different die() message for invalid atoms.
- Mention ebuild-ipc instead of portageq in other die() messages when
ebuild-ipc is actually used.
Arfrever Frehtes Taifersar Arahesis [Sun, 7 Oct 2012 04:51:12 +0000 (06:51 +0200)]
Run tests with Python 3.4.
Zac Medico [Sat, 6 Oct 2012 22:00:53 +0000 (15:00 -0700)]
PollScheduler: move _main_loop to Scheduler
Zac Medico [Sat, 6 Oct 2012 18:05:37 +0000 (11:05 -0700)]
MetadataRegen: inherit AsyncScheduler
Zac Medico [Sat, 6 Oct 2012 17:26:26 +0000 (10:26 -0700)]
ManifestScheduler: tweak _task_exit output order
This ensures that errors are logged before new jobs are scheduled.
Zac Medico [Sat, 6 Oct 2012 05:20:07 +0000 (22:20 -0700)]
Substitute EventLoop for PollScheduler.
EventLoop suffices for all of these cases. EventLoop(main=False) is
used for thread safety where API consumers may be using threads.
Zac Medico [Sat, 6 Oct 2012 04:31:56 +0000 (21:31 -0700)]
PollScheduler: remove register/unregister methods
These methods were aliases for the EventLoop io_add_watch and
source_remove methods. Migrating to the EventLoop method names allows
an EventLoop instance to substitute for a PollScheduler inside
subclasses of AbstractPollTask.
Zac Medico [Sat, 6 Oct 2012 04:00:19 +0000 (21:00 -0700)]
PollScheduler: remove self._jobs
This is variable is only needed by the Scheduler class.
Zac Medico [Sat, 6 Oct 2012 01:54:16 +0000 (18:54 -0700)]
AsyncScheduler: remove useless __slots__
It's not allowed for AsyncScheduler to inherit from two classes that
define __slots__, so it useless to define __slots__ for AsyncScheduler
and subclasses.
Zac Medico [Fri, 5 Oct 2012 20:48:53 +0000 (13:48 -0700)]
TaskScheduler: inherit AsyncScheduler
This allows the QueueScheduler class to be eliminated.
Zac Medico [Fri, 5 Oct 2012 04:08:01 +0000 (21:08 -0700)]
test_ipc_daemon: implement internal SleepProcess
Emulate the sleep command, in order to ensure a consistent return code
when it is killed by SIGTERM (see bug #437180).
Zac Medico [Thu, 4 Oct 2012 22:17:57 +0000 (15:17 -0700)]
ebuild.sh: comment on noauto behavior
Zac Medico [Wed, 3 Oct 2012 23:53:10 +0000 (16:53 -0700)]
repoman: avoid Manifest double signature
Zac Medico [Wed, 3 Oct 2012 23:29:15 +0000 (16:29 -0700)]
ManifestScheduler: handle InvalidDependString
Zac Medico [Wed, 3 Oct 2012 20:16:06 +0000 (13:16 -0700)]
ManifestTask: add missing signatures
If the existing Manifest already has the correct content, but it is
not signed, then sign it if appropriate.