Remove FEATURES=parse-eapi-ebuild-head
authorZac Medico <zmedico@gentoo.org>
Thu, 30 Aug 2012 05:54:51 +0000 (22:54 -0700)
committerZac Medico <zmedico@gentoo.org>
Thu, 30 Aug 2012 05:54:51 +0000 (22:54 -0700)
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
man/make.conf.5
pym/_emerge/EbuildMetadataPhase.py
pym/portage/const.py
pym/portage/package/ebuild/_eapi_invalid.py
pym/portage/tests/emerge/test_simple.py

index ce355547040537e17b39a251f8480426da862053..dad28118c2a4f5265bdd804d42fe693a312ee2cf 100644 (file)
@@ -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"
 
index 011866774844ed9d3ff310858d62fc192d85e858..d9babe10fe09d57aeee876e5a7176d6f8c895df5 100644 (file)
@@ -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
index 9ab03e24e81fdbce94e669b7090c00213d709ae3..669b4ae2e91eb5847df33f835f8a4db509db9dbb 100644 (file)
@@ -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
index 6dffc5d06ea30c1a5973e9a5076c884da889dcff..3b8e350a22e3dec5f74a89514602b6442ce2baa4 100644 (file)
@@ -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",
index d23677d236c58181b800756cdc565efac9774514..bcf1f7fcdd0037a26ee2f4012e90687993386170 100644 (file)
@@ -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:
index f87170a71f3599eb2915bf3498129c3906441be3..77a0554c0d3ac307eaab920176795187aa528c7f 100644 (file)
@@ -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),