Zac Medico [Tue, 8 Jan 2008 04:56:31 +0000 (04:56 -0000)]
When spawing the "depend" phase, use file descriptors from sys.std*
streams.
svn path=/main/trunk/; revision=9157
Zac Medico [Mon, 7 Jan 2008 22:17:34 +0000 (22:17 -0000)]
Bug #204753 - Add "distfiles" and "packages" to the list of
non-category directories.
svn path=/main/trunk/; revision=9155
Zac Medico [Sun, 6 Jan 2008 20:22:03 +0000 (20:22 -0000)]
Bug #204651 - Make repoman respect NOCOLOR=true.
svn path=/main/trunk/; revision=9151
Zac Medico [Sat, 5 Jan 2008 22:00:45 +0000 (22:00 -0000)]
Make filter_readonly_variables() filter PATH in any case since
we never want to save of reload it.
svn path=/main/trunk/; revision=9147
Zac Medico [Sat, 5 Jan 2008 21:33:09 +0000 (21:33 -0000)]
Filter PATH along with FEATURES when loading environment.bz2.
svn path=/main/trunk/; revision=9145
Alec Warner [Sat, 5 Jan 2008 20:31:31 +0000 (20:31 -0000)]
per bug 204468, remove old check from repoman (all ebuilds in gentoo-x86 are migrated).
svn path=/main/trunk/; revision=9144
Zac Medico [Fri, 4 Jan 2008 20:49:05 +0000 (20:49 -0000)]
Send eerror and ewarn messages to stderr. This is important in
case somebody calls portageq inside a global scope command
substitution. The output needs to go to stderr so that the
die message from the subshell is visible.
svn path=/main/trunk/; revision=9140
Zac Medico [Thu, 3 Jan 2008 15:39:08 +0000 (15:39 -0000)]
Recognize export statements when filtering the environment. This
is needed for compatibility with environment.bz2 files generated
by paludis.
svn path=/main/trunk/; revision=9137
Zac Medico [Wed, 2 Jan 2008 15:00:39 +0000 (15:00 -0000)]
Bug #204020 - Make grabfile() properly raise PermissionDenied when
appropriate instead of silently ignoring permission errors.
svn path=/main/trunk/; revision=9135
Zac Medico [Mon, 31 Dec 2007 11:43:03 +0000 (11:43 -0000)]
When searching for "test" in IUSE, account for IUSE defaults.
svn path=/main/trunk/; revision=9128
Zac Medico [Mon, 31 Dec 2007 09:54:15 +0000 (09:54 -0000)]
Fix config.setcpv() to properly call config.regenerate() in cases
when USE needs to be regenerated due to FEATURES=test to USE=test
mapping.
svn path=/main/trunk/; revision=9126
Zac Medico [Sat, 29 Dec 2007 20:14:05 +0000 (20:14 -0000)]
As suggested by grobian, treat Darwin just like USERLAND=gnu
since they seem to be switching commands to gnu anyway.
svn path=/main/trunk/; revision=9118
Zac Medico [Sat, 29 Dec 2007 19:54:20 +0000 (19:54 -0000)]
Fix USERLAND references to handle Darwin like BSD.
svn path=/main/trunk/; revision=9117
Zac Medico [Sat, 29 Dec 2007 19:36:57 +0000 (19:36 -0000)]
Fix broken Darwin USERLAND detection.
svn path=/main/trunk/; revision=9116
Zac Medico [Sat, 29 Dec 2007 18:20:43 +0000 (18:20 -0000)]
Add PKGDIR to the config.environ() whitelist so that people's
bashrc's don't break.
svn path=/main/trunk/; revision=9114
Zac Medico [Sat, 29 Dec 2007 17:56:30 +0000 (17:56 -0000)]
Fix handling of leading / charactes some more.
svn path=/main/trunk/; revision=9112
Zac Medico [Sat, 29 Dec 2007 17:41:18 +0000 (17:41 -0000)]
Make the ecompressdir vecho output show a leading / on
the directory path. Thanks to armin76.
svn path=/main/trunk/; revision=9111
Zac Medico [Sat, 29 Dec 2007 16:47:05 +0000 (16:47 -0000)]
Document that docinto works for dohtml.
svn path=/main/trunk/; revision=9109
Zac Medico [Sat, 29 Dec 2007 13:50:58 +0000 (13:50 -0000)]
Rely on USERLAND since it's automatically generated by
isolated-functions.sh when necessary.
svn path=/main/trunk/; revision=9107
Zac Medico [Sat, 29 Dec 2007 13:31:38 +0000 (13:31 -0000)]
Make the global counter file correspond to
the total number of installation actions
that have occurred in the history of this
package database.
svn path=/main/trunk/; revision=9105
Zac Medico [Sat, 29 Dec 2007 12:37:26 +0000 (12:37 -0000)]
Remove redundant USERLAND sanity check code from doebuild() since
it's handled in isolated-functions.sh now.
svn path=/main/trunk/; revision=9103
Zac Medico [Sat, 29 Dec 2007 12:14:27 +0000 (12:14 -0000)]
Add back support for silent definition of the dummy lchown()
function when ostype == Darwin.
svn path=/main/trunk/; revision=9101
Zac Medico [Sat, 29 Dec 2007 12:07:56 +0000 (12:07 -0000)]
Simplify the userland detection code in portage.data and add
a bash version of it to isolated-functions.sh.
svn path=/main/trunk/; revision=9100
Zac Medico [Sat, 29 Dec 2007 11:49:38 +0000 (11:49 -0000)]
Remove redundant lchown() compatibility code since the
getattr(os, "lchown", None) call already handles it.
svn path=/main/trunk/; revision=9099
Zac Medico [Sat, 29 Dec 2007 11:36:20 +0000 (11:36 -0000)]
Move XARGS initialization from portage.data to isolated-functions.sh.
svn path=/main/trunk/; revision=9097
Zac Medico [Sat, 29 Dec 2007 11:30:30 +0000 (11:30 -0000)]
Move XARGS initialization from portage.data to isolated-functions.sh.
svn path=/main/trunk/; revision=9096
Zac Medico [Sat, 29 Dec 2007 10:41:14 +0000 (10:41 -0000)]
Add support for showing binary package file sizes in emerge
--search output.
svn path=/main/trunk/; revision=9094
Zac Medico [Sat, 29 Dec 2007 09:58:56 +0000 (09:58 -0000)]
* Initialize dbapi._categories = None so that we can compare
with None instead of using hasattr.
* Remove unwanted self._categories initialization from the
portdbapi constructor.
svn path=/main/trunk/; revision=9092
Zac Medico [Sat, 29 Dec 2007 09:04:45 +0000 (09:04 -0000)]
Make doebuild() check XARGS together with ARCH and USERLAND.
svn path=/main/trunk/; revision=9090
Zac Medico [Sat, 29 Dec 2007 08:57:05 +0000 (08:57 -0000)]
Make the ARCH and USERLAND sanity check use the autodetected USERLAND
from the portage.data module if necessary.
svn path=/main/trunk/; revision=9089
Zac Medico [Sat, 29 Dec 2007 08:38:43 +0000 (08:38 -0000)]
Bug #121584 - Make the automatic USERLAND detection code recognize
GNU/kFreeBSD.
svn path=/main/trunk/; revision=9087
Zac Medico [Fri, 28 Dec 2007 23:12:24 +0000 (23:12 -0000)]
Bug #202697 - Add / to the default initial SANDBOX_READ in order to
avoid a situation where attempts to read arbitrary files trigger
sandbox violations.
svn path=/main/trunk/; revision=9085
Zac Medico [Fri, 28 Dec 2007 21:10:25 +0000 (21:10 -0000)]
Make the FEATURES=sfperms loops safe for whitespace in paths
by using find -print0 | while read -d $'\0'.
svn path=/main/trunk/; revision=9083
Zac Medico [Fri, 28 Dec 2007 18:27:51 +0000 (18:27 -0000)]
Make key_expand() use dbapi.categories.
svn path=/main/trunk/; revision=9081
Zac Medico [Fri, 28 Dec 2007 18:20:29 +0000 (18:20 -0000)]
Make dep_expand() stop relying on having a categories list:
* Create and use a dbapi.categories property that is
automatically generated from dbapi.cp_all().
* Make mutable dbapi instances delete the invalidate the
cached categories when they need to be regenerated.
svn path=/main/trunk/; revision=9080
Zac Medico [Fri, 28 Dec 2007 18:01:29 +0000 (18:01 -0000)]
Just ignore it when the global counter file does not match
the highest installed COUNTER since it's normal for them to
differ in some cases. For example, the global counter file
will contain a higher value if the user merges a package and
then immediately unmerges it (unmerge does not update the
global counter file, but merge does).
svn path=/main/trunk/; revision=9078
Zac Medico [Fri, 28 Dec 2007 15:35:39 +0000 (15:35 -0000)]
In action_regen(), use writemsg() to send error messages to
stderr.
svn path=/main/trunk/; revision=9066
Zac Medico [Fri, 28 Dec 2007 14:56:47 +0000 (14:56 -0000)]
Show the EBUILD_FORCE_TEST "Forcing test" message
even when "test" is not in IUSE.
svn path=/main/trunk/; revision=9065
Zac Medico [Fri, 28 Dec 2007 14:40:13 +0000 (14:40 -0000)]
Fixes for logic related to FEATURES=test to USE=test mapping:
* Add EBUILD_FORCE_TEST to the environment whitelist and filter
it from the saved environment in save_ebuild_env().
* Tweak logic inside the ebuild command and config.regenerate()
so that EBUILD_FORCE_TEST works even in odd cases like when
USE=test is masked.
* Only make FEATURES=test map to USE=test when "test" is
actually in IUSE.
* Remove USE=test from the set of implicit IUSE so that useq()
calls in ebuild.sh properly generate a QA Notice when "test"
is missing from IUSE.
svn path=/main/trunk/; revision=9064
Zac Medico [Fri, 28 Dec 2007 13:27:00 +0000 (13:27 -0000)]
Always make sure that the depend phase triggers a source ${EBUILD}
call, even if "${T}"/environment happens to exist for some reason.
svn path=/main/trunk/; revision=9062
Zac Medico [Fri, 28 Dec 2007 11:29:58 +0000 (11:29 -0000)]
Bug #203323 - Fix the FEATURES=sfperms code so that it doesn't chmod
g-r on binaries that are both setuid and setgid. In that case, just
chmod o-r.
svn path=/main/trunk/; revision=9061
Zac Medico [Fri, 28 Dec 2007 10:45:06 +0000 (10:45 -0000)]
Minor code readablity enhancements:
* Use relative_path and full_path variables for files being checked
instead of spreading code like x+"/files/"+y all over the place.
* Use stat.S_IMODE with octal 0111 instead of hex 0x0248 in the
file.executable checks.
svn path=/main/trunk/; revision=9060
Zac Medico [Fri, 28 Dec 2007 10:23:55 +0000 (10:23 -0000)]
Bug #201498 - Use desktop-file-validate to validate *.desktop
files inside ${FILESDIR} and generate a "desktop.invalid"
qa warning if an error is detected. Thanks to Betelgeuse for
the initial patch.
svn path=/main/trunk/; revision=9059
Zac Medico [Wed, 26 Dec 2007 14:17:19 +0000 (14:17 -0000)]
Fix broken handling of the tuple that's returned from
verify_all(). Thanks to Betelgeuse.
svn path=/main/trunk/; revision=9056
Zac Medico [Wed, 26 Dec 2007 08:21:39 +0000 (08:21 -0000)]
Fix sync_local() to return 0 when a appropriate. Thanks to
Alon Bar-Lev" <alonbl@gentoo.org>
svn path=/main/trunk/; revision=9055
Zac Medico [Tue, 25 Dec 2007 05:41:06 +0000 (05:41 -0000)]
In getconfig(), pass the infile attribute into the shlex
constructor so that shlex.sourcehook() properly joins
relative paths.
svn path=/main/trunk/; revision=9054
Zac Medico [Tue, 25 Dec 2007 03:20:40 +0000 (03:20 -0000)]
Fix "Initializing counter" message to show the correct value.
svn path=/main/trunk/; revision=9053
Zac Medico [Tue, 25 Dec 2007 02:51:44 +0000 (02:51 -0000)]
Bug #203090 - Do not trust the global counter
file that can lead to invalid COUNTER generation.
svn path=/main/trunk/; revision=9052
Zac Medico [Tue, 25 Dec 2007 01:34:22 +0000 (01:34 -0000)]
Bug #203239 - With FEATURES=noauto, always source ${EBUILD}.
This will load the ${T}/environment file if available and then
source ${EBUILD} to overwrite any functions that have changed.
svn path=/main/trunk/; revision=9051
Ned Ludd [Tue, 25 Dec 2007 00:24:48 +0000 (00:24 -0000)]
- small UI cleanups. *should* not cause problems with lack of missing newlines.
svn path=/main/trunk/; revision=9050
Zac Medico [Sun, 23 Dec 2007 02:21:11 +0000 (02:21 -0000)]
Remove redundant find_binary import.
svn path=/main/trunk/; revision=9046
Zac Medico [Fri, 21 Dec 2007 12:51:23 +0000 (12:51 -0000)]
Add support for --usepkg and --usepkgonly options together with
emerge --search.
svn path=/main/trunk/; revision=9038
Zac Medico [Fri, 21 Dec 2007 11:36:08 +0000 (11:36 -0000)]
Implement a `portageq contents <root> <category/package>` command
that lists all the files that are installed for a given package,
with one file listed on each line.
svn path=/main/trunk/; revision=9035
Zac Medico [Fri, 21 Dec 2007 11:15:57 +0000 (11:15 -0000)]
Typo: remove bogus argument.
svn path=/main/trunk/; revision=9034
Zac Medico [Fri, 21 Dec 2007 11:14:44 +0000 (11:14 -0000)]
Enhance the portageq match command to list all installed packages
when given an empty string.
svn path=/main/trunk/; revision=9033
Zac Medico [Fri, 21 Dec 2007 10:31:56 +0000 (10:31 -0000)]
Make vardbapi cache DESCRIPTION and HOMEPAGE in order to optimize
emerge --searchdesc.
svn path=/main/trunk/; revision=9031
Zac Medico [Fri, 21 Dec 2007 10:05:36 +0000 (10:05 -0000)]
Implement binary package visibility filtering for emerge --search.
svn path=/main/trunk/; revision=9029
Zac Medico [Fri, 21 Dec 2007 07:16:24 +0000 (07:16 -0000)]
Don't show "Size of files: 0 kB" in emerge --search output for installed
packages that have no available ebuild in the tree.
svn path=/main/trunk/; revision=9028
Zac Medico [Fri, 21 Dec 2007 06:59:28 +0000 (06:59 -0000)]
Implement emerge --search support for installed packages, so it
works even without a portage tree or binary packages.
svn path=/main/trunk/; revision=9027
Zac Medico [Fri, 21 Dec 2007 05:05:50 +0000 (05:05 -0000)]
Make the "test" flag that's enabled by FEATURES=test into
an implicit iuse member.
svn path=/main/trunk/; revision=9025
Zac Medico [Fri, 21 Dec 2007 03:28:48 +0000 (03:28 -0000)]
Eliminate redundant "notadded" error filtering.
svn path=/main/trunk/; revision=9023
Zac Medico [Fri, 21 Dec 2007 02:47:09 +0000 (02:47 -0000)]
Fix xmatch "match-all" typo.
svn path=/main/trunk/; revision=9020
Zac Medico [Fri, 21 Dec 2007 02:20:30 +0000 (02:20 -0000)]
In portage.process.spawn(), make the default fd_pipes value get
file descriptors from sys.std{in,out,err} so that they can be
overridden.
svn path=/main/trunk/; revision=9018
Zac Medico [Fri, 21 Dec 2007 02:14:46 +0000 (02:14 -0000)]
In portage.spawn(), make the default fd_pipes value get file
descriptors from sys.std{in,out,err} so that they can be
overridden.
svn path=/main/trunk/; revision=9016
Zac Medico [Fri, 21 Dec 2007 02:04:27 +0000 (02:04 -0000)]
Tweak profile validation and warning logic a bit.
svn path=/main/trunk/; revision=9015
Zac Medico [Fri, 21 Dec 2007 01:27:04 +0000 (01:27 -0000)]
Fix references to dbapi._category_re.
svn path=/main/trunk/; revision=9013
Zac Medico [Fri, 21 Dec 2007 01:23:28 +0000 (01:23 -0000)]
Use regex category validation in binarytree.populate().
svn path=/main/trunk/; revision=9012
Zac Medico [Fri, 21 Dec 2007 01:16:27 +0000 (01:16 -0000)]
Use a regex to validate package directory names in portdbapi.cp_list()
and also simplify the catagory regex a bit.
svn path=/main/trunk/; revision=9010
Zac Medico [Fri, 21 Dec 2007 00:57:37 +0000 (00:57 -0000)]
Add "metadata" and "licenses" to _non_category_dirs.
svn path=/main/trunk/; revision=9008
Zac Medico [Fri, 21 Dec 2007 00:47:16 +0000 (00:47 -0000)]
Slightly improved the masked package check inside dep_zapdeps().
svn path=/main/trunk/; revision=9006
Zac Medico [Fri, 21 Dec 2007 00:38:21 +0000 (00:38 -0000)]
Fix a reference to an undefined "mykey" variable.
svn path=/main/trunk/; revision=9005
Zac Medico [Fri, 21 Dec 2007 00:03:45 +0000 (00:03 -0000)]
Bug #202566 - Move the 'global portage' statement to avoid
"SyntaxWarning: name 'portage' is assigned to before global
declaration" messages produced by earlier python-2.4.
svn path=/main/trunk/; revision=9004
Zac Medico [Thu, 20 Dec 2007 23:53:21 +0000 (23:53 -0000)]
Hardcode #!/bin/bash for consistency with other scripts.
svn path=/main/trunk/; revision=9002
Zac Medico [Thu, 20 Dec 2007 17:01:28 +0000 (17:01 -0000)]
Fix a typo in the _non_category_dirs regex.
svn path=/main/trunk/; revision=8997
Zac Medico [Thu, 20 Dec 2007 14:21:25 +0000 (14:21 -0000)]
Filter out some non-category directories in portdbapi.cp_all().
svn path=/main/trunk/; revision=8993
Zac Medico [Thu, 20 Dec 2007 14:07:48 +0000 (14:07 -0000)]
For simplicity and consistency, always use a regular expression
for category validation instead of using a list.
svn path=/main/trunk/; revision=8992
Zac Medico [Thu, 20 Dec 2007 13:34:29 +0000 (13:34 -0000)]
Fix portdbapi.cp_list() so that it can cope with a
missing profile.
svn path=/main/trunk/; revision=8990
Zac Medico [Thu, 20 Dec 2007 13:06:15 +0000 (13:06 -0000)]
Make dep_zapdeps() fall back to installed packages in it's
availability test in cases where the package does not
appear to be masked. This solves dep selection preference
issues when working without a portage tree.
svn path=/main/trunk/; revision=8988
Zac Medico [Thu, 20 Dec 2007 11:40:55 +0000 (11:40 -0000)]
Fix binarytree._update_pkgindex_header() so that it can cope
with a missing profile.
svn path=/main/trunk/; revision=8985
Zac Medico [Thu, 20 Dec 2007 10:48:26 +0000 (10:48 -0000)]
Make vartree.cpv_all() stop relying on having a categories
list since it may not be available if there is no portage
tree.
svn path=/main/trunk/; revision=8982
Zac Medico [Thu, 20 Dec 2007 08:34:11 +0000 (08:34 -0000)]
Enable emerge search actions for binary packages when there is
no portage tree available.
svn path=/main/trunk/; revision=8980
Zac Medico [Thu, 20 Dec 2007 08:17:42 +0000 (08:17 -0000)]
Fix a type: eclasses -> eclass.
svn path=/main/trunk/; revision=8978
Zac Medico [Thu, 20 Dec 2007 06:07:04 +0000 (06:07 -0000)]
Pass a valid phase into eerror so that it works.
svn path=/main/trunk/; revision=8976
Zac Medico [Thu, 20 Dec 2007 06:00:10 +0000 (06:00 -0000)]
Make binarytree.populate() stop relying on having a categories
list since it may not be available if there is no portage tree.
svn path=/main/trunk/; revision=8975
Zac Medico [Thu, 20 Dec 2007 05:38:10 +0000 (05:38 -0000)]
Convert messages about missing portage tree to debug level
warnings since quite often it's possible to function without
a portage tree now.
svn path=/main/trunk/; revision=8974
Zac Medico [Thu, 20 Dec 2007 05:16:44 +0000 (05:16 -0000)]
Make some adjustments so that it's possible to install binary
packages without having a portage tree:
* Make portdbapi.aux_get() return early by raising a KeyError
if it detects that there is no portage tree.
* Move the ARCH and USERLAND sanity check to the last moment
in doebuild() and only require these variables if an
existing environment (such as environment.bz2) is
unavailable.
* Make the NewsManager constructor cope with a broken
make.profile symlink.
svn path=/main/trunk/; revision=8973
Zac Medico [Thu, 20 Dec 2007 04:00:24 +0000 (04:00 -0000)]
Bug #202748 - When merging a binary package, only clean up
temp files on success. Otherwise, leave the temp files
intact for debugging purposes.
svn path=/main/trunk/; revision=8971
Zac Medico [Thu, 20 Dec 2007 02:29:19 +0000 (02:29 -0000)]
Whitespace only: remove extra indentation.
svn path=/main/trunk/; revision=8969
Zac Medico [Thu, 20 Dec 2007 02:11:18 +0000 (02:11 -0000)]
Always add ARCH to USE without relying on it being listed
in PORTAGE_ARCHLIST.
svn path=/main/trunk/; revision=8967
Zac Medico [Wed, 19 Dec 2007 06:54:58 +0000 (06:54 -0000)]
Bug #140180 - Ignore missing HOMEPAGE and LICENSE variables for
new-style virtual packages.
svn path=/main/trunk/; revision=8965
Zac Medico [Wed, 19 Dec 2007 03:41:24 +0000 (03:41 -0000)]
Keep filtered USE in the PORTAGE_USE variable to keep
it separate from the global USE that's shown by
emerge --info.
svn path=/main/trunk/; revision=8963
Zac Medico [Wed, 19 Dec 2007 02:49:31 +0000 (02:49 -0000)]
Trigger a config.regenerate() call inside setcpv() when the
EBUILD_PHASE variable is defined. It's too expensive to do
the regenerate() call every time. Do in when EBUILD_PHASE
is defined since it's needed to create the filtered USE that
environ() passes to the ebuild environment.
svn path=/main/trunk/; revision=8961
Zac Medico [Tue, 18 Dec 2007 14:47:41 +0000 (14:47 -0000)]
Store filtered USE for config.environ() calls in a special
attribute so that the normal global USE is still available
for things like emerge --info output.
svn path=/main/trunk/; revision=8959
Zac Medico [Tue, 18 Dec 2007 14:14:22 +0000 (14:14 -0000)]
Fix USE filtering code so that it doesn't rely on config.setcpv()
calling config.regenerate().
svn path=/main/trunk/; revision=8957
Zac Medico [Tue, 18 Dec 2007 12:05:04 +0000 (12:05 -0000)]
Make special build and bootstrap flags into implicit members
of IUSE so that stage builds will work again.
svn path=/main/trunk/; revision=8955
Zac Medico [Tue, 18 Dec 2007 09:27:37 +0000 (09:27 -0000)]
Display the merge list with blockers any time that there are
blockers, instead of telling the user to try again with
--pretend.
svn path=/main/trunk/; revision=8953
Zac Medico [Tue, 18 Dec 2007 08:21:37 +0000 (08:21 -0000)]
Only enable the PORTAGE_IUSE check during build time phases
since that's the only time it's valid for now.
svn path=/main/trunk/; revision=8951
Zac Medico [Tue, 18 Dec 2007 07:09:00 +0000 (07:09 -0000)]
Include masked flags in PORTAGE_IUSE to avoid more false positives
in the useq() IUSE check.
svn path=/main/trunk/; revision=8949
Zac Medico [Tue, 18 Dec 2007 06:32:16 +0000 (06:32 -0000)]
Create a PORTAGE_IUSE variable containing an egrep pattern
for use by the QA check that's built into useq(). This allows
the IUSE logic for this check to be isolated in the python
code.
svn path=/main/trunk/; revision=8945
Zac Medico [Tue, 18 Dec 2007 04:04:40 +0000 (04:04 -0000)]
Bug #176467 - Filter out USE flags that aren't part of IUSE.
Some flags are considered to be implicit members of IUSE:
* Flags derived from ARCH
* Flags derived from USE_EXPAND_HIDDEN variables
* Forced flags, such as those from {,package}use.force
svn path=/main/trunk/; revision=8944