Zac Medico [Tue, 9 Oct 2007 10:06:55 +0000 (10:06 -0000)]
Bug #149816 - Implement visibility filtering support for
binary packages. This works by creating a virtual filtered
repository that can be composed of multiple package types,
including ebuilds, binary packages, and installed packages.
svn path=/main/trunk/; revision=8012
Zac Medico [Tue, 9 Oct 2007 09:28:29 +0000 (09:28 -0000)]
Make portdbapi.aux_get() cache more often.
svn path=/main/trunk/; revision=8011
Zac Medico [Tue, 9 Oct 2007 09:26:49 +0000 (09:26 -0000)]
Properly exclude old-style virtuals from the portdbapi.cp_list() cache.
svn path=/main/trunk/; revision=8010
Zac Medico [Tue, 9 Oct 2007 06:06:27 +0000 (06:06 -0000)]
Remove a redundant os.access() call in portdbapi.aux_get()
and handle the potential OSError instead.
svn path=/main/trunk/; revision=8009
Zac Medico [Tue, 9 Oct 2007 03:50:54 +0000 (03:50 -0000)]
Optimize away a match_from_list() call inside
portdbapi.xmatch("match-all") when given atom has no
operator or version. Also, make cp_list() use the
xmatch("match-all") cache when possible.
svn path=/main/trunk/; revision=8008
Zac Medico [Sun, 7 Oct 2007 23:04:52 +0000 (23:04 -0000)]
Factor package.mask and profile masking logic out of
portdbapi.visible() and move it to config.getMaskAtom()
and getProfileMaskAtom(). This will allow the code to
be reused for binary packages.
svn path=/main/trunk/; revision=8001
Zac Medico [Sun, 7 Oct 2007 22:24:39 +0000 (22:24 -0000)]
Cache IUSE for portdbapi.gvisible() calls.
svn path=/main/trunk/; revision=8000
Zac Medico [Sun, 7 Oct 2007 22:08:02 +0000 (22:08 -0000)]
Restore profile masking support to getmaskingstatus().
svn path=/main/trunk/; revision=7999
Zac Medico [Sun, 7 Oct 2007 21:55:35 +0000 (21:55 -0000)]
Allow config.setcpv() to take a dictionary of package metadata
in place of a dbapi instance so that extra cache pulls can be
avoided.
svn path=/main/trunk/; revision=7998
Zac Medico [Sun, 7 Oct 2007 21:46:34 +0000 (21:46 -0000)]
Factor the KEYWORDS masking logic out of portdbapi.visible()
and move it to config.getMissingEeywords(). This will allow
the code to be reused for binary packages.
svn path=/main/trunk/; revision=7997
Zac Medico [Sun, 7 Oct 2007 21:28:23 +0000 (21:28 -0000)]
Remove duplicate call to digestgen().
svn path=/main/trunk/; revision=7996
Zac Medico [Sun, 7 Oct 2007 21:25:02 +0000 (21:25 -0000)]
Move the "commit" mode manifest generation earlier in order
to avoid digest verification issues when FEATURES="strict"
is enabled.
svn path=/main/trunk/; revision=7995
Mike Frysinger [Sun, 7 Oct 2007 19:33:35 +0000 (19:33 -0000)]
add --debug option and display a message about skipping non-files so we dont get confusing loops where portage claims there are things to update but etc-update claims there are not
svn path=/main/trunk/; revision=7994
Mike Frysinger [Sun, 7 Oct 2007 19:16:50 +0000 (19:16 -0000)]
add standard --help/--version options
svn path=/main/trunk/; revision=7993
Mike Frysinger [Sun, 7 Oct 2007 19:06:49 +0000 (19:06 -0000)]
unify diff_command handling
svn path=/main/trunk/; revision=7992
Mike Frysinger [Sun, 7 Oct 2007 18:00:56 +0000 (18:00 -0000)]
add support for .lzma / .tar.lzma to unpack
svn path=/main/trunk/; revision=7991
Mike Frysinger [Sun, 7 Oct 2007 17:52:51 +0000 (17:52 -0000)]
add QA check for .pyc/.pyo files in /usr/share
svn path=/main/trunk/; revision=7990
Zac Medico [Sat, 6 Oct 2007 22:26:49 +0000 (22:26 -0000)]
Fix binarytree.populate() so that it properly caches
all the metadata necessary for visibility filtering.
svn path=/main/trunk/; revision=7989
Zac Medico [Sat, 6 Oct 2007 22:23:05 +0000 (22:23 -0000)]
In PackageIndex.write(), skip writing the CHOST for a
package entry if it's CHOST matches the header.
svn path=/main/trunk/; revision=7988
Zac Medico [Sat, 6 Oct 2007 22:02:10 +0000 (22:02 -0000)]
In PackageIndex.readBody(), make each package entry
inherit CHOST from the header.
svn path=/main/trunk/; revision=7987
Zac Medico [Sat, 6 Oct 2007 20:24:36 +0000 (20:24 -0000)]
Bug #194552 - Include EAPI in the binary package metadata index.
svn path=/main/trunk/; revision=7986
Zac Medico [Sat, 6 Oct 2007 19:19:43 +0000 (19:19 -0000)]
Fix package.license support so that SLOT atoms
will work.
svn path=/main/trunk/; revision=7985
Marius Mauch [Sat, 6 Oct 2007 16:30:29 +0000 (16:30 -0000)]
Handle Exceptions in mod_mail_summary.finalize() and check if the server actually supports TLS, bug #183808
svn path=/main/trunk/; revision=7984
Marius Mauch [Sat, 6 Oct 2007 15:40:38 +0000 (15:40 -0000)]
let dohtml handle weird filenames, patch by TGL (bug #171272)
svn path=/main/trunk/; revision=7983
Marius Mauch [Sat, 6 Oct 2007 15:12:30 +0000 (15:12 -0000)]
Add @localhost to default PORTAGE_ELOG_MAILFROM to account for mail servers that don't accept mails without a domainname
svn path=/main/trunk/; revision=7982
Marius Mauch [Sat, 6 Oct 2007 14:27:58 +0000 (14:27 -0000)]
clean up module namespace
svn path=/main/trunk/; revision=7981
Marius Mauch [Sat, 6 Oct 2007 14:04:11 +0000 (14:04 -0000)]
Also clean portage.txt
svn path=/main/trunk/; revision=7980
Marius Mauch [Sat, 6 Oct 2007 13:59:37 +0000 (13:59 -0000)]
Also look for sets.conf in overlays
svn path=/main/trunk/; revision=7979
Marius Mauch [Sat, 6 Oct 2007 13:49:08 +0000 (13:49 -0000)]
Add some documentation about set configuration
svn path=/main/trunk/; revision=7978
Marius Mauch [Sat, 6 Oct 2007 12:04:28 +0000 (12:04 -0000)]
default set configuration, should probably go into /usr/share/portage
svn path=/main/trunk/; revision=7977
Zac Medico [Fri, 5 Oct 2007 23:09:27 +0000 (23:09 -0000)]
Strip the - prefix from EAPI in getmaskingstatus()
if necessary.
svn path=/main/trunk/; revision=7975
Marius Mauch [Fri, 5 Oct 2007 22:07:23 +0000 (22:07 -0000)]
handle empty sets properly
svn path=/main/trunk/; revision=7974
Zac Medico [Fri, 5 Oct 2007 21:27:41 +0000 (21:27 -0000)]
Shorten the reference to IUSE defaults since
it's now documented in ebuild(5).
svn path=/main/trunk/; revision=7967
Zac Medico [Fri, 5 Oct 2007 21:19:19 +0000 (21:19 -0000)]
Document IUSE defaults.
svn path=/main/trunk/; revision=7966
Marius Mauch [Fri, 5 Oct 2007 20:46:12 +0000 (20:46 -0000)]
include sets in emerge --search
svn path=/main/trunk/; revision=7963
Zac Medico [Fri, 5 Oct 2007 20:43:28 +0000 (20:43 -0000)]
Document SLOT dependencies.
svn path=/main/trunk/; revision=7962
Marius Mauch [Fri, 5 Oct 2007 20:05:43 +0000 (20:05 -0000)]
replace category sets in test configuration with user sets
svn path=/main/trunk/; revision=7959
Zac Medico [Fri, 5 Oct 2007 20:05:17 +0000 (20:05 -0000)]
Generalize the first paragraph of the MASKED PACKAGES section
and document binary package CHOST masking.
svn path=/main/trunk/; revision=7958
Marius Mauch [Fri, 5 Oct 2007 19:34:21 +0000 (19:34 -0000)]
only add short names for sets if they begin with 'sets/'
svn path=/main/trunk/; revision=7957
Marius Mauch [Fri, 5 Oct 2007 19:29:17 +0000 (19:29 -0000)]
first version of set integration in emerge
svn path=/main/trunk/; revision=7956
Marius Mauch [Fri, 5 Oct 2007 17:27:34 +0000 (17:27 -0000)]
Add set configuration framework in preparation for emerge integration
svn path=/main/trunk/; revision=7952
Zac Medico [Fri, 5 Oct 2007 17:09:58 +0000 (17:09 -0000)]
Documnet EAPI in the MASKED PACKAGES section.
svn path=/main/trunk/; revision=7951
Zac Medico [Fri, 5 Oct 2007 17:01:48 +0000 (17:01 -0000)]
Fix spelling of backward.
svn path=/main/trunk/; revision=7950
Zac Medico [Fri, 5 Oct 2007 16:53:40 +0000 (16:53 -0000)]
Document the EAPI variable.
svn path=/main/trunk/; revision=7949
Marius Mauch [Fri, 5 Oct 2007 16:40:12 +0000 (16:40 -0000)]
ignore missing files
svn path=/main/trunk/; revision=7948
Marius Mauch [Fri, 5 Oct 2007 15:16:37 +0000 (15:16 -0000)]
add TODO list for portage-2.2
svn path=/main/trunk/; revision=7947
Marius Mauch [Fri, 5 Oct 2007 14:17:03 +0000 (14:17 -0000)]
copy of gentoolkit r451
svn path=/main/trunk/; revision=7946
Zac Medico [Fri, 5 Oct 2007 04:20:14 +0000 (04:20 -0000)]
Bug #194764 - All the match* functions can raise
a ValueError if cpv_expand() receives an ambiguous
atom. Therefore, move the ValueError handling code
out of match() and use it to handle all such errors
when appropriate.
svn path=/main/trunk/; revision=7944
Zac Medico [Fri, 5 Oct 2007 03:56:47 +0000 (03:56 -0000)]
Make the EbuildQuote check ignore lines beginning
with local or export builtins since unquoted
assignments are okay there.
svn path=/main/trunk/; revision=7942
Zac Medico [Thu, 4 Oct 2007 08:19:42 +0000 (08:19 -0000)]
In portdbapi.aux_get(), simplify code by using string
manipulation instead of int conversion to manipulate
negative EAPI when deciding whether or not regen is
necessary.
svn path=/main/trunk/; revision=7919
Zac Medico [Thu, 4 Oct 2007 07:53:37 +0000 (07:53 -0000)]
Handle UnsupportedAPIException when running the ebuild(1)
command.
svn path=/main/trunk/; revision=7918
Zac Medico [Thu, 4 Oct 2007 07:25:38 +0000 (07:25 -0000)]
Include the package name in all exceptions raised from
portdbapi.getfetchlist() so that a redundant and
sometimes inaccurate message doesn't have to be shown
when the error is caught in digestgen().
svn path=/main/trunk/; revision=7917
Zac Medico [Thu, 4 Oct 2007 07:05:11 +0000 (07:05 -0000)]
Make portdbapi.getfetchlist() bail out if the EAPI
is unsupported. This makes it impossible for an
unsupported EAPI to result in invalid Manifest
generation.
svn path=/main/trunk/; revision=7916
Zac Medico [Thu, 4 Oct 2007 06:46:44 +0000 (06:46 -0000)]
Fix logic for the message that's show when
--force is disabled.
svn path=/main/trunk/; revision=7915
Zac Medico [Thu, 4 Oct 2007 06:35:05 +0000 (06:35 -0000)]
Make repoman bail out if it is unable to properly
access ebuild metadata for some reason. In this
case it's impossible to generate a Manifest and
therefore the --force option has to be disabled.
svn path=/main/trunk/; revision=7914
Zac Medico [Thu, 4 Oct 2007 04:00:28 +0000 (04:00 -0000)]
Add EAPI masking support for binary packages.
svn path=/main/trunk/; revision=7913
Zac Medico [Thu, 4 Oct 2007 02:56:00 +0000 (02:56 -0000)]
Fix UnsupportedAPIException.__str__() to strip the leading
negative sign (-) from the EAPI, to prevent confusion.
svn path=/main/trunk/; revision=7912
Zac Medico [Thu, 4 Oct 2007 02:33:53 +0000 (02:33 -0000)]
Non-integer EAPI isn't supported. In case it's supported in
the future, assume that it's valid (rather than trigger a
regen).
svn path=/main/trunk/; revision=7911
Zac Medico [Thu, 4 Oct 2007 02:19:03 +0000 (02:19 -0000)]
When the metadata cache contains a negative EAPI, it means
that the cache entry was generated by a version of portage
that did not support the eapi. When the user upgrades to a
version that now supports the previously unsupported EAPI,
those cache entries need to be regenerated. Therefore,
when a cache entry has a negative EAPI, check if the EAPI
would be supported and trigger a regen if appropriate.
svn path=/main/trunk/; revision=7910
Zac Medico [Thu, 4 Oct 2007 01:52:20 +0000 (01:52 -0000)]
Bump EAPI from 0 to 1 and fix eapi_is_supported() so that
it works properly with both 0 and 1.
svn path=/main/trunk/; revision=7909
Mike Frysinger [Wed, 3 Oct 2007 21:08:14 +0000 (21:08 -0000)]
no need to use "function" when defining a function
svn path=/main/trunk/; revision=7908
Mike Frysinger [Wed, 3 Oct 2007 21:06:27 +0000 (21:06 -0000)]
this isnt part of gentoolkit anymore
svn path=/main/trunk/; revision=7907
Zac Medico [Wed, 3 Oct 2007 07:50:57 +0000 (07:50 -0000)]
Eliminate confusing false positive error messages
for SRC_URI.syntax and digestentry.unused that are
reported when the SRC_URI for one or more ebuilds
can't be parsed for some reason. There's no point
in producing a false error here since the root
cause will produce a valid error elsewhere, such
as "SRC_URI.syntax" or "ebuild.sytax". Also,
update the docs for the "ebuild.syntax" error to
indicate that a digest verification failure can
trigger it.
svn path=/main/trunk/; revision=7905
Zac Medico [Wed, 3 Oct 2007 00:12:18 +0000 (00:12 -0000)]
In the EbuildQuote check, combine the var_assignment
regex together with the ignore_line regex. This also
fixes an issue with the var_assignment regex allowing
violations like `make DESTDIR=${D}` to slip through.
svn path=/main/trunk/; revision=7904
Zac Medico [Tue, 2 Oct 2007 04:03:12 +0000 (04:03 -0000)]
Filter some false positives out of the EbuildQuote check.
It might work well enough now so that we don't have to
degrade it to a warning.
svn path=/main/trunk/; revision=7901
Zac Medico [Mon, 1 Oct 2007 19:44:39 +0000 (19:44 -0000)]
Bug #194398 - Do not log "exiting successfully" in emerge.log
unless the status really is successful. Otherwise, log
"exiting unsuccessfully". Thanks to David Watzke.
svn path=/main/trunk/; revision=7900
Alec Warner [Mon, 1 Oct 2007 12:28:17 +0000 (12:28 -0000)]
Apply new checks, minor cleanup
svn path=/main/trunk/; revision=7899
Alec Warner [Mon, 1 Oct 2007 12:27:45 +0000 (12:27 -0000)]
Rename checks as the naming was overkill (they are all obviously checks being in the check module), add nesteddie check
svn path=/main/trunk/; revision=7898
Alec Warner [Mon, 1 Oct 2007 11:05:10 +0000 (11:05 -0000)]
Delete some extra leaky vars, also after some testing I discovered read() is much faster than readlines(), see dev.gentoo.org/~antarus/projects/portage/stats/StringIOVsFiles.txt
svn path=/main/trunk/; revision=7897
Alec Warner [Mon, 1 Oct 2007 10:26:09 +0000 (10:26 -0000)]
keep old repoman names so we don't confuse people
svn path=/main/trunk/; revision=7896
Alec Warner [Mon, 1 Oct 2007 10:20:32 +0000 (10:20 -0000)]
Add Donnie's quote check, refactor other ebuild-content checks into classes and get them out of repoman in an attempt to start moving other checks out as well. Again wonder at the price of StringIO and N passes, is the readability worth it?
svn path=/main/trunk/; revision=7895
Alec Warner [Mon, 1 Oct 2007 10:19:21 +0000 (10:19 -0000)]
Add new repoman check classes using StringIO; possibly need some testing, obviously the old code was faster (1 iteration over the file), here we do one iteration per check, StringIO was to try and negate this by doing the checks in memory...how much of a price do we pay here?
svn path=/main/trunk/; revision=7894
Zac Medico [Mon, 1 Oct 2007 03:13:59 +0000 (03:13 -0000)]
Bug #142508 - Clear the screen each time before calling
the "diff" command so that any remnants of the previous
config are now shown with the current one.
command so that
svn path=/main/trunk/; revision=7893
Zac Medico [Sun, 30 Sep 2007 21:25:28 +0000 (21:25 -0000)]
Reimplement portdbapi.visible() so that is works without
using self.xmatch(). This should be 100% compatible with
the previous implementation and have comparable
performance. By eliminating the xmatch() dependency, the
code becomes more generically usable, like for
visibility filtering of binary packages. It seems that
it will be necessary to move this code outside of the
dbapi since visiblity filtering is really a resolver
level function and to solve things like bug #88613 will
require a more flexible approach.
since the current internal
svn path=/main/trunk/; revision=7892
Zac Medico [Sun, 30 Sep 2007 18:57:25 +0000 (18:57 -0000)]
Document interaction between config.setinst() and
old-style virtuals preferences.
svn path=/main/trunk/; revision=7891
Zac Medico [Sat, 29 Sep 2007 21:23:32 +0000 (21:23 -0000)]
Remove redundant trailing slashes from ${D}. (branches/prefix r7886)
svn path=/main/trunk/; revision=7890
Zac Medico [Sat, 29 Sep 2007 21:09:45 +0000 (21:09 -0000)]
Initialize PORTAGE_TMPDIR before using it.
svn path=/main/trunk/; revision=7887
Mike Frysinger [Sat, 29 Sep 2007 08:27:51 +0000 (08:27 -0000)]
revert useless quoting
svn path=/main/trunk/; revision=7879
Alec Warner [Sat, 29 Sep 2007 07:45:01 +0000 (07:45 -0000)]
Fix quoting as reported by Drac in bug 194169
svn path=/main/trunk/; revision=7878
Zac Medico [Sat, 29 Sep 2007 01:49:05 +0000 (01:49 -0000)]
Bug #194095 - Validate dispatch-conf input in order to
prevent spurious input characters from being interpreted
as user input (which can be quite confusing and gives
an "out of control" feeling).
svn path=/main/trunk/; revision=7877
Zac Medico [Fri, 28 Sep 2007 21:51:13 +0000 (21:51 -0000)]
Bug #193548 - When scanning for config updates and an error
occurs, send find's stdout to /dev/null so that only an
error message is shown.
svn path=/main/trunk/; revision=7875
Zac Medico [Fri, 28 Sep 2007 20:16:02 +0000 (20:16 -0000)]
When scanning for config updates, treat a symlink to an existing
directory as if it's just a normal directory.
svn path=/main/trunk/; revision=7873
Zac Medico [Fri, 28 Sep 2007 18:11:45 +0000 (18:11 -0000)]
Bug #193548 - When emerge spawns find to search for config updates,
show the find output if there is an error.
svn path=/main/trunk/; revision=7871
Zac Medico [Fri, 28 Sep 2007 17:07:37 +0000 (17:07 -0000)]
Bug #194081 - Add EBUSY to the list of ignored errnos for unlink
and rmdir calls during unmerge.
svn path=/main/trunk/; revision=7869
Zac Medico [Thu, 27 Sep 2007 22:47:30 +0000 (22:47 -0000)]
Handle KeyError thrown from aux_get().
svn path=/main/trunk/; revision=7866
Zac Medico [Thu, 27 Sep 2007 22:26:42 +0000 (22:26 -0000)]
Move prelink tempfile cleanup to the finally block and
remove unused locking code.
svn path=/main/trunk/; revision=7864
Zac Medico [Thu, 27 Sep 2007 20:59:16 +0000 (20:59 -0000)]
Simplify update_eclasses() a little.
svn path=/main/trunk/; revision=7861
Zac Medico [Thu, 27 Sep 2007 20:41:52 +0000 (20:41 -0000)]
Move a newline to fix formatting.
svn path=/main/trunk/; revision=7858
Zac Medico [Thu, 27 Sep 2007 19:22:05 +0000 (19:22 -0000)]
Ignore ENOTDIR from unmerge unlink calls.
svn path=/main/trunk/; revision=7856
Zac Medico [Thu, 27 Sep 2007 17:54:34 +0000 (17:54 -0000)]
Bug #194025 - Lock /var/db/pkg in post_merge() during the
"Regenerating GNU info directory index" routine.
svn path=/main/trunk/; revision=7853
Mike Frysinger [Thu, 27 Sep 2007 17:12:03 +0000 (17:12 -0000)]
with help from Donnie and Ulrich, use sed to extract the statement that led to the call to die so we can print it out in our error message
svn path=/main/trunk/; revision=7852
Zac Medico [Thu, 27 Sep 2007 15:46:51 +0000 (15:46 -0000)]
Bug #193486 - Use echo -n and properly quote the array argument.
svn path=/main/trunk/; revision=7850
Zac Medico [Thu, 27 Sep 2007 15:40:26 +0000 (15:40 -0000)]
Bug #193486 - Use xargs to avoid 'bash: /bin/rm: Argument list too long'
errors. This patch uses a weird tr '\001' '\000' workaround since bash
doesn't echo null bytes like one might expect.
svn path=/main/trunk/; revision=7848
Zac Medico [Thu, 27 Sep 2007 15:34:07 +0000 (15:34 -0000)]
Do the stale env check/warning after the digest/manifest
phase when necessary.
svn path=/main/trunk/; revision=7846
Zac Medico [Thu, 27 Sep 2007 06:50:15 +0000 (06:50 -0000)]
Display a short notification when an existing ${T}/environment
sourced since it is easy to ignore and ignorance of it often
leads to mysterious problems and general confusion. This
message should not show in cases where it is obviously
irrelevant, FEATURES=noauto, or PORTAGE_QUIET=1.
svn path=/main/trunk/; revision=7844
Mike Frysinger [Wed, 26 Sep 2007 23:49:01 +0000 (23:49 -0000)]
align the filename and line numbers in the output of the stack dump so that it is much easier to read
svn path=/main/trunk/; revision=7842
Zac Medico [Wed, 26 Sep 2007 23:46:28 +0000 (23:46 -0000)]
Fix a typo.
svn path=/main/trunk/; revision=7840
Mike Frysinger [Wed, 26 Sep 2007 23:38:16 +0000 (23:38 -0000)]
someone seriously screwed the pooch on whitespacing here so clean it all up
svn path=/main/trunk/; revision=7839
Zac Medico [Wed, 26 Sep 2007 21:58:28 +0000 (21:58 -0000)]
Bug #192706 - Do not print a summary at the end of --depclean
if there is nothing to clean and --quiet is enabled.
svn path=/main/trunk/; revision=7838
Zac Medico [Wed, 26 Sep 2007 20:01:23 +0000 (20:01 -0000)]
Set non-blocking mode on the pty master file descriptor while
the slave file descriptor is still held open since otherwise
the fcntl call can fail on FreeBSD (the child process might
have already exited and closed the slave file descriptor so we
have to keep it open in order to avoid FreeBSD potentially
generating an EAGAIN exception). This appoach is cleaner than
triggering the exception and being forced to handle it
somehow.
svn path=/main/trunk/; revision=7835