From 5e28fe97e67ab4f3e2d8410a8704156b6bb08555 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Wed, 29 Aug 2012 22:54:51 -0700 Subject: [PATCH] Remove FEATURES=parse-eapi-ebuild-head It's already been enabled by default in stable portage for awhile now, so it should be safe to enable it unconditionally. The PMS eapi-5 branch also says that it's mandatory to parse the EAPI: http://git.overlays.gentoo.org/gitweb/?p=proj/pms.git;a=commit;h=91d1e1e39b034bde7e5b981a5616a127135f37fa --- cnf/make.globals | 2 +- man/make.conf.5 | 5 ----- pym/_emerge/EbuildMetadataPhase.py | 6 ++---- pym/portage/const.py | 1 - pym/portage/package/ebuild/_eapi_invalid.py | 13 ------------- pym/portage/tests/emerge/test_simple.py | 2 +- 6 files changed, 4 insertions(+), 25 deletions(-) diff --git a/cnf/make.globals b/cnf/make.globals index ce3555470..dad28118c 100644 --- a/cnf/make.globals +++ b/cnf/make.globals @@ -53,7 +53,7 @@ FETCHCOMMAND_SFTP="bash -c \"x=\\\${2#sftp://} ; host=\\\${x%%/*} ; port=\\\${ho # Default user options FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks - fixlafiles news parallel-fetch parse-eapi-ebuild-head protect-owned + fixlafiles news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch" diff --git a/man/make.conf.5 b/man/make.conf.5 index 011866774..d9babe10f 100644 --- a/man/make.conf.5 +++ b/man/make.conf.5 @@ -420,11 +420,6 @@ Use finer\-grained locks when installing packages, allowing for greater parallelization. For additional parallelization, disable \fIebuild\-locks\fR. .TP -.B parse\-eapi\-ebuild\-head -Parse \fBEAPI\fR from the head of the ebuild as specified in PMS section -7.3.1, and treat non\-conformant ebuilds as invalid. This feature is -enabled by default, and will soon become enabled unconditionally. -.TP .B prelink\-checksums If \fBprelink\fR(8) is installed then use it to undo any prelinks on files before computing checksums for merge and unmerge. This feature is diff --git a/pym/_emerge/EbuildMetadataPhase.py b/pym/_emerge/EbuildMetadataPhase.py index 9ab03e24e..669b4ae2e 100644 --- a/pym/_emerge/EbuildMetadataPhase.py +++ b/pym/_emerge/EbuildMetadataPhase.py @@ -142,8 +142,7 @@ class EbuildMetadataPhase(SubProcess): def _set_returncode(self, wait_retval): SubProcess._set_returncode(self, wait_retval) # self._raw_metadata is None when _start returns - # early due to an unsupported EAPI detected with - # FEATURES=parse-eapi-ebuild-head + # early due to an unsupported EAPI if self.returncode == os.EX_OK and \ self._raw_metadata is not None: metadata_lines = _unicode_decode(b''.join(self._raw_metadata), @@ -164,8 +163,7 @@ class EbuildMetadataPhase(SubProcess): if (not metadata["EAPI"] or self.eapi_supported) and \ metadata["EAPI"] != parsed_eapi: self._eapi_invalid(metadata) - if 'parse-eapi-ebuild-head' in self.settings.features: - metadata_valid = False + metadata_valid = False if metadata_valid: # Since we're supposed to be able to efficiently obtain the diff --git a/pym/portage/const.py b/pym/portage/const.py index 6dffc5d06..3b8e350a2 100644 --- a/pym/portage/const.py +++ b/pym/portage/const.py @@ -99,7 +99,6 @@ SUPPORTED_FEATURES = frozenset([ "metadata-transfer", "mirror", "multilib-strict", "news", "noauto", "noclean", "nodoc", "noinfo", "noman", "nostrip", "notitles", "parallel-fetch", "parallel-install", - "parse-eapi-ebuild-head", "prelink-checksums", "protect-owned", "python-trace", "sandbox", "selinux", "sesandbox", "sfperms", diff --git a/pym/portage/package/ebuild/_eapi_invalid.py b/pym/portage/package/ebuild/_eapi_invalid.py index d23677d23..bcf1f7fcd 100644 --- a/pym/portage/package/ebuild/_eapi_invalid.py +++ b/pym/portage/package/ebuild/_eapi_invalid.py @@ -28,19 +28,6 @@ def eapi_invalid(self, cpv, repo_name, settings, "assignment on line: %s") % (eapi_var, eapi_lineno)) - if 'parse-eapi-ebuild-head' in settings.features: - msg.extend(textwrap.wrap(("NOTE: This error will soon" - " become unconditionally fatal in a future version of Portage," - " but at this time, it can by made non-fatal by setting" - " FEATURES=-parse-eapi-ebuild-head in" - " make.conf."), 70)) - else: - msg.extend(textwrap.wrap(("NOTE: This error will soon" - " become unconditionally fatal in a future version of Portage." - " At the earliest opportunity, please enable" - " FEATURES=parse-eapi-ebuild-head in make.conf in order to" - " make this error fatal."), 70)) - if portage.data.secpass >= 2: # TODO: improve elog permission error handling (bug #416231) for line in msg: diff --git a/pym/portage/tests/emerge/test_simple.py b/pym/portage/tests/emerge/test_simple.py index f87170a71..77a0554c0 100644 --- a/pym/portage/tests/emerge/test_simple.py +++ b/pym/portage/tests/emerge/test_simple.py @@ -210,7 +210,7 @@ pkg_preinst() { ({"FEATURES" : "metadata-transfer"},) + \ emerge_cmd + ("--regen",), rm_cmd + ("-rf", cachedir), - ({"FEATURES" : "metadata-transfer parse-eapi-ebuild-head"},) + \ + ({"FEATURES" : "metadata-transfer"},) + \ emerge_cmd + ("--regen",), rm_cmd + ("-rf", cachedir), egencache_cmd + ("--update",) + tuple(egencache_extra_args), -- 2.26.2