From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 99B6315813A for ; Sat, 11 Jan 2025 20:16:26 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id BF886E07E1; Sat, 11 Jan 2025 20:16:25 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 9BEDEE07E1 for ; Sat, 11 Jan 2025 20:16:25 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 7307F34027D for ; Sat, 11 Jan 2025 20:16:24 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id C4318AED for ; Sat, 11 Jan 2025 20:16:22 +0000 (UTC) From: "Ulrich Müller" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Ulrich Müller" Message-ID: <1736626528.d34f2dcec57e2bd5c52baff7eccdd2e70b0b6684.ulm@gentoo> Subject: [gentoo-commits] proj/portage:master commit in: bin/, lib/portage/, lib/_emerge/, doc/package/ebuild/eapi/, /, doc/ X-VCS-Repository: proj/portage X-VCS-Files: NEWS bin/eapi.sh bin/phase-functions.sh bin/phase-helpers.sh doc/meson.build doc/package/ebuild/eapi/4-slot-abi.docbook doc/portage.docbook lib/_emerge/main.py lib/portage/__init__.py lib/portage/eapi.py lib/portage/update.py X-VCS-Directories: bin/ lib/portage/ lib/_emerge/ / doc/package/ebuild/eapi/ doc/ X-VCS-Committer: ulm X-VCS-Committer-Name: Ulrich Müller X-VCS-Revision: d34f2dcec57e2bd5c52baff7eccdd2e70b0b6684 X-VCS-Branch: master Date: Sat, 11 Jan 2025 20:16:22 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 463f52f5-fc70-4dae-8b7b-46ca8f48a795 X-Archives-Hash: f9cf89774ed4bc73625cf3167e31edfb commit: d34f2dcec57e2bd5c52baff7eccdd2e70b0b6684 Author: Ulrich Müller gentoo org> AuthorDate: Sat Jan 11 11:05:15 2025 +0000 Commit: Ulrich Müller gentoo 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 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 @@ -
-EAPI 4-slot-abi -
-Metadata -
-SLOT Supports Optional "sub-slot" ABI part - -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. - - -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. - - -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". - - -Refer to the - -:= operator documentation for more information about sub-slot usage. - -
-
-Dependency Atom slot/sub-slot := Operator - -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. - - -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='. - - -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". - - -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. - -
-
-Dependency Atom slot/sub-slot :* Operator - -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). - -
-
-
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 @@ - 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