public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/portage:master commit in: bin/, lib/portage/, lib/_emerge/, doc/package/ebuild/eapi/, /, doc/
@ 2025-01-11 20:16 Ulrich Müller
  0 siblings, 0 replies; only message in thread
From: Ulrich Müller @ 2025-01-11 20:16 UTC (permalink / raw
  To: gentoo-commits

commit:     d34f2dcec57e2bd5c52baff7eccdd2e70b0b6684
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 11 11:05:15 2025 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sat Jan 11 20:15:28 2025 +0000
URL:        https://gitweb.gentoo.org/proj/portage.git/commit/?id=d34f2dce

Remove support for 4-slot-abi EAPI

Deprecated in commit db799d6ffe3a. Features are available in EAPI 5
and later.

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 NEWS                                       |  2 +
 bin/eapi.sh                                | 98 +++++++++++++++---------------
 bin/phase-functions.sh                     |  6 +-
 bin/phase-helpers.sh                       |  4 +-
 doc/meson.build                            |  1 -
 doc/package/ebuild/eapi/4-slot-abi.docbook | 70 ---------------------
 doc/portage.docbook                        |  1 -
 lib/_emerge/main.py                        |  5 +-
 lib/portage/__init__.py                    |  3 +-
 lib/portage/eapi.py                        |  3 +-
 lib/portage/update.py                      |  4 +-
 11 files changed, 62 insertions(+), 135 deletions(-)

diff --git a/NEWS b/NEWS
index 01d93b7ce8..6f67dae4fd 100644
--- a/NEWS
+++ b/NEWS
@@ -35,6 +35,8 @@ Bug fixes:
 
 * ebuild.sh: Allow CC and CXX to be changed in profile.bashrc.
 
+* eapi.sh: Remove support for unofficial 4-slot-abi EAPI.
+
 portage-3.0.66.1 (2024-09-18)
 --------------
 

diff --git a/bin/eapi.sh b/bin/eapi.sh
index 5e894e17dd..224ec0e1c8 100644
--- a/bin/eapi.sh
+++ b/bin/eapi.sh
@@ -1,5 +1,5 @@
 #!/usr/bin/env bash
-# Copyright 2012-2024 Gentoo Authors
+# Copyright 2012-2025 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # PHASES
@@ -17,7 +17,7 @@ ___eapi_has_src_configure() {
 }
 
 ___eapi_default_src_test_disables_parallel_jobs() {
-	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi)$ ]]
+	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4)$ ]]
 }
 
 ___eapi_has_S_WORKDIR_fallback() {
@@ -31,19 +31,19 @@ ___eapi_has_prefix_variables() {
 }
 
 ___eapi_has_BROOT() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6)$ ]]
 }
 
 ___eapi_has_SYSROOT() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6)$ ]]
 }
 
 ___eapi_has_BDEPEND() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6)$ ]]
 }
 
 ___eapi_has_IDEPEND() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6|7)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6|7)$ ]]
 }
 
 ___eapi_has_RDEPEND_DEPEND_fallback() {
@@ -51,15 +51,15 @@ ___eapi_has_RDEPEND_DEPEND_fallback() {
 }
 
 ___eapi_has_PORTDIR_ECLASSDIR() {
-	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6)$ ]]
+	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6)$ ]]
 }
 
 ___eapi_has_accumulated_PROPERTIES() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6|7)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6|7)$ ]]
 }
 
 ___eapi_has_accumulated_RESTRICT() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6|7)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6|7)$ ]]
 }
 
 # HELPERS PRESENCE
@@ -73,15 +73,15 @@ ___eapi_has_dosed() {
 }
 
 ___eapi_has_einstall() {
-	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5)$ ]]
+	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5)$ ]]
 }
 
 ___eapi_has_dohtml() {
-	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6)$ ]]
+	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6)$ ]]
 }
 
 ___eapi_has_dolib_libopts() {
-	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6)$ ]]
+	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6)$ ]]
 }
 
 ___eapi_has_docompress() {
@@ -89,7 +89,7 @@ ___eapi_has_docompress() {
 }
 
 ___eapi_has_dostrip() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6)$ ]]
 }
 
 ___eapi_has_nonfatal() {
@@ -97,47 +97,47 @@ ___eapi_has_nonfatal() {
 }
 
 ___eapi_has_doheader() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4)$ ]]
 }
 
 ___eapi_has_usex() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4)$ ]]
 }
 
 ___eapi_has_get_libdir() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5)$ ]]
 }
 
 ___eapi_has_einstalldocs() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5)$ ]]
 }
 
 ___eapi_has_eapply() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5)$ ]]
 }
 
 ___eapi_has_eapply_user() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5)$ ]]
 }
 
 ___eapi_has_in_iuse() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5)$ ]]
 }
 
 ___eapi_has_version_functions() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6)$ ]]
 }
 
 ___eapi_has_hasq() {
-	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6|7)$ ]]
+	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6|7)$ ]]
 }
 
 ___eapi_has_hasv() {
-	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6|7)$ ]]
+	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6|7)$ ]]
 }
 
 ___eapi_has_useq() {
-	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6|7)$ ]]
+	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6|7)$ ]]
 }
 
 # HELPERS BEHAVIOR
@@ -147,7 +147,7 @@ ___eapi_best_version_and_has_version_support_--host-root() {
 }
 
 ___eapi_best_version_and_has_version_support_-b_-d_-r() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6)$ ]]
 }
 
 ___eapi_unpack_supports_xz() {
@@ -155,19 +155,19 @@ ___eapi_unpack_supports_xz() {
 }
 
 ___eapi_unpack_supports_txz() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5)$ ]]
 }
 
 ___eapi_unpack_supports_7z() {
-	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6|7)$ ]]
+	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6|7)$ ]]
 }
 
 ___eapi_unpack_supports_lha() {
-	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6|7)$ ]]
+	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6|7)$ ]]
 }
 
 ___eapi_unpack_supports_rar() {
-	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6|7)$ ]]
+	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6|7)$ ]]
 }
 
 ___eapi_econf_passes_--disable-dependency-tracking() {
@@ -175,23 +175,23 @@ ___eapi_econf_passes_--disable-dependency-tracking() {
 }
 
 ___eapi_econf_passes_--disable-silent-rules() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4)$ ]]
 }
 
 ___eapi_econf_passes_--datarootdir() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6|7)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6|7)$ ]]
 }
 
 ___eapi_econf_passes_--disable-static() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6|7)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6|7)$ ]]
 }
 
 ___eapi_econf_passes_--docdir_and_--htmldir() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5)$ ]]
 }
 
 ___eapi_econf_passes_--with-sysroot() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6)$ ]]
 }
 
 ___eapi_use_enable_and_use_with_support_empty_third_argument() {
@@ -207,7 +207,7 @@ ___eapi_doins_and_newins_preserve_symlinks() {
 }
 
 ___eapi_newins_supports_reading_from_standard_input() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4)$ ]]
 }
 
 ___eapi_helpers_can_die() {
@@ -215,57 +215,57 @@ ___eapi_helpers_can_die() {
 }
 
 ___eapi_unpack_is_case_sensitive() {
-	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5)$ ]]
+	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5)$ ]]
 }
 
 ___eapi_unpack_supports_absolute_paths() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5)$ ]]
 }
 
 ___eapi_die_can_respect_nonfatal() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5)$ ]]
 }
 
 ___eapi_domo_respects_into() {
-	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6)$ ]]
+	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6)$ ]]
 }
 
 ___eapi_has_DESTTREE_INSDESTTREE() {
-	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6)$ ]]
+	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6)$ ]]
 }
 
 ___eapi_has_dosym_r() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6|7)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6|7)$ ]]
 }
 
 ___eapi_usev_has_second_arg() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6|7)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6|7)$ ]]
 }
 
 ___eapi_doconfd_respects_insopts() {
-	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6|7)$ ]]
+	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6|7)$ ]]
 }
 
 ___eapi_doenvd_respects_insopts() {
-	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6|7)$ ]]
+	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6|7)$ ]]
 }
 
 ___eapi_doheader_respects_insopts() {
-	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6|7)$ ]]
+	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6|7)$ ]]
 }
 
 ___eapi_doinitd_respects_exeopts() {
-	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6|7)$ ]]
+	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6|7)$ ]]
 }
 
 # OTHERS
 
 ___eapi_enables_failglob_in_global_scope() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5)$ ]]
 }
 
 ___eapi_bash_3_2() {
-	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5)$ ]]
+	[[ ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5)$ ]]
 }
 
 ___eapi_bash_4_2() {
@@ -277,7 +277,7 @@ ___eapi_bash_5_0() {
 }
 
 ___eapi_has_ENV_UNSET() {
-	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|4-slot-abi|5|6)$ ]]
+	[[ ! ${1-${EAPI-0}} =~ ^(0|1|2|3|4|5|6)$ ]]
 }
 
 ___eapi_has_strict_keepdir() {

diff --git a/bin/phase-functions.sh b/bin/phase-functions.sh
index 5257101cf4..d9b524c1a2 100644
--- a/bin/phase-functions.sh
+++ b/bin/phase-functions.sh
@@ -1,5 +1,5 @@
 #!/usr/bin/env bash
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # Hardcoded bash lists are needed for backward compatibility with
@@ -934,7 +934,7 @@ __ebuild_phase_funcs() {
 			fi
 
 			# defaults starting with EAPI 6
-			if ! has ${eapi} 2 3 4 4-slot-abi 5; then
+			if ! has ${eapi} 2 3 4 5; then
 				[[ ${phase_func} == src_prepare ]] && \
 					default_src_prepare() { __eapi6_src_prepare; }
 				[[ ${phase_func} == src_install ]] && \
@@ -945,7 +945,7 @@ __ebuild_phase_funcs() {
 			fi
 
 			# defaults starting with EAPI 8
-			if ! has ${eapi} 2 3 4 4-slot-abi 5 6 7; then
+			if ! has ${eapi} 2 3 4 5 6 7; then
 				[[ ${phase_func} == src_prepare ]] && \
 					default_src_prepare() { __eapi8_src_prepare; }
 			fi

diff --git a/bin/phase-helpers.sh b/bin/phase-helpers.sh
index 5a35130191..16b5a4a1ca 100644
--- a/bin/phase-helpers.sh
+++ b/bin/phase-helpers.sh
@@ -1,5 +1,5 @@
 #!/usr/bin/env bash
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 if ___eapi_has_DESTTREE_INSDESTTREE; then
@@ -250,7 +250,7 @@ use() {
 		[[ -n ${EBUILD_PHASE} && -n ${PORTAGE_INTERNAL_CALLER} ]] ; then
 		if ! ___in_portage_iuse "${u}"; then
 			if [[ ${EMERGE_FROM} != binary &&
-				! ${EAPI} =~ ^(0|1|2|3|4|4-slot-abi)$ ]] ; then
+				! ${EAPI} =~ ^(0|1|2|3|4)$ ]] ; then
 				# This is only strict starting with EAPI 5, since implicit IUSE
 				# is not well defined for earlier EAPIs (see bug #449708).
 				die "USE Flag '${u}' not in IUSE for ${CATEGORY}/${PF}"

diff --git a/doc/meson.build b/doc/meson.build
index a671d7114f..bd0bef01d4 100644
--- a/doc/meson.build
+++ b/doc/meson.build
@@ -24,7 +24,6 @@ docbook_src = [
     'package/ebuild/eapi/2.docbook',
     'package/ebuild/eapi/3.docbook',
     'package/ebuild/eapi/4.docbook',
-    'package/ebuild/eapi/4-slot-abi.docbook',
     'package/ebuild/eapi/5.docbook',
     'package/ebuild/helper_functions.docbook',
     'package/ebuild/phases.docbook',

diff --git a/doc/package/ebuild/eapi/4-slot-abi.docbook b/doc/package/ebuild/eapi/4-slot-abi.docbook
deleted file mode 100644
index 08e2cef750..0000000000
--- a/doc/package/ebuild/eapi/4-slot-abi.docbook
+++ /dev/null
@@ -1,70 +0,0 @@
-<section id='package-ebuild-eapi-4-slot-abi'>
-<title>EAPI 4-slot-abi</title>
-<section id='package-ebuild-eapi-4-slot-abi-metadata'>
-<title>Metadata</title>
-<section id='package-ebuild-eapi-4-slot-abi-metadata-slot-sub-slot-abi'>
-<title>SLOT Supports Optional "sub-slot" ABI part</title>
-<para>
-In order to represent cases in which an upgrade to a new version of a package
-requires reverse dependencies to be rebuilt, the SLOT variable may contain an
-optional "sub-slot" ABI part that is delimited by a '/' character.
-</para>
-<para>
-For
-example, the package 'dev-libs/glib-2.30.2' may set SLOT="2/2.30" in order to
-indicate a sub-slot value of "2.30". This package will be matched by
-dependency atoms such as 'dev-libs/glib:2' or 'dev-libs/glib:2/2.30', where
-the sub-slot part of the atom is optional.
-</para>
-<para>
-If SLOT does not contain a sub-slot
-part, then it is considered to have an implicit sub-slot that is equal to the
-SLOT value. For example, SLOT="0" is implicitly equal to SLOT="0/0".
-</para>
-<para>
-Refer to the
-<link linkend="package-ebuild-eapi-4-slot-abi-metadata-dependency-atom-slot-abi-equal-operator">
-:= operator </link> documentation for more information about sub-slot usage.
-</para>
-</section>
-<section id='package-ebuild-eapi-4-slot-abi-metadata-dependency-atom-slot-abi-equal-operator'>
-<title>Dependency Atom slot/sub-slot := Operator</title>
-<para>
-Dependency atom syntax now supports slot/sub-slot := operators which allow the
-specific slot/sub-slot that a package is built against to be recorded, so that it's
-possible to automatically determine when a package needs to be rebuilt due to
-having a dependency upgraded to a different slot/sub-slot.
-</para>
-<para>
-For example, if a package is built
-against the package 'dev-libs/glib-2.30.2' with SLOT="2/2.30", then dependency
-atoms such as 'dev-libs/glib:=' or 'dev-libs/glib:2=' will be rewritten at
-build time to be recorded as 'dev-libs/glib:2/2.30='.
-</para>
-<para>
-For another example, if
-a package is built against the package 'sys-libs/db-4.8.30' with SLOT="4.8",
-then a dependency atom such as 'sys-libs/db:=' will be rewritten at build time
-to be recorded as 'sys-libs/db:4.8/4.8='. In this case, since SLOT="4.8" does
-not contain a sub-slot part, the sub-slot is considered to be implicitly equal
-to "4.8".
-</para>
-<para>
-When dependencies are rewritten as described above, the slot/sub-slot recorded in
-the atom is always equal to that of the highest matched version that is
-installed at build time.
-</para>
-</section>
-<section id='package-ebuild-eapi-4-slot-abi-metadata-dependency-atom-slot-abi-asterisk-operator'>
-<title>Dependency Atom slot/sub-slot :* Operator</title>
-<para>
-The new :* operator is used to express dependencies that can change versions
-at runtime without requiring reverse dependencies to be rebuilt. For example,
-a dependency atom such as 'dev-libs/glib:*' can be used to match any slot of
-the 'dev-libs/glib' package, and dependency atom such as 'dev-libs/glib:2*'
-can be used to specifically match slot '2' of the same package (ignoring its
-sub-slot).
-</para>
-</section>
-</section>
-</section>

diff --git a/doc/portage.docbook b/doc/portage.docbook
index 6e9ad74d67..13b3223655 100644
--- a/doc/portage.docbook
+++ b/doc/portage.docbook
@@ -19,7 +19,6 @@
 	<!ENTITY package_ebuild_eapi_2 SYSTEM "package/ebuild/eapi/2.docbook">
 	<!ENTITY package_ebuild_eapi_3 SYSTEM "package/ebuild/eapi/3.docbook">
 	<!ENTITY package_ebuild_eapi_4 SYSTEM "package/ebuild/eapi/4.docbook">
-	<!ENTITY package_ebuild_eapi_4_slot_abi SYSTEM "package/ebuild/eapi/4-slot-abi.docbook">
 	<!ENTITY package_ebuild_eapi_5 SYSTEM "package/ebuild/eapi/5.docbook">
 	<!ENTITY qa SYSTEM "qa.docbook">
 	<!ENTITY config SYSTEM "config.docbook">

diff --git a/lib/_emerge/main.py b/lib/_emerge/main.py
index 465e20163d..44e05c3dfd 100644
--- a/lib/_emerge/main.py
+++ b/lib/_emerge/main.py
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 import argparse
@@ -496,8 +496,7 @@ def parse_opts(tmpcmdline, silent=False):
             "help": "Ignore the slot/sub-slot := operator parts of dependencies that have "
             "been recorded when packages where built. This option is intended "
             "only for debugging purposes, and it only affects built packages "
-            "that specify slot/sub-slot := operator dependencies using the "
-            'experimental "4-slot-abi" EAPI.',
+            "that specify slot/sub-slot := operator dependencies.",
             "choices": y_or_n,
         },
         "--ignore-soname-deps": {

diff --git a/lib/portage/__init__.py b/lib/portage/__init__.py
index 50689b0d2b..0a4e89a4dd 100644
--- a/lib/portage/__init__.py
+++ b/lib/portage/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 1998-2024 Gentoo Authors
+# Copyright 1998-2025 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 # pylint: disable=ungrouped-imports
 
@@ -520,7 +520,6 @@ _deprecated_eapis = frozenset(
         "3_pre1",
         "3_pre2",
         "4_pre1",
-        "4-slot-abi",
         "5_pre1",
         "5_pre2",
         "6_pre1",

diff --git a/lib/portage/eapi.py b/lib/portage/eapi.py
index 86b27bdbc5..bdf60ef101 100644
--- a/lib/portage/eapi.py
+++ b/lib/portage/eapi.py
@@ -1,4 +1,4 @@
-# Copyright 2010-2021 Gentoo Authors
+# Copyright 2010-2025 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 import collections
@@ -193,7 +193,6 @@ class Eapi:
         "2",
         "3",
         "4",
-        "4-slot-abi",
         "5",
         "6",
         "7",

diff --git a/lib/portage/update.py b/lib/portage/update.py
index 0abb92094d..b996d511eb 100644
--- a/lib/portage/update.py
+++ b/lib/portage/update.py
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 import errno
@@ -269,7 +269,7 @@ def parse_updates(mycontent):
                     invalid_slot = True
                     break
                 if "/" in slot:
-                    # EAPI 4-slot-abi style SLOT is currently not supported.
+                    # EAPI 5 style subslot is currently not supported.
                     invalid_slot = True
                     break
 


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2025-01-11 20:16 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-01-11 20:16 [gentoo-commits] proj/portage:master commit in: bin/, lib/portage/, lib/_emerge/, doc/package/ebuild/eapi/, /, doc/ Ulrich Müller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox