Fabian Groffen [Sat, 24 Apr 2010 13:54:07 +0000 (15:54 +0200)]
Rewrite of Prefix shebang check for bug #313731.
The shebang check was basically working too well, or just being overly
aggressive. This caused files from e.g. gnuconfig, automake, autoconf,
libtool to install template files with prefixed bin/sh in them. This
causes no problems for a user, but makes autotools useless for
distribution.
Hence the approach has now been changed to be less aggressive:
1) For each script that has a shebang starting with $EPREFIX, check if
the target exists, or will exist after installation of the package.
If this fails, die with an appropriate error message: the shebang was
generated someway, and hence explicitly set that way to a
non-existing target, which is wrong.
2) For scripts having a non-prefixed shebang, check if they reside in
$PATH. If they do, check if the shebang can be prefixed, and if so,
prefix the shebang. If the shebang doesn't exist in the offset, die
with an appropriate error message: the script would otherwise rely on
a host-provided tool which indicates a missing dependency (and will
cause random problems because of a non-Prefix-aware host-tool being
used).
3) Scripts that do not match 1) and 2), e.g. they don't have a shebang
starting with $EPREFIX and do not reside in $PATH, we ignore invalid
shebangs, unless FEATURES=stricter is set, in which case we warn.
This allows packages like autoconf, automake, etc. to install without
warning of their template files with /bin/sh as shebang.
Fabian Groffen [Sat, 24 Apr 2010 12:38:12 +0000 (14:38 +0200)]
Merge remote branch 'overlays-gentoo-org/master' into prefix
Michał Górny [Sat, 17 Apr 2010 12:26:49 +0000 (12:26 +0000)]
Make metadata.xml <flag/> errors non-fatal to repoman.
Previously, <flag/>-related errors in metadata.xml caused repoman
to abort the checks without even reporting the full path to broken
metadata.xml file. Now they are accounted as 'metadata.bad' errors.
Michał Górny [Sat, 17 Apr 2010 07:53:17 +0000 (07:53 +0000)]
Quote path for die snippet display.
Added missing quoting around the path passed to sed when displaying
ebuild snippet on die(). This should fix the issue where they weren't
displayed due to the occurence of special characters in the path.
Fabian Groffen [Fri, 23 Apr 2010 19:17:15 +0000 (21:17 +0200)]
Merge remote branch 'overlays-gentoo-org/master' into prefix
Conflicts:
bin/ebuild-helpers/doinfo
Zac Medico [Thu, 22 Apr 2010 23:01:35 +0000 (16:01 -0700)]
Pass in missing vartree parameter to doebuild(). Thanks to Arfrever for
reporting.
Zac Medico [Thu, 22 Apr 2010 19:36:23 +0000 (12:36 -0700)]
Automatically add PORTAGE_BIN_PATH to the front of PATH.
Zac Medico [Thu, 22 Apr 2010 17:54:45 +0000 (10:54 -0700)]
Source isolated-functions.sh for vecho definition. Thanks to Martin MOKREJŠ
<mmokrejs@fold.natur.cuni.cz> for reporting.
Zac Medico [Tue, 20 Apr 2010 08:02:25 +0000 (01:02 -0700)]
Bug #316311 - Prefer -i18n option of doman to filename language suffix
(EAPI 4). Thanks to Ulrich Müller <ulm@g.o> for this patch from bug #303919.
Fabian Groffen [Fri, 16 Apr 2010 18:42:45 +0000 (20:42 +0200)]
Merge remote branch 'overlays-gentoo-org/master' into prefix
Conflicts:
bin/misc-functions.sh
Arfrever Frehtes Taifersar Arahesis [Thu, 15 Apr 2010 23:18:50 +0000 (01:18 +0200)]
Fix typo in check for shared libraries lacking NEEDED entries.
Fabian Groffen [Mon, 12 Apr 2010 18:07:18 +0000 (20:07 +0200)]
Merge remote branch 'overlays-gentoo-org/master' into prefix
Conflicts:
bin/repoman
pym/portage/const.py
pym/portage/data.py
Keep PORTAGE_USERNAME and PORTAGE_GROUPNAME in, since in Prefix these
have been variable for a long time.
Zac Medico [Mon, 12 Apr 2010 06:20:07 +0000 (23:20 -0700)]
Remove unused imports.
Zac Medico [Mon, 12 Apr 2010 00:58:18 +0000 (17:58 -0700)]
Pass an ElementTree instance into parse_metadata_use() and
check_metadata_herds().
Zac Medico [Mon, 12 Apr 2010 00:45:33 +0000 (17:45 -0700)]
Port parse_metadata_use() code from minidom to ElementTree.
Zac Medico [Mon, 12 Apr 2010 00:17:31 +0000 (17:17 -0700)]
Avoid XMLParser.doctype deprecation warnings with >=python-2.7.
Zac Medico [Sun, 11 Apr 2010 23:16:01 +0000 (16:16 -0700)]
Use assertFalse insead of failIf since failIf is deprecated in python 3.2.
Zac Medico [Sat, 10 Apr 2010 21:11:47 +0000 (14:11 -0700)]
Make cpv_getversion handle invalid cpv and add cpv_getversion to __all__.
Sebastian Luther [Fri, 9 Apr 2010 17:29:22 +0000 (19:29 +0200)]
Implement REPLACING_VERSIONS and REPLACED_BY_VERSION
Zac Medico [Sat, 10 Apr 2010 18:45:41 +0000 (11:45 -0700)]
Fix deprecated config.getvirtuals() usage that's triggered by
gentoolkit-0.2.x.
Zac Medico [Sat, 10 Apr 2010 08:41:50 +0000 (01:41 -0700)]
Make spawning of `id -G portage` happen lazily when userpriv_groups is first
accessed.
Zac Medico [Fri, 9 Apr 2010 19:57:27 +0000 (12:57 -0700)]
Handle IOError when trying to cache the Packages file from the binhost.
Zac Medico [Fri, 9 Apr 2010 19:28:09 +0000 (12:28 -0700)]
When caching Packages file from binhost, ignore failure to write in cases
when the cache directory is not writable.
Zac Medico [Wed, 7 Apr 2010 21:16:52 +0000 (14:16 -0700)]
Use tbz2.unpackinfo() to unpack the xpak when running pkg_pretend, since we
need evironment.bz2 to get unpacked here.
Zac Medico [Wed, 7 Apr 2010 20:24:30 +0000 (13:24 -0700)]
In _run_pkg_pretend(), write ebuild bytes from tbz2.getfile() in binary mode
for python3 compatibility.
Zac Medico [Wed, 7 Apr 2010 20:17:58 +0000 (13:17 -0700)]
Eliminate redundant code in Scheduler._run_pkg_pretend() and remove unused
quiet_config variables.
Sebastian Luther [Tue, 6 Apr 2010 16:16:08 +0000 (18:16 +0200)]
Handle pkg_pretend output properly
Zac Medico [Wed, 7 Apr 2010 03:54:11 +0000 (20:54 -0700)]
Make ensure_dirs() behave correctly for DragonFly when EPERM is raised for
makedir('/'). Thanks to Naohiro Aota <naota@elisp.net> for the initial patch.
Sebastian Luther [Tue, 6 Apr 2010 16:58:06 +0000 (18:58 +0200)]
Cleanup $T earlier to prevent old messages from being displayed - bug 279041
Zac Medico [Tue, 6 Apr 2010 16:56:23 +0000 (09:56 -0700)]
Remove PORTAGE_USERNAME and PORTAGE_GROUPNAME support for now since antarus
says he wants it to work via make.conf, requiring redesign.
Fabian Groffen [Mon, 5 Apr 2010 17:45:32 +0000 (19:45 +0200)]
don't use names
Fabian Groffen [Mon, 5 Apr 2010 17:44:39 +0000 (19:44 +0200)]
Merge remote branch 'overlays-gentoo-org/master' into prefix
Fabian Groffen [Mon, 5 Apr 2010 17:40:39 +0000 (19:40 +0200)]
also check quoting on the Prefix variables added in EAPI=3, thanks jlec for the suggestion
Fabian Groffen [Sat, 3 Apr 2010 09:33:50 +0000 (11:33 +0200)]
Merge remote branch 'overlays-gentoo-org/master' into prefix
Zac Medico [Sat, 3 Apr 2010 00:46:07 +0000 (17:46 -0700)]
For clarity, make egencache --help and man page refer to --config-root
parameter as PORTAGE_CONFIGROOT. Thanks to Brian Harring.
Zac Medico [Fri, 2 Apr 2010 20:14:14 +0000 (13:14 -0700)]
Merge remote branch 'fews-portage-branch/pkg_pretend'
Sebastian Luther [Mon, 29 Mar 2010 20:52:17 +0000 (22:52 +0200)]
Implement emerge part of pkg_pretend
Fabian Groffen [Fri, 2 Apr 2010 18:55:02 +0000 (20:55 +0200)]
inject our Prefix bash in shebang, instead of /bin/bash
Fabian Groffen [Fri, 2 Apr 2010 18:47:51 +0000 (20:47 +0200)]
Merge remote branch 'overlays-gentoo-org/master' into prefix
Conflicts:
bin/quickpkg
copyright clashed with our @PORTAGE_PYTHON@ shebang
Zac Medico [Fri, 2 Apr 2010 17:49:27 +0000 (10:49 -0700)]
Add a test which calls bash -n on all scripts with bash shebang.
Zac Medico [Fri, 2 Apr 2010 17:22:38 +0000 (10:22 -0700)]
Handle missing $PORTDIR/metadata/herds.xml. Thanks to Arfrever for reporting.
Zac Medico [Fri, 2 Apr 2010 16:23:42 +0000 (09:23 -0700)]
Update copyright header.
Zac Medico [Fri, 2 Apr 2010 16:22:02 +0000 (09:22 -0700)]
Make RebuiltBinaries only select binary packages with non-empty BUILD_TIME.
Zac Medico [Fri, 2 Apr 2010 05:09:15 +0000 (22:09 -0700)]
Update copyright header.
Zac Medico [Fri, 2 Apr 2010 05:00:39 +0000 (22:00 -0700)]
Update copyright header.
Sebastian Luther [Tue, 30 Mar 2010 18:21:09 +0000 (20:21 +0200)]
Allow running pkg_info on non-installed packages
Fabian Groffen [Tue, 30 Mar 2010 17:32:03 +0000 (19:32 +0200)]
Merge remote branch 'overlays-gentoo-org/master' into prefix
Conflicts:
pym/_emerge/Package.py
pym/portage/dbapi/bintree.py
EPREFIX var caused trouble in the various lists that DEFINED_PHASES is
now added to too.
Sebastian Luther [Tue, 30 Mar 2010 12:10:49 +0000 (14:10 +0200)]
Add DEFINED_PHASES to the dbapi caches and _emerge.Package.metadata
Fabian Groffen [Sun, 28 Mar 2010 10:41:34 +0000 (12:41 +0200)]
Merge remote branch 'overlays-gentoo-org/master' into prefix
Zac Medico [Sun, 28 Mar 2010 10:19:32 +0000 (03:19 -0700)]
Move all imports to top.
Zac Medico [Sun, 28 Mar 2010 10:00:59 +0000 (03:00 -0700)]
Remove unused variables/imports and extra whitespace.
Sebastian Luther [Sun, 28 Mar 2010 08:57:15 +0000 (10:57 +0200)]
Add support for package sets to quickpkg
Split quickpkg_atom out of quickpkg_main to handle single atoms.
Create quickpkg_set to handle sets that calls quickpkg_atom.
Use a dict called 'infos' to return information about skipped config files, etc.
Move imports to global scope.
Update --help message and man page.
Zac Medico [Sun, 28 Mar 2010 01:49:52 +0000 (18:49 -0700)]
Add support for probing shebangs and compiling python scripts that don't
end with py.
Zac Medico [Sat, 27 Mar 2010 22:13:02 +0000 (15:13 -0700)]
Make sure portage.VERSION is saved in the mtimedb as type str rather than
ObjectProxy.
Zac Medico [Sat, 27 Mar 2010 21:51:36 +0000 (14:51 -0700)]
Ignore *.py[co]
Zac Medico [Sat, 27 Mar 2010 21:44:57 +0000 (14:44 -0700)]
Implement __unicode__ for python2.
Zac Medico [Sat, 27 Mar 2010 21:35:11 +0000 (14:35 -0700)]
If portage.VERSION == HEAD then use a proxy to lazily call git describe --tags
if it's accessed.
Fabian Groffen [Sat, 27 Mar 2010 11:21:33 +0000 (12:21 +0100)]
Merge branch 'master' into prefix
Zac Medico [Fri, 26 Mar 2010 22:58:34 +0000 (15:58 -0700)]
Add PORTAGE_USERNAME and PORTAGE_GROUPNAME to the environment whitelist and
filter them from the saved environment.
Zac Medico [Fri, 26 Mar 2010 22:51:25 +0000 (15:51 -0700)]
Process help and version actions asap. Thanks to Brian Harring.
Fabian Groffen [Fri, 26 Mar 2010 10:53:24 +0000 (11:53 +0100)]
svnlogmsg.awk script was removed, ignore .git and .hg directories
Fabian Groffen [Fri, 26 Mar 2010 10:50:31 +0000 (11:50 +0100)]
drop svnlogmsg.awk script, we lose the verbosity, maybe someday we revive it again, since we can see the trees coming together, it may be enough to track what was in
Fabian Groffen [Fri, 26 Mar 2010 10:48:46 +0000 (11:48 +0100)]
remove remaining $Id $ tags
Fabian Groffen [Fri, 26 Mar 2010 08:31:06 +0000 (09:31 +0100)]
Now we use the new PORTAGE_USERNAME and PORTAGE_GROUPNAME, let them be initialised by our Prefix portageuser and portagegroup
Fabian Groffen [Fri, 26 Mar 2010 08:28:22 +0000 (09:28 +0100)]
merged from master
Fabian Groffen [Fri, 26 Mar 2010 07:51:25 +0000 (08:51 +0100)]
Effectuate that trunk@15843 has been merged in prefix branch as prefix@15844
Zac Medico [Fri, 26 Mar 2010 05:31:16 +0000 (22:31 -0700)]
Use PORTAGE_USERNAME when populating userpriv_groups.
Zac Medico [Thu, 25 Mar 2010 11:07:38 +0000 (04:07 -0700)]
Implement PortageException.__unicode__ so the string formatin operator will
work correctly with unicode strings in python2.
Zac Medico [Thu, 25 Mar 2010 11:02:11 +0000 (04:02 -0700)]
Remove unsed check_KV() function. Thanks to Brian Harring.
Zac Medico [Thu, 25 Mar 2010 09:49:10 +0000 (02:49 -0700)]
Remove obsolete reference to nonexistent functions like newdepend in
save_ebuild_env. Thanks to Brian Harring.
Zac Medico [Wed, 24 Mar 2010 07:19:11 +0000 (00:19 -0700)]
Add back executable bits, accidentally removed in previous commit.
Zac Medico [Wed, 24 Mar 2010 07:13:00 +0000 (00:13 -0700)]
Remove all svn $Id keywords.
Zac Medico [Wed, 24 Mar 2010 07:03:51 +0000 (00:03 -0700)]
Don't use $Id or $Rev for version strings since that doesn't work with git.
Zac Medico [Wed, 24 Mar 2010 06:40:44 +0000 (23:40 -0700)]
Use git (repo in current working directory) instead of svn.
Zac Medico [Wed, 24 Mar 2010 03:03:51 +0000 (20:03 -0700)]
Add support for PORTAGE_USERNAME and PORTAGE_GROUPNAME environment
variables. Thanks to Alec Warner <antarus@g.o> for submitting the
initial PORTAGE_USERNAME patch from chromiumos-overlay.
Sebastian Pipping [Sat, 27 Feb 2010 02:37:45 +0000 (03:37 +0100)]
Add check of herds in metadata.xml
Sebastian Pipping [Fri, 26 Feb 2010 21:10:43 +0000 (22:10 +0100)]
Prepare further checks on metadata.xml
Fabian Groffen [Tue, 23 Mar 2010 20:22:58 +0000 (20:22 -0000)]
Merged from trunk -r15842:15843
| 15843 | install_qa_check: make sure init.d and conf.d files do not |
| SpankMan | have syntax errors in them #310805 |
svn path=/main/branches/prefix/; revision=15844
Mike Frysinger [Tue, 23 Mar 2010 20:12:38 +0000 (20:12 -0000)]
install_qa_check: make sure init.d and conf.d files do not have syntax errors in them #310805
svn path=/main/trunk/; revision=15843
Fabian Groffen [Tue, 23 Mar 2010 18:31:31 +0000 (18:31 -0000)]
Activate AIX hooks again (got lost in the split), thanks haubi
svn path=/main/branches/prefix/; revision=15842
Fabian Groffen [Tue, 23 Mar 2010 07:23:38 +0000 (07:23 -0000)]
Merged from trunk -r15835:15840
| 15839 | Bug #309149 - Unify look of eend used in bash & python code, |
| zmedico | additionally fixing few inconsistences in bash code. Thanks |
| | to Michał Górny <gentoo@mgorny.alt.pl> for this patch. |
| 15840 | Show masking reasons for --binpkg-respect-use. Thanks to |
| zmedico | Sebastian Luther (few) for this patch. |
svn path=/main/branches/prefix/; revision=15841
Zac Medico [Sun, 21 Mar 2010 21:47:28 +0000 (21:47 -0000)]
Show masking reasons for --binpkg-respect-use. Thanks to Sebastian Luther
(few) for this patch.
svn path=/main/trunk/; revision=15840
Zac Medico [Sat, 20 Mar 2010 23:46:24 +0000 (23:46 -0000)]
Bug #309149 - Unify look of eend used in bash & python code, additionally
fixing few inconsistences in bash code. Thanks to Michał Górny
<gentoo@mgorny.alt.pl> for this patch.
svn path=/main/trunk/; revision=15839
Fabian Groffen [Sat, 20 Mar 2010 18:57:51 +0000 (18:57 -0000)]
make shebang check a bit more strict by not blindly believing all shebangs that start with EPREFIX
svn path=/main/branches/prefix/; revision=15838
Fabian Groffen [Sat, 20 Mar 2010 18:31:13 +0000 (18:31 -0000)]
Merged from trunk -r15825:15835
| 15826 | Update SIGPIPE comments to refer to "[Errno 32] Broken pipe" |
| zmedico | exceptions since this is signal hander now set automatically |
| | for subprocesses after the fork in portage.process.spawn(). |
| 15827 | Revert tar error handling changes from bug #309001 since we |
| zmedico | can't necessarily trust tar exist status alone (reverts |
| | r15820 and r15821). |
| 15828 | Bug #299095 - Always use UTF-8 codec when opening ebuilds, |
| zmedico | to avoid UnicodeDecodeError with python3. |
| 15829 | Add a TODO note about adding a registration interface for |
| zmedico | eclasses to register phase hooks, in order to migrate away |
| | from global scope useq() calls. |
| 15830 | Fix breakage from previous commit. |
| zmedico | |
| 15831 | Bug #309699 - Update --emptytree docs. Thanks to Ben Kohler |
| zmedico | <bkohler@gmail.com> for wording suggestions. |
| 15832 | Bug #309907 - Fix update_config_files() to handle |
| zmedico | package.license. |
| 15833 | Bug #310135 - Skip the changelog.ebuildadded for all |
| zmedico | distributed SCMs. |
| 15834 | Note that use.local.desc is automatically generated, and |
| zmedico | refer to GLEP 56. |
| 15835 | Fix typo. |
| zmedico | |
svn path=/main/branches/prefix/; revision=15837
Fabian Groffen [Sat, 20 Mar 2010 18:30:18 +0000 (18:30 -0000)]
Merged from trunk -r15815:15825
| 15820 | Bug #309001 - Only trust tar exit status (ignore |
| zmedico | decompressor exit status) when unpacking tar files. |
| 15821 | Trust tar exit status and ignore bzip2 exit status as in bug |
| zmedico | #309001. |
| 15822 | Simplyfy the virtual.exists check, and avoid deprecation |
| zmedico | warning triggered by cpv_getkey called on an empty string. |
| 15823 | Bug #309001 - Use signal(signal.SIGPIPE, signal.SIG_DFL) for |
| zmedico | quiet killing of subprocesses by SIGPIPE (as emerge has for |
| | a long time). Thanks to Harald van Dijk truedfx@g.o for this |
| | patch. |
| 15824 | Add references to bug #309001 in comments about SIGPIPE |
| zmedico | handling. |
| 15825 | Bug #309001 - Install a SIGPIPE handler inside _exec for all |
| zmedico | forked processes. |
svn path=/main/branches/prefix/; revision=15836
Zac Medico [Fri, 19 Mar 2010 03:52:17 +0000 (03:52 -0000)]
Fix typo.
svn path=/main/trunk/; revision=15835
Zac Medico [Fri, 19 Mar 2010 03:06:03 +0000 (03:06 -0000)]
Note that use.local.desc is automatically generated, and refer to GLEP 56.
svn path=/main/trunk/; revision=15834
Zac Medico [Fri, 19 Mar 2010 00:41:21 +0000 (00:41 -0000)]
Bug #310135 - Skip the changelog.ebuildadded for all distributed SCMs.
svn path=/main/trunk/; revision=15833
Zac Medico [Wed, 17 Mar 2010 07:24:21 +0000 (07:24 -0000)]
Bug #309907 - Fix update_config_files() to handle package.license.
svn path=/main/trunk/; revision=15832
Zac Medico [Tue, 16 Mar 2010 06:17:57 +0000 (06:17 -0000)]
Bug #309699 - Update --emptytree docs. Thanks to Ben Kohler <bkohler@gmail.com>
for wording suggestions.
svn path=/main/trunk/; revision=15831
Zac Medico [Mon, 15 Mar 2010 01:53:41 +0000 (01:53 -0000)]
Fix breakage from previous commit.
svn path=/main/trunk/; revision=15830
Zac Medico [Mon, 15 Mar 2010 00:25:57 +0000 (00:25 -0000)]
Add a TODO note about adding a registration interface for eclasses to register
phase hooks, in order to migrate away from global scope useq() calls.
svn path=/main/trunk/; revision=15829
Zac Medico [Sun, 14 Mar 2010 23:44:14 +0000 (23:44 -0000)]
Bug #299095 - Always use UTF-8 codec when opening ebuilds, to avoid
UnicodeDecodeError with python3.
svn path=/main/trunk/; revision=15828
Zac Medico [Sun, 14 Mar 2010 10:00:46 +0000 (10:00 -0000)]
Revert tar error handling changes from bug #309001 since we can't necessarily
trust tar exist status alone (reverts r15820 and r15821).
svn path=/main/trunk/; revision=15827
Zac Medico [Sat, 13 Mar 2010 21:55:24 +0000 (21:55 -0000)]
Update SIGPIPE comments to refer to "[Errno 32] Broken pipe" exceptions since
this is signal hander now set automatically for subprocesses after the fork
in portage.process.spawn().
svn path=/main/trunk/; revision=15826
Zac Medico [Sat, 13 Mar 2010 06:47:36 +0000 (06:47 -0000)]
Bug #309001 - Install a SIGPIPE handler inside _exec for all forked processes.
svn path=/main/trunk/; revision=15825
Zac Medico [Sat, 13 Mar 2010 02:22:20 +0000 (02:22 -0000)]
Add references to bug #309001 in comments about SIGPIPE handling.
svn path=/main/trunk/; revision=15824
Zac Medico [Sat, 13 Mar 2010 02:18:05 +0000 (02:18 -0000)]
Bug #309001 - Use signal(signal.SIGPIPE, signal.SIG_DFL) for quiet killing of
subprocesses by SIGPIPE (as emerge has for a long time). Thanks to Harald van
Dijk truedfx@g.o for this patch.
svn path=/main/trunk/; revision=15823
Zac Medico [Fri, 12 Mar 2010 20:52:58 +0000 (20:52 -0000)]
Simplyfy the virtual.exists check, and avoid deprecation warning triggered
by cpv_getkey called on an empty string.
svn path=/main/trunk/; revision=15822