Zac Medico [Sat, 22 Aug 2009 23:44:59 +0000 (23:44 -0000)]
In Scheduler._schedule_tasks_imp(), add uninstall operations to the front
of the merge queue.
svn path=/main/trunk/; revision=14129
Zac Medico [Sat, 22 Aug 2009 23:11:23 +0000 (23:11 -0000)]
Make Scheduler._choose_pkg() prefer uninstall operations when available.
svn path=/main/trunk/; revision=14128
Arfrever Frehtes Taifersar Arahesis [Sat, 22 Aug 2009 19:41:37 +0000 (19:41 -0000)]
Support package.provided directory.
svn path=/main/trunk/; revision=14127
Zac Medico [Sat, 22 Aug 2009 19:28:35 +0000 (19:28 -0000)]
Bug #282269, comment #2 - Avoid potential UnicodeEncodeError when writing
to sys.stderr inside xtermTitle().
svn path=/main/trunk/; revision=14126
Zac Medico [Sat, 22 Aug 2009 19:05:32 +0000 (19:05 -0000)]
Bug #282306 - Inside dblink._security_check(), fall back to utf_8 encoding
it a path cannot be encoded under the user's chosen encoding.
svn path=/main/trunk/; revision=14125
Zac Medico [Sat, 22 Aug 2009 07:52:43 +0000 (07:52 -0000)]
Bug #282269 - Avoid str() calls with overlay paths, which can trigger
UnicodeEncodeError in python-2.x.
svn path=/main/trunk/; revision=14124
Zac Medico [Fri, 21 Aug 2009 22:35:11 +0000 (22:35 -0000)]
Add some --debug output for backtracking. Also, remove unused imports.
svn path=/main/trunk/; revision=14122
Zac Medico [Fri, 21 Aug 2009 22:04:51 +0000 (22:04 -0000)]
Add support for --keep-going=n so that it can be disabled on the command line
after it's been enabled in EMERGE_DEFAULT_OPTS.
svn path=/main/trunk/; revision=14121
Zac Medico [Fri, 21 Aug 2009 21:37:08 +0000 (21:37 -0000)]
Add support for --selective=n, so it can be used to remove selective
behavior that may have been implied by some other option like --update.
svn path=/main/trunk/; revision=14120
Arfrever Frehtes Taifersar Arahesis [Fri, 21 Aug 2009 20:37:46 +0000 (20:37 -0000)]
Avoid potential empty lines in warnings about missing SONAMEs or NEEDED entries. Found by Zac Medico.
svn path=/main/trunk/; revision=14119
Zac Medico [Fri, 21 Aug 2009 20:14:34 +0000 (20:14 -0000)]
Note that package.* and use.* as directories is only supported since
portage-2.1.6.7, and it is not included in PMS at this time.
svn path=/main/trunk/; revision=14118
Arfrever Frehtes Taifersar Arahesis [Fri, 21 Aug 2009 18:13:46 +0000 (18:13 -0000)]
Rename QA_NEEDED to QA_DT_NEEDED.
svn path=/main/trunk/; revision=14117
Arfrever Frehtes Taifersar Arahesis [Fri, 21 Aug 2009 17:57:29 +0000 (17:57 -0000)]
Improve an example. Patch by Jeremy Olexa.
svn path=/main/trunk/; revision=14116
Arfrever Frehtes Taifersar Arahesis [Fri, 21 Aug 2009 17:13:53 +0000 (17:13 -0000)]
Add support for QA_SONAME variable (bug #281964). Add support for QA_NEEDED variable.
svn path=/main/trunk/; revision=14115
Arfrever Frehtes Taifersar Arahesis [Fri, 21 Aug 2009 14:52:01 +0000 (14:52 -0000)]
Support QA_DT_HASH_${ARCH} and QA_PRESTRIPPED_${ARCH} (bug #271416).
svn path=/main/trunk/; revision=14114
Zac Medico [Fri, 21 Aug 2009 04:46:31 +0000 (04:46 -0000)]
Replace _content_encoding, _fs_encoding, and _merge_encoding with direct
usage of _encodings.
svn path=/main/trunk/; revision=14113
Zac Medico [Fri, 21 Aug 2009 04:43:15 +0000 (04:43 -0000)]
Fix typo.
svn path=/main/trunk/; revision=14112
Zac Medico [Fri, 21 Aug 2009 04:03:15 +0000 (04:03 -0000)]
Use _encodings where appropriate and add _encodings['stdio'] for stdout
encoding.
svn path=/main/trunk/; revision=14111
Zac Medico [Fri, 21 Aug 2009 02:42:45 +0000 (02:42 -0000)]
Use _encodings where appropriate.
svn path=/main/trunk/; revision=14110
Zac Medico [Fri, 21 Aug 2009 01:47:21 +0000 (01:47 -0000)]
Use _encodings where appropriate.
svn path=/main/trunk/; revision=14109
Zac Medico [Fri, 21 Aug 2009 00:23:44 +0000 (00:23 -0000)]
Use _encodings where appropriate.
svn path=/main/trunk/; revision=14108
Zac Medico [Fri, 21 Aug 2009 00:06:10 +0000 (00:06 -0000)]
Use _encodings where appropriate.
svn path=/main/trunk/; revision=14107
Zac Medico [Thu, 20 Aug 2009 23:09:43 +0000 (23:09 -0000)]
Use _encodings where appropriate.
svn path=/main/trunk/; revision=14106
Zac Medico [Thu, 20 Aug 2009 23:00:46 +0000 (23:00 -0000)]
Use _encodings where appropriate.
svn path=/main/trunk/; revision=14105
Arfrever Frehtes Taifersar Arahesis [Thu, 20 Aug 2009 22:34:25 +0000 (22:34 -0000)]
Fix portage.5 man page to document the fact that some files in profiles directory can be directories.
svn path=/main/trunk/; revision=14104
Zac Medico [Wed, 19 Aug 2009 07:45:25 +0000 (07:45 -0000)]
Fix typo from previous commit.
svn path=/main/trunk/; revision=14103
Zac Medico [Wed, 19 Aug 2009 07:42:31 +0000 (07:42 -0000)]
If sys.getdefaultencoding() returns None (this can happen if python is built
with USE=build, in stage 1), fall back to _encodings['merge'] = 'ascii'.
svn path=/main/trunk/; revision=14102
Zac Medico [Wed, 19 Aug 2009 07:22:05 +0000 (07:22 -0000)]
Use _encodings where appropriate.
svn path=/main/trunk/; revision=14101
Zac Medico [Wed, 19 Aug 2009 07:13:53 +0000 (07:13 -0000)]
Use _encodings where appropriate.
svn path=/main/trunk/; revision=14100
Zac Medico [Wed, 19 Aug 2009 06:55:17 +0000 (06:55 -0000)]
Use _encodings where appropriate.
svn path=/main/trunk/; revision=14099
Zac Medico [Wed, 19 Aug 2009 06:41:21 +0000 (06:41 -0000)]
Use _encodings['repo.content'] for decoding profiles.desc, ChangeLog,
metadata.xml, and ebuilds.
svn path=/main/trunk/; revision=14098
Zac Medico [Wed, 19 Aug 2009 06:21:40 +0000 (06:21 -0000)]
Use portage.os and _encodings where appropriate.
svn path=/main/trunk/; revision=14097
Zac Medico [Wed, 19 Aug 2009 06:05:55 +0000 (06:05 -0000)]
Remove unused os import.
svn path=/main/trunk/; revision=14096
Zac Medico [Wed, 19 Aug 2009 06:04:13 +0000 (06:04 -0000)]
Use portage.os and _encodings where appropriate.
svn path=/main/trunk/; revision=14095
Zac Medico [Wed, 19 Aug 2009 05:46:28 +0000 (05:46 -0000)]
Use portage.os and _encodings where appropriate.
svn path=/main/trunk/; revision=14094
Zac Medico [Tue, 18 Aug 2009 21:24:37 +0000 (21:24 -0000)]
Use portage.os and _encodings['fs'] where appropriate.
svn path=/main/trunk/; revision=14093
Zac Medico [Tue, 18 Aug 2009 21:10:43 +0000 (21:10 -0000)]
Use errors='backslashreplace' instead of 'replace' for the default
_unicode_encode() argument ('replace' substitutes '?', which is not
as useful).
svn path=/main/trunk/; revision=14092
Zac Medico [Tue, 18 Aug 2009 21:01:06 +0000 (21:01 -0000)]
Replace the _{content,fs,merge}_encoding attributes with an _encodings dict.
svn path=/main/trunk/; revision=14091
Zac Medico [Tue, 18 Aug 2009 20:31:56 +0000 (20:31 -0000)]
Use _content_encoding and _fs_encoding, and use strict unicode exceptions
where appropriate.
svn path=/main/trunk/; revision=14090
Zac Medico [Tue, 18 Aug 2009 07:19:29 +0000 (07:19 -0000)]
Use the new portage.output._init(config_root) function.
svn path=/main/trunk/; revision=14089
Zac Medico [Tue, 18 Aug 2009 07:05:18 +0000 (07:05 -0000)]
Use _content_encoding where appropriate.
svn path=/main/trunk/; revision=14088
Zac Medico [Tue, 18 Aug 2009 06:55:22 +0000 (06:55 -0000)]
Don't wrap os.popen().
svn path=/main/trunk/; revision=14087
Zac Medico [Tue, 18 Aug 2009 06:43:01 +0000 (06:43 -0000)]
Bug #270866 - Validate News-Item-Format headers.
svn path=/main/trunk/; revision=14086
Zac Medico [Tue, 18 Aug 2009 06:28:29 +0000 (06:28 -0000)]
Use _content_encoding and _fs_encoding where appropriate. Also, enable
strict exceptions for unicode encoding failures.
svn path=/main/trunk/; revision=14085
Zac Medico [Tue, 18 Aug 2009 06:09:57 +0000 (06:09 -0000)]
Use _content_encoding and _fs_encoding where appropriate.
svn path=/main/trunk/; revision=14084
Zac Medico [Tue, 18 Aug 2009 06:03:08 +0000 (06:03 -0000)]
Implement lazy loading of color.map when either the codes or _styles
attribute is accessed. This provides and _init(config_root='/') function
that the prefix branch can use to substitute an appropriate config_root
value at runtime.
svn path=/main/trunk/; revision=14083
Zac Medico [Tue, 18 Aug 2009 05:12:49 +0000 (05:12 -0000)]
Use st_* attributes instead of the stat module.
svn path=/main/trunk/; revision=14082
Zac Medico [Mon, 17 Aug 2009 23:44:42 +0000 (23:44 -0000)]
Bug #277619 - Fix news item relevance logic. Thanks to Alec Warner
<antarus@gentoo.org> for this patch.
svn path=/main/trunk/; revision=14081
Zac Medico [Mon, 17 Aug 2009 23:17:30 +0000 (23:17 -0000)]
Use portage.os, _content_encoding, and _fs_encoding where appropriate.
svn path=/main/trunk/; revision=14080
Zac Medico [Mon, 17 Aug 2009 23:06:52 +0000 (23:06 -0000)]
Enable error='strict' when encoding arguments inside _unicode_func_wrapper(),
and document behavior.
svn path=/main/trunk/; revision=14079
Zac Medico [Mon, 17 Aug 2009 22:18:02 +0000 (22:18 -0000)]
Use portage.os, _content_encoding, and _fs_encoding where appropriate.
svn path=/main/trunk/; revision=14078
Zac Medico [Mon, 17 Aug 2009 21:56:16 +0000 (21:56 -0000)]
Test the edge case.
svn path=/main/trunk/; revision=14077
Arfrever Frehtes Taifersar Arahesis [Mon, 17 Aug 2009 14:25:45 +0000 (14:25 -0000)]
Add 'return False' which was missing from the previous commit.
svn path=/main/trunk/; revision=14076
Arfrever Frehtes Taifersar Arahesis [Mon, 17 Aug 2009 04:33:42 +0000 (04:33 -0000)]
Print a warning when nonexistent files have been passed to dohtml.
svn path=/main/trunk/; revision=14075
Zac Medico [Mon, 17 Aug 2009 03:34:44 +0000 (03:34 -0000)]
Use portage.os and _fs_encoding where appropriate, and fix binary string
handling for py3k compat.
svn path=/main/trunk/; revision=14074
Zac Medico [Mon, 17 Aug 2009 00:25:58 +0000 (00:25 -0000)]
When _unicode_func_wrapper() decodes a string in a returned list (typically
from os.listdir), discard values with invalid encoding. This insures that
all names returned from all os.listdir() calls are valid.
svn path=/main/trunk/; revision=14073
Zac Medico [Mon, 17 Aug 2009 00:15:11 +0000 (00:15 -0000)]
Use _content_encoding and _fs_encoding for unicode encoding/decoding.
svn path=/main/trunk/; revision=14072
Mounir Lamouri [Sun, 16 Aug 2009 21:22:34 +0000 (21:22 -0000)]
Use a clean listener system for portage.elog instead of _emerge_elog_listener
svn path=/main/trunk/; revision=14071
Mounir Lamouri [Sat, 15 Aug 2009 19:28:53 +0000 (19:28 -0000)]
Scheduler is now able to clean world set when removing a package.
world_atom function has been updated
and PackageUninstall is calling it after unmerge.
svn path=/main/trunk/; revision=14070
Mounir Lamouri [Sat, 15 Aug 2009 19:24:12 +0000 (19:24 -0000)]
sets/files.py cleanPackages function stop calling lock and load
and requires the caller to do that
changing unmerge to reflect this change
svn path=/main/trunk/; revision=14069
Zac Medico [Sat, 15 Aug 2009 18:15:39 +0000 (18:15 -0000)]
Use elog in _eapi0_pkg_nofetch().
svn path=/main/trunk/; revision=14068
Arfrever Frehtes Taifersar Arahesis [Sat, 15 Aug 2009 18:13:18 +0000 (18:13 -0000)]
Prepare 308 messages to localization.
svn path=/main/trunk/; revision=14067
Zac Medico [Sat, 15 Aug 2009 08:22:47 +0000 (08:22 -0000)]
Remove ACCEPT_PROPERTIES filtering since it's filtered on the python side.
svn path=/main/trunk/; revision=14065
Zac Medico [Sat, 15 Aug 2009 08:20:31 +0000 (08:20 -0000)]
Fix typo.
svn path=/main/trunk/; revision=14064
Zac Medico [Sat, 15 Aug 2009 08:19:49 +0000 (08:19 -0000)]
Remove ACCEPT_PROPERTIES variable generation code which isn't needed since,
unlike ACCEPT_LICENSE, ACCEPT_PROPERTIES isn't passed into the ebuild
environment.
svn path=/main/trunk/; revision=14063
Zac Medico [Sat, 15 Aug 2009 07:23:51 +0000 (07:23 -0000)]
Update import to import portage.os (with unicode wrappers), and use
_unicode_encode() and _content_encoding for encoding unicode env
vars in spawn().
svn path=/main/trunk/; revision=14062
Zac Medico [Sat, 15 Aug 2009 07:08:03 +0000 (07:08 -0000)]
Make movefile() use process.spawn() instead of getstatusoutput() when calling
MOVE_BINARY, since spawn will pass encoded file paths directly as arguments.
svn path=/main/trunk/; revision=14061
Zac Medico [Sat, 15 Aug 2009 06:48:15 +0000 (06:48 -0000)]
Make _generate_hash_function() use _fs_encoding to encode the filename
(if it's not already encoded), and enable errors='strict'.
svn path=/main/trunk/; revision=14060
Zac Medico [Sat, 15 Aug 2009 06:42:40 +0000 (06:42 -0000)]
In perform_checksum(), encode the filename with correct encoding before
passing to spawn (for prelink), and enable strict encoding behavior in
_perform_md5_merge().
svn path=/main/trunk/; revision=14059
Zac Medico [Sat, 15 Aug 2009 00:15:11 +0000 (00:15 -0000)]
Fix dblink._unmerge_pkgfiles() to use the correct version of perform_md5
when it falls back to utf8 encoding.
svn path=/main/trunk/; revision=14058
Zac Medico [Fri, 14 Aug 2009 23:54:45 +0000 (23:54 -0000)]
Fix broken _selinux_merge definition.
svn path=/main/trunk/; revision=14057
Zac Medico [Fri, 14 Aug 2009 23:51:29 +0000 (23:51 -0000)]
Add a portage._content_encoding constant, set to utf_8.
svn path=/main/trunk/; revision=14056
Zac Medico [Fri, 14 Aug 2009 23:44:57 +0000 (23:44 -0000)]
Use portage._fs_encoding where appropriage, and use strict handling for
errors.
svn path=/main/trunk/; revision=14055
Zac Medico [Fri, 14 Aug 2009 23:25:33 +0000 (23:25 -0000)]
Handle UnicodeDecodeError for os.walk() inside digestcheck().
svn path=/main/trunk/; revision=14054
Zac Medico [Fri, 14 Aug 2009 23:04:05 +0000 (23:04 -0000)]
Use portage._fs_encoding where applicable.
svn path=/main/trunk/; revision=14053
Zac Medico [Fri, 14 Aug 2009 22:57:44 +0000 (22:57 -0000)]
Update imports to import portage.os (with unicode wrappers), and use
_unicode_encode() and _unicode_decode() where appropriate.
svn path=/main/trunk/; revision=14052
Zac Medico [Fri, 14 Aug 2009 22:27:01 +0000 (22:27 -0000)]
Update imports to import portage.os (with unicode wrappers).
svn path=/main/trunk/; revision=14051
Zac Medico [Fri, 14 Aug 2009 22:11:34 +0000 (22:11 -0000)]
Inside dblink.treewalk(), handle filenames with incorrect encoding like we
do after src_install. The check needs to be repeated here for binary
packages (it's inexpensive since we call os.walk() here anyway).
svn path=/main/trunk/; revision=14050
Zac Medico [Fri, 14 Aug 2009 21:19:04 +0000 (21:19 -0000)]
In dblink._unmerge_pkgfiles(), if the package appears to have been merged
with a different value of sys.getfilesystemencoding(), fall back to utf_8
if appropriate.
svn path=/main/trunk/; revision=14049
Zac Medico [Fri, 14 Aug 2009 21:01:09 +0000 (21:01 -0000)]
Revert r14042 since we're not going to use it.
svn path=/main/trunk/; revision=14048
Zac Medico [Fri, 14 Aug 2009 20:29:06 +0000 (20:29 -0000)]
Add a clean_world attribute.
svn path=/main/trunk/; revision=14042
Zac Medico [Fri, 14 Aug 2009 20:15:32 +0000 (20:15 -0000)]
Don't hold references to config instances, since all that's really needed
is $ROOT.
svn path=/main/trunk/; revision=14034
Zac Medico [Fri, 14 Aug 2009 10:59:30 +0000 (10:59 -0000)]
Rename and log installed files that don't conform to portage._merge_encoding
(equal to sys.getfilesystemencoding()).
svn path=/main/trunk/; revision=14029
Zac Medico [Fri, 14 Aug 2009 08:24:25 +0000 (08:24 -0000)]
_merge_encoding = sys.getfilesystemencoding()
svn path=/main/trunk/; revision=14028
Zac Medico [Fri, 14 Aug 2009 08:19:59 +0000 (08:19 -0000)]
Use portage._merge_encoding to encode/decode all filenames during
merge/unmerge operations.
svn path=/main/trunk/; revision=14027
Zac Medico [Fri, 14 Aug 2009 07:01:32 +0000 (07:01 -0000)]
Don't 'del sys.modules["selinux"]' when selinux support isn't enabled in
the portage config, because that just assumes too much.
svn path=/main/trunk/; revision=14026
Zac Medico [Fri, 14 Aug 2009 06:57:13 +0000 (06:57 -0000)]
Make sure portage.selinux and _selinux exist, even when import fails, so
that 'from portage import selinux' never fails inside vartree.py.
svn path=/main/trunk/; revision=14025
Zac Medico [Fri, 14 Aug 2009 06:41:08 +0000 (06:41 -0000)]
Add an 'encoding' parameter to movefile(), so that we can make it obey
sys.getfilesystemencoding() when called for merge/unmerge.
svn path=/main/trunk/; revision=14024
Zac Medico [Fri, 14 Aug 2009 06:08:27 +0000 (06:08 -0000)]
Don't use the unicode-wrapped os and shutil modules here since
the whole _selinux module itself will be wrapped.
svn path=/main/trunk/; revision=14023
Zac Medico [Fri, 14 Aug 2009 06:02:56 +0000 (06:02 -0000)]
Replace the selinux.spawn() function with a spawn_wrapper() function and
use it inside portage._spawn_fetch() and portage.spawn().
svn path=/main/trunk/; revision=14022
Zac Medico [Fri, 14 Aug 2009 05:45:08 +0000 (05:45 -0000)]
Make _ensure_default_encoding() provide a fallback for the codec returned
by sys.getfilesystemencoding().
svn path=/main/trunk/; revision=14021
Zac Medico [Fri, 14 Aug 2009 05:30:38 +0000 (05:30 -0000)]
Use portage's selinux wrapper module for mkdir calls.
svn path=/main/trunk/; revision=14020
Zac Medico [Thu, 13 Aug 2009 22:17:05 +0000 (22:17 -0000)]
Create portage._merge_encoding and a corresponding _os_merge wrapper that
will later be used for all the merge code.
svn path=/main/trunk/; revision=14019
Zac Medico [Thu, 13 Aug 2009 21:33:21 +0000 (21:33 -0000)]
Add support for an 'encoding' parameter to _unicode_module_wrapper(). This
will allow creation of specialize wrappers for merge/unmerge, in case the
value of sys.getfilesystemencoding() is something other than utf_8.
svn path=/main/trunk/; revision=14018
Zac Medico [Thu, 13 Aug 2009 19:50:50 +0000 (19:50 -0000)]
Add support for unwrapped/overridden attributes in _unicode_module_wrapper().
svn path=/main/trunk/; revision=14017
Zac Medico [Thu, 13 Aug 2009 19:34:07 +0000 (19:34 -0000)]
Add py3k support to _unicode_decode().
svn path=/main/trunk/; revision=14016
Zac Medico [Thu, 13 Aug 2009 18:10:07 +0000 (18:10 -0000)]
Bug #281355 - Handle IndexError inside reconstruct_eclasses().
svn path=/main/trunk/; revision=14015
Zac Medico [Wed, 12 Aug 2009 09:04:48 +0000 (09:04 -0000)]
Set a limit of 30 backtracking attempts, since it's possible for it to
go out of control and take an unreasonable amount of time.
svn path=/main/trunk/; revision=14014
Zac Medico [Wed, 12 Aug 2009 08:48:19 +0000 (08:48 -0000)]
Use r'' for regex.
svn path=/main/trunk/; revision=14013
Zac Medico [Wed, 12 Aug 2009 08:45:43 +0000 (08:45 -0000)]
Bug #281133 - Fix the here-document code inside run_checks() to properly
detect the end of a here-document when it is indented by whitespace.
svn path=/main/trunk/; revision=14012