diff options
| author | root <root@alpha.trunkmasters.com> | 2026-07-27 03:04:55 -0500 |
|---|---|---|
| committer | root <root@alpha.trunkmasters.com> | 2026-07-27 03:04:55 -0500 |
| commit | cae7be1ab2bd23fee3929a8e940d968ee86a78e6 (patch) | |
| tree | 97cc406771ec329a0480aab0f7fad2319be66e5c | |
| parent | 704373259ee68c274d8ce04949a32d64de4b6014 (diff) | |
| download | baldeagleos-repo-cae7be1ab2bd23fee3929a8e940d968ee86a78e6.tar.gz baldeagleos-repo-cae7be1ab2bd23fee3929a8e940d968ee86a78e6.tar.xz baldeagleos-repo-cae7be1ab2bd23fee3929a8e940d968ee86a78e6.zip | |
Adding metadata
351 files changed, 7723 insertions, 3226 deletions
diff --git a/app-admin/puppet-lint/Manifest b/app-admin/puppet-lint/Manifest index a926a8999c7d..ead6c33d059c 100644 --- a/app-admin/puppet-lint/Manifest +++ b/app-admin/puppet-lint/Manifest @@ -1,2 +1,2 @@ -DIST puppet-lint-4.2.4.gem 82432 BLAKE2B 54bd65b917c184163adca920767b88d064cdd8c931d7911a64698d68a7b335055bd95bff91c462ecaf4111a231186ee5d2f2de42a04abffb519a67a4825bec59 SHA512 19b28de4e5d183dd46727cc4f7f7a6b81eb5ec7d0c7ca23514a015e43a7528bfc110853b82e65ac5da4d002abc3c21ce5d10abb6a97717b540d13570fd42eb6b DIST puppet-lint-4.3.0.gem 84480 BLAKE2B 2f97bb263c71dbd95c5ffa7fda30d1bb29764734f505b8da04a0e2ebe9ec959736ce5df14073ae1d06611dadb19c19f4f95e07de7ac49fd1d4c6846c021dd17f SHA512 d9099c1e67e6afcd06873ae5562823f42134fa0904456b54a2e863e5f14f7584c4f31ef57f4bfdfdeb451a63d5aa65fc4262be4417f7f00072fff30755c0359c +DIST puppet-lint-5.1.1.gem 84992 BLAKE2B 8964165d5b2d01a8cf431e6219e9864e4e2cf406b44da26ee59f6e68d454014ea8f9d4d9b2062c9731a54de915a6404d4f207229d96717e4b581c94bcbbacfb1 SHA512 b9efc981c01ca6a290249222460c7d9afa204c3bf7d615f278cfd9d8ffc365054e68141756b166af20f296c59677a13c09440b6e04849b1cb2a90316340f2b70 diff --git a/app-admin/puppet-lint/puppet-lint-4.2.4.ebuild b/app-admin/puppet-lint/puppet-lint-5.1.1.ebuild index 5ff4b067055b..319cdaa95123 100644 --- a/app-admin/puppet-lint/puppet-lint-4.2.4.ebuild +++ b/app-admin/puppet-lint/puppet-lint-5.1.1.ebuild @@ -1,8 +1,9 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33" + +USE_RUBY="ruby32 ruby33 ruby34" RUBY_FAKEGEM_RECIPE_TEST="rspec3" @@ -17,14 +18,7 @@ HOMEPAGE="https://github.com/puppetlabs/puppet-lint" LICENSE="MIT" SLOT="0" -KEYWORDS="amd64 ~x86" - -PATCH_NAME="${PN}-4.2.3-pr181-fix-warnings.patch" -#SRC_URI+=" https://github.com/puppetlabs/puppet-lint/pull/181.patch -> ${PATCH_NAME} " - -#PATCHES=( -# "${DISTDIR}/${PATCH_NAME}" -#) +KEYWORDS="~amd64 ~x86" ruby_add_bdepend "test? ( dev-ruby/rspec-its:1 diff --git a/app-admin/puppet/puppet-8.10.0-r1.ebuild b/app-admin/puppet/puppet-8.10.0-r1.ebuild index 82a388ac2b27..382477ae0f02 100644 --- a/app-admin/puppet/puppet-8.10.0-r1.ebuild +++ b/app-admin/puppet/puppet-8.10.0-r1.ebuild @@ -3,7 +3,7 @@ EAPI="7" -USE_RUBY="ruby31 ruby32 ruby33" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" RUBY_FAKEGEM_TASK_DOC="doc:all" RUBY_FAKEGEM_EXTRAINSTALL="locales" diff --git a/app-benchmarks/geekbench/Manifest b/app-benchmarks/geekbench/Manifest index 3b4e6c07a991..b2cecfe69385 100644 --- a/app-benchmarks/geekbench/Manifest +++ b/app-benchmarks/geekbench/Manifest @@ -4,7 +4,10 @@ DIST Geekbench-3.4.4-Linux.tar.gz 9998564 BLAKE2B feb3b2c9b2c57c1a71bb5148110752 DIST Geekbench-4.4.4-Linux.tar.gz 71089467 BLAKE2B 257f79644e20189950fb7c9121e32337526e0c9bf5b0f0f66568c107e2a15c65459eecd332bea4fcbc2d9bb1287bab0e4f37b2100f419ffa52c5396828d86c38 SHA512 c43e1d658d361347efb012824ff0b81975ace35c866a1c2a227adeb86167292b639f19e8fe190d2f0de395f19280a99cb20342325177222f634c9e71c9226e78 DIST Geekbench-5.5.1-Linux.tar.gz 93199992 BLAKE2B e2ff24da19134778dd1b3036ac3fb8b2d99746dbe41b1959cb74522613a7b9a8a0e3796d22351af877a9ea7a734c6b101a0ffadfd3bbc2e29fb9b12e59106848 SHA512 0fd90d55eaaf178e4c981ef6ef54808d1ff86edc92c907a5d8e2a3a379c2289e614d917db330a3d748c818bcedb2dc69cad250b1b98ba80287c6d9a66382bcc4 DIST Geekbench-5.5.1-LinuxARMPreview.tar.gz 111581640 BLAKE2B be413e306a77c0612be380d0ec0d589067365ac1c4091b55a08b722d469180c9cf9126cc0597e3f3c8a75acf77d2a0423bc43b753f30a219924b1a7df640243d SHA512 1d76b9a7928f89f1fdfa0e3cc9859c305e109cbbe72b013b4c249b03722273c985ad1e5d818341a6e399e9e7b3c61136856df87c9f5e61bcc9e7e0455f80e61b +DIST Geekbench-5.5.1-LinuxRISCVPreview.tar.gz 90517700 BLAKE2B 139e0baa9efb58a3ef058a869f793421cbf38b44cedeee7d35189fa59d0707a8f418010a78f72a249eed3e161e58e0300871cac7b85589cd53df17f8b899a146 SHA512 1d552f8124ddbca1a797819eb148e94083ce2cf5dfdf83672d44aaebcd933a61671d86e99d54c676afc2eaa9e9ac892f11f47770dced65ec94d1172124f41db2 DIST Geekbench-6.7.1-Linux.tar.gz 228093838 BLAKE2B 48a8dbcbcec21253b92dfd460e9bf32b203f18b3d141bb242d1f335e40acda7df2ec70a04711cddbc5727755b3445d358dbf8e90f21a145412acef2e06ae03cb SHA512 be38a8152a0ed9fc0c2e90ec0c7666326d8b416eb6d19a1aaccf6c18537f096fa57737eb7986f37d2429386944e00789127d4e7751301a89de82cbe0ecda22b7 DIST Geekbench-6.7.1-LinuxARMPreview.tar.gz 192088662 BLAKE2B 57b9d904c16e5201bdd954cbaea6bfd2afdf33ac0c22be3a720dfe710812400d9a30f995512fd86e6d5ce546cf166af4a089eea207dab47aac074730d812f49a SHA512 d05897bcff3361e3b064dafe7f87e692ea860a952f3c0037cda74f31b2150228ef565a369e91d2b0305df2e663a8cd3a68ba022d7319e1f75ad7698dc6a62753 +DIST Geekbench-6.7.1-LinuxRISCVPreview.tar.gz 224502681 BLAKE2B fea9db8fdd37e18e46faeaac2d190d87914b2c2135227d3187161f02e7fdedf9b2464ebaaf63f9b560c28386136e0411ee44d367ec8f00a859a1f4123a7c3bc0 SHA512 fee193cf9c155ba8acafd0f557320fb4d15056375d2755121873a33f8511f0858e35b8a6b86a17a7f389b423d50b274f9a1391a183119e51b4defe49ea64e42a DIST Geekbench-7.0.0-Linux.tar.gz 393434626 BLAKE2B ba38fdf4929ff4e14bd5265cd2ea9290a1d5bad5464260e12932082d04e89ce5aca925c005897b0ca44890db49fddcec95c908c81baa714d5b6201ea360f5080 SHA512 4e86a39e46bff3158fcc404571d81ab1f8ffa812cb5e86770823ac422f5fd100c309083c5057d8085f243aad6c58b0a972ec5c60e17b862df08b78e7d0ad8d78 DIST Geekbench-7.0.0-LinuxARMPreview.tar.gz 332522909 BLAKE2B 0194942bbdf75b259c00b770404d29761a89194de101574ae79f54562ee61993692db1e8e86bde7a6a6af73af2f86f242f30f45e22a797a0f878788932c4e005 SHA512 20f9010a06e43ebc8f45922b5daf0b59e314438b97be3f3a96c3ef1cf8e70eb03e702c7f78bf670fb5c86879ca74ab9b74240957b3c9603d52a2e748c389c621 +DIST Geekbench-7.0.0-LinuxRISCVPreview.tar.gz 461220579 BLAKE2B 79f7f3033eed4e39b23f0561c6d8fc4ac9c7d79a1925be688132aee0e0fcaf2e5f9e842031d99d25e4cb2de79bfc416c07db731847dc467f06aa2b5869ab37c2 SHA512 0def1cad1ecff269ba0328a444bd058f9b9cd1a2134a3781e44df63f16672e93d3f556ba0f7b1add7c568c1d9623e86428c8ab1318acdb7569de0f42a5840226 diff --git a/app-benchmarks/geekbench/geekbench-5.5.1.ebuild b/app-benchmarks/geekbench/geekbench-5.5.1.ebuild index 322b011f8c04..59a775cfe81e 100644 --- a/app-benchmarks/geekbench/geekbench-5.5.1.ebuild +++ b/app-benchmarks/geekbench/geekbench-5.5.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -8,18 +8,20 @@ HOMEPAGE="https://www.geekbench.com/" SRC_URI=" amd64? ( https://cdn.geekbench.com/Geekbench-${PV}-Linux.tar.gz ) arm64? ( https://cdn.geekbench.com/Geekbench-${PV}-LinuxARMPreview.tar.gz ) + riscv? ( https://cdn.geekbench.com/Geekbench-${PV}-LinuxRISCVPreview.tar.gz ) " S="${WORKDIR}" LICENSE="geekbench" SLOT="5" -KEYWORDS="-* amd64 arm arm64" +KEYWORDS="-* amd64 arm arm64 ~riscv" RESTRICT="bindist mirror" QA_PREBUILT=" opt/geekbench5/geekbench_aarch64 opt/geekbench5/geekbench_armv7 + opt/geekbench5/geekbench_riscv64 opt/geekbench5/geekbench_x86_64 opt/geekbench5/geekbench5 " @@ -30,12 +32,15 @@ pkg_nofetch() { } src_install() { + local MY_S="Geekbench-${PV}-Linux$(usex arm 'ARMPreview' '')" local MY_S="Geekbench-${PV}-Linux$(usex arm64 'ARMPreview' '')" + local MY_S="Geekbench-${PV}-Linux$(usex riscv 'RISCVPreview' '')" exeinto /opt/geekbench5 use amd64 && doexe "${MY_S}"/geekbench_x86_64 use arm && doexe "${MY_S}"/geekbench_armv7 use arm64 && doexe "${MY_S}"/geekbench_aarch64 + use riscv && doexe "${MY_S}"/geekbench_riscv64 doexe "${MY_S}"/geekbench5 insinto /opt/geekbench5 diff --git a/app-benchmarks/geekbench/geekbench-6.7.1.ebuild b/app-benchmarks/geekbench/geekbench-6.7.1.ebuild index ad8838293422..5f3abd2498fc 100644 --- a/app-benchmarks/geekbench/geekbench-6.7.1.ebuild +++ b/app-benchmarks/geekbench/geekbench-6.7.1.ebuild @@ -8,18 +8,21 @@ HOMEPAGE="https://www.geekbench.com/" SRC_URI=" amd64? ( https://cdn.geekbench.com/Geekbench-${PV}-Linux.tar.gz ) arm64? ( https://cdn.geekbench.com/Geekbench-${PV}-LinuxARMPreview.tar.gz ) + riscv? ( https://cdn.geekbench.com/Geekbench-${PV}-LinuxRISCVPreview.tar.gz ) " S="${WORKDIR}" LICENSE="geekbench" SLOT="6" -KEYWORDS="-* amd64 arm64" +KEYWORDS="-* amd64 arm64 ~riscv" RESTRICT="bindist mirror" QA_PREBUILT=" opt/geekbench6/geekbench_aarch64 opt/geekbench6/geekbench_avx2 + opt/geekbench7/geekbench_rv64gc + opt/geekbench7/geekbench_rv64gcbv opt/geekbench6/geekbench_x86_64 opt/geekbench6/geekbench6 " @@ -31,10 +34,12 @@ pkg_nofetch() { src_install() { local MY_S="Geekbench-${PV}-Linux$(usex arm64 'ARMPreview' '')" + local MY_S="Geekbench-${PV}-Linux$(usex riscv 'RISCVPreview' '')" exeinto /opt/geekbench6 - use amd64 && doexe "${MY_S}"/geekbench_avx2 "${MY_S}"/geekbench_x86_64 + use amd64 && doexe "${MY_S}"/geekbench_{avx2,x86_64} use arm64 && doexe "${MY_S}"/geekbench_aarch64 + use riscv && doexe "${MY_S}"/geekbench_{rv64gc,rv64gcbv} doexe "${MY_S}"/geekbench6 insinto /opt/geekbench6 diff --git a/app-benchmarks/geekbench/geekbench-7.0.0.ebuild b/app-benchmarks/geekbench/geekbench-7.0.0.ebuild index 4d3cbb6dafa8..f57403f787d3 100644 --- a/app-benchmarks/geekbench/geekbench-7.0.0.ebuild +++ b/app-benchmarks/geekbench/geekbench-7.0.0.ebuild @@ -8,12 +8,13 @@ HOMEPAGE="https://www.geekbench.com/" SRC_URI=" amd64? ( https://cdn.geekbench.com/Geekbench-${PV}-Linux.tar.gz ) arm64? ( https://cdn.geekbench.com/Geekbench-${PV}-LinuxARMPreview.tar.gz ) + riscv? ( https://cdn.geekbench.com/Geekbench-${PV}-LinuxRISCVPreview.tar.gz ) " S="${WORKDIR}" LICENSE="geekbench" SLOT="7" -KEYWORDS="-* ~amd64 ~arm64" +KEYWORDS="-* ~amd64 ~arm64 ~riscv" RESTRICT="bindist mirror" @@ -22,6 +23,9 @@ BDEPEND="dev-util/patchelf" QA_PREBUILT=" opt/geekbench7/geekbench_aarch64 opt/geekbench7/geekbench_avx2 + opt/geekbench7/geekbench_rv64gc + opt/geekbench7/geekbench_rv64gcbv + opt/geekbench7/geekbench_rva23 opt/geekbench7/geekbench_x86_64 opt/geekbench7/geekbench7 " @@ -35,22 +39,27 @@ src_prepare() { default local MY_S="Geekbench-${PV}-Linux$(usex arm64 'ARMPreview' '')" + local MY_S="Geekbench-${PV}-Linux$(usex riscv 'RISCVPreview' '')" # Fix QA insecure RUNPATHs patchelf --remove-rpath "${MY_S}"/geekbench7 || die if use amd64; then patchelf --remove-rpath "${MY_S}"/geekbench_{avx2,x86_64} || die - else + elif use arm64; then patchelf --remove-rpath "${MY_S}"/geekbench_aarch64 || die + else + patchelf --remove-rpath "${MY_S}"/geekbench_{rv64gc,rv64gcbv,rva23} || die fi } src_install() { local MY_S="Geekbench-${PV}-Linux$(usex arm64 'ARMPreview' '')" + local MY_S="Geekbench-${PV}-Linux$(usex riscv 'RISCVPreview' '')" exeinto /opt/geekbench7 - use amd64 && doexe "${MY_S}"/geekbench_avx2 "${MY_S}"/geekbench_x86_64 + use amd64 && doexe "${MY_S}"/geekbench_{avx2,x86_64} use arm64 && doexe "${MY_S}"/geekbench_aarch64 + use riscv && doexe "${MY_S}"/geekbench_{rv64gc,rv64gcbv,rva23} doexe "${MY_S}"/geekbench7 insinto /opt/geekbench7 diff --git a/app-misc/nnn/files/nnn-5.0_fix_strcasecmp.patch b/app-misc/nnn/files/nnn-5.0_fix_strcasecmp.patch deleted file mode 100644 index 15fcdaca3c64..000000000000 --- a/app-misc/nnn/files/nnn-5.0_fix_strcasecmp.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/src/icons-hash.c b/src/icons-hash.c -index f0f2b0947..699af33b5 100644 ---- a/src/icons-hash.c -+++ b/src/icons-hash.c -@@ -23,6 +23,7 @@ - - #include <stdio.h> - #include <string.h> -+#include <strings.h> - #include <stdlib.h> - #include <limits.h> - #include "icons.h" diff --git a/app-shells/dash/files/0001-builtin-Fix-octal-escapes-in-dollar-single-quotes.patch b/app-shells/dash/files/0001-builtin-Fix-octal-escapes-in-dollar-single-quotes.patch deleted file mode 100644 index 63da50ae880a..000000000000 --- a/app-shells/dash/files/0001-builtin-Fix-octal-escapes-in-dollar-single-quotes.patch +++ /dev/null @@ -1,88 +0,0 @@ -From cd610905162812ca7dcf246b3dc46bce5e28e7cb Mon Sep 17 00:00:00 2001 -Message-ID: <cd610905162812ca7dcf246b3dc46bce5e28e7cb.1781226895.git.sam@gentoo.org> -From: Kerin Millar <kfm@plushkava.net> -Date: Sun, 31 May 2026 13:36:09 +0800 -Subject: [PATCH 1/2] builtin: Fix octal escapes in dollar-single-quotes - -The test suite of gentoo-functions recently uncovered a bug concerning -the handling of octal escape sequences within dollar-single-quotes. -Here is a reproducer: - - $ dash -c "x=\$'\\201'; printf '%s' \"\$x\"" | od -An -tx1 - 88 - -That is, despite the input being 0x81, the output is 0x88. Indeed, any -input between 0x81..0x88 is adversely affected and some - such as 0x82 - -induce a segfault. - -I noticed the following macros in src/parser.h: - - #define CTL_FIRST -127 /* first 'special' character */ - #define CTLESC -127 /* escape next character */ - #define CTL_LAST -120 /* last 'special' character */ - -Reinterpreted as unsigned char, the CTL_FIRST..CTL_LAST range maps -exactly to 0x81..0x88: - - $ perl -e 'printf "%x\0", $_ & 0xFF for -127..-120' | xargs -0 - 81 82 83 84 85 86 87 88 - -From this, I was able to deduce that all of these bytes must be preceded -by CTLESC in order to be taken literally. Make it so. - -Link: https://gitweb.gentoo.org/proj/gentoo-functions.git/commit/?id=947090fb7704 -Signed-off-by: Kerin Millar <kfm@plushkava.net> - -The escape should also be applied to \x sequences. In fact \x81 -was totally broken as it produced a multi-byte character. Fix this -by merging these two code paths. - -Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> ---- - src/bltin/printf.c | 10 ++++++++++ - 1 file changed, 10 insertions(+) - -diff --git a/src/bltin/printf.c b/src/bltin/printf.c -index 106aecd..671e781 100644 ---- a/src/bltin/printf.c -+++ b/src/bltin/printf.c -@@ -332,6 +332,7 @@ unsigned conv_escape(char *str0, char *out0, bool mbchar) - char *out = out0; - char *str = str0; - unsigned value; -+ int och; - int ch; - - ch = *str; -@@ -359,12 +360,18 @@ unsigned conv_escape(char *str0, char *out0, bool mbchar) - } - - str--; -+ -+check_value: -+ if (mbchar && (signed char)value >= CTL_FIRST && -+ (signed char)value <= CTL_LAST) -+ USTPUTC(CTLESC, out); - break; - - case 'x': - ch = 2; - - hex: -+ och = ch; - value = 0; - do { - int c = *++str; -@@ -391,6 +398,9 @@ hex: - if (value < 0x80) - break; - -+ if (och <= 2) -+ goto check_value; -+ - if (value < 0x110000) { - int mboff = (mbchar - 1) * 2; - unsigned uni = value; --- -2.54.0 - diff --git a/app-shells/dash/files/0002-builtin-Fix-unaligned-access-in-conv_escape.patch b/app-shells/dash/files/0002-builtin-Fix-unaligned-access-in-conv_escape.patch deleted file mode 100644 index 05a92a295021..000000000000 --- a/app-shells/dash/files/0002-builtin-Fix-unaligned-access-in-conv_escape.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 28c4d5b126e336f1632c074fa002969ff42e7a51 Mon Sep 17 00:00:00 2001 -Message-ID: <28c4d5b126e336f1632c074fa002969ff42e7a51.1781226895.git.sam@gentoo.org> -In-Reply-To: <cd610905162812ca7dcf246b3dc46bce5e28e7cb.1781226895.git.sam@gentoo.org> -References: <cd610905162812ca7dcf246b3dc46bce5e28e7cb.1781226895.git.sam@gentoo.org> -From: Herbert Xu <herbert@gondor.apana.org.au> -Date: Sun, 31 May 2026 13:51:02 +0800 -Subject: [PATCH 2/2] builtin: Fix unaligned access in conv_escape - -When writing out the unicode character in conv_escape, use memcpy -instead of direct assignment as the output buffer may not be aligned -sufficiently. - -Reported-by: Nathan Mills <the.true.nathan.mills@gmail.com> -Fixes: 776424a8f915 ("parser: Add dollar single quote") -Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> ---- - src/bltin/printf.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/bltin/printf.c b/src/bltin/printf.c -index 671e781..c2c3615 100644 ---- a/src/bltin/printf.c -+++ b/src/bltin/printf.c -@@ -429,7 +429,7 @@ hex: - USTPUTC(CTLMBCHAR, out); - USTPUTC(len, out); - STADJUST(mboff, out); -- *(uint32_t *)out = value; -+ memcpy(out, &value, 4); - STADJUST(len, out); - USTPUTC(len, out); - USTPUTC(CTLMBCHAR, out); --- -2.54.0 - diff --git a/app-shells/dash/files/0003-input-Fix-overeager-NUL-deletion-in-SMALL-mode.patch b/app-shells/dash/files/0003-input-Fix-overeager-NUL-deletion-in-SMALL-mode.patch deleted file mode 100644 index 6e17a9d031bc..000000000000 --- a/app-shells/dash/files/0003-input-Fix-overeager-NUL-deletion-in-SMALL-mode.patch +++ /dev/null @@ -1,147 +0,0 @@ -From e170d9a49b3652460d6272bba9cd20afbb8140f2 Mon Sep 17 00:00:00 2001 -From: Herbert Xu <herbert@gondor.apana.org.au> -Date: Sat, 20 Jun 2026 17:23:30 +0800 -Subject: [PATCH] input: Fix overeager NUL deletion in SMALL mode - -NUL characters should not be removed from input lines that are -yet to be processed because they could become the input to the -next executed utility. - -Fix this by moving the NUL deletion into pgetc when history support -is off (IS_DEFINED_SMALL). - -Also fold __pgetc into pgetc since the only other caller of it -is preadbuffer and that logic can also be moved up. - -Finally add a missing signed char cast for the unget characters. - -Reported-by: Kerin Millar <kfm@plushkava.net> -Fixes: 44ae22beedf8 ("input: Disable lleft in SMALL mode") -Fixes: 2c92409145d0 ("input: Allow MB_LEN_MAX calls to pungetc") -Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> ---- - src/input.c | 66 ++++++++++++++++++++++++++++------------------------- - 1 file changed, 35 insertions(+), 31 deletions(-) - -diff --git a/src/input.c b/src/input.c -index 0fb2f18..e9b9d33 100644 ---- a/src/input.c -+++ b/src/input.c -@@ -217,39 +217,47 @@ static void freestrings(struct strpush *sp) - } - - --static int __pgetc(void) -+/* -+ * Read a character from the script, returning PEOF on end of file. -+ * Nul characters in the input are silently discarded. -+ */ -+ -+int __attribute__((noinline)) pgetc(void) - { -+ struct strpush *sp = parsefile->spfree; - int c; - -+ if (unlikely(sp)) -+ freestrings(sp); -+ -+again: - if (parsefile->unget) { - long unget = -(long)(unsigned)parsefile->unget--; - -- return parsefile->nextc[unget]; -+ return (signed char)parsefile->nextc[unget]; - } - -- if (parsefile->nleft > 0) { -+nextc: -+ if (likely(parsefile->nleft > 0)) { - parsefile->nleft--; - c = (signed char)*parsefile->nextc++; -+ } else if (unlikely(parsefile->strpush)) { -+ popstring(); -+ /* The freestrings call must be delayed til the next -+ * pgetc call for PEOA to work properly. -+ */ -+ goto again; - } else - c = preadbuffer(); - -- return c; --} -- -- --/* -- * Read a character from the script, returning PEOF on end of file. -- * Nul characters in the input are silently discarded. -- */ -- --int __attribute__((noinline)) pgetc(void) --{ -- struct strpush *sp = parsefile->spfree; -- -- if (unlikely(sp)) -- freestrings(sp); -+ /* delete nul characters */ -+ if (IS_DEFINED_SMALL && unlikely(!c)) { -+ parsefile->nextc = memmove(parsefile->nextc - 1, -+ parsefile->nextc, parsefile->nleft); -+ goto nextc; -+ } - -- return __pgetc(); -+ return c; - } - - int pgetc_eoa(void) -@@ -374,10 +382,6 @@ static int preadbuffer(void) - int more; - char *q; - -- if (unlikely(parsefile->strpush)) { -- popstring(); -- return __pgetc(); -- } - if (parsefile->eof & 2) { - eof: - parsefile->eof = 3; -@@ -408,6 +412,12 @@ again: - } - } - -+ if (IS_DEFINED_SMALL) { -+ q += more; -+ more = 0; -+ goto done; -+ } -+ - /* delete nul characters */ - for (;;) { - int c; -@@ -422,9 +432,6 @@ again: - - q++; - -- if (IS_DEFINED_SMALL) -- goto check; -- - switch (c) { - case '\n': - goto done; -@@ -439,11 +446,8 @@ again: - } - - check: -- if (more <= 0) { -- if (!IS_DEFINED_SMALL) -- goto again; -- break; -- } -+ if (more <= 0) -+ goto again; - } - done: - input_set_lleft(parsefile, more); --- -2.53.0 - diff --git a/dev-java/log4j-12-api/log4j-12-api-2.26.0.ebuild b/dev-java/log4j-12-api/log4j-12-api-2.26.0.ebuild index 00ff4cdd81cc..15ba7bd899f5 100644 --- a/dev-java/log4j-12-api/log4j-12-api-2.26.0.ebuild +++ b/dev-java/log4j-12-api/log4j-12-api-2.26.0.ebuild @@ -15,7 +15,7 @@ SRC_URI="mirror://apache/logging/log4j/${PV}/apache-log4j-${PV}-src.zip LICENSE="Apache-2.0" SLOT="0" -KEYWORDS="amd64 ~arm64 ~ppc64" +KEYWORDS="amd64 ~arm64 ppc64" RESTRICT="test" # Too many test-dependencies not packaged. BDEPEND=" diff --git a/dev-java/log4j-core/log4j-core-2.26.0.ebuild b/dev-java/log4j-core/log4j-core-2.26.0.ebuild index 0cb0c37ca19a..294bca7594e3 100644 --- a/dev-java/log4j-core/log4j-core-2.26.0.ebuild +++ b/dev-java/log4j-core/log4j-core-2.26.0.ebuild @@ -15,7 +15,7 @@ SRC_URI="mirror://apache/logging/log4j/${PV}/apache-log4j-${PV}-src.zip LICENSE="Apache-2.0" SLOT="0" -KEYWORDS="amd64 ~arm64 ~ppc64" +KEYWORDS="amd64 ~arm64 ppc64" BDEPEND=" app-arch/unzip diff --git a/dev-java/openjdk/Manifest b/dev-java/openjdk/Manifest index 7a0063a99938..d965e6685f02 100644 --- a/dev-java/openjdk/Manifest +++ b/dev-java/openjdk/Manifest @@ -1,12 +1,16 @@ DIST openjdk-11.0.18-riscv.patch.xz 272672 BLAKE2B b079612032a5bf135b05bdd1da16f2823772a5d9a18447a435f191daf78c5429a15c2e9ea64758dc9b26ee2a88275532b4f27714b2a7e4489f920c0ed2f5003b SHA512 c0426f243c5aa581d90366cb01ce811e34883a9d8a0298cab420378470e8eb427a56932ca1fbb5ed57e7430be2b38c6bc4491028ebaa25be0a938ba0bb2baf45 DIST openjdk-11.0.31_p11.tar.gz 116714248 BLAKE2B 67e4dd3e3383a67c82e41d6ab66f415ac18833b3bbfad9741ee07c9b8b050bcba811aa4188075b26e465017355392851b2b5fd813ced2c37572b6d75c92ac22f SHA512 78e2e96395b0fa17f4565924abc3e034bb660763e6a3a278380232c17d0aff64d000bcec0e6ff0a37e24c5affcb0ffbdacb5565d52375f41dedfdc000e5c0dc6 +DIST openjdk-11.0.32_p9.tar.gz 116752810 BLAKE2B e964c0afaf8720f93b3d7a643ae2d5ebc66746a4f7b9b6143e0704d25b01ab96c6b514dda5a97c00bcd06ed78cc80a4abd33d216b899dd2396d6e9c93af095b1 SHA512 e1305baf9dbf348ef4b8e68ca9e0104824bd09a746aa8700e5d789b1e8193d17aa3079923fb95a39d39252bb9ed5a995dcdac569a2425071ace1ffbcbe4b934c DIST openjdk-17.0.19_p10.tar.gz 108200542 BLAKE2B 4a556fa52abc25457a8dab8d17002d2b60bef568bdab6052e91164c67097e4b25d65211024c15317f33cbe45474bfc84e75e64735b1d0f349c917a06dd5e9a5a SHA512 fb37c130bccaf1de37640a0cb0f74b8114c7c8756d28767972b57dedd6b2d86b9da71db57903659497a5e2f2a44b3eea634e551c75ba93a5ec896df1c637a463 +DIST openjdk-17.0.20_p8.tar.gz 108361148 BLAKE2B b3fe2c0a33c6c5e90230a7b454f9cf8995205cdba73a765089d8444173beb61aca898fe8d0c31e60e240430491772a6dcf0dfedde585a575ad83c96dd333bcf8 SHA512 46c0e16890752b5a010f8c666b056f4ffa229e077c59a4a69255e30193d6d1d3a1dc9cc8b02bf4418bd3667fcc05ef287ce5609228e8d143dd3b70f020cd7dbd DIST openjdk-21.0.11_p10.tar.gz 114063372 BLAKE2B 3c5542b2169c6aa9c597a0a20ae879ab4890e7e39466d01c639e05653e90aa8198378f6fe6d9daa6d9ad7237f09cdd2320db517b83d4886f292c25d15c1dba4e SHA512 a2283a4bb07018d89b45b8dfabb34b058a3279f3cc96cddbd17c351df3e137ada401d2940d55f59f75bc5483c645415542a3af01658fbc82754e5f454055956a +DIST openjdk-21.0.12_p8.tar.gz 114138339 BLAKE2B ec0757e617ff218eb3811e19b415d4ff92f33d5d5a10e09aa27ed658aff50f0d3ac3e953839c7a6a3c8ebf67c124ece10c1a638107cf7a91b2348c4f8bf03949 SHA512 47bd054adc8ca52ba68d212375a0d4f32b822dcbbf54bfde902b1ab09b7117cca03e5f54d07f62ed9b5be5b8b88aac225e0881a7a2b6ea653a89fa64193a937d DIST openjdk-25.0.3_p9.tar.gz 119542671 BLAKE2B 51d04064ceb052cc09133f4f406ed04fe5d0bb72ada943ec663c9e6405dd6a5ac41e9edd2a5e7079282de717b62db437c41c75dd959ddfdb57852cec6f0f7f34 SHA512 3784667a41df9faf8e9da96a6f83f03372fb362a3c1878a4d368816996c20b2efddc3154ba42ab6e0b180b981f1202debcb93ef67117d96dcdfa1b8dd51f8709 -DIST openjdk-25.0.4_beta4.tar.gz 119641816 BLAKE2B b6f49ea719fb4d03022d92657b0673df148aad571e46ac04d366d95fc66e1864dbdbd1eacb0875d42adad94f574252a083f58c9758051f6976c7113586191029 SHA512 dc6977d34c0969db3c7109ba3f9805de54d5469044f3192b338e75eb93a02e0484933ec192b4f081213c65892662a7ad8786fce98b74f7edadd93416cbcf27ff -DIST openjdk-27_beta25.tar.gz 121465724 BLAKE2B 2b23b479c018e5fd55ae6ecc647ec414f7a68d628a5692023f8d31af4e2b55f1638917b41306a659520e972f2da3beeb0a68a58b86d3e1d32fe744a8ab58b9b5 SHA512 851736d2ae1ff27ed58785c33c7186dfffa0815d9b53e9e7a3ccaaf79399c8bdb2b000121242e49b7f1659f2c0abbce08beffd31f4c3b083b12de2ed1e7759ec -DIST openjdk-28_alpha1.tar.gz 121479328 BLAKE2B c33de56f5fdd8cc7eaf758a54a23fe30fd00d8aa209fe61ab2e8f5ffa1a17acd4a16d649b18bdeaca4658245db9d75217a4a331072c2f43b6e3690a8126c4a47 SHA512 8f080d65a7260d746561574f130a51caf1182b4809802047841aa264fb850847d8cf65fe9eda6777c9d303ed3c6d7e827f42d93b4d671e514cf8b2e5544df8c5 +DIST openjdk-25.0.4_p7.tar.gz 119669964 BLAKE2B f3314ac0197b30609db25a40825f90ce208fc19412a07dfe0bead2db185a04f1fbfb8230fbe44ea6279b39f16fcc8a1d0b132df1acbaa72a41ab12bd734d32fc SHA512 904b1a621fe0031ae4eed9b25ebc4bb977e07822dbd4796e40eefe3d25e8c1c5f86f33037ec1c5364e66dfe1f098415db6c7fc6f488a93c9b298c52461d3683b +DIST openjdk-27_beta31.tar.gz 121480809 BLAKE2B d253a741233680314b923a0fe42b8c514185c48ef4460008ebb8faef1688901b1e9c6c9963c8b9a9d057ad53dc2a99baccadd4965a7dba19c3e6936d2c704dcd SHA512 52fc20cee140dc0229df56e5495154dccdc28800a816e7572f150d9958b93e59c8c50cb1162dc7e36ee1964f8d28f73d17680b9c9df10cf3d8ecff229763179e +DIST openjdk-28_alpha7.tar.gz 121816659 BLAKE2B 3d0d214c7bee8a8ab89f46494d1da036164c9173b91439fdb9083b61152a6ad9624208b79a0a3884a6151718b5b40b86125a13e39e652e80500f09a58c571eb5 SHA512 71f55e86fa069a663f6586125de01518b67c208b60d13ddae1849ec31c83865f213396eabdcc6f8e807ca301b7ee3ed6e3251dafeb3a9d36982c2b5da8d34d02 DIST openjdk-8.492_p09.tar.gz 93934156 BLAKE2B 7b0236327d911139b4d8995c3807f115c8ea2ce2807c7026413d6eebe4bf86575868ceb727af754ca19bfaa84e7d9c82453ca2a0c7c80d367ceedf393d02d94d SHA512 9abde3b53581e41cc47d9a70a768be02aeb4942e03e9a3797f034188f4d99cdc7475305583ec72176011ac8b02a9a2e879df15977ae6a0c8b691409acb8a4e51 +DIST openjdk-8.502_p07.tar.gz 93987454 BLAKE2B 4118c050e590f7058ec47e4988eee66708be04c652dfa38b17273e83ff176c893e635202eef1db690f8a6ed322fe63000258e4c69006901a766098c1203990ad SHA512 fdcb0cc19cba5bb8cabfc3c6439ae5d1ce33d5fa500b1fe2a7b8152bedaacdda11e58fd2eb0357a815dfc1a44423023a9149409c0cdaac931fe0958e91bca343 DIST openjdk-bootstrap-11.0.13_p8-ppc64.tar.xz 108215404 BLAKE2B 5e6c0b905b34b437137922b73a9724da96b8832186fea945f8c73d941db822ca1cc5718f3ecb4607ed98d1f8241c9f365b54caaf978863e8b84680a94f067b5d SHA512 732e2220219d42be10589fcaf2420da87ebc8564b4afc6bd02f61f31cdca9c31b339366e34d374fb814499b92f8aa796435a18f28e10c8cb00d9a0f5953bb60e DIST openjdk-bootstrap-11.0.13_p8-x86.tar.xz 105420236 BLAKE2B d3137ad497937a9a04dedf38776f3ac45bf3b115d275991fd8582b72ade48390b6aa8ad89e0b4d34fa6a787a3c413dab20b32ef347dc8733544e810150c55d29 SHA512 f71a7ef8fbf19b0595dd7d4ebe52bbe1c95b8c17f34d092472c5f5ce8caf52a053f22db8587f1649f9a96ad01c0c632be343342812f5a8cc4ff843b33b8d9b0f DIST openjdk-bootstrap-11.0.14_p9-riscv.tar.xz 104601676 BLAKE2B 5f976e8a626a829fae70ad6c007f10bfeff79e29c85d6c75fb2f5ff8984fd2a2bd44ee6e07958dbbdaaed761c6839d375e1b5ba6cffc63b02ad9e2c9178310db SHA512 580dec81626553fe3e7afd0f6385a733ba80a0502cf0f9e8bdc973048887290c9ab6171267d61d8838c4ece4de58c9ca8b78540bd52b1757495a27175057ec64 diff --git a/dev-java/openjdk/openjdk-11.0.32_p9.ebuild b/dev-java/openjdk/openjdk-11.0.32_p9.ebuild new file mode 100644 index 000000000000..a51dfcd87843 --- /dev/null +++ b/dev-java/openjdk/openjdk-11.0.32_p9.ebuild @@ -0,0 +1,321 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit check-reqs flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs + +# don't change versioning scheme +# to find correct _p number, look at +# https://github.com/openjdk/jdk${SLOT}u/tags +# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point +# to exact same commit sha. we should always use the full version. +# -ga tag is just for humans to easily identify General Availability release tag. +# we need -ga tag to fetch tarball and unpack it, but exact number everywhere else to +# set build version properly +MY_PV="${PV%_p*}-ga" + +# variable name format: <UPPERCASE_KEYWORD>_XPAK +PPC64_XPAK="11.0.13_p8" # big-endian bootstrap tarball +RISCV_XPAK="11.0.14_p9" # lp64d bootstrap tarball +X86_XPAK="11.0.13_p8" + +# Usage: bootstrap_uri <keyword> <version> [extracond] +# Example: $(bootstrap_uri ppc64 17.0.1_p12 big-endian) +# Output: ppc64? ( big-endian? ( https://...17.0.1_p12-ppc64.tar.xz ) ) +bootstrap_uri() { + local baseuri="https://distfiles.gentoo.org/pub/dev/arthurzam@gentoo.org/dev-java/${PN}/${PN}-bootstrap" + local suff="tar.xz" + local kw="${1:?${FUNCNAME[0]}: keyword not specified}" + local ver="${2:?${FUNCNAME[0]}: version not specified}" + local cond="${3-}" + + # here be dragons + echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}.${suff} ${cond:+) })" +} + +DESCRIPTION="Open source implementation of the Java programming language" +HOMEPAGE="https://openjdk.org" +SRC_URI=" + https://github.com/${PN}/jdk11u/archive/jdk-${MY_PV}.tar.gz + -> ${P}.tar.gz + !system-bootstrap? ( + $(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian) + $(bootstrap_uri riscv ${RISCV_XPAK}) + $(bootstrap_uri x86 ${X86_XPAK}) + ) + riscv? ( https://dev.gentoo.org/~arthurzam/distfiles/dev-java/openjdk/openjdk-11.0.18-riscv.patch.xz ) +" +S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV}" + +LICENSE="GPL-2-with-classpath-exception" +SLOT="$(ver_cut 1)" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" + +IUSE="alsa big-endian cups debug doc examples headless-awt javafx +jbootstrap selinux source system-bootstrap systemtap" + +REQUIRED_USE=" + javafx? ( alsa !headless-awt ) + !system-bootstrap? ( jbootstrap ) +" + +COMMON_DEPEND=" + media-libs/freetype:2= + media-libs/giflib:0/7 + media-libs/harfbuzz:= + media-libs/libpng:0= + media-libs/lcms:2= + virtual/zlib:= + media-libs/libjpeg-turbo:0= + systemtap? ( dev-debug/systemtap ) +" + +# Many libs are required to build, but not to run, make is possible to remove +# by listing conditionally in RDEPEND unconditionally in DEPEND +RDEPEND=" + ${COMMON_DEPEND} + >=sys-apps/baselayout-java-0.1.0-r1 + !headless-awt? ( + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXi + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libXt + x11-libs/libXtst + ) + alsa? ( media-libs/alsa-lib ) + cups? ( net-print/cups ) + selinux? ( sec-policy/selinux-java ) +" + +DEPEND=" + ${COMMON_DEPEND} + app-arch/zip + media-libs/alsa-lib + net-print/cups + x11-base/xorg-proto + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXi + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libXt + x11-libs/libXtst + javafx? ( dev-java/openjfx:${SLOT}= ) + system-bootstrap? ( + || ( + dev-java/openjdk-bin:${SLOT}[gentoo-vm(+)] + dev-java/openjdk:${SLOT}[gentoo-vm(+)] + ) + ) +" + +# The space required to build varies wildly depending on USE flags, +# ranging from 2GB to 16GB. This function is certainly not exact but +# should be close enough to be useful. +openjdk_check_requirements() { + local M + M=2048 + M=$(( $(usex jbootstrap 2 1) * $M )) + M=$(( $(usex debug 3 1) * $M )) + M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M )) + + CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE} +} + +pkg_pretend() { + openjdk_check_requirements + if [[ ${MERGE_TYPE} != binary ]]; then + has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876" + fi +} + +pkg_setup() { + openjdk_check_requirements + java-vm-2_pkg_setup + + [[ ${MERGE_TYPE} == "binary" ]] && return + + JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}" + JAVA_PKG_WANT_SOURCE="${SLOT}" + JAVA_PKG_WANT_TARGET="${SLOT}" + + if use system-bootstrap; then + for vm in ${JAVA_PKG_WANT_BUILD_VM}; do + if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then + java-pkg-2_pkg_setup + return + fi + done + fi +} + +src_prepare() { + use riscv && eapply "${WORKDIR}"/openjdk-11.0.18-riscv.patch + default + chmod +x configure || die +} + +src_configure() { + local myconf=() + + if ! use system-bootstrap; then + local xpakvar="${ARCH^^}_XPAK" + export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}" + fi + + # Work around stack alignment issue, bug #647954. + use x86 && append-flags -mincoming-stack-boundary=2 + + # bug 906987; append-cppflags doesnt work + use elibc_musl && append-flags -D_LARGEFILE64_SOURCE + + # Strip some flags users may set, but should not. #818502 + filter-flags -fexceptions + + # Strip lto related flags, we rely on --with-jvm-features=link-time-opt + # See bug #833097 and bug #833098. + tc-is-lto && myconf+=( --with-jvm-features=link-time-opt ) + filter-lto + filter-flags -fdevirtualize-at-ltrans + + # bug #945282 + append-cflags -std=gnu17 + + # Enabling full docs appears to break doc building. If not + # explicitly disabled, the flag will get auto-enabled if pandoc and + # graphviz are detected. pandoc has loads of dependencies anyway. + + myconf+=( + --disable-ccache + --disable-precompiled-headers + --enable-full-docs=no + --with-boot-jdk="${JDK_HOME}" + --with-extra-cflags="${CFLAGS}" + --with-extra-cxxflags="${CXXFLAGS}" + --with-extra-ldflags="${LDFLAGS}" + --with-freetype="${XPAK_BOOTSTRAP:-system}" + --with-giflib="${XPAK_BOOTSTRAP:-system}" + --with-harfbuzz="${XPAK_BOOTSTRAP:-system}" + --with-lcms="${XPAK_BOOTSTRAP:-system}" + --with-libjpeg="${XPAK_BOOTSTRAP:-system}" + --with-libpng="${XPAK_BOOTSTRAP:-system}" + --with-native-debug-symbols=$(usex debug internal none) + --with-vendor-name="Gentoo" + --with-vendor-url="https://gentoo.org" + --with-vendor-bug-url="https://bugs.gentoo.org" + --with-vendor-vm-bug-url="https://bugs.openjdk.java.net" + --with-vendor-version-string="${PVR}" + --with-version-pre="" + --with-version-string="${PV%_p*}" + --with-version-build="${PV#*_p}" + --with-zlib="${XPAK_BOOTSTRAP:-system}" + --enable-dtrace=$(usex systemtap yes no) + --enable-headless-only=$(usex headless-awt yes no) + $(tc-is-clang && echo "--with-toolchain-type=clang") + ) + ! use riscv && myconf+=( --with-jvm-features=shenandoahgc ) + + if use javafx; then + # this is not useful for users, just for upstream developers + # build system compares mesa version in md file + # https://bugs.gentoo.org/822612 + export LEGAL_EXCLUDES=mesa3d.md + + local zip="${EPREFIX}/usr/$(get_libdir)/openjfx-${SLOT}/javafx-exports.zip" + if [[ -r ${zip} ]]; then + myconf+=( --with-import-modules="${zip}" ) + else + die "${zip} not found or not readable" + fi + fi + + # Workaround for bug #938302 + if use systemtap && has_version "dev-debug/systemtap[-dtrace-symlink(+)]" ; then + myconf+=( DTRACE="${BROOT}"/usr/bin/stap-dtrace ) + fi + + if use !system-bootstrap ; then + addpredict /dev/random + addpredict /proc/self/coredump_filter + fi + + ( + unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC XARGS + CFLAGS= CXXFLAGS= LDFLAGS= \ + CONFIG_SITE=/dev/null \ + econf "${myconf[@]}" + ) +} + +src_compile() { + # Too brittle - gets confused by e.g. -Oline + export MAKEOPTS="-j$(makeopts_jobs) -l$(makeopts_loadavg)" + unset GNUMAKEFLAGS MAKEFLAGS + + local myemakeargs=( + JOBS=$(makeopts_jobs) + LOG=debug + CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror + NICE= # Use PORTAGE_NICENESS, don't adjust further down + $(usex doc docs '') + $(usex jbootstrap bootcycle-images product-images) + ) + emake "${myemakeargs[@]}" -j1 +} + +src_install() { + local dest="/usr/$(get_libdir)/${PN}-${SLOT}" + local ddest="${ED}/${dest#/}" + + # https://bugs.gentoo.org/922741 + docompress "${dest}/man" + + cd "${S}"/build/*-release/images/jdk || die + + # Create files used as storage for system preferences. + mkdir .systemPrefs || die + touch .systemPrefs/.system.lock || die + touch .systemPrefs/.systemRootModFile || die + + # Oracle and IcedTea have libjsoundalsa.so depending on + # libasound.so.2 but OpenJDK only has libjsound.so. Weird. + if ! use alsa ; then + rm -v lib/libjsound.* || die + fi + + if ! use examples ; then + rm -vr demo/ || die + fi + + if ! use source ; then + rm -v lib/src.zip || die + fi + + rm -v lib/security/cacerts || die + + dodir "${dest}" + cp -pPR * "${ddest}" || die + + dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts + + # must be done before running itself + java-vm_set-pax-markings "${ddest}" + + einfo "Creating the Class Data Sharing archives and disabling usage tracking" + "${ddest}/bin/java" -server -Xshare:dump -Djdk.disableLastUsageTracking || die + + java-vm_install-env "${FILESDIR}"/${PN}.env.sh + java-vm_revdep-mask + java-vm_sandbox-predict /dev/random /proc/self/coredump_filter + + if use doc ; then + docinto html + dodoc -r "${S}"/build/*-release/images/docs/* + fi +} + +pkg_postinst() { + java-vm-2_pkg_postinst +} diff --git a/dev-java/openjdk/openjdk-17.0.20_p8.ebuild b/dev-java/openjdk/openjdk-17.0.20_p8.ebuild new file mode 100644 index 000000000000..582cb7aa53c0 --- /dev/null +++ b/dev-java/openjdk/openjdk-17.0.20_p8.ebuild @@ -0,0 +1,331 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit check-reqs dot-a flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs + +# variable name format: <UPPERCASE_KEYWORD>_XPAK +ARM64_XPAK="17.0.2_p8" # musl bootstrap install +PPC64_XPAK="17.0.1_p12" # big-endian bootstrap tarball +RISCV_XPAK="17.0.3_p7" +X86_XPAK="17.0.1_p12" + +# Usage: bootstrap_uri <keyword> <version> [extracond] +# Example: $(bootstrap_uri ppc64 17.0.1_p12 big-endian) +# Output: ppc64? ( big-endian? ( https://...17.0.1_p12-ppc64.tar.xz ) ) +bootstrap_uri() { + local baseuri="https://distfiles.gentoo.org/pub/dev/arthurzam@gentoo.org/dev-java/${PN}/${PN}-bootstrap" + local suff="tar.xz" + local kw="${1:?${FUNCNAME[0]}: keyword not specified}" + local ver="${2:?${FUNCNAME[0]}: version not specified}" + local cond="${3-}" + [[ ${cond} == elibc_musl* ]] && local musl=yes + + # here be dragons + echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}${musl:+-musl}.${suff} ${cond:+) })" +} + +# don't change versioning scheme +# to find correct _p number, look at +# https://github.com/openjdk/jdk${SLOT}u/tags +# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point +# to exact same commit sha. we should always use the full version. +# -ga tag is just for humans to easily identify General Availability release tag. +MY_PV="${PV%_p*}-ga" + +DESCRIPTION="Open source implementation of the Java programming language" +HOMEPAGE="https://openjdk.org" +SRC_URI=" + https://github.com/${PN}/jdk17u/archive/jdk-${MY_PV}.tar.gz + -> ${P}.tar.gz + !system-bootstrap? ( + $(bootstrap_uri arm64 ${ARM64_XPAK} elibc_musl) + $(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian) + $(bootstrap_uri x86 ${X86_XPAK}) + $(bootstrap_uri riscv ${RISCV_XPAK}) + ) +" +S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV//+/-}" + +LICENSE="GPL-2-with-classpath-exception" +SLOT="$(ver_cut 1)" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" + +IUSE="alsa big-endian cups debug doc examples headless-awt +jbootstrap selinux source static-libs system-bootstrap systemtap" + +REQUIRED_USE=" + !system-bootstrap? ( jbootstrap ) +" + +COMMON_DEPEND=" + media-libs/freetype:2= + media-libs/giflib:0/7 + media-libs/harfbuzz:= + media-libs/libpng:0= + media-libs/lcms:2= + virtual/zlib:= + media-libs/libjpeg-turbo:0= + systemtap? ( dev-debug/systemtap ) +" + +# Many libs are required to build, but not to run, make is possible to remove +# by listing conditionally in RDEPEND unconditionally in DEPEND +RDEPEND=" + ${COMMON_DEPEND} + >=sys-apps/baselayout-java-0.1.0-r1 + !headless-awt? ( + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXi + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libXt + x11-libs/libXtst + ) + alsa? ( media-libs/alsa-lib ) + cups? ( net-print/cups ) + selinux? ( sec-policy/selinux-java ) +" + +DEPEND=" + ${COMMON_DEPEND} + app-arch/zip + media-libs/alsa-lib + net-print/cups + x11-base/xorg-proto + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXi + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libXt + x11-libs/libXtst + system-bootstrap? ( + || ( + dev-java/openjdk-bin:${SLOT} + dev-java/openjdk:${SLOT} + ) + ) +" + +PATCHES=( + "${FILESDIR}/openjdk-17.0.16_p8-lto-memory.patch" +) + +# The space required to build varies wildly depending on USE flags, +# ranging from 2GB to 16GB. This function is certainly not exact but +# should be close enough to be useful. +openjdk_check_requirements() { + local M + M=2048 + M=$(( $(usex jbootstrap 2 1) * $M )) + M=$(( $(usex debug 3 1) * $M )) + M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M )) + + CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE} +} + +pkg_pretend() { + openjdk_check_requirements + if [[ ${MERGE_TYPE} != binary ]]; then + has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876" + fi +} + +pkg_setup() { + openjdk_check_requirements + java-vm-2_pkg_setup + + [[ ${MERGE_TYPE} == "binary" ]] && return + + JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}" + JAVA_PKG_WANT_SOURCE="${SLOT}" + JAVA_PKG_WANT_TARGET="${SLOT}" + + # The nastiness below is necessary while the gentoo-vm USE flag is + # masked. First we call java-pkg-2_pkg_setup if it looks like the + # flag was unmasked against one of the possible build VMs. If not, + # we try finding one of them in their expected locations. This would + # have been slightly less messy if openjdk-bin had been installed to + # /opt/${PN}-${SLOT} or if there was a mechanism to install a VM env + # file but disable it so that it would not normally be selectable. + + local vm + for vm in ${JAVA_PKG_WANT_BUILD_VM}; do + if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then + java-pkg-2_pkg_setup + return + fi + done +} + +src_prepare() { + default + chmod +x configure || die +} + +src_configure() { + local myconf=() + + if has_version dev-java/openjdk:${SLOT}; then + export JDK_HOME=${BROOT}/usr/$(get_libdir)/openjdk-${SLOT} + elif use !system-bootstrap ; then + local xpakvar="${ARCH^^}_XPAK" + export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}" + else + JDK_HOME=$(best_version -b dev-java/openjdk-bin:${SLOT}) + [[ -n ${JDK_HOME} ]] || die "Build VM not found!" + JDK_HOME=${JDK_HOME#*/} + JDK_HOME=${BROOT}/opt/${JDK_HOME%-r*} + export JDK_HOME + fi + + # Work around stack alignment issue, bug #647954. in case we ever have x86 + use x86 && append-flags -mincoming-stack-boundary=2 + + # bug 906987; append-cppflags doesnt work + use elibc_musl && append-flags -D_LARGEFILE64_SOURCE + + # Strip some flags users may set, but should not. #818502 + filter-flags -fexceptions + + # Strip lto related flags, we rely on --with-jvm-features=link-time-opt + # See bug #833097 and bug #833098. + tc-is-lto && myconf+=( --with-jvm-features=link-time-opt ) + filter-lto + filter-flags -fdevirtualize-at-ltrans + + if use static-libs ; then + lto-guarantee-fat + fi + + # Enabling full docs appears to break doc building. If not + # explicitly disabled, the flag will get auto-enabled if pandoc and + # graphviz are detected. pandoc has loads of dependencies anyway. + + myconf+=( + --disable-ccache + --disable-precompiled-headers + --disable-warnings-as-errors + --enable-full-docs=no + --with-boot-jdk="${JDK_HOME}" + --with-extra-cflags="${CFLAGS}" + --with-extra-cxxflags="${CXXFLAGS}" + --with-extra-ldflags="${LDFLAGS}" + --with-freetype="${XPAK_BOOTSTRAP:-system}" + --with-giflib="${XPAK_BOOTSTRAP:-system}" + --with-harfbuzz="${XPAK_BOOTSTRAP:-system}" + --with-lcms="${XPAK_BOOTSTRAP:-system}" + --with-libjpeg="${XPAK_BOOTSTRAP:-system}" + --with-libpng="${XPAK_BOOTSTRAP:-system}" + --with-native-debug-symbols=$(usex debug internal none) + --with-vendor-name="Gentoo" + --with-vendor-url="https://gentoo.org" + --with-vendor-bug-url="https://bugs.gentoo.org" + --with-vendor-vm-bug-url="https://bugs.openjdk.java.net" + --with-vendor-version-string="${PVR}" + --with-version-pre="" + --with-version-string="${PV%_p*}" + --with-version-build="${PV#*_p}" + --with-zlib="${XPAK_BOOTSTRAP:-system}" + --enable-jvm-feature-dtrace=$(usex systemtap yes no) + --enable-headless-only=$(usex headless-awt yes no) + $(tc-is-clang && echo "--with-toolchain-type=clang") + ) + + # Workaround for bug #938302 + if use systemtap && has_version "dev-debug/systemtap[-dtrace-symlink(+)]" ; then + myconf+=( DTRACE="${BROOT}"/usr/bin/stap-dtrace ) + fi + + if use !system-bootstrap ; then + addpredict /dev/random + addpredict /proc/self/coredump_filter + fi + + ( + unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC XARGS + CFLAGS= CXXFLAGS= LDFLAGS= \ + CONFIG_SITE=/dev/null \ + econf "${myconf[@]}" + ) +} + +src_compile() { + # Too brittle - gets confused by e.g. -Oline + export MAKEOPTS="-j$(makeopts_jobs) -l$(makeopts_loadavg)" + unset GNUMAKEFLAGS MAKEFLAGS + + local myemakeargs=( + JOBS=$(makeopts_jobs) + LOG=debug + CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror + NICE= # Use PORTAGE_NICENESS, don't adjust further down + $(usex doc docs '') + $(usex jbootstrap bootcycle-images product-images) + $(usev static-libs static-libs-image) + ) + emake "${myemakeargs[@]}" -j1 +} + +src_install() { + local dest="/usr/$(get_libdir)/${PN}-${SLOT}" + local ddest="${ED}/${dest#/}" + + # https://bugs.gentoo.org/922741 + docompress "${dest}/man" + + cd "${S}"/build/*-release/images/jdk || die + + # Create files used as storage for system preferences. + mkdir .systemPrefs || die + touch .systemPrefs/.system.lock || die + touch .systemPrefs/.systemRootModFile || die + + # Oracle and IcedTea have libjsoundalsa.so depending on + # libasound.so.2 but OpenJDK only has libjsound.so. Weird. + if ! use alsa ; then + rm -v lib/libjsound.* || die + fi + + if ! use examples ; then + rm -vr demo/ || die + fi + + if ! use source ; then + rm -v lib/src.zip || die + fi + + rm -v lib/security/cacerts || die + + dodir "${dest}" + cp -pPR * "${ddest}" || die + + dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts + + # must be done before running itself + java-vm_set-pax-markings "${ddest}" + + einfo "Creating the Class Data Sharing archives and disabling usage tracking" + "${ddest}/bin/java" -server -Xshare:dump -Djdk.disableLastUsageTracking || die + + java-vm_install-env "${FILESDIR}"/${PN}.env.sh + java-vm_revdep-mask + java-vm_sandbox-predict /dev/random /proc/self/coredump_filter + + if use doc ; then + docinto html + dodoc -r "${S}"/build/*-release/images/docs/* + fi + + if use static-libs ; then + cd "${S}"/build/*-release/images/static-libs || die + cp -pPR * "${ddest}" || die + strip-lto-bytecode "${ddest}" || die + fi +} + +pkg_postinst() { + java-vm-2_pkg_postinst +} diff --git a/dev-java/openjdk/openjdk-21.0.12_p8.ebuild b/dev-java/openjdk/openjdk-21.0.12_p8.ebuild new file mode 100644 index 000000000000..a43aa0c66b74 --- /dev/null +++ b/dev-java/openjdk/openjdk-21.0.12_p8.ebuild @@ -0,0 +1,330 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit check-reqs dot-a flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs + +# variable name format: <UPPERCASE_KEYWORD>_XPAK +PPC64_XPAK="21.0.0_p35" # big-endian bootstrap tarball +X86_XPAK="21.0.0_p35" + +# Usage: bootstrap_uri <keyword> <version> [extracond] +# Example: $(bootstrap_uri ppc64 17.0.1_p12 big-endian) +# Output: ppc64? ( big-endian? ( https://...17.0.1_p12-ppc64.tar.xz ) ) +bootstrap_uri() { + local baseuri="https://distfiles.gentoo.org/pub/dev/arthurzam@gentoo.org/dev-java/${PN}/${PN}-bootstrap" + local suff="tar.xz" + local kw="${1:?${FUNCNAME[0]}: keyword not specified}" + local ver="${2:?${FUNCNAME[0]}: version not specified}" + local cond="${3-}" + [[ ${cond} == elibc_musl* ]] && local musl=yes + + # here be dragons + echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}${musl:+-musl}.${suff} ${cond:+) })" +} + +# don't change versioning scheme +# to find correct _p number, look at +# https://github.com/openjdk/jdk${SLOT}u/tags +# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point +# to exact same commit sha. we should always use the full version. +# -ga tag is just for humans to easily identify General Availability release tag. +MY_PV="${PV%_p*}-ga" + +DESCRIPTION="Open source implementation of the Java programming language" +HOMEPAGE="https://openjdk.org" +SRC_URI=" + https://github.com/${PN}/jdk21u/archive/jdk-${MY_PV}.tar.gz + -> ${P}.tar.gz + !system-bootstrap? ( + $(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian) + $(bootstrap_uri x86 ${X86_XPAK}) + ) +" +S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV//+/-}" + +LICENSE="GPL-2-with-classpath-exception" +SLOT="$(ver_cut 1)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" + +IUSE="alsa big-endian cups debug doc examples headless-awt +jbootstrap selinux source static-libs +system-bootstrap systemtap" + +REQUIRED_USE=" + !system-bootstrap? ( jbootstrap ) + !system-bootstrap? ( || ( ppc64 x86 ) ) +" + +COMMON_DEPEND=" + media-libs/freetype:2= + media-libs/giflib:0/7 + media-libs/harfbuzz:= + media-libs/libpng:0= + media-libs/lcms:2= + virtual/zlib:= + media-libs/libjpeg-turbo:0= + systemtap? ( dev-debug/systemtap ) +" + +# Many libs are required to build, but not to run, make is possible to remove +# by listing conditionally in RDEPEND unconditionally in DEPEND +RDEPEND=" + ${COMMON_DEPEND} + >=sys-apps/baselayout-java-0.1.0-r1 + !headless-awt? ( + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXi + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libXt + x11-libs/libXtst + ) + alsa? ( media-libs/alsa-lib ) + cups? ( net-print/cups ) + selinux? ( sec-policy/selinux-java ) +" + +DEPEND=" + ${COMMON_DEPEND} + app-arch/zip + media-libs/alsa-lib + net-print/cups + x11-base/xorg-proto + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXi + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libXt + x11-libs/libXtst + system-bootstrap? ( + || ( + dev-java/openjdk-bin:${SLOT} + dev-java/openjdk:${SLOT} + ) + ) +" + +# The space required to build varies wildly depending on USE flags, +# ranging from 2GB to 16GB. This function is certainly not exact but +# should be close enough to be useful. +openjdk_check_requirements() { + local M + M=2048 + M=$(( $(usex jbootstrap 2 1) * $M )) + M=$(( $(usex debug 3 1) * $M )) + M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M )) + + CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE} +} + +pkg_pretend() { + openjdk_check_requirements + if [[ ${MERGE_TYPE} != binary ]]; then + has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876" + fi +} + +pkg_setup() { + openjdk_check_requirements + java-vm-2_pkg_setup + + [[ ${MERGE_TYPE} == "binary" ]] && return + + JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}" + JAVA_PKG_WANT_SOURCE="${SLOT}" + JAVA_PKG_WANT_TARGET="${SLOT}" + + # The nastiness below is necessary while the gentoo-vm USE flag is + # masked. First we call java-pkg-2_pkg_setup if it looks like the + # flag was unmasked against one of the possible build VMs. If not, + # we try finding one of them in their expected locations. This would + # have been slightly less messy if openjdk-bin had been installed to + # /opt/${PN}-${SLOT} or if there was a mechanism to install a VM env + # file but disable it so that it would not normally be selectable. + + local vm + for vm in ${JAVA_PKG_WANT_BUILD_VM}; do + if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then + java-pkg-2_pkg_setup + return + fi + done +} + +src_prepare() { + default + chmod +x configure || die +} + +src_configure() { + local myconf=() + + if has_version dev-java/openjdk:${SLOT}; then + export JDK_HOME=${BROOT}/usr/$(get_libdir)/openjdk-${SLOT} + elif use !system-bootstrap ; then + local xpakvar="${ARCH^^}_XPAK" + export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}" + else + JDK_HOME=$(best_version -b dev-java/openjdk-bin:${SLOT}) + [[ -n ${JDK_HOME} ]] || die "Build VM not found!" + JDK_HOME=${JDK_HOME#*/} + JDK_HOME=${BROOT}/opt/${JDK_HOME%-r*} + export JDK_HOME + fi + + # Work around stack alignment issue, bug #647954. in case we ever have x86 + use x86 && append-flags -mincoming-stack-boundary=2 + + # bug 906987; append-cppflags doesnt work + use elibc_musl && append-flags -D_LARGEFILE64_SOURCE + + # Strip some flags users may set, but should not. #818502 + filter-flags -fexceptions + + # Strip lto related flags, we rely on --with-jvm-features=link-time-opt + # See bug #833097 and bug #833098. + # + # .. but because of -Werror=odr (bug #916735), we disable it + # entirely for now. + #tc-is-lto && myconf+=( --with-jvm-features=link-time-opt ) + filter-lto + filter-flags -fdevirtualize-at-ltrans + + if use static-libs ; then + lto-guarantee-fat + fi + + # Enabling full docs appears to break doc building. If not + # explicitly disabled, the flag will get auto-enabled if pandoc and + # graphviz are detected. pandoc has loads of dependencies anyway. + + myconf+=( + --disable-ccache + --disable-precompiled-headers + --disable-warnings-as-errors + --enable-full-docs=no + --with-boot-jdk="${JDK_HOME}" + --with-extra-cflags="${CFLAGS}" + --with-extra-cxxflags="${CXXFLAGS}" + --with-extra-ldflags="${LDFLAGS}" + --with-freetype="${XPAK_BOOTSTRAP:-system}" + --with-giflib="${XPAK_BOOTSTRAP:-system}" + --with-harfbuzz="${XPAK_BOOTSTRAP:-system}" + --with-lcms="${XPAK_BOOTSTRAP:-system}" + --with-libjpeg="${XPAK_BOOTSTRAP:-system}" + --with-libpng="${XPAK_BOOTSTRAP:-system}" + --with-stdc++lib=dynamic + --with-native-debug-symbols=$(usex debug internal none) + --with-vendor-name="Gentoo" + --with-vendor-url="https://gentoo.org" + --with-vendor-bug-url="https://bugs.gentoo.org" + --with-vendor-vm-bug-url="https://bugs.openjdk.java.net" + --with-vendor-version-string="${PVR}" + --with-version-pre="" + --with-version-string="${PV%_p*}" + --with-version-build="${PV#*_p}" + --with-zlib="${XPAK_BOOTSTRAP:-system}" + --enable-jvm-feature-dtrace=$(usex systemtap yes no) + --enable-headless-only=$(usex headless-awt yes no) + $(tc-is-clang && echo "--with-toolchain-type=clang") + ) + + use riscv && myconf+=( --with-boot-jdk-jvmargs="-Djdk.lang.Process.launchMechanism=vfork" ) + + # Workaround for bug #938302 + if use systemtap && has_version "dev-debug/systemtap[-dtrace-symlink(+)]" ; then + myconf+=( DTRACE="${BROOT}"/usr/bin/stap-dtrace ) + fi + + if use !system-bootstrap ; then + addpredict /dev/random + addpredict /proc/self/coredump_filter + fi + + ( + unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC XARGS + CFLAGS= CXXFLAGS= LDFLAGS= \ + CONFIG_SITE=/dev/null \ + econf "${myconf[@]}" + ) +} + +src_compile() { + # Too brittle - gets confused by e.g. -Oline + export MAKEOPTS="-j$(makeopts_jobs) -l$(makeopts_loadavg)" + unset GNUMAKEFLAGS MAKEFLAGS + + local myemakeargs=( + JOBS=$(makeopts_jobs) + LOG=debug + CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror + NICE= # Use PORTAGE_NICENESS, don't adjust further down + $(usex doc docs '') + $(usex jbootstrap bootcycle-images product-images) + $(usev static-libs static-libs-image) + ) + emake "${myemakeargs[@]}" -j1 +} + +src_install() { + local dest="/usr/$(get_libdir)/${PN}-${SLOT}" + local ddest="${ED}/${dest#/}" + + # https://bugs.gentoo.org/922741 + docompress "${dest}/man" + + cd "${S}"/build/*-release/images/jdk || die + + # Create files used as storage for system preferences. + mkdir .systemPrefs || die + touch .systemPrefs/.system.lock || die + touch .systemPrefs/.systemRootModFile || die + + # Oracle and IcedTea have libjsoundalsa.so depending on + # libasound.so.2 but OpenJDK only has libjsound.so. Weird. + if ! use alsa ; then + rm -v lib/libjsound.* || die + fi + + if ! use examples ; then + rm -vr demo/ || die + fi + + if ! use source ; then + rm -v lib/src.zip || die + fi + + rm -v lib/security/cacerts || die + + dodir "${dest}" + cp -pPR * "${ddest}" || die + + dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts + + # must be done before running itself + java-vm_set-pax-markings "${ddest}" + + einfo "Creating the Class Data Sharing archives and disabling usage tracking" + "${ddest}/bin/java" -server -Xshare:dump -Djdk.disableLastUsageTracking || die + + java-vm_install-env "${FILESDIR}"/${PN}.env.sh + java-vm_revdep-mask + java-vm_sandbox-predict /dev/random /proc/self/coredump_filter + + if use doc ; then + docinto html + dodoc -r "${S}"/build/*-release/images/docs/* + fi + + if use static-libs ; then + cd "${S}"/build/*-release/images/static-libs || die + cp -pPR * "${ddest}" || die + strip-lto-bytecode "${ddest}" || die + fi +} + +pkg_postinst() { + java-vm-2_pkg_postinst +} diff --git a/dev-java/openjdk/openjdk-25.0.4_beta4.ebuild b/dev-java/openjdk/openjdk-25.0.4_p7.ebuild index b15d5f744b35..580433e4d6a5 100644 --- a/dev-java/openjdk/openjdk-25.0.4_beta4.ebuild +++ b/dev-java/openjdk/openjdk-25.0.4_p7.ebuild @@ -3,9 +3,6 @@ EAPI=8 -# Avoid circular dependency -JAVA_DISABLE_DEPEND_ON_JAVA_DEP_CHECK="true" - inherit check-reqs dot-a flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs # variable name format: <UPPERCASE_KEYWORD>_XPAK diff --git a/dev-java/openjdk/openjdk-27_beta25.ebuild b/dev-java/openjdk/openjdk-27_beta31.ebuild index f54182ad880d..d41765820cc8 100644 --- a/dev-java/openjdk/openjdk-27_beta25.ebuild +++ b/dev-java/openjdk/openjdk-27_beta31.ebuild @@ -3,9 +3,6 @@ EAPI=8 -# Avoid circular dependency -JAVA_DISABLE_DEPEND_ON_JAVA_DEP_CHECK="true" - inherit check-reqs dot-a flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs # variable name format: <UPPERCASE_KEYWORD>_XPAK diff --git a/dev-java/openjdk/openjdk-28_alpha1.ebuild b/dev-java/openjdk/openjdk-28_alpha7.ebuild index d256e90fc4dd..8f54f142d19a 100644 --- a/dev-java/openjdk/openjdk-28_alpha1.ebuild +++ b/dev-java/openjdk/openjdk-28_alpha7.ebuild @@ -3,9 +3,6 @@ EAPI=8 -# Avoid circular dependency -JAVA_DISABLE_DEPEND_ON_JAVA_DEP_CHECK="true" - inherit check-reqs dot-a flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs # variable name format: <UPPERCASE_KEYWORD>_XPAK diff --git a/dev-java/openjdk/openjdk-8.502_p07.ebuild b/dev-java/openjdk/openjdk-8.502_p07.ebuild new file mode 100644 index 000000000000..2fddd6f251df --- /dev/null +++ b/dev-java/openjdk/openjdk-8.502_p07.ebuild @@ -0,0 +1,295 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit check-reqs flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs + +# don't change versioning scheme +# to find correct _p number, look at +# https://github.com/openjdk/jdk${SLOT}u/tags +# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point +# to exact same commit sha. we should always use the full version. +# -ga tag is just for humans to easily identify General Availability release tag. +# we need -ga tag to fetch tarball and unpack it, but exact number everywhere else to +# set build version properly +MY_PV="$(ver_rs 1 'u' 2 '-' ${PV%_p*}-ga)" + +# variable name format: <UPPERCASE_KEYWORD>_XPAK +X86_XPAK="8.402_p06" +PPC64_XPAK="8.402_p06" + +# Usage: bootstrap_uri <keyword> <version> [extracond] +# Example: $(bootstrap_uri x86 8.402_p06) +# Output: ppc64? ( big-endian? ( https://...8.402_p06-x86.tar.xz ) ) +bootstrap_uri() { + local baseuri="https://distfiles.gentoo.org/pub/dev/arthurzam@gentoo.org/dev-java/${PN}/${PN}-bootstrap" + local suff="tar.xz" + local kw="${1:?${FUNCNAME[0]}: keyword not specified}" + local ver="${2:?${FUNCNAME[0]}: version not specified}" + local cond="${3-}" + + # here be dragons + echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}.${suff} ${cond:+) })" +} + +DESCRIPTION="Open source implementation of the Java programming language" +HOMEPAGE="https://openjdk.org" +SRC_URI=" + https://github.com/openjdk/jdk8u/archive/jdk${MY_PV}.tar.gz + -> ${P}.tar.gz + !system-bootstrap? ( + $(bootstrap_uri x86 ${X86_XPAK}) + $(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian) + ) +" +S="${WORKDIR}/jdk${SLOT}u-jdk${MY_PV}" + +LICENSE="GPL-2-with-classpath-exception" +SLOT="$(ver_cut 1)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" +IUSE="alsa big-endian debug cups doc examples headless-awt +jbootstrap selinux system-bootstrap source" + +COMMON_DEPEND=" + media-libs/freetype:2= + media-libs/giflib:0/7 + virtual/zlib:= +" +# Many libs are required to build, but not to run, make is possible to remove +# by listing conditionally in RDEPEND unconditionally in DEPEND +RDEPEND=" + ${COMMON_DEPEND} + >=sys-apps/baselayout-java-0.1.0-r1 + !headless-awt? ( + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXi + x11-libs/libXrender + x11-libs/libXt + x11-libs/libXtst + ) + alsa? ( media-libs/alsa-lib ) + cups? ( net-print/cups ) + selinux? ( sec-policy/selinux-java ) +" + +DEPEND=" + ${COMMON_DEPEND} + app-arch/zip + media-libs/alsa-lib + net-print/cups + virtual/pkgconfig + x11-base/xorg-proto + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXi + x11-libs/libXrender + x11-libs/libXt + x11-libs/libXtst + system-bootstrap? ( + || ( + dev-java/openjdk-bin:${SLOT} + dev-java/openjdk:${SLOT} + ) + ) +" + +BDEPEND=" + virtual/pkgconfig + sys-devel/gcc:* +" + +PATCHES=( + "${FILESDIR}/openjdk-8-insantiate-arrayallocator.patch" + "${FILESDIR}/openjdk-8.402_p06-0004-Fix-misc.-warnings.patch" +) + +# The space required to build varies wildly depending on USE flags, +# ranging from 2GB to 16GB. This function is certainly not exact but +# should be close enough to be useful. +openjdk_check_requirements() { + local M + M=2048 + M=$(( $(usex debug 3 1) * $M )) + M=$(( $(usex jbootstrap 2 1) * $M )) + M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M )) + + CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE} +} + +pkg_pretend() { + openjdk_check_requirements + if [[ ${MERGE_TYPE} != binary ]]; then + has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876" + fi +} + +pkg_setup() { + openjdk_check_requirements + java-vm-2_pkg_setup + + [[ ${MERGE_TYPE} == "binary" ]] && return + + JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}" + JAVA_PKG_WANT_SOURCE="${SLOT}" + JAVA_PKG_WANT_TARGET="${SLOT}" + + if use system-bootstrap; then + for vm in ${JAVA_PKG_WANT_BUILD_VM}; do + if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then + java-pkg-2_pkg_setup + return + fi + done + fi +} + +src_prepare() { + default + + # new warnings in new gcc https://bugs.gentoo.org/685426 + sed -i '/^WARNINGS_ARE_ERRORS/ s/-Werror/-Wno-error/' \ + hotspot/make/linux/makefiles/gcc.make || die + + chmod +x configure || die + + # Force gcc because build failed with modern clang, #918655 + if ! tc-is-gcc; then + ewarn "openjdk/8 can be built with gcc only." + ewarn "Ignoring CC=$(tc-getCC) and forcing ${CHOST}-gcc" + export CC=${CHOST}-gcc + export CXX=${CHOST}-g++ + tc-is-gcc || die "tc-is-gcc failed in spite of CC=${CC}" + fi +} + +src_configure() { + local myconf=() + + if ! use system-bootstrap; then + local xpakvar="${ARCH^^}_XPAK" + export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}" + fi + + # general build info found here: + # https://hg.openjdk.java.net/jdk8/jdk8/raw-file/tip/README-builds.html + + # -Wregister use (bug #918655) + append-cxxflags -std=gnu++14 + + # Work around stack alignment issue, bug #647954. + use x86 && append-flags -mincoming-stack-boundary=2 + + # Strip some flags users may set, but should not. #818502 + filter-flags -fexceptions + + # Strip lto related flags, we rely on --with-jvm-features=link-time-opt + # in newer JDKs. See bug #833097 and bug #833098. + filter-lto + filter-flags -fdevirtualize-at-ltrans + + # bug #954888 + append-cflags -std=gnu17 + + tc-export_build_env CC CXX PKG_CONFIG STRIP + + myconf+=( + --disable-ccache + --disable-precompiled-headers + --enable-unlimited-crypto + --with-boot-jdk="${JDK_HOME}" + --with-extra-cflags="${CFLAGS}" + --with-extra-cxxflags="${CXXFLAGS}" + --with-extra-ldflags="${LDFLAGS}" + --with-freetype=system + --with-freetype-lib="$( $(tc-getPKG_CONFIG) --variable=libdir freetype2 )" + --with-freetype-include="$( $(tc-getPKG_CONFIG) --variable=includedir freetype2)/freetype2" + --with-giflib="${XPAK_BOOTSTRAP:-system}" + --with-jtreg=no + --with-jobs=1 + --with-num-cores=1 + --with-update-version="$(ver_cut 2)" + --with-build-number="b$(ver_cut 4)" + --with-milestone="fcs" # magic variable that means "release version" + --with-vendor-name="Gentoo" + --with-vendor-url="https://gentoo.org" + --with-vendor-bug-url="https://bugs.gentoo.org" + --with-vendor-vm-bug-url="https://bugs.openjdk.java.net" + --with-zlib="${XPAK_BOOTSTRAP:-system}" + --with-native-debug-symbols=$(usex debug internal none) + $(usex headless-awt --disable-headful '') + $(tc-is-clang && echo "--with-toolchain-type=clang") + ) + + ( + unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC MAKE XARGS + CFLAGS= CXXFLAGS= LDFLAGS= \ + CONFIG_SITE=/dev/null \ + CONFIG_SHELL="${BROOT}/bin/bash" + econf "${myconf[@]}" + ) +} + +src_compile() { + # Too brittle - gets confused by e.g. -Oline + export MAKEOPTS="-j$(makeopts_jobs) -l$(makeopts_loadavg)" + unset GNUMAKEFLAGS MAKEFLAGS + + local myemakeargs=( + JOBS=$(makeopts_jobs) + LOG=debug + CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror + NICE= # Use PORTAGE_NICENESS, don't adjust further down + $(usex doc docs '') + $(usex jbootstrap bootcycle-images images) + ) + emake "${myemakeargs[@]}" -j1 +} + +src_install() { + local dest="/usr/$(get_libdir)/${PN}-${SLOT}" + local ddest="${ED}/${dest#/}" + + # https://bugs.gentoo.org/922741 + docompress "${dest}/man" + + cd "${S}"/build/*-release/images/j2sdk-image || die + + if ! use alsa; then + rm -v jre/lib/$(get_system_arch)/libjsoundalsa.* || die + fi + + # build system does not remove that + if use headless-awt ; then + rm -fvr jre/lib/$(get_system_arch)/lib*{[jx]awt,splashscreen}* \ + {,jre/}bin/policytool bin/appletviewer || die + fi + + if ! use examples ; then + rm -vr demo/ || die + fi + + if ! use source ; then + rm -v src.zip || die + fi + + dodir "${dest}" + cp -pPR * "${ddest}" || die + + dosym -r /etc/ssl/certs/java/cacerts "${dest}"/jre/lib/security/cacerts + + java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh + java-vm_set-pax-markings "${ddest}" + java-vm_revdep-mask + java-vm_sandbox-predict /dev/random /proc/self/coredump_filter + + if use doc ; then + docinto html + dodoc -r "${S}"/build/*-release/docs/* + fi +} + +pkg_postinst() { + java-vm-2_pkg_postinst + einfo "JavaWebStart functionality provided by icedtea-web package" +} diff --git a/dev-lang/hare/files/hare-0.25.2-os_exec-fix-clearenv.patch b/dev-lang/hare/files/hare-0.25.2-os_exec-fix-clearenv.patch deleted file mode 100644 index ca04fb6b62b7..000000000000 --- a/dev-lang/hare/files/hare-0.25.2-os_exec-fix-clearenv.patch +++ /dev/null @@ -1,94 +0,0 @@ -From 4039f65285e5fbd89192319e52cd8fa0ea1ec214 Mon Sep 17 00:00:00 2001 -From: Armin Preiml <apreiml@strohwolke.at> -Date: Wed, 25 Jun 2025 10:57:23 +0200 -Subject: [PATCH hare] os::exec: fix clearenv -X-Upstream-Status: applied - -Signed-off-by: Armin Preiml <apreiml@strohwolke.at> ---- - os/exec/+freebsd/platform_cmd.ha | 2 +- - os/exec/+linux/platform_cmd.ha | 2 +- - os/exec/+netbsd/platform_cmd.ha | 2 +- - os/exec/+openbsd/platform_cmd.ha | 2 +- - os/exec/env+test.ha | 19 +++++++++++++++++++ - 5 files changed, 23 insertions(+), 4 deletions(-) - -diff --git a/os/exec/+freebsd/platform_cmd.ha b/os/exec/+freebsd/platform_cmd.ha -index 2c0d972d..f328f9ac 100644 ---- a/os/exec/+freebsd/platform_cmd.ha -+++ b/os/exec/+freebsd/platform_cmd.ha -@@ -91,7 +91,7 @@ fn platform_setenv( - - fn platform_unsetenv(cmd: *command, key: str) (void | errors::invalid) = { - // XXX: This can be a binary search -- for (let i = 0z; i < len(cmd.env) - 1; i += 1) { -+ for (let i = 0z; i < len(cmd.env) && cmd.env[i] != null; i += 1) { - let e = c::tostr(cmd.env[i]: *const c::char)!; - if (strings::cut(e, "=").0 == key) { - free(cmd.env[i]); -diff --git a/os/exec/+linux/platform_cmd.ha b/os/exec/+linux/platform_cmd.ha -index 1ec0ddd4..4bf65cb9 100644 ---- a/os/exec/+linux/platform_cmd.ha -+++ b/os/exec/+linux/platform_cmd.ha -@@ -89,7 +89,7 @@ fn platform_setenv( - - fn platform_unsetenv(cmd: *command, key: str) (void | errors::invalid) = { - // XXX: This can be a binary search -- for (let i = 0z; cmd.env[i] != null; i += 1) { -+ for (let i = 0z; i < len(cmd.env) && cmd.env[i] != null; i += 1) { - let e = c::tostr(cmd.env[i]: *const c::char)!; - if (strings::cut(e, "=").0 == key) { - free(cmd.env[i]); -diff --git a/os/exec/+netbsd/platform_cmd.ha b/os/exec/+netbsd/platform_cmd.ha -index 2c26cff6..0ccd99bf 100644 ---- a/os/exec/+netbsd/platform_cmd.ha -+++ b/os/exec/+netbsd/platform_cmd.ha -@@ -92,7 +92,7 @@ fn platform_setenv( - - fn platform_unsetenv(cmd: *command, key: str) (void | errors::invalid) = { - // XXX: This can be a binary search -- for (let i = 0z; i < len(cmd.env) - 1; i += 1) { -+ for (let i = 0z; i < len(cmd.env) && cmd.env[i] != null; i += 1) { - let e = c::tostr(cmd.env[i]: *const c::char)!; - if (strings::cut(e, "=").0 == key) { - free(cmd.env[i]); -diff --git a/os/exec/+openbsd/platform_cmd.ha b/os/exec/+openbsd/platform_cmd.ha -index 9826111f..d1e1f667 100644 ---- a/os/exec/+openbsd/platform_cmd.ha -+++ b/os/exec/+openbsd/platform_cmd.ha -@@ -89,7 +89,7 @@ fn platform_setenv( - - fn platform_unsetenv(cmd: *command, key: str) (void | errors::invalid) = { - // XXX: This can be a binary search -- for (let i = 0z; i < len(cmd.env) - 1; i += 1) { -+ for (let i = 0z; i < len(cmd.env) && cmd.env[i] != null; i += 1) { - let e = c::tostr(cmd.env[i]: *const c::char)!; - if (strings::cut(e, "=").0 == key) { - free(cmd.env[i]); -diff --git a/os/exec/env+test.ha b/os/exec/env+test.ha -index cfd62733..e41395ad 100644 ---- a/os/exec/env+test.ha -+++ b/os/exec/env+test.ha -@@ -43,3 +43,22 @@ use bufio; - io::close(rd)!; - wait(&proc)!; - }; -+ -+@test fn clearenv() void = { -+ let cmd = cmd("env")!; -+ clearenv(&cmd); -+ setenv(&cmd, "HARETEST", "single")!; -+ -+ const (rd, wr) = pipe(); -+ addfile(&cmd, os::stdout_file, wr)!; -+ let proc = start(&cmd)!; -+ io::close(wr)!; -+ -+ let sc = bufio::newscanner(rd); -+ defer io::close(&sc)!; -+ for (let l => bufio::scan_line(&sc)!) { -+ assert(l == "HARETEST=single"); -+ }; -+ io::close(rd)!; -+ wait(&proc)!; -+}; diff --git a/dev-libs/kirigami-app-components/kirigami-app-components-1.0.1-r1.ebuild b/dev-libs/kirigami-app-components/kirigami-app-components-1.0.1-r1.ebuild index b633cdc2b657..713c4e982e9c 100644 --- a/dev-libs/kirigami-app-components/kirigami-app-components-1.0.1-r1.ebuild +++ b/dev-libs/kirigami-app-components/kirigami-app-components-1.0.1-r1.ebuild @@ -10,7 +10,7 @@ inherit ecm kde.org if [[ ${KDE_BUILD_TYPE} = release ]]; then SRC_URI="mirror://kde/stable/${PN}/${P}.tar.xz" - KEYWORDS="~amd64" + KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" fi DESCRIPTION="Kirigami addons and modules necessary to do a full featured KDE application" diff --git a/dev-python/backrefs/Manifest b/dev-python/backrefs/Manifest index 51e7071765ff..8e8c5afacaa8 100644 --- a/dev-python/backrefs/Manifest +++ b/dev-python/backrefs/Manifest @@ -1,2 +1,4 @@ DIST backrefs-7.0.tar.gz 7012453 BLAKE2B 8c6f9235f65b846621318406e4a31bb8ee325b277d561874329e639854655fa680d1306d75449df7c0dad167aa968f2ec72213415e37ab488ea99f91174a5411 SHA512 4c12a1ff958619a3ebdb033c110efc614b2a3e13767bc72100c6dbf3c8217f15fc2fe85e547221ce01b5f14dc47ccd0d079ce12b4dd55bda458fdf748e1b002c DIST backrefs-7.0.tar.gz.provenance 9169 BLAKE2B c8f94a5331b52534c62f0661376c8a984d7f4d1f6cdad501a9c3bdf6efd9562604d33c5b49f753927ebccb29ccca8d2c1f3fef4e4689e529eb311dc01c4368ac SHA512 2e153fb1167218dce95916d642d6e0546cae940e6020bb36ba7889f3262b3b01513db7eb0d07b5a517dbbc2e490b7f0a603784bf473b894ec27325b7bf3120f3 +DIST backrefs-8.0.tar.gz 7013081 BLAKE2B b0cd793beb447d6d0dde92f9da60ce144fb81a042d5bc958f9376fcf697c89285df2cdac93a22a919956d744f957d15c466e2858841ce9beb3ca6050adb1bea4 SHA512 7ce8217d951ec573e044d83e2505db2f0a184c8d1ddf105a26b9bcc9a137afaf50b992fc5dc529cfbd197044696a7346df2781002b8184d543735a8646909bc2 +DIST backrefs-8.0.tar.gz.provenance 9863 BLAKE2B 550c3c18a2bd5c8cd05b8e2da21f185c9e966f2ec35d3e6cb09f054235c9f19d5261ec2e6a1a78447a4f177694d2151b573332056520190260deb26395993ef4 SHA512 3fac94e549e9514ec545714da915d61750c89f88361d6e3b21c3b00088deb251d7e4015864d58af804caf9e599e1ac08724eff83bb1b9d6e17cf0dd3f0ff6a6c diff --git a/dev-python/backrefs/backrefs-8.0.ebuild b/dev-python/backrefs/backrefs-8.0.ebuild new file mode 100644 index 000000000000..30a6d3563133 --- /dev/null +++ b/dev-python/backrefs/backrefs-8.0.ebuild @@ -0,0 +1,30 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYPI_VERIFY_REPO=https://github.com/facelessuser/backrefs +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Wrapper around re or regex that adds additional back references" +HOMEPAGE=" + https://github.com/facelessuser/backrefs/ + https://pypi.org/project/backrefs/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~riscv ~x86" + +BDEPEND=" + test? ( + dev-python/regex[${PYTHON_USEDEP}] + dev-vcs/git + ) +" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest diff --git a/dev-python/fastjsonschema/Manifest b/dev-python/fastjsonschema/Manifest index cafb7ef983ac..32da60cb04a1 100644 --- a/dev-python/fastjsonschema/Manifest +++ b/dev-python/fastjsonschema/Manifest @@ -1 +1,2 @@ DIST fastjsonschema-2.21.2.tar.gz 374130 BLAKE2B 198cca481d765b43b21101020718b59e3ccba2728a0a2a0ce56c7b73ce1ff6102c2e3916c9fd4c8fe8f2f3e931d87fd7ffc76e6d7983c5a2d87eca2cfa5aa721 SHA512 9e16f533065267ba48eeda70e8a41fdc10b1b99832a3ddaa0d48d01a783e4555d2fb790201ca3f47b959d3e1f06f68b9f83672f90cc1969355d28f0f24cb9837 +DIST fastjsonschema-2.22.0.tar.gz 382291 BLAKE2B 5fe9d70e253e23cb568d72611b631ce45157a0b73aca902ed5f633ab3de499fa6e8b55877b574fe7e5b1ad914606e0eae6b195989a137860236f88584a9659d0 SHA512 a655408b3c0ecebc24a24cdab1ec2638db26fc3a46032529cd3b6686f9711cb5fd0a95f8164b6ed56128d86747fe0782e12953ce9cc4bb6cdded6843bd7e7410 diff --git a/dev-python/fastjsonschema/fastjsonschema-2.22.0.ebuild b/dev-python/fastjsonschema/fastjsonschema-2.22.0.ebuild new file mode 100644 index 000000000000..c879d05a43f8 --- /dev/null +++ b/dev-python/fastjsonschema/fastjsonschema-2.22.0.ebuild @@ -0,0 +1,27 @@ +# Copyright 2020-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Fast JSON schema validator for Python" +HOMEPAGE=" + https://github.com/horejsek/python-fastjsonschema/ + https://pypi.org/project/fastjsonschema/ +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +EPYTEST_PLUGINS=() +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +EPYTEST_IGNORE=( + tests/benchmarks +) diff --git a/dev-python/gitpython/Manifest b/dev-python/gitpython/Manifest index ea5bf9447c00..1d2398396f16 100644 --- a/dev-python/gitpython/Manifest +++ b/dev-python/gitpython/Manifest @@ -1,8 +1,10 @@ DIST GitPython-3.1.54.gitbundle 12994086 BLAKE2B 9709a2bf90eb3ed03517df801b9505d9db0dada09c27359b2c297770fb23a0d359ae62a9518ded8e57b03c82a00b2da2f02bddd312a1e2a3a94ba934e6e70fb9 SHA512 895d4ea52e0853282bbf4a0e524de7ea1e0d544435fcea1db2038a6a97c7be2f0bc1a341d776f2869d5eae84eee8f7c061ab790e4708ba1da75299dd66878f2c DIST GitPython-3.1.55.gitbundle 12989001 BLAKE2B 0fa2481fd5d3707e44ad2cc84591ed7061533ae9eb79e6e0baaa4ab97b026ab0395caa5cc1d6318e3d41ff937458ef9d5ce7145e27261f8710cb2fc663b27154 SHA512 7baa8393a3871e041498cc847671f5ee64177c89794500ebff93985209a9b9ea7a795444b7c4755d44ed6c977920f2b07843b771d99a481eab96f6d8e43e5550 DIST GitPython-3.1.56.gitbundle 13002231 BLAKE2B 90aee4b11b9f8b83243721628743ecd172c728ab45871c367da93e0d2579cfb25a4bd2f3e62be625673a2538f16a6c5e49ebbeb61343ba5e1a343f967565f740 SHA512 9e2c631c557a9039d566d11bc2ffcd2221e9793f627a5883341ffb258c9b8eaa7d8db9d083570cf5df85bbe4e37c19a06918c56472b7a9f5dac0896beabde352 +DIST GitPython-3.1.57.gitbundle 12996669 BLAKE2B cccc3058e05a812d0ac20112514e31af5e0dfd3eb5b6d0c27d6fdb46c0eea750a8edaa2aacd71940c60a47ceccdf2f3f2a515ee65619d8b6b5440c917f733815 SHA512 24e7997fb0bf548fb430ff18b632eb3eb3374ca35523e100e1a38c500b3178b53f6238fce0745f3a61d6a3210cac8a1a7af37e7f8dc6a281b4cdd26d4a9643f8 DIST gitdb-4.0.12.gitbundle 1627457 BLAKE2B 2fb730fb72f682bac9a71a2b70af6ed476f69d57e00b323e669550793bcc330bd4b71575e0d0f008ed58f39e5beb622213ce2a10df6f512f1f5536b72c77871a SHA512 2fc619f511e373ad2ee51a108057e3a558dbfd68cbd7632244d7fd7914ed5fce99c182de5542264273de642e6e7680ee9b54a6da95224c562f43cf65e325db56 DIST gitpython-3.1.54.tar.gz 225076 BLAKE2B e8f649c3b3c966d488c5d40c57e727e68108c4dc2c32ade4848170689d5258fbf119b39d05929430f3764b3e74bf322c5e79d4cc1d8ac87bcbab5f2c2305fdf8 SHA512 52a1059c21615a9e36072f42e5255ed7bd3b48b0a6a2a75212cefd2cb6f201c62bad3b3391d8b407c2ac3e043cc4ab69930896e3a54268a578986984f86fd28a DIST gitpython-3.1.55.tar.gz 225071 BLAKE2B c7f1915d1c188760db3b734e9d4ebab27544d87683863af4fa0eecb99171d4ff54c26c458829e3f7180d718d726e474ee7dfee0ef8206268dd78fc7306956b49 SHA512 478b30b92c421a008144167b821343b4b0d646b3ef222a6bca83efd07acdc1c0e7213f3a33a0c59ddf1e4763e342a9712f6dc8df83ac317b01a8e614dfeb7470 DIST gitpython-3.1.56.tar.gz 229619 BLAKE2B bbfcc726256e7813b46e7de4b11fd73ddeb170bb323e0f31271d9558a6889ae49fae52d43579753eebe793dbd623c872ff89fdad5c00f5698ee5b5d851d71f02 SHA512 b54cf52ebc624ff658877570fbd1d4974ee274e9ae49676cc482393e422a75a893b7b8d65e86708435e6097abaa534653e60d620ad339d4aa918f4630f72f9f9 +DIST gitpython-3.1.57.tar.gz 225898 BLAKE2B e577b3bf6080280869fc53475538415a2681e3d5bd2f86d0536036480e1bd7f2f2b4c3d0c84f9c263b24a4e130394a16015367f762b70e67b57d337d54700622 SHA512 cc60ceb2649c600e8618556c889418b6a481bfd358a037a0c117e475957b57d90d6b43421b392207b7dc308a6ec06b25e55c0733ccc149ed9308d048cec78fb3 DIST smmap-5.0.1.gitbundle 362567 BLAKE2B 72c8b48ad3250a33b94218c145c02033dee84c1da5f1eea57983a58699262d51844be675330d95c7d64924b6aeaacd4b0a57e9a5acad3be184aaad62102202e7 SHA512 9ca8386bfec25d1562cdf1c2ee85f7edb15fd3f44ecd1abbef738979f12b82f0b0f39a06589203a39f89518d981d7129e35f64f2d855cd162cd964bdd87c8d18 diff --git a/dev-python/gitpython/gitpython-3.1.57.ebuild b/dev-python/gitpython/gitpython-3.1.57.ebuild new file mode 100644 index 000000000000..ebe35bd5a941 --- /dev/null +++ b/dev-python/gitpython/gitpython-3.1.57.ebuild @@ -0,0 +1,74 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_PN=GitPython +PYTHON_COMPAT=( python3_{13..14} ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 pypi + +TEST_P=GitPython-${PV} +GITDB_P=gitdb-4.0.12 +SMMAP_P=smmap-5.0.1 + +DESCRIPTION="Library used to interact with Git repositories" +HOMEPAGE=" + https://github.com/gitpython-developers/GitPython/ + https://pypi.org/project/GitPython/ +" +SRC_URI+=" + test? ( + https://distfiles.gentoo.org/pub/proj/python/GitPython/${TEST_P}.gitbundle + ) +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + dev-vcs/git + >=dev-python/gitdb-4.0.1[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + >=dev-python/ddt-1.1.1[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=( pytest-mock ) +distutils_enable_tests pytest + +src_test() { + git config --global user.email "travis@ci.com" || die + git config --global user.name "Travis Runner" || die + + git clone "${DISTDIR}/${TEST_P}.gitbundle" "${T}"/test || die + + cd "${T}"/test || die + git rev-parse HEAD > .git/refs/remotes/origin/master || die + TRAVIS=1 ./init-tests-after-clone.sh || die + cat test/fixtures/.gitconfig >> ~/.gitconfig || die + + distutils-r1_src_test +} + +python_test() { + local EPYTEST_DESELECT=( + # performance tests are unreliable by design + test/performance + # unimportant and problematic + test/test_installation.py + # Internet + test/test_quick_doc.py::QuickDoc::test_cloned_repo_object + # TODO + test/test_submodule.py::TestSubmodule::test_base_rw + test/test_submodule.py::TestSubmodule::test_root_module + test/test_remote.py::TestTimeouts::test_timeout_funcs + ) + + epytest -o addopts= test +} diff --git a/dev-python/phonenumbers/Manifest b/dev-python/phonenumbers/Manifest index 0f76144646cd..7bc6138883bd 100644 --- a/dev-python/phonenumbers/Manifest +++ b/dev-python/phonenumbers/Manifest @@ -1,3 +1,4 @@ DIST phonenumbers-9.0.32.tar.gz 2306598 BLAKE2B 09d335aa32d96fa73b405bc8cc3d3f8064f09fe816c099d210988f510bef1d892f8a4ab407ab9afc3fb0abde50dca2cb9eedf0ee4310a5a328c827c01b74fa3f SHA512 22a5be30c34fdd0cad9b0daf1a9965f9caeeb3c7457f5ff4504d69a4d7a58eab88e698a403e83ae8bb8ef6baa6d7bb5095b944a50b1065ed1c97c3c99d57302f DIST phonenumbers-9.0.33.tar.gz 2306756 BLAKE2B c63d3f472b361d2d1677ef39e80c0257fa5bb27f644ea3a21314ffe724d70fed927b346ca7ea42dbab9c077a15cc96291ae2c0783be76b3aa5cd922f22a3f635 SHA512 2e2b73dedef2cfd88fc439d031aaba38fb74f2e53d4f9055920ec496d55605a994cd1247658e6b9db40b2da733f6e258247f392b71ac7b6b025997aa24c5343d DIST phonenumbers-9.0.34.tar.gz 2306776 BLAKE2B 835bc50d370577cf807cd0124f4ca8829640809f7db897c70aad6fb4bda4f3a66642b5aa6908c2086dcfd67d26d6b47e64ff4c3347620975b1878c80c2a0f6ea SHA512 c9584856647230d2bfb7d19df8f8467ba48df1817ae78030dad8d29807afa622fe74525b547ee7e89c8bf5818b1f2ba2164d4975883c2ad628474eb7410cd07b +DIST phonenumbers-9.0.35.tar.gz 2306830 BLAKE2B 5a7cf2a8f79251bd4372325d5a6a4efbc49473cb6d9e14ca24d563a5dc48275849001bd8dde1f1deff9ec7e4d194319b8d0c6402040f6202d1678f1381b499e0 SHA512 c838d7a787e2a35fdbcf91df150ec4dee87a071422dfce40e60fb2bdddaa260432f598d4e9394147ced11a768915a7db013a36486801c392fa018a46a00bed46 diff --git a/dev-python/phonenumbers/phonenumbers-9.0.35.ebuild b/dev-python/phonenumbers/phonenumbers-9.0.35.ebuild new file mode 100644 index 000000000000..de79c2ad9678 --- /dev/null +++ b/dev-python/phonenumbers/phonenumbers-9.0.35.ebuild @@ -0,0 +1,31 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Python port of Google's libphonenumber" +HOMEPAGE=" + https://github.com/daviddrysdale/python-phonenumbers/ + https://pypi.org/project/phonenumbers/ +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +IUSE="test" +RESTRICT="!test? ( test )" + +BDEPEND=" + test? ( + dev-python/protobuf[${PYTHON_USEDEP}] + ) +" + +python_test() { + "${EPYTHON}" testwrapper.py -v || die "Tests failed with ${EPYTHON}" +} diff --git a/dev-python/prompt-toolkit/Manifest b/dev-python/prompt-toolkit/Manifest index 9a13aa096d04..aca5ff46a2ea 100644 --- a/dev-python/prompt-toolkit/Manifest +++ b/dev-python/prompt-toolkit/Manifest @@ -1 +1,2 @@ DIST prompt_toolkit-3.0.52.tar.gz 434198 BLAKE2B 7568bfc396bfe3b69028e199f7e6d2c04a35b76e682c3eff19be818f400614efde8fa06d9b058ee323b35fd960c27e8226dd243f65cd2d94a8788fdc0c111b31 SHA512 4f3289c7862f0bc140933b38c25c5f0e116fa04d2e9c12928271aea7c8e85014d80a64376692968d0bc3063faf9af5bbc040010997cbcf152439d8ed337eaf11 +DIST prompt_toolkit-3.0.53.tar.gz 435492 BLAKE2B 4dd6862cd0657e86c2c1425d001b5e3600d5b6240967f79d19af211be37d97b5c3f618c9a7bb6457c9c12508c7ba0716389fee937cb5ffd4cb62846b834d2dcc SHA512 b0a1d93ba18427a171555f095c3d70e6e8d5f3ef241551cb6cfe1ed2843c858e6a1b0e3ebd0b83b71b806e1ea28635464b22b0c0d65c440e28ac4a6b146968d4 diff --git a/dev-python/prompt-toolkit/prompt-toolkit-3.0.53.ebuild b/dev-python/prompt-toolkit/prompt-toolkit-3.0.53.ebuild new file mode 100644 index 000000000000..b5a8030190a2 --- /dev/null +++ b/dev-python/prompt-toolkit/prompt-toolkit-3.0.53.ebuild @@ -0,0 +1,32 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_PN=${PN/-/_} +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Building powerful interactive command lines in Python" +HOMEPAGE=" + https://pypi.org/project/prompt_toolkit/ + https://github.com/prompt-toolkit/python-prompt-toolkit/ +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" + +RDEPEND=" + >=dev-python/wcwidth-0.1.4[${PYTHON_USEDEP}] +" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest + +EPYTEST_IGNORE=( + # requires tree-sitter-languages + src/prompt_toolkit/lexers/tree_sitter_test.py +) diff --git a/dev-python/pygments/Manifest b/dev-python/pygments/Manifest index 5f09793a7d05..fc3be3039a29 100644 --- a/dev-python/pygments/Manifest +++ b/dev-python/pygments/Manifest @@ -1 +1,2 @@ DIST pygments-2.19.2.tar.gz 4968631 BLAKE2B fad9d5c28194761a77f68f5428a6655c78c498917fa7b91d677e0da18a2fe5521a37440ac52bd7eb7578fac50bf4b55e95dd1ac7334644b775b9ca5b3d0f153e SHA512 3ead3a1fa4c7d86b415287949099cb0e5667ea71f7f69aa3de359bbb5c2f234d90fa5a41ec9c74cb041593e465b934d54bbb7dc87669683f04b94dd3aa6ca03c +DIST pygments-2.20.0.tar.gz 4955991 BLAKE2B 0d3ef30bdca0713946930f97d222fe3d5096a340b435383b7a6cdd0c2570cb1c4a723dcf6b09e4253fbc7c8b3eefe093529d45c4b4c1753d3e45f25347e84958 SHA512 7d073ead03b1722f862a72a962346f2d76bafb472f58fd5038061ca09675483f3b427bec700fe4ef49da9cace9e65b0d5414cda5ee20ebc056759e0c422f4547 diff --git a/dev-python/pygments/pygments-2.20.0.ebuild b/dev-python/pygments/pygments-2.20.0.ebuild new file mode 100644 index 000000000000..e31bb3041059 --- /dev/null +++ b/dev-python/pygments/pygments-2.20.0.ebuild @@ -0,0 +1,47 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYPI_PN=${PN^} +PYTHON_FULLY_TESTED=( python3_{12..15} ) +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 pypi shell-completion + +DESCRIPTION="Pygments is a syntax highlighting package written in Python" +HOMEPAGE=" + https://pygments.org/ + https://github.com/pygments/pygments/ + https://pypi.org/project/Pygments/ +" + +LICENSE="BSD-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" + +BDEPEND=" + test? ( + $(python_gen_cond_dep ' + dev-python/lxml[${PYTHON_USEDEP}] + dev-python/pillow[${PYTHON_USEDEP}] + ' "${PYTHON_FULLY_TESTED[@]}") + dev-python/wcag-contrast-ratio[${PYTHON_USEDEP}] + virtual/ttf-fonts + ) +" + +EPYTEST_DESELECT=( + # fuzzing tests, very slow + tests/test_basic_api.py::test_random_input +) + +EPYTEST_PLUGINS=() +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_install() { + distutils-r1_src_install + newbashcomp external/pygments.bashcomp pygmentize +} diff --git a/dev-python/pyproject-fmt/Manifest b/dev-python/pyproject-fmt/Manifest index e558059d9c9d..bac159c99a78 100644 --- a/dev-python/pyproject-fmt/Manifest +++ b/dev-python/pyproject-fmt/Manifest @@ -4,23 +4,17 @@ DIST pyproject_fmt-2.21.2.tar.gz 155067 BLAKE2B e1d5ed9ad538c934d176d54c64030312 DIST pyproject_fmt-2.21.2.tar.gz.provenance 9899 BLAKE2B dd64f16733cdceab98a70dd4680d3ef603976ba1d2a7e088c2906cd0ec05f3081586dd4d09a56c772106ff3dd8d3d81ffda497e34bd205aec0eec5ec5f0b108b SHA512 2585c2ab36baa9a1fce11e11d1468c990a736c543ce4de6c7476dd7df6f754b107795c238762110555eec284aefaa53e6eddc5733fce5b5ee701344baae5d086 DIST pyproject_fmt-2.24.1.tar.gz 280585 BLAKE2B 76dbf5443a7ff7215437b6b4d4a2cb9f6c752335d73dcec893fa1e222b3d459298e11265367ff2e76d63548b47e6c752266703d59329653d02113b2c410d178e SHA512 5b044182e27f881bc13d24406f5dabd68ab60e325ba748f460533640e87731cb30651e744ad0011e2ef4cddf5907f42e6f9d2aca6aa0a558dddfa5beaefbab9c DIST pyproject_fmt-2.24.1.tar.gz.provenance 10064 BLAKE2B ec74f53fae059829f6e44434666d196b5ea92b787d80fe04d6a001e93f1563be978c6771918a3fe7af19ef1a41cc8ce04d21ef0f15ce9e7af39b3cbfe2af00b2 SHA512 4220f4b3fd4372dc0593da35341255778f25c4386eca6007f6e49252cccc861df75980ab74fc437ca26105687198c8b0bfad81579ef4341fd0e97c4ee3a9e79a -DIST pyproject_fmt-2.25.0.tar.gz 292640 BLAKE2B a6d65982bd0591966a09218b74032e7da1aff8f99406bfdad405b10203a14096f6ebca761ec97861edbd5115845a75fcbf3ade1201a26f0f6d2a0dd717c3837f SHA512 d1fa497bd7fe76e6b3fae996cec29cf1a29fe3484a7b43dd81fbc50e3d1ee50eb096e891624d4942991cbb2ccf414d099a88b1649c5481d2bd3e26ddbd2e8348 -DIST pyproject_fmt-2.25.0.tar.gz.provenance 9829 BLAKE2B f6632a9b29fa43159badefe9a16355bc22b09b0a17bdb08fcc41ae89d3ff62cc5d2e79b5b4e996c794d863535b3cebf909e7cbc6abde8bcc28f1f09ee55b0bec SHA512 bb6e171ce072c8eb1a92127993e284a45414a54639a7f88478d6f0b09efa8db02fd93e2ddd9ee3e986567c26512de8ee2517f4770cd3ee0b72f09ae6bde10dc3 -DIST pyproject_fmt-2.25.1.tar.gz 290943 BLAKE2B 02390a55ca82ea869429302298aa9831bc3c9c1078fdb8abf05ddfc4607a8ee1847e9b71fdeeef93028e5f68d2aa5d55f86be183a694596e0590dcf8edaea8f7 SHA512 b12d3e2ce29ac6a0a94b54d20008f873a9306fcb2442a27cb0c8bbe369a676b3c6279c4ba738650da24087e2c61ed6edbba49b8d74f4e4698893dc4ac0dc4a67 -DIST pyproject_fmt-2.25.1.tar.gz.provenance 10064 BLAKE2B b9446853d04e357be741bf3e45464ab44c93b7da5bbf297b32c7175a683d8e9efceb2db9532fedcdc5221214027edc0bba1decc24ee3fee00a5d6d69bcfe7fbc SHA512 8410f5c4a6c9d88b7a1eaa17fbacc308deac3a6970f6d9868a7176ea2c279ebcde8d4e560c5f88d66466b02bf5179552890b9dee5c3c6bce26638ae7f3c18186 -DIST pyproject_fmt-2.25.2.tar.gz 292446 BLAKE2B 3f848f1a26f7517ca6369c84b77b33a02ec0508b9b42e065087b4240957992f9eb59c4eb55e22ec38ab9f87bfb8d189bc3b54899ee1466905cd5391e0fbef72c SHA512 a7197ece8f82aac64f5cd27108e8b011b3a2961bff7db2d697dea43aa57d792f445992bc9ab7e6c2458592ac7b77d635e17f6709ffc9d646050ed1109ec3d9ef -DIST pyproject_fmt-2.25.2.tar.gz.provenance 10115 BLAKE2B 30ec10573cd5209bb8eb31a4bc6d8c8be03824c3abc2aefb4ac4bb0476ea6e1313ca1048b36af19a597fdb0cd9b49c6549d2659c97a58f5f75da95bd6f2f8b91 SHA512 45acded1727fe88f7da280e95bdeba92b925ba9fdaa4a74d50ce869ecbe1ef16352e50056e4891cd4eb662dd666a41d78d8006940585d39296de2ce313e9aa1c DIST pyproject_fmt-2.25.3.tar.gz 293215 BLAKE2B 3a5a26d8d5459e57d1da57c5eaa0aa7d82bc429d10ad29df51418d5bf9ff5e7f0148d3484ec9db8ce66178ad4c02b403edbbac3f845523e6d4c63dee38316b92 SHA512 09e6f9cea1fad81caee62ee6a99a7a3a2b0a7420db18b5e15ec8c2efb1e9fbbb6d466e092df0fb9d1a92d53cc9c0b11f5949fc44a1a825b8cd5df2eb34f6843e DIST pyproject_fmt-2.25.3.tar.gz.provenance 9747 BLAKE2B 5e774a5bcfd7c578d949ae81ae66c40cd3bf4645f00bc9b3d0a7668f30005c2a78afcad587d2af90300c4964c218452d8ae6dc3e13c8a5f54321767cc2e4c675 SHA512 676c8af060a4001990e686066e8fd62c27a3f4f6ea9539f47a57b264d043399127cc3a600e7326f50290cb848b0e3f2219d2f88e18f256b55e86d44989476e4a +DIST pyproject_fmt-2.25.4.tar.gz 294939 BLAKE2B 49ff266da59749eacad648592675f468b53c1fc290507a03058ffed1f66d9be9a23425172def7af5773c8116143e3dfa7c9492f9b2f8a2afb0384b9b2b34e07a SHA512 0d468581dc3f1a739a552e7c191fafb9dd52871ea79217c920ea2b5cd8d9dfe49da8b94770e4be6b9d8b27163da203f6c8b564a9d07c413b480724833c0234b4 +DIST pyproject_fmt-2.25.4.tar.gz.provenance 10162 BLAKE2B 8b53e7f0e243e39222b5f78e6ff17f43f2d567771aeb42c2d2ba39a314816519c67bfd4785837cfb6936d31580477e88b22dfa2c83c134e3e239f163e8b3abc2 SHA512 3950ea8cec325f06225157f3da31616a1345e0a66b7a00446f958293fe80bb72f9bc40d65895be517e70a1ca3c9921a7a20dee2b1876db2a029f94c18d216b1f DIST tombi-0d64bd3bd8a5ddcaafdfc7b114e3b73ada0b325b.gh.tar.gz 10564681 BLAKE2B 1cc4e307d89ae978c8022aed63ad7a7c08e71f810e42743589a6bf44499051250102ca3a60aa2cea65292dfd187240da96f6fb963511b6d4c06559c20bbc67a3 SHA512 e398e14c9b092f2378dfa848c697ea5cb0af705bcb801f288d2ca98b8c0d4aa3abf7a71f2f5a10a4a6a77e1e8d1f7089a0359b2a3ec9b226a19bbb40f0aa0a14 -DIST tombi-362cafbd685311cb659ec0a422ebecc1eb332952.gh.tar.gz 10612816 BLAKE2B 8c1ada6d32c3b400110303243dc8f2070a395254a52f57cb4dff9bf788c43bf0491950cc563b2e9e19645a6fe785fbbafc61684446889e3d9b2a18f025d91b3e SHA512 e54f04e5bab4fcba6fa5562746c61a63f94954d5d46781277a9e83645182916c9131e4d09429e12e2dca7369947d68cb13d0cafea10cfbddecac85419f3f6031 DIST tombi-564e4a391ae1dee08fd70936b9af6672d6eee4bc.gh.tar.gz 10614930 BLAKE2B 7557c4dcf2922d76cf79032f0eaee6da7a3507dfb6b1de1508e0b7d705dcbad5dd98da3d7db2d139f8e27f8a4c3bed3c84fe23db8434698047a8a6949e4bb9fd SHA512 07f100ed8634828971cc5bd97011a8d0b14fb44b1a4a076c1b7e532622778f4312c46a90db42eca451a3e74d275d27c1920d3db9dab5f9bc5be4b91392ca36be +DIST tombi-b46e34c8555e1b98d695ceec30cfa9c0227878ed.gh.tar.gz 10619752 BLAKE2B aef751b54ff252c35c216980d55561d409e76e71379a5d537835db1475bdaa277fd95b233f22af43644fb5a23a2621859706981a78ff7c79e768735f4b071ab4 SHA512 a4b7f71b5ca6f8bc9b64eda3f0048fb372ec44b8b4ab77e3d50bd4ef938de632e3a3837891baa98b4f44a311a743373e5ac92a0c7167ac32cdcbf1e180c7315c DIST tombi-d5056f9743d7e3f194158e125b90d7294aa59ad7.gh.tar.gz 10475854 BLAKE2B 6a629d533e576930e8e988662e3d350137d32ce9b517578f4ee5f20437b75d31300568adf4a4fae2e9fc7a033af1031d4fbcaafa51656a3af2b8a7e03365495e SHA512 74aa91819f15420207850951d0d6b41d61dadf3bdb38406299ae1126bb9ae597a7eb9b69a4485165bf465eb10384b67c73b0e231ce22e1910bc2db448c4eb626 DIST tombi-e9213370947e9d7ab6dd98c1cf17533bbbcc797f.gh.tar.gz 10608653 BLAKE2B 7fd8a27bec2e0c5ab357f2c56ca50c848d71e02da3faca9b0650541b35b177ce7b669d294c20add3dac2ba70e5ced46046d5c2de14df81fcee418fccaaa47344 SHA512 a84ca3f676b95d11c121df08382e3bc6ca2e31c0c867ff3027c5564219f637abda34bcc00d563d777280e1b4522354e83b6bb4b0412b067e9ce57272a4e34d15 DIST toml-fmt-pyproject-fmt-2.21.1-crates.tar.xz 18661404 BLAKE2B cb19d8ebbb7d4fb43494a89a910bc844862bbbc6f677dff27fceca27a74cc573d42f009cf2e0d979f286b7efe80bb72e88072b20da3afdc98b023b6740ccdba6 SHA512 1699771da1ee01a593d963b8d945038c8d2abdadaf40203a56504ec6a9dfbca896b1aa77a63c98ed77bed779fe3dfe365fab219eced7c3b7b222876be0a68170 DIST toml-fmt-pyproject-fmt-2.21.2-crates.tar.xz 18776904 BLAKE2B ae748ae98a2769a78b34a2051e3237c40bc6714d88c58a22aec5af85caa86e4690e9749ddd1f87d2ebe0908a1a3f24a01a48e4abcf107fcdbd5d8322a0738c6a SHA512 474d707babc9a3f98a933ae645ffb951062491158c6863ff9dea7fee065b19f440501e092fbc28e62e4e67dce435689096a27b96c6acde3b8128b76b5890ca3e DIST toml-fmt-pyproject-fmt-2.24.1-crates.tar.xz 18725980 BLAKE2B 75f6c4a07b14fc60cd3b7a00e902c2b37fe79ea3d03172e7271300d5ea5bd0bf9b7727c4af7e47e82d28424f677235a6e9c1d22ad3314210be93170d9f36ff76 SHA512 88da1827c097f712489276c48fbf10e4c61ef92b877cd8eb7f34eeb1e289ce0362661d3b01bf34c23c1f4cc67e23b05462773407eba7d17814c96d7885f23bd9 -DIST toml-fmt-pyproject-fmt-2.25.0-crates.tar.xz 18742060 BLAKE2B 5cc45568d2981e1804e8800b6d7da203eee70f022b86dff671580e91be90b6627bac38d58f3ba50d138dbe6a905b6a21b324c3fc6114b7a0de11fb6078dd4ef2 SHA512 27986f6f647b3e50d0de5ce3acd7b3b089db896b5560f15b9d7d11c98e4a9b9d5adea566034e533de177fd9e2c08f46f760f9bf73d39910dd2d0ddf85c526832 -DIST toml-fmt-pyproject-fmt-2.25.1-crates.tar.xz 18742060 BLAKE2B 5cc45568d2981e1804e8800b6d7da203eee70f022b86dff671580e91be90b6627bac38d58f3ba50d138dbe6a905b6a21b324c3fc6114b7a0de11fb6078dd4ef2 SHA512 27986f6f647b3e50d0de5ce3acd7b3b089db896b5560f15b9d7d11c98e4a9b9d5adea566034e533de177fd9e2c08f46f760f9bf73d39910dd2d0ddf85c526832 -DIST toml-fmt-pyproject-fmt-2.25.2-crates.tar.xz 17995820 BLAKE2B d48463bdd984382dc42ad2ae7f16d4b164db32fce22495dc83d923b102cdbc8044679f3d2327a8a5b133cb0618b33afa028674282d152d3644f74932282ef194 SHA512 f376c2ba6c994685a020f0c90037de85642141afdac053967393b3f0ee69e737b4e9177681620c470000e3316a9dd0733fdaf41f21835eff593c80ac409c1d69 DIST toml-fmt-pyproject-fmt-2.25.3-crates.tar.xz 17995820 BLAKE2B d48463bdd984382dc42ad2ae7f16d4b164db32fce22495dc83d923b102cdbc8044679f3d2327a8a5b133cb0618b33afa028674282d152d3644f74932282ef194 SHA512 f376c2ba6c994685a020f0c90037de85642141afdac053967393b3f0ee69e737b4e9177681620c470000e3316a9dd0733fdaf41f21835eff593c80ac409c1d69 +DIST toml-fmt-pyproject-fmt-2.25.4-crates.tar.xz 16547296 BLAKE2B 90d85bfcb1652e61911bed8b89b787569fb45b00b6202335e6106ea427ecca78e24c508f030259b67388a4ea149cbc1bcdc87ad2083eb9c63613dfd0d684bb1a SHA512 e89213e82e7cfef3a61e38f027c85571044c6c7f3acc218722d056756b09221b0425d021ae6ae9392c123768dcd0e05fa5eff1b281f0f15fed15e69416b23d00 diff --git a/dev-python/pyproject-fmt/pyproject-fmt-2.25.0.ebuild b/dev-python/pyproject-fmt/pyproject-fmt-2.25.0.ebuild deleted file mode 100644 index f561b008d7e3..000000000000 --- a/dev-python/pyproject-fmt/pyproject-fmt-2.25.0.ebuild +++ /dev/null @@ -1,113 +0,0 @@ -# Copyright 2022-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=maturin -DISTUTILS_UPSTREAM_PEP517=standalone -PYPI_VERIFY_REPO=https://github.com/tox-dev/toml-fmt -PYTHON_COMPAT=( python3_{13..14} ) - -RUST_MIN_VER="1.87.0" -CRATES=" -" - -declare -A GIT_CRATES=( - [tombi-accessor]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-accessor' - [tombi-ast-editor]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-ast-editor' - [tombi-ast]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-ast' - [tombi-cache]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-cache' - [tombi-comment-directive-serde]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-comment-directive-serde' - [tombi-comment-directive-store]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-comment-directive-store' - [tombi-comment-directive]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-comment-directive' - [tombi-config]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-config' - [tombi-date-time]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-date-time' - [tombi-diagnostic]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-diagnostic' - [tombi-document-tree]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-document-tree' - [tombi-document]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-document' - [tombi-formatter]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-formatter' - [tombi-future]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-future' - [tombi-hashmap]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-hashmap' - [tombi-json-lexer]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-json-lexer' - [tombi-json-syntax]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-json-syntax' - [tombi-json-value]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-json-value' - [tombi-json]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-json' - [tombi-lexer]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-lexer' - [tombi-parser]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-parser' - [tombi-regex]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-regex' - [tombi-rg-tree]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-rg-tree' - [tombi-schema-store]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-schema-store' - [tombi-severity-level]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-severity-level' - [tombi-syntax]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-syntax' - [tombi-text]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-text' - [tombi-toml-text]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-toml-text' - [tombi-toml-version]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-toml-version' - [tombi-uri]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-uri' - [tombi-validator]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-validator' - [tombi-version-sort]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-version-sort' - [tombi-x-keyword]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-x-keyword' -) - -inherit cargo distutils-r1 pypi - -DESCRIPTION="Format your pyproject.toml file" -HOMEPAGE=" - https://github.com/tox-dev/toml-fmt/ - https://pypi.org/project/pyproject-fmt/ -" -SRC_URI+=" - ${CARGO_CRATE_URIS} - https://github.com/gentoo-crate-dist/toml-fmt/releases/download/pyproject-fmt%2F${PV}/toml-fmt-${P}-crates.tar.xz -" - -LICENSE="MIT" -# Dependent crate licenses -LICENSE+=" - Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD ISC MIT MPL-2.0 - Unicode-3.0 ZLIB -" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~s390 ~x86" - -RDEPEND=" - dev-python/toml-fmt-common[${PYTHON_USEDEP}] -" -# tox is called as a subprocess, to get targets from tox.ini -BDEPEND=" - test? ( - dev-python/tox - ) -" - -EPYTEST_PLUGINS=( pytest-mock ) -distutils_enable_tests pytest - -QA_FLAGS_IGNORED="usr/lib/py.*/site-packages/pyproject_fmt/_lib.*.so" - -src_unpack() { - pypi_src_unpack - cargo_src_unpack -} - -src_prepare() { - distutils-r1_src_prepare - sed -i -e '/strip/d' pyproject.toml || die -} - -python_test() { - local EPYTEST_DESELECT=( - # something about ANSI codes, no clue - pyproject-fmt/tests/test_main.py::test_main[format-absolute-no_check-in_place] - pyproject-fmt/tests/test_main.py::test_main[format-cwd-no_check-in_place] - ) - - epytest pyproject-fmt -} - -python_test_all() { - # default features cause linking errors because they make pyo3 - # wrongly assume it's compiling a Python extension - # https://github.com/tox-dev/toml-fmt/issues/23 - cargo_src_test --no-default-features -} diff --git a/dev-python/pyproject-fmt/pyproject-fmt-2.25.1.ebuild b/dev-python/pyproject-fmt/pyproject-fmt-2.25.1.ebuild deleted file mode 100644 index f561b008d7e3..000000000000 --- a/dev-python/pyproject-fmt/pyproject-fmt-2.25.1.ebuild +++ /dev/null @@ -1,113 +0,0 @@ -# Copyright 2022-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=maturin -DISTUTILS_UPSTREAM_PEP517=standalone -PYPI_VERIFY_REPO=https://github.com/tox-dev/toml-fmt -PYTHON_COMPAT=( python3_{13..14} ) - -RUST_MIN_VER="1.87.0" -CRATES=" -" - -declare -A GIT_CRATES=( - [tombi-accessor]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-accessor' - [tombi-ast-editor]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-ast-editor' - [tombi-ast]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-ast' - [tombi-cache]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-cache' - [tombi-comment-directive-serde]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-comment-directive-serde' - [tombi-comment-directive-store]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-comment-directive-store' - [tombi-comment-directive]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-comment-directive' - [tombi-config]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-config' - [tombi-date-time]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-date-time' - [tombi-diagnostic]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-diagnostic' - [tombi-document-tree]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-document-tree' - [tombi-document]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-document' - [tombi-formatter]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-formatter' - [tombi-future]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-future' - [tombi-hashmap]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-hashmap' - [tombi-json-lexer]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-json-lexer' - [tombi-json-syntax]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-json-syntax' - [tombi-json-value]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-json-value' - [tombi-json]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-json' - [tombi-lexer]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-lexer' - [tombi-parser]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-parser' - [tombi-regex]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-regex' - [tombi-rg-tree]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-rg-tree' - [tombi-schema-store]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-schema-store' - [tombi-severity-level]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-severity-level' - [tombi-syntax]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-syntax' - [tombi-text]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-text' - [tombi-toml-text]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-toml-text' - [tombi-toml-version]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-toml-version' - [tombi-uri]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-uri' - [tombi-validator]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-validator' - [tombi-version-sort]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-version-sort' - [tombi-x-keyword]='https://github.com/tombi-toml/tombi;362cafbd685311cb659ec0a422ebecc1eb332952;tombi-%commit%/crates/tombi-x-keyword' -) - -inherit cargo distutils-r1 pypi - -DESCRIPTION="Format your pyproject.toml file" -HOMEPAGE=" - https://github.com/tox-dev/toml-fmt/ - https://pypi.org/project/pyproject-fmt/ -" -SRC_URI+=" - ${CARGO_CRATE_URIS} - https://github.com/gentoo-crate-dist/toml-fmt/releases/download/pyproject-fmt%2F${PV}/toml-fmt-${P}-crates.tar.xz -" - -LICENSE="MIT" -# Dependent crate licenses -LICENSE+=" - Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD ISC MIT MPL-2.0 - Unicode-3.0 ZLIB -" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~s390 ~x86" - -RDEPEND=" - dev-python/toml-fmt-common[${PYTHON_USEDEP}] -" -# tox is called as a subprocess, to get targets from tox.ini -BDEPEND=" - test? ( - dev-python/tox - ) -" - -EPYTEST_PLUGINS=( pytest-mock ) -distutils_enable_tests pytest - -QA_FLAGS_IGNORED="usr/lib/py.*/site-packages/pyproject_fmt/_lib.*.so" - -src_unpack() { - pypi_src_unpack - cargo_src_unpack -} - -src_prepare() { - distutils-r1_src_prepare - sed -i -e '/strip/d' pyproject.toml || die -} - -python_test() { - local EPYTEST_DESELECT=( - # something about ANSI codes, no clue - pyproject-fmt/tests/test_main.py::test_main[format-absolute-no_check-in_place] - pyproject-fmt/tests/test_main.py::test_main[format-cwd-no_check-in_place] - ) - - epytest pyproject-fmt -} - -python_test_all() { - # default features cause linking errors because they make pyo3 - # wrongly assume it's compiling a Python extension - # https://github.com/tox-dev/toml-fmt/issues/23 - cargo_src_test --no-default-features -} diff --git a/dev-python/pyproject-fmt/pyproject-fmt-2.25.2.ebuild b/dev-python/pyproject-fmt/pyproject-fmt-2.25.2.ebuild deleted file mode 100644 index b1e48dc119a4..000000000000 --- a/dev-python/pyproject-fmt/pyproject-fmt-2.25.2.ebuild +++ /dev/null @@ -1,113 +0,0 @@ -# Copyright 2022-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=maturin -DISTUTILS_UPSTREAM_PEP517=standalone -PYPI_VERIFY_REPO=https://github.com/tox-dev/toml-fmt -PYTHON_COMPAT=( python3_{13..14} ) - -RUST_MIN_VER="1.87.0" -CRATES=" -" - -declare -A GIT_CRATES=( - [tombi-accessor]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-accessor' - [tombi-ast-editor]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-ast-editor' - [tombi-ast]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-ast' - [tombi-cache]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-cache' - [tombi-comment-directive-serde]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-comment-directive-serde' - [tombi-comment-directive-store]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-comment-directive-store' - [tombi-comment-directive]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-comment-directive' - [tombi-config]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-config' - [tombi-date-time]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-date-time' - [tombi-diagnostic]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-diagnostic' - [tombi-document-tree]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-document-tree' - [tombi-document]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-document' - [tombi-formatter]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-formatter' - [tombi-future]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-future' - [tombi-hashmap]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-hashmap' - [tombi-json-lexer]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-json-lexer' - [tombi-json-syntax]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-json-syntax' - [tombi-json-value]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-json-value' - [tombi-json]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-json' - [tombi-lexer]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-lexer' - [tombi-parser]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-parser' - [tombi-regex]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-regex' - [tombi-rg-tree]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-rg-tree' - [tombi-schema-store]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-schema-store' - [tombi-severity-level]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-severity-level' - [tombi-syntax]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-syntax' - [tombi-text]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-text' - [tombi-toml-text]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-toml-text' - [tombi-toml-version]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-toml-version' - [tombi-uri]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-uri' - [tombi-validator]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-validator' - [tombi-version-sort]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-version-sort' - [tombi-x-keyword]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-x-keyword' -) - -inherit cargo distutils-r1 pypi - -DESCRIPTION="Format your pyproject.toml file" -HOMEPAGE=" - https://github.com/tox-dev/toml-fmt/ - https://pypi.org/project/pyproject-fmt/ -" -SRC_URI+=" - ${CARGO_CRATE_URIS} - https://github.com/gentoo-crate-dist/toml-fmt/releases/download/pyproject-fmt%2F${PV}/toml-fmt-${P}-crates.tar.xz -" - -LICENSE="MIT" -# Dependent crate licenses -LICENSE+=" - Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD ISC MIT MPL-2.0 - Unicode-3.0 ZLIB -" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~s390 ~x86" - -RDEPEND=" - dev-python/toml-fmt-common[${PYTHON_USEDEP}] -" -# tox is called as a subprocess, to get targets from tox.ini -BDEPEND=" - test? ( - dev-python/tox - ) -" - -EPYTEST_PLUGINS=( pytest-mock ) -distutils_enable_tests pytest - -QA_FLAGS_IGNORED="usr/lib/py.*/site-packages/pyproject_fmt/_lib.*.so" - -src_unpack() { - pypi_src_unpack - cargo_src_unpack -} - -src_prepare() { - distutils-r1_src_prepare - sed -i -e '/strip/d' pyproject.toml || die -} - -python_test() { - local EPYTEST_DESELECT=( - # something about ANSI codes, no clue - pyproject-fmt/tests/test_main.py::test_main[format-absolute-no_check-in_place] - pyproject-fmt/tests/test_main.py::test_main[format-cwd-no_check-in_place] - ) - - epytest pyproject-fmt -} - -python_test_all() { - # default features cause linking errors because they make pyo3 - # wrongly assume it's compiling a Python extension - # https://github.com/tox-dev/toml-fmt/issues/23 - cargo_src_test --no-default-features -} diff --git a/dev-python/pyproject-fmt/pyproject-fmt-2.25.4.ebuild b/dev-python/pyproject-fmt/pyproject-fmt-2.25.4.ebuild new file mode 100644 index 000000000000..f1ec3c161d50 --- /dev/null +++ b/dev-python/pyproject-fmt/pyproject-fmt-2.25.4.ebuild @@ -0,0 +1,113 @@ +# Copyright 2022-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=maturin +DISTUTILS_UPSTREAM_PEP517=standalone +PYPI_VERIFY_REPO=https://github.com/tox-dev/toml-fmt +PYTHON_COMPAT=( python3_{13..14} ) + +RUST_MIN_VER="1.87.0" +CRATES=" +" + +declare -A GIT_CRATES=( + [tombi-accessor]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-accessor' + [tombi-ast-editor]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-ast-editor' + [tombi-ast]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-ast' + [tombi-cache]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-cache' + [tombi-comment-directive-serde]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-comment-directive-serde' + [tombi-comment-directive-store]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-comment-directive-store' + [tombi-comment-directive]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-comment-directive' + [tombi-config]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-config' + [tombi-date-time]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-date-time' + [tombi-diagnostic]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-diagnostic' + [tombi-document-tree]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-document-tree' + [tombi-document]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-document' + [tombi-formatter]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-formatter' + [tombi-future]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-future' + [tombi-hashmap]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-hashmap' + [tombi-json-lexer]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-json-lexer' + [tombi-json-syntax]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-json-syntax' + [tombi-json-value]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-json-value' + [tombi-json]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-json' + [tombi-lexer]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-lexer' + [tombi-parser]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-parser' + [tombi-regex]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-regex' + [tombi-rg-tree]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-rg-tree' + [tombi-schema-store]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-schema-store' + [tombi-severity-level]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-severity-level' + [tombi-syntax]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-syntax' + [tombi-text]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-text' + [tombi-toml-text]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-toml-text' + [tombi-toml-version]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-toml-version' + [tombi-uri]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-uri' + [tombi-validator]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-validator' + [tombi-version-sort]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-version-sort' + [tombi-x-keyword]='https://github.com/tombi-toml/tombi;b46e34c8555e1b98d695ceec30cfa9c0227878ed;tombi-%commit%/crates/tombi-x-keyword' +) + +inherit cargo distutils-r1 pypi + +DESCRIPTION="Format your pyproject.toml file" +HOMEPAGE=" + https://github.com/tox-dev/toml-fmt/ + https://pypi.org/project/pyproject-fmt/ +" +SRC_URI+=" + ${CARGO_CRATE_URIS} + https://github.com/gentoo-crate-dist/toml-fmt/releases/download/pyproject-fmt%2F${PV}/toml-fmt-${P}-crates.tar.xz +" + +LICENSE="MIT" +# Dependent crate licenses +LICENSE+=" + Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD ISC MIT MPL-2.0 + Unicode-3.0 ZLIB +" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~s390 ~x86" + +RDEPEND=" + dev-python/toml-fmt-common[${PYTHON_USEDEP}] +" +# tox is called as a subprocess, to get targets from tox.ini +BDEPEND=" + test? ( + dev-python/tox + ) +" + +EPYTEST_PLUGINS=( pytest-mock ) +distutils_enable_tests pytest + +QA_FLAGS_IGNORED="usr/lib/py.*/site-packages/pyproject_fmt/_lib.*.so" + +src_unpack() { + pypi_src_unpack + cargo_src_unpack +} + +src_prepare() { + distutils-r1_src_prepare + sed -i -e '/strip/d' pyproject.toml || die +} + +python_test() { + local EPYTEST_DESELECT=( + # something about ANSI codes, no clue + pyproject-fmt/tests/test_main.py::test_main[format-absolute-no_check-in_place] + pyproject-fmt/tests/test_main.py::test_main[format-cwd-no_check-in_place] + ) + + epytest pyproject-fmt +} + +python_test_all() { + # default features cause linking errors because they make pyo3 + # wrongly assume it's compiling a Python extension + # https://github.com/tox-dev/toml-fmt/issues/23 + cargo_src_test --no-default-features +} diff --git a/dev-python/typeguard/Manifest b/dev-python/typeguard/Manifest index 8608630ece44..4880e25d6a14 100644 --- a/dev-python/typeguard/Manifest +++ b/dev-python/typeguard/Manifest @@ -1,2 +1,4 @@ DIST typeguard-4.5.2.tar.gz 80240 BLAKE2B c01e45060bc5a89e6545e7f627e3889580f712025affbe3022d6338bfc6b34f0cad0da5b20e7a8898606a9a1b7f189d2b90432e576c58f73329959a0b48961d1 SHA512 29f8ef17f148489656e7dc16ab89a2bcc890c43d54834c095ec238649028cfeb585238935cbbd2bed5311f530a1a9c4341a075466a605c471d6982aeb1dc5488 DIST typeguard-4.5.2.tar.gz.provenance 9478 BLAKE2B cdbf5265c47a4373f5fa11257eae249928a7f52ae1c4cef835bb9789a81874b91c46f653c89dc96276b3984aa9a076566d3a3f706cadfe808e00c8573a95d322 SHA512 df64d46286633d1b538a05f9b6b4042b9d5219e2f55938e49e31a39619200f4ce2d48776fa1758d112b0cefa35521aa2b9094e2ebc47de3ecf47514642f89e4e +DIST typeguard-4.6.0.tar.gz 82330 BLAKE2B 9e84089cf137fc7ee20abe58040798fdb976ade02ac760e7f3bef62d1e7775e99fca87daf0afe2ae46db82d3121e4a05e0a02bac5faf091043d3ffb6978f78ab SHA512 d910ef1d31db80add35f2daf53918585d199a775c1a531e542e20f03289af56bf125cf20e446befbc45da26a6974a3e87d7f163c6a611ec176c9b04b2c5dc613 +DIST typeguard-4.6.0.tar.gz.provenance 9863 BLAKE2B 761dbdfe2b4dd1fea9adc0bdfd2e6d385992139355162e3db7efaf94f4b240f2a732acf8329f964e478ff04bcf4e9453457a1f7f69c60c090cce54d01aef055c SHA512 4a18434c8e2c896a1cbe988516f387c372d87578dd1c3f733ef478732e441d67fd15252b6c3ab63be0fcfe7e1244b55b8726bffb6fb729cd731b59ab625b2fe1 diff --git a/dev-python/typeguard/typeguard-4.6.0.ebuild b/dev-python/typeguard/typeguard-4.6.0.ebuild new file mode 100644 index 000000000000..fc2eff28320f --- /dev/null +++ b/dev-python/typeguard/typeguard-4.6.0.ebuild @@ -0,0 +1,41 @@ +# Copyright 2021-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_VERIFY_REPO=https://github.com/agronholm/typeguard +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Run-time type checker for Python" +HOMEPAGE=" + https://pypi.org/project/typeguard/ + https://github.com/agronholm/typeguard/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + >=dev-python/typing-extensions-4.14.0[${PYTHON_USEDEP}] +" +BDEPEND=" + >=dev-python/setuptools-scm-6.4[${PYTHON_USEDEP}] +" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest + +python_test() { + local EPYTEST_IGNORE=( + # mypy changes results from version to version + tests/mypy + ) + + local -x PYTHONDONTWRITEBYTECODE= + # the XFAIL test pass due to some package being installed + epytest -o xfail_strict=False -p typeguard +} diff --git a/dev-python/urwid/Manifest b/dev-python/urwid/Manifest index d573c926b318..23b3a733fbc2 100644 --- a/dev-python/urwid/Manifest +++ b/dev-python/urwid/Manifest @@ -10,3 +10,5 @@ DIST urwid-4.0.6.tar.gz 877110 BLAKE2B 0020370cd25b856fe279c30e85a2802bf81fb2a88 DIST urwid-4.0.6.tar.gz.provenance 9822 BLAKE2B 05f3b4007bd4ddd7aa5ee57a542c3e99472bb7be489b0a493fe31e84996bfecf4783021f565e9ed39d29bd390d46487036e5e846862c2092443776a39cb2c80a SHA512 b70df2f633d82279d9e8b9a7b003693b37a32673a3aca8ced17bb9f83a924cd44be1918fa6e7d2683ab53c0be822eaf029e92e952bb9f1d27bd102934336e1a4 DIST urwid-4.0.7.tar.gz 878680 BLAKE2B b8ac2905c5587650b1eccc460517636376a1c5ce1fe2ce601f4bec4c759b18aa3769e7b1c209f671a8c88bceb158ecd7acd872320c67532aafde4dd11a204a7c SHA512 2fe4b81d19a545ad3d0c653d364c94dd4f7f80b58bc0d34ef3c64d119e8b68547dc9e3483431a09ede5d2f3e75bb8f3751a873894c3c95bc514e8697bd35c9cc DIST urwid-4.0.7.tar.gz.provenance 9724 BLAKE2B 5e035882c093eff96623ed86df438fdd9edf7a0e05fdbde1639d0f53a65bd9ec8755b8a9b418c5b7e625276ac1d923e9b333ff00a2c6ee772e4b7052f23328d4 SHA512 67eb6c7f66600a673d6a1432244e0db74da5dc72db59e4d00f0ff5b27299a85baead5880fd3b184e3c4883c634af8d97e80e0fbb4ea6b1660368105f82304078 +DIST urwid-4.0.8.tar.gz 878866 BLAKE2B 600a233caba49d439157c06e3d3af6febc1de49e86fabe2ef2ef8ffe54cd9ac4e455218b04e5bf86fb4c2e2acbacb1ef2d24032cd3d509b9c8d84d7965d736e2 SHA512 4cea0cb07a65b4b8ef274e5407f37de432130ac2c3963e21e3545a09b2566d0c552e281a706f59106f369cadf7139013aeaa81c54748e1c3df13647b45008293 +DIST urwid-4.0.8.tar.gz.provenance 9677 BLAKE2B 1d1aa1e350d79788b6ac046c286fb69b3e1bfb1cc602cc407b745b3b0e2cb33bbd841dd30b42217c4bbb91a2c1afc743688596b060de6b5227b567bea506c045 SHA512 7640bf072eab67527a7afef0330cada67745b6e7c29d889649074b7f4fad951dbdd75015eb273f1b2ad6cf05025da1ac696554f19b09d5588279010830cb139b diff --git a/dev-python/urwid/urwid-4.0.8.ebuild b/dev-python/urwid/urwid-4.0.8.ebuild new file mode 100644 index 000000000000..f840d3f28004 --- /dev/null +++ b/dev-python/urwid/urwid-4.0.8.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_VERIFY_REPO=https://github.com/urwid/urwid +PYTHON_COMPAT=( python3_{13..14} ) +PYTHON_REQ_USE="ncurses" + +inherit distutils-r1 optfeature pypi + +DESCRIPTION="Curses-based user interface library for Python" +HOMEPAGE=" + https://urwid.org/ + https://pypi.org/project/urwid/ + https://github.com/urwid/urwid/ +" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="examples" + +RDEPEND=" + dev-python/typing-extensions[${PYTHON_USEDEP}] + >=dev-python/wcwidth-0.4[${PYTHON_USEDEP}] +" +BDEPEND=" + dev-python/setuptools-scm[${PYTHON_USEDEP}] +" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest + +src_prepare() { + distutils-r1_src_prepare + + sed -i -e 's:--cov=urwid::' pyproject.toml || die +} + +python_install_all() { + use examples && dodoc -r examples + distutils-r1_python_install_all +} + +pkg_postinst() { + optfeature "Trio event loop" "dev-python/trio" +} diff --git a/dev-ruby/action_text-trix/action_text-trix-2.1.16-r1.ebuild b/dev-ruby/action_text-trix/action_text-trix-2.1.16-r1.ebuild new file mode 100644 index 000000000000..fdbbb34e5f50 --- /dev/null +++ b/dev-ruby/action_text-trix/action_text-trix-2.1.16-r1.ebuild @@ -0,0 +1,25 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_BINWRAP="" +RUBY_FAKEGEM_EXTRAINSTALL="app" +RUBY_FAKEGEM_RECIPE_DOC="none" +RUBY_FAKEGEM_RECIPE_TEST="none" + +inherit ruby-fakegem + +DESCRIPTION="A rich text editor for everyday writing" +HOMEPAGE="https://github.com/basecamp/trix" + +LICENSE="MIT" +SLOT="$(ver_cut 1)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +IUSE="test" + +ruby_add_rdepend " + dev-ruby/railties +" diff --git a/dev-ruby/action_text-trix/action_text-trix-2.1.16.ebuild b/dev-ruby/action_text-trix/action_text-trix-2.1.16.ebuild index 56808dcb699b..41eae973373f 100644 --- a/dev-ruby/action_text-trix/action_text-trix-2.1.16.ebuild +++ b/dev-ruby/action_text-trix/action_text-trix-2.1.16.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 diff --git a/dev-ruby/actioncable/actioncable-7.2.3.ebuild b/dev-ruby/actioncable/actioncable-7.2.3.ebuild index e6c27166eaf8..ff6eab26bd89 100644 --- a/dev-ruby/actioncable/actioncable-7.2.3.ebuild +++ b/dev-ruby/actioncable/actioncable-7.2.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -43,13 +43,14 @@ ruby_add_bdepend " >=dev-ruby/railties-4.2.0 dev-ruby/activerecord dev-ruby/test-unit:2 + dev-ruby/minitest:5 dev-ruby/mocha >=dev-ruby/pg-1.1:1 www-servers/puma )" all_ruby_prepare() { - sed -e '3igem "activerecord", "~> 7.2.0"; gem "railties", "~> 7.2.0"' \ + sed -e '3igem "activerecord", "~> 7.2.0"; gem "railties", "~> 7.2.0"; gem "minitest", "~> 5"' \ -i test/test_helper.rb || die # Avoid tests for unpackaged dependencies: websocket-client-simple diff --git a/dev-ruby/actioncable/actioncable-8.0.4-r1.ebuild b/dev-ruby/actioncable/actioncable-8.0.4-r1.ebuild new file mode 100644 index 000000000000..dd000b29e13b --- /dev/null +++ b/dev-ruby/actioncable/actioncable-8.0.4-r1.ebuild @@ -0,0 +1,61 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_RECIPE_DOC="" +RUBY_FAKEGEM_DOCDIR="" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" + +RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" + +RUBY_FAKEGEM_EXTRAINSTALL="app" + +RUBY_FAKEGEM_BINWRAP="" +RUBY_FAKEGEM_TASK_TEST="-Ilib test" + +inherit ruby-fakegem + +DESCRIPTION="Integrated WebSockets for Rails" +HOMEPAGE="https://github.com/rails/rails" +SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz" + +LICENSE="MIT" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm64 ~riscv ~x86" +IUSE="test" + +RUBY_S="rails-${PV}/${PN}" + +ruby_add_rdepend " + ~dev-ruby/actionpack-${PV}:* + ~dev-ruby/activesupport-${PV}:* + dev-ruby/nio4r:2 + >=dev-ruby/websocket-driver-0.6.1:* + >=dev-ruby/zeitwerk-2.6:2 +" + +ruby_add_bdepend " + test? ( + || ( dev-ruby/rack:3.1 dev-ruby/rack:3.0 dev-ruby/rack:2.2 ) + >=dev-ruby/railties-4.2.0 + dev-ruby/activerecord:$(ver_cut 1-2) + dev-ruby/test-unit:2 + dev-ruby/mocha + dev-ruby/minitest:5 + >=dev-ruby/pg-1.1:1 + www-servers/puma + )" + +all_ruby_prepare() { + sed -e '3igem "minitest", "~> 5"' \ + -i test/test_helper.rb || die + + # Avoid tests for unpackaged dependencies: websocket-client-simple + rm -f test/client_test.rb || die + + # Avoid tests for dependencies that require additional setup or network + rm -f test/javascript_package_test.rb test/subscription_adapter/redis_test.rb || die +} diff --git a/dev-ruby/actioncable/actioncable-8.0.4.ebuild b/dev-ruby/actioncable/actioncable-8.0.4.ebuild index c549e1ac366b..d5b52ee7141b 100644 --- a/dev-ruby/actioncable/actioncable-8.0.4.ebuild +++ b/dev-ruby/actioncable/actioncable-8.0.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -44,11 +44,15 @@ ruby_add_bdepend " dev-ruby/activerecord:$(ver_cut 1-2) dev-ruby/test-unit:2 dev-ruby/mocha + dev-ruby/minitest:5 >=dev-ruby/pg-1.1:1 www-servers/puma )" all_ruby_prepare() { + sed -e '3igem "minitest", "~> 5"' \ + -i test/test_helper.rb || die + # Avoid tests for unpackaged dependencies: websocket-client-simple rm -f test/client_test.rb || die diff --git a/dev-ruby/actioncable/actioncable-8.1.2-r1.ebuild b/dev-ruby/actioncable/actioncable-8.1.2-r1.ebuild new file mode 100644 index 000000000000..d65deb8ab71d --- /dev/null +++ b/dev-ruby/actioncable/actioncable-8.1.2-r1.ebuild @@ -0,0 +1,62 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_RECIPE_DOC="" +RUBY_FAKEGEM_DOCDIR="" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" + +RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" + +RUBY_FAKEGEM_EXTRAINSTALL="app" + +RUBY_FAKEGEM_BINWRAP="" +RUBY_FAKEGEM_TASK_TEST="-Ilib test" + +inherit ruby-fakegem + +DESCRIPTION="Integrated WebSockets for Rails" +HOMEPAGE="https://github.com/rails/rails" +SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz" + +LICENSE="MIT" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm64 ~riscv ~x86" +IUSE="test" + +RUBY_S="rails-${PV}/${PN}" + +ruby_add_rdepend " + ~dev-ruby/actionpack-${PV}:* + ~dev-ruby/activesupport-${PV}:* + dev-ruby/nio4r:2 + >=dev-ruby/websocket-driver-0.6.1:* + >=dev-ruby/zeitwerk-2.6:2 +" + +ruby_add_bdepend " + test? ( + || ( dev-ruby/rack:3.2 dev-ruby/rack:3.1 dev-ruby/rack:3.0 dev-ruby/rack:2.2 ) + >=dev-ruby/railties-4.2.0 + dev-ruby/activerecord:$(ver_cut 1-2) + dev-ruby/test-unit:2 + dev-ruby/mocha + >=dev-ruby/pg-1.1:1 + www-servers/puma + dev-ruby/minitest:6 + dev-ruby/minitest-mock + )" + +all_ruby_prepare() { + sed -e '2igem "minitest", "~> 6.0"; gem "minitest-mock"; require "pathname"' \ + -i test/test_helper.rb || die + + # Avoid tests for unpackaged dependencies: websocket-client-simple + rm -f test/client_test.rb || die + + # Avoid tests for dependencies that require additional setup or network + rm -f test/javascript_package_test.rb test/subscription_adapter/redis_test.rb || die +} diff --git a/dev-ruby/actionmailbox/actionmailbox-7.2.3.ebuild b/dev-ruby/actionmailbox/actionmailbox-7.2.3.ebuild index dbeec4762178..09544ad69d7c 100644 --- a/dev-ruby/actionmailbox/actionmailbox-7.2.3.ebuild +++ b/dev-ruby/actionmailbox/actionmailbox-7.2.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -56,6 +56,7 @@ all_ruby_prepare() { -e '/stimulus-rails/,/sass-embedded/ s:^:#:' \ -e '/group :\(cable\|doc\|job\|lint\|mdl\|rubocop\|storage\|test\)/,/^end/ s:^:#:' \ -e '/sqlite/ s/1.6.4/99/' \ + -e 's/gem "minitest"/gem "minitest", "~> 5"/' \ -i ../Gemfile || die rm ../Gemfile.lock || die sed -i -e '/byebug/ s:^:#:' test/test_helper.rb || die diff --git a/dev-ruby/actionmailbox/actionmailbox-8.0.4-r1.ebuild b/dev-ruby/actionmailbox/actionmailbox-8.0.4-r1.ebuild new file mode 100644 index 000000000000..bb1edf47986c --- /dev/null +++ b/dev-ruby/actionmailbox/actionmailbox-8.0.4-r1.ebuild @@ -0,0 +1,64 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_RECIPE_DOC="none" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" + +RUBY_FAKEGEM_GEMSPEC="actionmailbox.gemspec" + +RUBY_FAKEGEM_BINWRAP="" +RUBY_FAKEGEM_EXTRAINSTALL="app config db" + +inherit ruby-fakegem + +DESCRIPTION="Framework for designing email-service layers" +HOMEPAGE="https://github.com/rails/rails" +SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz" + +LICENSE="MIT" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +IUSE="test" + +RUBY_S="rails-${PV}/${PN}" + +ruby_add_rdepend " + ~dev-ruby/actionpack-${PV} + ~dev-ruby/activejob-${PV} + ~dev-ruby/activerecord-${PV} + ~dev-ruby/activestorage-${PV} + ~dev-ruby/activesupport-${PV} + >=dev-ruby/mail-2.8.0:* +" + +ruby_add_bdepend "test? ( + dev-ruby/bundler + dev-ruby/minitest:5 + dev-ruby/mocha + dev-ruby/propshaft + dev-ruby/rexml + dev-ruby/sqlite3 + dev-ruby/webmock + dev-ruby/rails +)" + +all_ruby_prepare() { + # Remove items from the common Gemfile that we don't need for this + # test run. This also requires handling some gemspecs. + sed -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|mysql2\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|sass-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|sprockets\|stackprof\|websocket-client-simple\|libxml-ruby\|redis\|blade\|aws-sdk\|google-cloud\|azure-storage\|selenium\|webdrivers\|webrick\|minitest-bisect\|minitest-retry\|minitest-reporters\|listen\|rack-cache\|rack-test\|capybara\|webpacker\|bootsnap\|dalli\|connection_pool\|terser\|cookiejar\|cgi\|web-console\|trilogy\|error_highlight\|jbuilder\|httpclient\|prism\|solid\|kamal\|thruster\|releaser\)/ s:^:#:" \ + -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \ + -e '/group :\(cable\|doc\|job\|lint\|mdl\|rubocop\|storage\|test\)/,/^end/ s:^:#:' \ + -e '/sqlite/ s/1.6.4/99/' \ + -e 's/gem "minitest"/gem "minitest", "~> 5"/' \ + -i ../Gemfile || die + rm ../Gemfile.lock || die + sed -i -e '/byebug/ s:^:#:' test/test_helper.rb || die +} + +each_ruby_prepare() { + sed -i -e 's:ruby:'${RUBY}':' test/dummy/bin/* || die +} diff --git a/dev-ruby/actionmailbox/actionmailbox-8.0.4.ebuild b/dev-ruby/actionmailbox/actionmailbox-8.0.4.ebuild index fd96a611abe8..2f6834f9fc8b 100644 --- a/dev-ruby/actionmailbox/actionmailbox-8.0.4.ebuild +++ b/dev-ruby/actionmailbox/actionmailbox-8.0.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -53,6 +53,7 @@ all_ruby_prepare() { -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \ -e '/group :\(cable\|doc\|job\|lint\|mdl\|rubocop\|storage\|test\)/,/^end/ s:^:#:' \ -e '/sqlite/ s/1.6.4/99/' \ + -e 's/gem "minitest"/gem "minitest", "~> 5"/' \ -i ../Gemfile || die rm ../Gemfile.lock || die sed -i -e '/byebug/ s:^:#:' test/test_helper.rb || die diff --git a/dev-ruby/actionmailbox/actionmailbox-8.1.2-r1.ebuild b/dev-ruby/actionmailbox/actionmailbox-8.1.2-r1.ebuild new file mode 100644 index 000000000000..9aa26254b6b1 --- /dev/null +++ b/dev-ruby/actionmailbox/actionmailbox-8.1.2-r1.ebuild @@ -0,0 +1,62 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_RECIPE_DOC="none" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" + +RUBY_FAKEGEM_GEMSPEC="actionmailbox.gemspec" + +RUBY_FAKEGEM_BINWRAP="" +RUBY_FAKEGEM_EXTRAINSTALL="app config db" + +inherit ruby-fakegem + +DESCRIPTION="Framework for designing email-service layers" +HOMEPAGE="https://github.com/rails/rails" +SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz" + +LICENSE="MIT" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +IUSE="test" + +RUBY_S="rails-${PV}/${PN}" + +ruby_add_rdepend " + ~dev-ruby/actionpack-${PV} + ~dev-ruby/activejob-${PV} + ~dev-ruby/activerecord-${PV} + ~dev-ruby/activestorage-${PV} + ~dev-ruby/activesupport-${PV} + >=dev-ruby/mail-2.8.0:* +" + +ruby_add_bdepend "test? ( + dev-ruby/bundler + dev-ruby/minitest:5 + dev-ruby/mocha + dev-ruby/propshaft + dev-ruby/rexml + >=dev-ruby/sqlite3-2.1 + dev-ruby/webmock + dev-ruby/rails +)" + +all_ruby_prepare() { + # Remove items from the common Gemfile that we don't need for this + # test run. This also requires handling some gemspecs. + sed -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|mysql2\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|sass-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|sprockets\|stackprof\|websocket-client-simple\|libxml-ruby\|redis\|blade\|aws-sdk\|google-cloud\|azure-storage\|selenium\|webdrivers\|webrick\|minitest-bisect\|minitest-retry\|minitest-reporters\|listen\|rack-cache\|rack-test\|capybara\|webpacker\|bootsnap\|dalli\|connection_pool\|terser\|cookiejar\|cgi\|web-console\|trilogy\|error_highlight\|jbuilder\|httpclient\|prism\|solid\|kamal\|thruster\|releaser\)/ s:^:#:" \ + -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \ + -e '/group :\(cable\|doc\|job\|lint\|mdl\|rubocop\|storage\|test\)/,/^end/ s:^:#:' \ + -i ../Gemfile || die + rm ../Gemfile.lock || die + sed -i -e '/byebug/ s:^:#:' test/test_helper.rb || die +} + +each_ruby_prepare() { + sed -i -e 's:ruby:'${RUBY}':' test/dummy/bin/* || die +} diff --git a/dev-ruby/actionmailer/actionmailer-7.1.5.1.ebuild b/dev-ruby/actionmailer/actionmailer-7.1.5.1.ebuild index cd77b9d4cb32..07f57b8b40c4 100644 --- a/dev-ruby/actionmailer/actionmailer-7.1.5.1.ebuild +++ b/dev-ruby/actionmailer/actionmailer-7.1.5.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -20,7 +20,7 @@ SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz LICENSE="MIT" SLOT="$(ver_cut 1-2)" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" IUSE="test" RUBY_S="rails-${PV}/${PN}" diff --git a/dev-ruby/actionmailer/actionmailer-7.1.6.ebuild b/dev-ruby/actionmailer/actionmailer-7.1.6.ebuild index cd77b9d4cb32..07f57b8b40c4 100644 --- a/dev-ruby/actionmailer/actionmailer-7.1.6.ebuild +++ b/dev-ruby/actionmailer/actionmailer-7.1.6.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -20,7 +20,7 @@ SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz LICENSE="MIT" SLOT="$(ver_cut 1-2)" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" IUSE="test" RUBY_S="rails-${PV}/${PN}" diff --git a/dev-ruby/actionmailer/actionmailer-7.2.3.ebuild b/dev-ruby/actionmailer/actionmailer-7.2.3.ebuild index 4bd14a65ece9..8925db221787 100644 --- a/dev-ruby/actionmailer/actionmailer-7.2.3.ebuild +++ b/dev-ruby/actionmailer/actionmailer-7.2.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -37,6 +37,7 @@ ruby_add_rdepend " >=dev-ruby/rails-dom-testing-2.2:2" ruby_add_bdepend "test? ( + dev-ruby/minitest:5 dev-ruby/mocha )" @@ -45,7 +46,7 @@ all_ruby_prepare() { rm "${S}/../Gemfile" || die "Unable to remove Gemfile" sed -e '/\/load_paths/d' \ -e '3irequire "ostruct"' \ - -e '3igem "actionpack", "~> 7.2.0"; gem "activejob", "~> 7.2.0"' \ + -e '3igem "actionpack", "~> 7.2.0"; gem "activejob", "~> 7.2.0"; gem "minitest", "~> 5"' \ -i test/abstract_unit.rb || die "Unable to remove load paths" # Avoid a test failing only on attachment ordering, since this is a diff --git a/dev-ruby/actionmailer/actionmailer-8.0.4-r1.ebuild b/dev-ruby/actionmailer/actionmailer-8.0.4-r1.ebuild new file mode 100644 index 000000000000..140d101cb922 --- /dev/null +++ b/dev-ruby/actionmailer/actionmailer-8.0.4-r1.ebuild @@ -0,0 +1,51 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_RECIPE_DOC="none" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc" + +RUBY_FAKEGEM_GEMSPEC="actionmailer.gemspec" + +RUBY_FAKEGEM_BINWRAP="" + +inherit ruby-fakegem + +DESCRIPTION="Framework for designing email-service layers" +HOMEPAGE="https://github.com/rails/rails" +SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz" + +LICENSE="MIT" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +IUSE="test" + +RUBY_S="rails-${PV}/${PN}" + +ruby_add_rdepend " + ~dev-ruby/actionpack-${PV} + ~dev-ruby/actionview-${PV} + ~dev-ruby/activejob-${PV} + ~dev-ruby/activesupport-${PV} + >=dev-ruby/mail-2.8.0 + >=dev-ruby/rails-dom-testing-2.2:2" + +ruby_add_bdepend "test? ( + dev-ruby/mocha +)" + +all_ruby_prepare() { + # Set test environment to our hand. + rm "${S}/../Gemfile" || die "Unable to remove Gemfile" + sed -e '/\/load_paths/d' \ + -e '3igem "actionpack", "~> 8.0.0"; gem "activejob", "~> 8.0.0"; gem "minitest", "~> 5"' \ + -i test/abstract_unit.rb || die "Unable to remove load paths" + + # Avoid a test failing only on attachment ordering, since this is a + # security release. + sed -e '/adding inline attachments while rendering mail works/askip "gentoo: fails on ordering"' \ + -i test/base_test.rb || die +} diff --git a/dev-ruby/actionmailer/actionmailer-8.0.4.ebuild b/dev-ruby/actionmailer/actionmailer-8.0.4.ebuild index d7be786648f6..75adc69698eb 100644 --- a/dev-ruby/actionmailer/actionmailer-8.0.4.ebuild +++ b/dev-ruby/actionmailer/actionmailer-8.0.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -41,7 +41,7 @@ all_ruby_prepare() { # Set test environment to our hand. rm "${S}/../Gemfile" || die "Unable to remove Gemfile" sed -e '/\/load_paths/d' \ - -e '3igem "actionpack", "~> 8.0.0"; gem "activejob", "~> 8.0.0"' \ + -e '3igem "actionpack", "~> 8.0.0"; gem "activejob", "~> 8.0.0"; gem "minitest", "~> 5"' \ -i test/abstract_unit.rb || die "Unable to remove load paths" # Avoid a test failing only on attachment ordering, since this is a diff --git a/dev-ruby/actionmailer/actionmailer-8.1.2-r1.ebuild b/dev-ruby/actionmailer/actionmailer-8.1.2-r1.ebuild new file mode 100644 index 000000000000..6834f2df366a --- /dev/null +++ b/dev-ruby/actionmailer/actionmailer-8.1.2-r1.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_RECIPE_DOC="none" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc" + +RUBY_FAKEGEM_GEMSPEC="actionmailer.gemspec" + +RUBY_FAKEGEM_BINWRAP="" + +inherit ruby-fakegem + +DESCRIPTION="Framework for designing email-service layers" +HOMEPAGE="https://github.com/rails/rails" +SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz" + +LICENSE="MIT" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +IUSE="test" + +RUBY_S="rails-${PV}/${PN}" + +ruby_add_rdepend " + ~dev-ruby/actionpack-${PV} + ~dev-ruby/actionview-${PV} + ~dev-ruby/activejob-${PV} + ~dev-ruby/activesupport-${PV} + >=dev-ruby/mail-2.8.0 + >=dev-ruby/rails-dom-testing-2.2:2" + +ruby_add_bdepend "test? ( + dev-ruby/mocha + dev-ruby/minitest:6 + dev-ruby/minitest-mock +)" + +all_ruby_prepare() { + # Set test environment to our hand. + rm "${S}/../Gemfile" || die "Unable to remove Gemfile" + sed -e '/\/load_paths/d' \ + -e '3igem "actionpack", "~> 8.1.0"; gem "activejob", "~> 8.1.0"' \ + -e '3igem "minitest", "~> 6.0"; gem "minitest-mock"' \ + -i test/abstract_unit.rb || die "Unable to remove load paths" + + # Avoid a test failing only on attachment ordering, since this is a + # security release. + sed -e '/adding inline attachments while rendering mail works/askip "gentoo: fails on ordering"' \ + -i test/base_test.rb || die +} diff --git a/dev-ruby/actionpack/actionpack-7.1.5.1.ebuild b/dev-ruby/actionpack/actionpack-7.1.5.1.ebuild index ee5d28548bf6..f6c5146456ab 100644 --- a/dev-ruby/actionpack/actionpack-7.1.5.1.ebuild +++ b/dev-ruby/actionpack/actionpack-7.1.5.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -21,7 +21,7 @@ SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz LICENSE="MIT" SLOT="$(ver_cut 1-2)" -KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" IUSE="test" RUBY_S="rails-${PV}/${PN}" diff --git a/dev-ruby/actionpack/actionpack-7.1.6.ebuild b/dev-ruby/actionpack/actionpack-7.1.6.ebuild index f8dadc357783..e9cd47f8b4e7 100644 --- a/dev-ruby/actionpack/actionpack-7.1.6.ebuild +++ b/dev-ruby/actionpack/actionpack-7.1.6.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -21,7 +21,7 @@ SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz LICENSE="MIT" SLOT="$(ver_cut 1-2)" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" IUSE="test" RUBY_S="rails-${PV}/${PN}" diff --git a/dev-ruby/actionpack/actionpack-7.2.3.ebuild b/dev-ruby/actionpack/actionpack-7.2.3.ebuild index bae3092b5afd..15eb19a8233a 100644 --- a/dev-ruby/actionpack/actionpack-7.2.3.ebuild +++ b/dev-ruby/actionpack/actionpack-7.2.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -61,7 +61,7 @@ all_ruby_prepare() { rm ../Gemfile.lock || die # Fix errors loading rack/session with rack 3.0 and use correct rails version. - sed -e '2igem "rack-session"; gem "railties", "~> 7.2.0"; gem "activemodel", "~> 7.2.0"' \ + sed -e '2igem "rack-session"; gem "railties", "~> 7.2.0"; gem "activemodel", "~> 7.2.0"; gem "minitest", "~> 5"' \ -i test/abstract_unit.rb || die # Use different timezone notation, this changed at some point due to an external dependency changing. diff --git a/dev-ruby/actionpack/actionpack-8.0.4-r1.ebuild b/dev-ruby/actionpack/actionpack-8.0.4-r1.ebuild new file mode 100644 index 000000000000..5421c1e32fc2 --- /dev/null +++ b/dev-ruby/actionpack/actionpack-8.0.4-r1.ebuild @@ -0,0 +1,82 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_RECIPE_DOC="none" +RUBY_FAKEGEM_DOCDIR="doc" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc" + +RUBY_FAKEGEM_GEMSPEC="actionpack.gemspec" + +RUBY_FAKEGEM_BINWRAP="" + +inherit ruby-fakegem + +DESCRIPTION="Eases web-request routing, handling, and response" +HOMEPAGE="https://github.com/rails/rails" +SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz" + +LICENSE="MIT" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +IUSE="test" + +RUBY_S="rails-${PV}/${PN}" + +ruby_add_rdepend " + ~dev-ruby/actionview-${PV} + ~dev-ruby/activesupport-${PV} + >=dev-ruby/nokogiri-1.8.5 + || ( dev-ruby/rack:3.1 dev-ruby/rack:3.0 >=dev-ruby/rack-2.2.4:2.2 ) + >=dev-ruby/rack-session-1.0.1 + >=dev-ruby/rack-test-0.6.3:* + >=dev-ruby/rails-dom-testing-2.2:2 + >=dev-ruby/rails-html-sanitizer-1.6:1 + >=dev-ruby/useragent-0.16:0 +" + +ruby_add_bdepend " + test? ( + dev-ruby/mocha + dev-ruby/bundler + >=dev-ruby/capybara-3.26 + ~dev-ruby/activemodel-${PV} + ~dev-ruby/railties-${PV} + >=dev-ruby/rack-cache-1.2:1.2 + dev-ruby/selenium-webdriver:4 + www-servers/puma + dev-ruby/minitest:5 + )" + +all_ruby_prepare() { + # Remove items from the common Gemfile that we don't need for this + # test run. This also requires handling some gemspecs. + sed -i -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|sprockets\|stackprof\)/ s:^:#:" \ + -e '/:job/,/end/ s:^:#:' \ + -e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die + rm ../Gemfile.lock || die + + # Fix errors loading rack/session with rack 3.0 and use correct rails version. + sed -e '2igem "rack-session"; gem "railties", "~> 8.0.0"; gem "activemodel", "~> 8.0.0"; gem "minitest", "~> 5"' \ + -i test/abstract_unit.rb || die + + # Use different timezone notation, this changed at some point due to an external dependency changing. + sed -e 's/-0000/GMT/' \ + -i test/dispatch/response_test.rb test/dispatch/cookies_test.rb test/dispatch/session/cookie_store_test.rb || die + + # Avoid tests that fail with a fixed cgi.rb version + sed -e '/test_session_store_with_all_domains/askip "Fails with fixed cgi.rb"' \ + -i test/dispatch/session/cookie_store_test.rb || die + + # Avoid tests failing with rails-dom-testing 2.3 (fixed upstream) + sed -e '/test_preserves_order_when_reading_from_cache_plus_rendering/askip "Fails with rails-dom-testing 2.3"' \ + -i test/controller/caching_test.rb || die + + # Avoid tests requiring chrome + sed -e '/DrivenBySeleniumWith/,/^end/ s:^:#:' \ + -i test/abstract_unit.rb || die + rm -f test/dispatch/system_testing/{driver,screenshot_helper,system_test_case}_test.rb || die +} diff --git a/dev-ruby/actionpack/actionpack-8.0.4.ebuild b/dev-ruby/actionpack/actionpack-8.0.4.ebuild index ce915b09dac8..66273d9d344c 100644 --- a/dev-ruby/actionpack/actionpack-8.0.4.ebuild +++ b/dev-ruby/actionpack/actionpack-8.0.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -60,7 +60,7 @@ all_ruby_prepare() { rm ../Gemfile.lock || die # Fix errors loading rack/session with rack 3.0 and use correct rails version. - sed -e '2igem "rack-session"; gem "railties", "~> 8.0.0"; gem "activemodel", "~> 8.0.0"' \ + sed -e '2igem "rack-session"; gem "railties", "~> 8.0.0"; gem "activemodel", "~> 8.0.0"; gem "minitest", "~> 5"' \ -i test/abstract_unit.rb || die # Use different timezone notation, this changed at some point due to an external dependency changing. diff --git a/dev-ruby/actionpack/actionpack-8.1.2-r1.ebuild b/dev-ruby/actionpack/actionpack-8.1.2-r1.ebuild new file mode 100644 index 000000000000..d069a22db565 --- /dev/null +++ b/dev-ruby/actionpack/actionpack-8.1.2-r1.ebuild @@ -0,0 +1,76 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_RECIPE_DOC="none" +RUBY_FAKEGEM_DOCDIR="doc" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc" + +RUBY_FAKEGEM_GEMSPEC="actionpack.gemspec" + +RUBY_FAKEGEM_BINWRAP="" + +inherit ruby-fakegem + +DESCRIPTION="Eases web-request routing, handling, and response" +HOMEPAGE="https://github.com/rails/rails" +SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz" + +LICENSE="MIT" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +IUSE="test" + +RUBY_S="rails-${PV}/${PN}" + +ruby_add_rdepend " + ~dev-ruby/actionview-${PV} + ~dev-ruby/activesupport-${PV} + >=dev-ruby/nokogiri-1.8.5 + || ( dev-ruby/rack:3.2 dev-ruby/rack:3.1 dev-ruby/rack:3.0 >=dev-ruby/rack-2.2.4:2.2 ) + >=dev-ruby/rack-session-1.0.1 + >=dev-ruby/rack-test-0.6.3:* + >=dev-ruby/rails-dom-testing-2.2:2 + >=dev-ruby/rails-html-sanitizer-1.6:1 + >=dev-ruby/useragent-0.16:0 +" + +ruby_add_bdepend " + test? ( + dev-ruby/mocha + dev-ruby/bundler + >=dev-ruby/capybara-3.26 + ~dev-ruby/activemodel-${PV} + ~dev-ruby/railties-${PV} + >=dev-ruby/rack-cache-1.2:1.2 + dev-ruby/selenium-webdriver:4 + www-servers/puma + dev-ruby/minitest:6 + dev-ruby/minitest-mock + )" + +all_ruby_prepare() { + # Remove items from the common Gemfile that we don't need for this + # test run. This also requires handling some gemspecs. + sed -i -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|sprockets\|stackprof\)/ s:^:#:" \ + -e '/:job/,/end/ s:^:#:' \ + -e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die + rm ../Gemfile.lock || die + + # Fix errors loading rack/session with rack 3.0 and missing OpenStruct + sed -e '2igem "rack-session"; require "ostruct"' \ + -e '3igem "minitest", "~> 6.0"; gem "minitest-mock"' \ + -i test/abstract_unit.rb || die + + # Avoid tests failing with rails-dom-testing 2.3 (fixed upstream) + sed -e '/test_preserves_order_when_reading_from_cache_plus_rendering/askip "Fails with rails-dom-testing 2.3"' \ + -i test/controller/caching_test.rb || die + + # Avoid tests requiring chrome + sed -e '/DrivenBySeleniumWith/,/^end/ s:^:#:' \ + -i test/abstract_unit.rb || die + rm -f test/dispatch/system_testing/{driver,screenshot_helper,system_test_case}_test.rb || die +} diff --git a/dev-ruby/actiontext/actiontext-7.2.3.ebuild b/dev-ruby/actiontext/actiontext-7.2.3.ebuild index 7efebc7ce69c..1f6256fe3ed9 100644 --- a/dev-ruby/actiontext/actiontext-7.2.3.ebuild +++ b/dev-ruby/actiontext/actiontext-7.2.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -53,6 +53,7 @@ all_ruby_prepare() { -e '/:job/,/end/ s:^:#:' \ -e '/group :\(cable\|doc\|lint\|mdl\|rubocop\|storage\|test\)/,/^end/ s:^:#:' \ -e '/sqlite/ s/1.6.4/99/' \ + -e 's/gem "minitest"/gem "minitest", "~> 5"/' \ -i ../Gemfile || die rm ../Gemfile.lock || die diff --git a/dev-ruby/actiontext/actiontext-8.0.4-r1.ebuild b/dev-ruby/actiontext/actiontext-8.0.4-r1.ebuild new file mode 100644 index 000000000000..5c0f74bc5039 --- /dev/null +++ b/dev-ruby/actiontext/actiontext-8.0.4-r1.ebuild @@ -0,0 +1,71 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_RECIPE_DOC="none" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" + +RUBY_FAKEGEM_GEMSPEC="actiontext.gemspec" + +RUBY_FAKEGEM_BINWRAP="" +RUBY_FAKEGEM_EXTRAINSTALL="app db package.json" + +inherit ruby-fakegem + +DESCRIPTION="Edit and display rich text in Rails applications" +HOMEPAGE="https://github.com/rails/rails" +SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz" + +LICENSE="MIT" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +IUSE="test" + +RUBY_S="rails-${PV}/${PN}" + +ruby_add_rdepend " + ~dev-ruby/actionpack-${PV} + ~dev-ruby/activerecord-${PV} + ~dev-ruby/activestorage-${PV} + ~dev-ruby/activesupport-${PV} + >=dev-ruby/globalid-0.6.0 + >=dev-ruby/nokogiri-1.8.5 +" + +ruby_add_bdepend "test? ( + dev-ruby/bundler + >=dev-ruby/importmap-rails-1.2.3 + dev-ruby/minitest:5 + dev-ruby/mocha + dev-ruby/propshaft + >=dev-ruby/sqlite3-1.4.0 +)" + +all_ruby_prepare() { + # Remove items from the common Gemfile that we don't need for this + # test run. This also requires handling some gemspecs. + sed -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|mysql2\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|sass-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|sprockets\|stackprof\|websocket-client-simple\|libxml-ruby\|redis\|blade\|aws-sdk\|google-cloud\|azure-storage\|selenium\|webpacker\|webrick\|webmock\|webdrivers\|minitest-bisect\|minitest-retry\|minitest-reporters\|listen\|rack-cache\|rack-test\|bootsnap\|capybara\|dalli\|connection_pool\|terser\|cookiejar\|cgi\|web-console\|trilogy\|error_highlight\|jbuilder\|httpclient\|prism\|solid\|kamal\|thruster\|releaser\)/ s:^:#:" \ + -e '/stimulus-rails/,/cssbundling-rails/ s:^:#:' \ + -e '/tailwindcss-rails/,/dartsass-rails/ s:^:#:' \ + -e '/:job/,/end/ s:^:#:' \ + -e '/group :\(cable\|doc\|lint\|mdl\|rubocop\|storage\|test\)/,/^end/ s:^:#:' \ + -e '/sqlite/ s/1.6.4/99/' \ + -e 's/gem "minitest"/gem "minitest", "~> 5"/' \ + -i ../Gemfile || die + rm ../Gemfile.lock || die + + # Avoid failing test depending on yarn + rm -f test/javascript_package_test.rb || die +} + +each_ruby_prepare() { + sed -i -e 's:ruby:'${RUBY}':' test/dummy/bin/* || die +} + +each_ruby_test() { + export SEED="2" + each_fakegem_test +} diff --git a/dev-ruby/actiontext/actiontext-8.0.4.ebuild b/dev-ruby/actiontext/actiontext-8.0.4.ebuild index 62f5a28e1b3d..a8d54b9d60ca 100644 --- a/dev-ruby/actiontext/actiontext-8.0.4.ebuild +++ b/dev-ruby/actiontext/actiontext-8.0.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -53,6 +53,7 @@ all_ruby_prepare() { -e '/:job/,/end/ s:^:#:' \ -e '/group :\(cable\|doc\|lint\|mdl\|rubocop\|storage\|test\)/,/^end/ s:^:#:' \ -e '/sqlite/ s/1.6.4/99/' \ + -e 's/gem "minitest"/gem "minitest", "~> 5"/' \ -i ../Gemfile || die rm ../Gemfile.lock || die diff --git a/dev-ruby/actiontext/actiontext-8.1.2-r1.ebuild b/dev-ruby/actiontext/actiontext-8.1.2-r1.ebuild new file mode 100644 index 000000000000..f76b1067c036 --- /dev/null +++ b/dev-ruby/actiontext/actiontext-8.1.2-r1.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_RECIPE_DOC="none" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" + +RUBY_FAKEGEM_GEMSPEC="actiontext.gemspec" + +RUBY_FAKEGEM_BINWRAP="" +RUBY_FAKEGEM_EXTRAINSTALL="app db package.json" + +inherit ruby-fakegem + +DESCRIPTION="Edit and display rich text in Rails applications" +HOMEPAGE="https://github.com/rails/rails" +SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz" + +LICENSE="MIT" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +IUSE="test" + +RUBY_S="rails-${PV}/${PN}" + +ruby_add_rdepend " + ~dev-ruby/actionpack-${PV} + >=dev-ruby/action_text-trix-2.1.15:2 + ~dev-ruby/activerecord-${PV} + ~dev-ruby/activestorage-${PV} + ~dev-ruby/activesupport-${PV} + >=dev-ruby/globalid-0.6.0 + >=dev-ruby/nokogiri-1.8.5 +" + +ruby_add_bdepend "test? ( + dev-ruby/bundler + >=dev-ruby/importmap-rails-1.2.3 + dev-ruby/minitest:5 + dev-ruby/mocha + dev-ruby/propshaft + >=dev-ruby/sqlite3-2.1 +)" + +all_ruby_prepare() { + # Remove items from the common Gemfile that we don't need for this + # test run. This also requires handling some gemspecs. + sed -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|mysql2\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|sass-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|sprockets\|stackprof\|websocket-client-simple\|libxml-ruby\|redis\|blade\|aws-sdk\|google-cloud\|azure-storage\|selenium\|webpacker\|webrick\|webmock\|webdrivers\|minitest-bisect\|minitest-retry\|minitest-reporters\|listen\|rack-cache\|rack-test\|bootsnap\|capybara\|dalli\|connection_pool\|terser\|cookiejar\|cgi\|web-console\|trilogy\|error_highlight\|jbuilder\|httpclient\|prism\|solid\|kamal\|thruster\|releaser\)/ s:^:#:" \ + -e '/stimulus-rails/,/cssbundling-rails/ s:^:#:' \ + -e '/tailwindcss-rails/,/dartsass-rails/ s:^:#:' \ + -e '/:job/,/end/ s:^:#:' \ + -e '/group :\(cable\|doc\|lint\|mdl\|rubocop\|storage\|test\)/,/^end/ s:^:#:' \ + -i ../Gemfile || die + rm ../Gemfile.lock || die + + # Avoid failing test depending on yarn + rm -f test/javascript_package_test.rb || die +} + +each_ruby_prepare() { + sed -i -e 's:ruby:'${RUBY}':' test/dummy/bin/* || die +} + +each_ruby_test() { + export SEED="2" + each_fakegem_test +} diff --git a/dev-ruby/actionview/actionview-7.1.5.1.ebuild b/dev-ruby/actionview/actionview-7.1.5.1.ebuild index 1863b6695bcf..00356d11d286 100644 --- a/dev-ruby/actionview/actionview-7.1.5.1.ebuild +++ b/dev-ruby/actionview/actionview-7.1.5.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -23,7 +23,7 @@ SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz LICENSE="MIT" SLOT="$(ver_cut 1-2)" -KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" IUSE="test" RUBY_S="rails-${PV}/${PN}" diff --git a/dev-ruby/actionview/actionview-7.1.6.ebuild b/dev-ruby/actionview/actionview-7.1.6.ebuild index 0195870d812e..e86a3b89a226 100644 --- a/dev-ruby/actionview/actionview-7.1.6.ebuild +++ b/dev-ruby/actionview/actionview-7.1.6.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -23,7 +23,7 @@ SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz LICENSE="MIT" SLOT="$(ver_cut 1-2)" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" IUSE="test" RUBY_S="rails-${PV}/${PN}" diff --git a/dev-ruby/actionview/actionview-7.2.3.ebuild b/dev-ruby/actionview/actionview-7.2.3.ebuild index f5b606c267eb..b47b8bd52ac9 100644 --- a/dev-ruby/actionview/actionview-7.2.3.ebuild +++ b/dev-ruby/actionview/actionview-7.2.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -64,7 +64,7 @@ all_ruby_prepare() { -e '/defined/ s/FixtureSet/ActiveRecord::FixtureSet/' \ -i test/active_record_unit.rb || die - sed -e '3irequire "ostruct"; gem "actionpack", "~> 7.2.0"; gem "activerecord", "~> 7.2.0"; gem "railties", "~> 7.2.0"' \ + sed -e '3irequire "ostruct"; gem "actionpack", "~> 7.2.0"; gem "activerecord", "~> 7.2.0"; gem "railties", "~> 7.2.0"; gem "minitest", "~> 5"' \ -i test/abstract_unit.rb || die # Avoid test failing on capitalization difference diff --git a/dev-ruby/actionview/actionview-8.0.4-r1.ebuild b/dev-ruby/actionview/actionview-8.0.4-r1.ebuild new file mode 100644 index 000000000000..64fa2157d129 --- /dev/null +++ b/dev-ruby/actionview/actionview-8.0.4-r1.ebuild @@ -0,0 +1,77 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_RECIPE_DOC="none" +RUBY_FAKEGEM_DOCDIR="doc" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc" + +RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" + +RUBY_FAKEGEM_EXTRAINSTALL="app" + +RUBY_FAKEGEM_BINWRAP="" + +inherit ruby-fakegem + +DESCRIPTION="Simple, battle-tested conventions and helpers for building web pages" +HOMEPAGE="https://github.com/rails/rails/" +SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz" + +LICENSE="MIT" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +IUSE="test" + +RUBY_S="rails-${PV}/${PN}" + +ruby_add_rdepend " + ~dev-ruby/activesupport-${PV} + >=dev-ruby/builder-3.1:* =dev-ruby/builder-3*:* + >=dev-ruby/erubi-1.11:0 + >=dev-ruby/rails-dom-testing-2.2:2 + >=dev-ruby/rails-html-sanitizer-1.6:1 +" + +ruby_add_bdepend " + test? ( + dev-ruby/capybara + dev-ruby/mocha + ~dev-ruby/actionpack-${PV} + ~dev-ruby/activemodel-${PV} + ~dev-ruby/activerecord-${PV} + ~dev-ruby/railties-${PV} + dev-ruby/prism + dev-ruby/sqlite3 + dev-ruby/minitest:5 + )" + +all_ruby_prepare() { + # Remove items from the common Gemfile that we don't need for this + # test run. This also requires handling some gemspecs. + sed -i -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|rack-cache\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|redcarpet\|bcrypt\|uglifier\|mime-types\|minitest\|sprockets\|stackprof\)/ s:^:#:" \ + -e '/:job/,/end/ s:^:#:' \ + -e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die + rm ../Gemfile.lock || die + + # Fix loading of activerecord integration tests. This avoids loading + # activerecord twice and thus redefining constants leading to + # failures. Bug #719342 + sed -e '/abstract_unit/arequire "active_record" ; require "active_record/fixtures"' \ + -e '/defined/ s/FixtureSet/ActiveRecord::FixtureSet/' \ + -i test/active_record_unit.rb || die + + sed -e '3irequire "ostruct"; gem "actionpack", "~> 8.0.0"; gem "activerecord", "~> 8.0.0"; gem "railties", "~> 8.0.0"; gem "minitest", "~> 5"' \ + -i test/abstract_unit.rb || die + + # Avoid test failing on capitalization difference + sed -e '/test_raise_arg_overrides_raise_config_option/askip "Capitalization difference"' \ + -i test/template/translation_helper_test.rb || die + + # Remove tests that are coupled to the Sanitizer (already removed upstream) + sed -e '/test_sanitized_allowed_\(tags_class_method\|attributes_class_method\)/askip "Removed upstream"' \ + -i test/template/sanitize_helper_test.rb || die +} diff --git a/dev-ruby/actionview/actionview-8.0.4.ebuild b/dev-ruby/actionview/actionview-8.0.4.ebuild index a0c9dd5ba886..b59ad9abd0c2 100644 --- a/dev-ruby/actionview/actionview-8.0.4.ebuild +++ b/dev-ruby/actionview/actionview-8.0.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -64,7 +64,7 @@ all_ruby_prepare() { -e '/defined/ s/FixtureSet/ActiveRecord::FixtureSet/' \ -i test/active_record_unit.rb || die - sed -e '3irequire "ostruct"; gem "actionpack", "~> 8.0.0"; gem "activerecord", "~> 8.0.0"; gem "railties", "~> 8.0.0"' \ + sed -e '3irequire "ostruct"; gem "actionpack", "~> 8.0.0"; gem "activerecord", "~> 8.0.0"; gem "railties", "~> 8.0.0"; gem "minitest", "~> 5"' \ -i test/abstract_unit.rb || die # Avoid test failing on capitalization difference diff --git a/dev-ruby/actionview/actionview-8.1.2-r1.ebuild b/dev-ruby/actionview/actionview-8.1.2-r1.ebuild new file mode 100644 index 000000000000..0ece6e1c60e2 --- /dev/null +++ b/dev-ruby/actionview/actionview-8.1.2-r1.ebuild @@ -0,0 +1,63 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_RECIPE_DOC="none" +RUBY_FAKEGEM_DOCDIR="doc" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc" + +RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" + +RUBY_FAKEGEM_EXTRAINSTALL="app" + +RUBY_FAKEGEM_BINWRAP="" + +inherit ruby-fakegem + +DESCRIPTION="Simple, battle-tested conventions and helpers for building web pages" +HOMEPAGE="https://github.com/rails/rails/" +SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz" + +LICENSE="MIT" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +IUSE="test" + +RUBY_S="rails-${PV}/${PN}" + +ruby_add_rdepend " + ~dev-ruby/activesupport-${PV} + >=dev-ruby/builder-3.1:* =dev-ruby/builder-3*:* + >=dev-ruby/erubi-1.11:0 + >=dev-ruby/rails-dom-testing-2.2:2 + >=dev-ruby/rails-html-sanitizer-1.6:1 +" + +ruby_add_bdepend " + test? ( + dev-ruby/capybara + dev-ruby/mocha + ~dev-ruby/actionpack-${PV} + ~dev-ruby/activemodel-${PV} + ~dev-ruby/activerecord-${PV} + ~dev-ruby/railties-${PV} + dev-ruby/prism + dev-ruby/sqlite3 + dev-ruby/minitest:6 + dev-ruby/minitest-mock + )" + +all_ruby_prepare() { + # Remove items from the common Gemfile that we don't need for this + # test run. This also requires handling some gemspecs. + sed -i -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|rack-cache\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|redcarpet\|bcrypt\|uglifier\|mime-types\|sprockets\|stackprof\)/ s:^:#:" \ + -e '/:job/,/end/ s:^:#:' \ + -e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die + rm ../Gemfile.lock || die + + sed -e '3igem "minitest", "~> 6.0"; gem "minitest-mock"' \ + -i test/abstract_unit.rb || die +} diff --git a/dev-ruby/activejob/activejob-7.1.5.1.ebuild b/dev-ruby/activejob/activejob-7.1.5.1.ebuild index 593b5e67712f..b7d12a6d829c 100644 --- a/dev-ruby/activejob/activejob-7.1.5.1.ebuild +++ b/dev-ruby/activejob/activejob-7.1.5.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -21,7 +21,7 @@ SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz LICENSE="MIT" SLOT="$(ver_cut 1-2)" -KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" IUSE="test" RUBY_S="rails-${PV}/${PN}" diff --git a/dev-ruby/activejob/activejob-7.1.6.ebuild b/dev-ruby/activejob/activejob-7.1.6.ebuild index bc8e6896e5e5..0ba1660ff5ee 100644 --- a/dev-ruby/activejob/activejob-7.1.6.ebuild +++ b/dev-ruby/activejob/activejob-7.1.6.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -21,7 +21,7 @@ SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz LICENSE="MIT" SLOT="$(ver_cut 1-2)" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" IUSE="test" RUBY_S="rails-${PV}/${PN}" diff --git a/dev-ruby/activejob/activejob-8.0.4-r1.ebuild b/dev-ruby/activejob/activejob-8.0.4-r1.ebuild new file mode 100644 index 000000000000..052d3249cd99 --- /dev/null +++ b/dev-ruby/activejob/activejob-8.0.4-r1.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_RECIPE_DOC="" +RUBY_FAKEGEM_DOCDIR="" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" + +RUBY_FAKEGEM_BINWRAP="" + +RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" + +inherit ruby-fakegem + +DESCRIPTION="Job framework with pluggable queues" +HOMEPAGE="https://github.com/rails/rails" +SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz" + +LICENSE="MIT" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~sparc ~x86" +IUSE="test" + +RUBY_S="rails-${PV}/${PN}" + +ruby_add_rdepend " + ~dev-ruby/activesupport-${PV} + >=dev-ruby/globalid-0.3.6 +" + +ruby_add_bdepend " + test? ( + dev-ruby/mocha + dev-ruby/zeitwerk + )" + +all_ruby_prepare() { + # Set test environment to our hand. + sed -i -e '/load_paths/d' test/helper.rb || die "Unable to remove load paths" + + # Remove all currently unpackaged queues. + sed -i -e 's/que queue_classic resque sidekiq sneakers sucker_punch backburner//' \ + -e 's/delayed_job//' Rakefile || die + sed -i -e '/SneakersAdapter/ s:^:#:' test/cases/exceptions_test.rb || die + rm -f test/cases/delayed_job_adapter_test.rb || die +} diff --git a/dev-ruby/activejob/activejob-8.0.4.ebuild b/dev-ruby/activejob/activejob-8.0.4.ebuild index c18ce5deab00..97b534c02c3d 100644 --- a/dev-ruby/activejob/activejob-8.0.4.ebuild +++ b/dev-ruby/activejob/activejob-8.0.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 diff --git a/dev-ruby/activejob/activejob-8.1.2-r1.ebuild b/dev-ruby/activejob/activejob-8.1.2-r1.ebuild new file mode 100644 index 000000000000..052d3249cd99 --- /dev/null +++ b/dev-ruby/activejob/activejob-8.1.2-r1.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_RECIPE_DOC="" +RUBY_FAKEGEM_DOCDIR="" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" + +RUBY_FAKEGEM_BINWRAP="" + +RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" + +inherit ruby-fakegem + +DESCRIPTION="Job framework with pluggable queues" +HOMEPAGE="https://github.com/rails/rails" +SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz" + +LICENSE="MIT" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~sparc ~x86" +IUSE="test" + +RUBY_S="rails-${PV}/${PN}" + +ruby_add_rdepend " + ~dev-ruby/activesupport-${PV} + >=dev-ruby/globalid-0.3.6 +" + +ruby_add_bdepend " + test? ( + dev-ruby/mocha + dev-ruby/zeitwerk + )" + +all_ruby_prepare() { + # Set test environment to our hand. + sed -i -e '/load_paths/d' test/helper.rb || die "Unable to remove load paths" + + # Remove all currently unpackaged queues. + sed -i -e 's/que queue_classic resque sidekiq sneakers sucker_punch backburner//' \ + -e 's/delayed_job//' Rakefile || die + sed -i -e '/SneakersAdapter/ s:^:#:' test/cases/exceptions_test.rb || die + rm -f test/cases/delayed_job_adapter_test.rb || die +} diff --git a/dev-ruby/activemodel/activemodel-7.1.5.1.ebuild b/dev-ruby/activemodel/activemodel-7.1.5.1.ebuild index 1ae4f701eb52..df4d49dc8ed6 100644 --- a/dev-ruby/activemodel/activemodel-7.1.5.1.ebuild +++ b/dev-ruby/activemodel/activemodel-7.1.5.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -19,7 +19,7 @@ SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz LICENSE="MIT" SLOT="$(ver_cut 1-2)" -KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" IUSE="test" RUBY_S="rails-${PV}/${PN}" diff --git a/dev-ruby/activemodel/activemodel-7.1.6.ebuild b/dev-ruby/activemodel/activemodel-7.1.6.ebuild index d54bb3fbdc2e..c6472f59682a 100644 --- a/dev-ruby/activemodel/activemodel-7.1.6.ebuild +++ b/dev-ruby/activemodel/activemodel-7.1.6.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -19,7 +19,7 @@ SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz LICENSE="MIT" SLOT="$(ver_cut 1-2)" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" IUSE="test" RUBY_S="rails-${PV}/${PN}" diff --git a/dev-ruby/activemodel/activemodel-7.2.3.ebuild b/dev-ruby/activemodel/activemodel-7.2.3.ebuild index c55512204c04..3f1accc6fffa 100644 --- a/dev-ruby/activemodel/activemodel-7.2.3.ebuild +++ b/dev-ruby/activemodel/activemodel-7.2.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -39,7 +39,7 @@ ruby_add_bdepend " all_ruby_prepare() { # Set test environment to our hand. - sed -e '3igem "activesupport", "~> 7.2.0"; gem "railties", "~> 7.2.0"' \ + sed -e '3igem "activesupport", "~> 7.2.0"; gem "railties", "~> 7.2.0"; gem "minitest", "~> 5"' \ -e '/load_paths/d' \ -i test/cases/helper.rb || die diff --git a/dev-ruby/activemodel/activemodel-8.0.4-r1.ebuild b/dev-ruby/activemodel/activemodel-8.0.4-r1.ebuild new file mode 100644 index 000000000000..07d90ec7ab80 --- /dev/null +++ b/dev-ruby/activemodel/activemodel-8.0.4-r1.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc" + +RUBY_FAKEGEM_GEMSPEC="activemodel.gemspec" + +RUBY_FAKEGEM_BINWRAP="" + +inherit ruby-fakegem + +DESCRIPTION="Toolkit for building modeling frameworks like Active Record and Active Resource" +HOMEPAGE="https://github.com/rails/rails" +SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz" + +LICENSE="MIT" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~sparc ~x86" +IUSE="test" + +RUBY_S="rails-${PV}/${PN}" + +ruby_add_rdepend " + ~dev-ruby/activesupport-${PV}:* +" + +ruby_add_bdepend " + test? ( + ~dev-ruby/railties-${PV} + dev-ruby/test-unit:2 + dev-ruby/mocha + >=dev-ruby/bcrypt-ruby-3.1.7 + dev-ruby/minitest:5 + )" + +all_ruby_prepare() { + sed -e '3igem "minitest", "~> 5"' \ + -i test/cases/helper.rb || die + + # Set test environment to our hand. + sed -i -e '/load_paths/d' test/cases/helper.rb || die "Unable to remove load paths" +} diff --git a/dev-ruby/activemodel/activemodel-8.0.4.ebuild b/dev-ruby/activemodel/activemodel-8.0.4.ebuild index e203c418da1e..306184711a49 100644 --- a/dev-ruby/activemodel/activemodel-8.0.4.ebuild +++ b/dev-ruby/activemodel/activemodel-8.0.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -38,6 +38,9 @@ ruby_add_bdepend " )" all_ruby_prepare() { + sed -e '3igem "minitest", "~> 5"' \ + -i test/cases/helper.rb || die + # Set test environment to our hand. sed -i -e '/load_paths/d' test/cases/helper.rb || die "Unable to remove load paths" } diff --git a/dev-ruby/activemodel/activemodel-8.1.2-r1.ebuild b/dev-ruby/activemodel/activemodel-8.1.2-r1.ebuild new file mode 100644 index 000000000000..eb8e982dbaa7 --- /dev/null +++ b/dev-ruby/activemodel/activemodel-8.1.2-r1.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc" + +RUBY_FAKEGEM_GEMSPEC="activemodel.gemspec" + +RUBY_FAKEGEM_BINWRAP="" + +inherit ruby-fakegem + +DESCRIPTION="Toolkit for building modeling frameworks like Active Record and Active Resource" +HOMEPAGE="https://github.com/rails/rails" +SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz" + +LICENSE="MIT" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~sparc ~x86" +IUSE="test" + +RUBY_S="rails-${PV}/${PN}" + +ruby_add_rdepend " + ~dev-ruby/activesupport-${PV}:* +" + +ruby_add_bdepend " + test? ( + ~dev-ruby/railties-${PV} + dev-ruby/test-unit:2 + dev-ruby/mocha + >=dev-ruby/bcrypt-ruby-3.1.7 + dev-ruby/minitest:6 + dev-ruby/minitest-mock + )" + +all_ruby_prepare() { + # Set test environment to our hand. + sed -e '/load_paths/ s:^:#:' \ + -e '3igem "minitest", "~> 6.0"; gem "minitest-mock"' \ + -i test/cases/helper.rb || die "Unable to remove load paths" +} diff --git a/dev-ruby/activerecord/activerecord-7.1.5.1.ebuild b/dev-ruby/activerecord/activerecord-7.1.5.1.ebuild index 5e185ecccfd2..17484808b012 100644 --- a/dev-ruby/activerecord/activerecord-7.1.5.1.ebuild +++ b/dev-ruby/activerecord/activerecord-7.1.5.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -23,7 +23,7 @@ SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz LICENSE="MIT" SLOT="$(ver_cut 1-2)" -KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" IUSE="mysql postgres sqlite" RUBY_S="rails-${PV}/${PN}" diff --git a/dev-ruby/activerecord/activerecord-7.1.6.ebuild b/dev-ruby/activerecord/activerecord-7.1.6.ebuild index 22a4211c99b5..447e6cd47cfa 100644 --- a/dev-ruby/activerecord/activerecord-7.1.6.ebuild +++ b/dev-ruby/activerecord/activerecord-7.1.6.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -23,7 +23,7 @@ SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz LICENSE="MIT" SLOT="$(ver_cut 1-2)" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" IUSE="mysql postgres sqlite" RUBY_S="rails-${PV}/${PN}" diff --git a/dev-ruby/activerecord/activerecord-7.2.3.ebuild b/dev-ruby/activerecord/activerecord-7.2.3.ebuild index b4a52ed95e7b..0e5710e8899d 100644 --- a/dev-ruby/activerecord/activerecord-7.2.3.ebuild +++ b/dev-ruby/activerecord/activerecord-7.2.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -60,7 +60,7 @@ all_ruby_prepare() { -i ../Gemfile || die sed -i -e '/byebug/ s:^:#:' test/cases/base_prevent_writes_test.rb || die - sed -e '3igem "activemodel", "~> 7.2.0"; gem "actionpack", "~> 7.2.0"; gem "activejob", "~> 7.2.0"; gem "rack", "~> 3.2.0"' \ + sed -e '3igem "activemodel", "~> 7.2.0"; gem "actionpack", "~> 7.2.0"; gem "activejob", "~> 7.2.0"; gem "rack", "~> 3.2.0"; gem "minitest", "~> 5"' \ -i test/cases/helper.rb || die # Avoid single tests using mysql or postgres dependencies. diff --git a/dev-ruby/activerecord/activerecord-8.0.4-r1.ebuild b/dev-ruby/activerecord/activerecord-8.0.4-r1.ebuild new file mode 100644 index 000000000000..cf4b7335b78d --- /dev/null +++ b/dev-ruby/activerecord/activerecord-8.0.4-r1.ebuild @@ -0,0 +1,99 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +# this is not null so that the dependencies will actually be filled +RUBY_FAKEGEM_TASK_TEST="test" + +RUBY_FAKEGEM_RECIPE_DOC="none" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc" + +RUBY_FAKEGEM_GEMSPEC="activerecord.gemspec" + +RUBY_FAKEGEM_BINWRAP="" + +inherit ruby-fakegem + +DESCRIPTION="Implements the ActiveRecord pattern (Fowler, PoEAA) for ORM" +HOMEPAGE="https://github.com/rails/rails/" +SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz" + +LICENSE="MIT" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~sparc ~x86" +IUSE="mysql postgres sqlite" + +RUBY_S="rails-${PV}/${PN}" + +ruby_add_rdepend "~dev-ruby/activesupport-${PV} + ~dev-ruby/activemodel-${PV} + >=dev-ruby/timeout-0.4.0 + sqlite? ( >=dev-ruby/sqlite3-2.1 ) + mysql? ( dev-ruby/mysql2:0.5 ) + postgres? ( >=dev-ruby/pg-1.1:1 )" + +ruby_add_bdepend " + test? ( + dev-ruby/benchmark-ips + dev-ruby/bundler + ~dev-ruby/actionpack-${PV} + ~dev-ruby/activejob-${PV} + ~dev-ruby/railties-${PV} + >=dev-ruby/sqlite3-1.4.0 + dev-ruby/mocha + dev-ruby/minitest:5 + )" + +DEPEND+=" test? ( >=dev-db/sqlite-3.12.1 )" + +all_ruby_prepare() { + # Remove items from the common Gemfile that we don't need for this + # test run. This also requires handling some gemspecs. + rm ../Gemfile.lock || die + sed -e "/\(uglifier\|system_timer\|sdoc\|w3c_validators\|pg\|jquery-rails\|execjs\|'mysql'\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|redcarpet\|minitest\|sprockets\|stackprof\)/ s:^:#:" \ + -e '/:job/,/end/ s:^:#:' \ + -e '/group :doc/,/^end/ s:^:#:' \ + -i ../Gemfile || die + sed -i -e '/rack-ssl/d' -e 's/~> 3.4/>= 3.4/' ../railties/railties.gemspec || die + sed -e '/bcrypt/ s/3.0.0/3.0/' \ + -i ../Gemfile || die + sed -i -e '/byebug/ s:^:#:' test/cases/base_prevent_writes_test.rb || die + + # Add back json in the Gemfile because we dropped some dependencies + # earlier that implicitly required it. + sed -i -e '$agem "json"' ../Gemfile || die + + sed -e '3igem "activemodel", "~> 8.0.0"; gem "actionpack", "~> 8.0.0"; gem "activejob", "~> 8.0.0"; gem "minitest", "~>5"' \ + -i test/cases/helper.rb || die + + # Avoid single tests using mysql or postgres dependencies. + rm test/cases/invalid_connection_test.rb || die + sed -e '/test_switching_connections_with_database_url/askip "postgres"' \ + -i test/cases/connection_adapters/connection_handlers_multi_db_test.rb || die + + # Avoid failing test that makes bad assumptions on database state. + sed -i -e '/test_do_not_call_callbacks_for_delete_all/,/^ end/ s:^:#:' \ + test/cases/associations/has_many_associations_test.rb + + # Avoid test failing to bind limit length in favor of security release + sed -i -e '/test_too_many_binds/askip "Fails on Gentoo"' test/cases/bind_parameter_test.rb || die + + # Avoid test requiring specific locales + sed -i -e '/test_unicode_input_casting/askip "Requires specific locales"' test/cases/binary_test.rb || die + + # Avoid test not compatible with new sqlite versions + sed -e '/test_strict_strings_by_default/askip "Fails with newer sqlite"' \ + -i test/cases/adapters/sqlite3/sqlite3_adapter_test.rb || die + + # Avoid tests requiring a full Rails setup + rm -f test/cases/adapters/sqlite3/dbconsole_test.rb || die +} + +each_ruby_test() { + if use sqlite; then + ${RUBY} -S rake test_sqlite3 || die "sqlite3 tests failed" + fi +} diff --git a/dev-ruby/activerecord/activerecord-8.0.4.ebuild b/dev-ruby/activerecord/activerecord-8.0.4.ebuild index c0021b6f7437..25d083a0ef0a 100644 --- a/dev-ruby/activerecord/activerecord-8.0.4.ebuild +++ b/dev-ruby/activerecord/activerecord-8.0.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -66,7 +66,7 @@ all_ruby_prepare() { # earlier that implicitly required it. sed -i -e '$agem "json"' ../Gemfile || die - sed -e '3igem "activemodel", "~> 8.0.0"; gem "actionpack", "~> 8.0.0"; gem "activejob", "~> 8.0.0"' \ + sed -e '3igem "activemodel", "~> 8.0.0"; gem "actionpack", "~> 8.0.0"; gem "activejob", "~> 8.0.0"; gem "minitest", "~>5"' \ -i test/cases/helper.rb || die # Avoid single tests using mysql or postgres dependencies. diff --git a/dev-ruby/activerecord/activerecord-8.1.2-r1.ebuild b/dev-ruby/activerecord/activerecord-8.1.2-r1.ebuild new file mode 100644 index 000000000000..4a2559343a62 --- /dev/null +++ b/dev-ruby/activerecord/activerecord-8.1.2-r1.ebuild @@ -0,0 +1,99 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +# this is not null so that the dependencies will actually be filled +RUBY_FAKEGEM_TASK_TEST="test" + +RUBY_FAKEGEM_RECIPE_DOC="none" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc" + +RUBY_FAKEGEM_GEMSPEC="activerecord.gemspec" + +RUBY_FAKEGEM_BINWRAP="" + +inherit ruby-fakegem + +DESCRIPTION="Implements the ActiveRecord pattern (Fowler, PoEAA) for ORM" +HOMEPAGE="https://github.com/rails/rails/" +SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz" + +LICENSE="MIT" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~sparc ~x86" +IUSE="mysql postgres sqlite" + +RUBY_S="rails-${PV}/${PN}" + +ruby_add_rdepend "~dev-ruby/activesupport-${PV} + ~dev-ruby/activemodel-${PV} + >=dev-ruby/timeout-0.4.0 + sqlite? ( >=dev-ruby/sqlite3-2.1 ) + mysql? ( dev-ruby/mysql2:0.5 ) + postgres? ( >=dev-ruby/pg-1.1:1 )" + +ruby_add_bdepend " + test? ( + dev-ruby/benchmark-ips + dev-ruby/bundler + ~dev-ruby/actionpack-${PV} + ~dev-ruby/activejob-${PV} + ~dev-ruby/railties-${PV} + >=dev-ruby/sqlite3-2.1 + dev-ruby/mocha + dev-ruby/minitest:6 + dev-ruby/minitest-mock + )" + +DEPEND+=" test? ( >=dev-db/sqlite-3.12.1 )" + +all_ruby_prepare() { + # Remove items from the common Gemfile that we don't need for this + # test run. This also requires handling some gemspecs. + rm ../Gemfile.lock || die + sed -e "/\(uglifier\|system_timer\|sdoc\|w3c_validators\|pg\|jquery-rails\|execjs\|'mysql'\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|redcarpet\|sprockets\|stackprof\)/ s:^:#:" \ + -e '/:job/,/end/ s:^:#:' \ + -e '/group :doc/,/^end/ s:^:#:' \ + -i ../Gemfile || die + sed -e '/bcrypt/ s/3.0.0/3.0/' \ + -i ../Gemfile || die + sed -i -e '/byebug/ s:^:#:' test/cases/base_prevent_writes_test.rb || die + + sed -e '2igem "minitest", "~> 6.0"; gem "minitest-mock"' \ + -i test/cases/helper.rb || die + + # Add back json in the Gemfile because we dropped some dependencies + # earlier that implicitly required it. + sed -i -e '$agem "json"' ../Gemfile || die + + # Avoid single tests using mysql or postgres dependencies. + rm test/cases/invalid_connection_test.rb || die + sed -e '/test_switching_connections_with_database_url/askip "postgres"' \ + -i test/cases/connection_adapters/connection_handlers_multi_db_test.rb || die + + # Avoid failing test that makes bad assumptions on database state. + sed -i -e '/test_do_not_call_callbacks_for_delete_all/,/^ end/ s:^:#:' \ + test/cases/associations/has_many_associations_test.rb + + # Avoid test failing to bind limit length in favor of security release + sed -i -e '/test_too_many_binds/askip "Fails on Gentoo"' test/cases/bind_parameter_test.rb || die + + # Avoid test requiring specific locales + sed -i -e '/test_unicode_input_casting/askip "Requires specific locales"' test/cases/binary_test.rb || die + + # Avoid test not compatible with new sqlite versions + sed -e '/test_strict_strings_by_default/askip "Fails with newer sqlite"' \ + -i test/cases/adapters/sqlite3/sqlite3_adapter_test.rb || die + + # Avoid tests requiring a full Rails setup + rm -f test/cases/adapters/sqlite3/dbconsole_test.rb || die +} + +each_ruby_test() { + if use sqlite; then + ${RUBY} -S rake test_sqlite3 || die "sqlite3 tests failed" + fi +} diff --git a/dev-ruby/activestorage/activestorage-7.2.3.ebuild b/dev-ruby/activestorage/activestorage-7.2.3.ebuild index 2b79d25eb814..c395225742db 100644 --- a/dev-ruby/activestorage/activestorage-7.2.3.ebuild +++ b/dev-ruby/activestorage/activestorage-7.2.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -50,6 +50,10 @@ ruby_add_bdepend " >=dev-ruby/sqlite3-1.6.6 )" +PATCHES=( + "${FILESDIR}"/activestorage-7.2.3-ffmpeg-8.patch +) + all_ruby_prepare() { # Remove items from the common Gemfile that we don't need for this # test run. This also requires handling some gemspecs. @@ -58,6 +62,7 @@ all_ruby_prepare() { -e '/group :\(cable\|doc\|job\|lint\|mdl\|rubocop\|test\)/,/^end/ s:^:#:' \ -e '/sprockets-rails/ s/, require: false//' \ -e '/sqlite/ s/1.6.4/99/' \ + -e 's/gem "minitest"/gem "minitest", "~> 5"/' \ -i ../Gemfile || die rm ../Gemfile.lock || die diff --git a/dev-ruby/activestorage/activestorage-8.0.4-r1.ebuild b/dev-ruby/activestorage/activestorage-8.0.4-r1.ebuild new file mode 100644 index 000000000000..825b19272686 --- /dev/null +++ b/dev-ruby/activestorage/activestorage-8.0.4-r1.ebuild @@ -0,0 +1,87 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_RECIPE_DOC="" +RUBY_FAKEGEM_DOCDIR="" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" + +RUBY_FAKEGEM_GEMSPEC="activestorage.gemspec" + +RUBY_FAKEGEM_EXTRAINSTALL="app config db" + +RUBY_FAKEGEM_BINWRAP="" + +inherit ruby-fakegem + +DESCRIPTION="Attach cloud and local files in Rails applications" +HOMEPAGE="https://github.com/rails/rails" +SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz" + +LICENSE="MIT" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +IUSE="test" + +RUBY_S="rails-${PV}/${PN}" + +DEPEND+=" test? ( >=app-text/mupdf-1.23.7 media-gfx/imagemagick[jpeg,png,tiff] media-video/ffmpeg app-text/poppler[utils] ) " + +ruby_add_rdepend " + ~dev-ruby/actionpack-${PV}:* + ~dev-ruby/activejob-${PV}:* + ~dev-ruby/activerecord-${PV}:* + ~dev-ruby/activesupport-${PV}:* + dev-ruby/marcel:1.0 +" + +ruby_add_bdepend " + test? ( + ~dev-ruby/railties-${PV} + >=dev-ruby/image_processing-1.2:0 + dev-ruby/minitest:5 + dev-ruby/mini_magick + dev-ruby/mocha + dev-ruby/rake + dev-ruby/sprockets-rails + >=dev-ruby/sqlite3-1.6.6 + )" + +PATCHES=( + "${FILESDIR}"/activestorage-7.2.3-ffmpeg-8.patch +) + +all_ruby_prepare() { + # Remove items from the common Gemfile that we don't need for this + # test run. This also requires handling some gemspecs. + sed -e "/\(system_timer\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|bcrypt\|uglifier\|aws-sdk-s3\|aws-sdk-sns\|google-cloud-storage\|azure-storage\|blade\|bootsnap\|hiredis\|qunit-selenium\|chromedriver-helper\|rb-inotify\|libxml-ruby\|sass-rails\|capybara\|rack-cache\|selenium\|dalli\|listen\|connection_pool\|mysql2\|webdrivers\|webpacker\|rexml\|webmock\|webrick\|propshaft\|sprockets-export\|rack-test\|terser\|cookiejar\|cgi\|web-console\|trilogy\|error_highlight\|jbuilder\|httpclient\|prism\|solid\|kamal\|thruster\|releaser\)/ s:^:#:" \ + -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \ + -e '/group :\(cable\|doc\|job\|lint\|mdl\|rubocop\|test\)/,/^end/ s:^:#:' \ + -e '/sqlite/ s/1.6.4/99/' \ + -e 's/gem "minitest"/gem "minitest", "~> 5"/' \ + -i ../Gemfile || die + rm ../Gemfile.lock || die + + # Use mini_magick since vips is not packaged on Gentoo + sed -i -e '/mini_magick/aActiveStorage.variant_processor = :mini_magick' test/test_helper.rb || die + # Avoid vips-specific tests + sed -e '/\(resized and monochrome variation of JPEG blob\|monochrome with default variant_processor\|disabled variation of JPEG blob\)/askip "No vips support"' \ + -i test/models/variant_test.rb || die + + # Avoid test where different ffmpeg versions apply different rounding for the duration. + sed -i -e '/1.022000/ s:^:#:' test/analyzer/video_analyzer_test.rb || die + + # Avoid failing test depending on yarn + rm -f test/javascript_package_test.rb || die + + # Avoid unimportant asset configuration. This most likely fails due + # to some kind of dependency issue. + rm -f test/dummy/config/initializers/assets.rb || die + + # Avoid test failing due to missing (and unpackaged) AzureStorage service. + sed -e '/azure service is deprecated/askip "Not packaged in Gentoo."' \ + -i test/service/configurator_test.rb || die +} diff --git a/dev-ruby/activestorage/activestorage-8.0.4.ebuild b/dev-ruby/activestorage/activestorage-8.0.4.ebuild index 4f63bbe6a3e0..95aef380d34e 100644 --- a/dev-ruby/activestorage/activestorage-8.0.4.ebuild +++ b/dev-ruby/activestorage/activestorage-8.0.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -50,6 +50,10 @@ ruby_add_bdepend " >=dev-ruby/sqlite3-1.6.6 )" +PATCHES=( + "${FILESDIR}"/activestorage-7.2.3-ffmpeg-8.patch +) + all_ruby_prepare() { # Remove items from the common Gemfile that we don't need for this # test run. This also requires handling some gemspecs. @@ -57,6 +61,7 @@ all_ruby_prepare() { -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \ -e '/group :\(cable\|doc\|job\|lint\|mdl\|rubocop\|test\)/,/^end/ s:^:#:' \ -e '/sqlite/ s/1.6.4/99/' \ + -e 's/gem "minitest"/gem "minitest", "~> 5"/' \ -i ../Gemfile || die rm ../Gemfile.lock || die diff --git a/dev-ruby/activestorage/activestorage-8.1.2-r1.ebuild b/dev-ruby/activestorage/activestorage-8.1.2-r1.ebuild new file mode 100644 index 000000000000..e597c1540b79 --- /dev/null +++ b/dev-ruby/activestorage/activestorage-8.1.2-r1.ebuild @@ -0,0 +1,88 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_RECIPE_DOC="" +RUBY_FAKEGEM_DOCDIR="" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" + +RUBY_FAKEGEM_GEMSPEC="activestorage.gemspec" + +RUBY_FAKEGEM_EXTRAINSTALL="app config db" + +RUBY_FAKEGEM_BINWRAP="" + +inherit ruby-fakegem + +DESCRIPTION="Attach cloud and local files in Rails applications" +HOMEPAGE="https://github.com/rails/rails" +SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz" + +LICENSE="MIT" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +IUSE="test" + +RUBY_S="rails-${PV}/${PN}" + +DEPEND+=" test? ( >=app-text/mupdf-1.23.7 media-gfx/imagemagick[jpeg,png,tiff] media-video/ffmpeg app-text/poppler[utils] ) " + +ruby_add_rdepend " + ~dev-ruby/actionpack-${PV}:* + ~dev-ruby/activejob-${PV}:* + ~dev-ruby/activerecord-${PV}:* + ~dev-ruby/activesupport-${PV}:* + dev-ruby/marcel:1.0 +" + +ruby_add_bdepend " + test? ( + ~dev-ruby/railties-${PV} + >=dev-ruby/image_processing-1.2:0 + dev-ruby/minitest:6 + dev-ruby/mini_magick + dev-ruby/mocha + dev-ruby/rake + dev-ruby/sprockets-rails + >=dev-ruby/sqlite3-2.1.0 + dev-ruby/webmock + )" + +all_ruby_prepare() { + # Remove items from the common Gemfile that we don't need for this + # test run. This also requires handling some gemspecs. + sed -e "/\(system_timer\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|bcrypt\|uglifier\|aws-sdk-s3\|aws-sdk-sns\|google-cloud-storage\|azure-storage\|blade\|bootsnap\|hiredis\|qunit-selenium\|chromedriver-helper\|rb-inotify\|libxml-ruby\|sass-rails\|capybara\|rack-cache\|selenium\|dalli\|listen\|connection_pool\|mysql2\|webdrivers\|webpacker\|rexml\|webrick\|propshaft\|sprockets-export\|rack-test\|terser\|cookiejar\|cgi\|web-console\|trilogy\|error_highlight\|jbuilder\|httpclient\|prism\|solid\|kamal\|thruster\|releaser\)/ s:^:#:" \ + -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \ + -e '/group :\(cable\|doc\|job\|lint\|mdl\|rubocop\|test\)/,/^end/ s:^:#:' \ + -i ../Gemfile || die + rm ../Gemfile.lock || die + + # Use mini_magick since vips is not packaged on Gentoo + sed -e '/mini_magick/aActiveStorage.variant_processor = :mini_magick' \ + -i test/test_helper.rb || die + # Avoid vips-specific tests + sed -e '/\(resized and monochrome variation of JPEG blob\|monochrome with default variant_processor\|disabled variation of JPEG blob\)/askip "No vips support"' \ + -i test/models/variant_test.rb || die + sed -e '/analyzing with ruby-vips unavailable/askip "No vips support"' \ + -i test/analyzer/image_analyzer/image_magick_test.rb || die + rm -f test/analyzer/image_analyzer/vips_test.rb || die + sed -e '/Rails.application.configure/aconfig.active_storage.variant_processor = :mini_magick' \ + -i test/dummy/config/environments/*.rb || die + + # Avoid test where different ffmpeg versions apply different rounding for the duration. + sed -i -e '/1.022000/ s:^:#:' test/analyzer/video_analyzer_test.rb || die + + # Avoid failing test depending on yarn + rm -f test/javascript_package_test.rb || die + + # Avoid unimportant asset configuration. This most likely fails due + # to some kind of dependency issue. + rm -f test/dummy/config/initializers/assets.rb || die + + # Avoid test failing due to missing (and unpackaged) AzureStorage service. + sed -e '/azure service is deprecated/askip "Not packaged in Gentoo."' \ + -i test/service/configurator_test.rb || die +} diff --git a/dev-ruby/activestorage/files/activestorage-7.2.3-ffmpeg-8.patch b/dev-ruby/activestorage/files/activestorage-7.2.3-ffmpeg-8.patch new file mode 100644 index 000000000000..eb58ae710d55 --- /dev/null +++ b/dev-ruby/activestorage/files/activestorage-7.2.3-ffmpeg-8.patch @@ -0,0 +1,20 @@ +https://github.com/rails/rails/issues/56069 +https://github.com/rails/rails/pull/56125 + +From 92cee4cd5eb0f0dc2412b6ac9e4169c49ee52733 Mon Sep 17 00:00:00 2001 +From: zzak <zzak@hey.com> +Date: Mon, 10 Nov 2025 15:00:25 +0900 +Subject: [PATCH] Fix AudioAnalyzerTest for ffmpeg 7 and ffmpeg 8 + +--- a/test/analyzer/audio_analyzer_test.rb ++++ b/test/analyzer/audio_analyzer_test.rb +@@ -10,7 +10,8 @@ class ActiveStorage::Analyzer::AudioAnalyzerTest < ActiveSupport::TestCase + blob = create_file_blob(filename: "audio.mp3", content_type: "audio/mp3") + metadata = extract_metadata_from(blob) + +- assert_equal 0.914286, metadata[:duration] ++ assert (0.863379..0.914286).include?(metadata[:duration]) ++ + assert_equal 128000, metadata[:bit_rate] + assert_equal 44100, metadata[:sample_rate] + assert_not_nil metadata[:tags] diff --git a/dev-ruby/activesupport/activesupport-7.1.5.1.ebuild b/dev-ruby/activesupport/activesupport-7.1.5.1.ebuild index d68c35ef826b..175ee1886d82 100644 --- a/dev-ruby/activesupport/activesupport-7.1.5.1.ebuild +++ b/dev-ruby/activesupport/activesupport-7.1.5.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -47,6 +47,7 @@ ruby_add_rdepend " # memcache-client, nokogiri, builder, and redis are not strictly needed, # but there are tests using this code. ruby_add_bdepend "test? ( + <dev-ruby/dalli-5 >=dev-ruby/dalli-3.0.1 >=dev-ruby/nokogiri-1.8.1 >=dev-ruby/builder-3.1.0 @@ -68,6 +69,7 @@ all_ruby_prepare() { -e '/^group :test/,/^end/ s:^:#:' \ -e '/^\s*group :\(db\|doc\|rubocop\|job\|cable\|lint\|mdl\|storage\|ujs\|test\|view\) do/,/^\s*end/ s:^:#:' \ -e 's/gemspec/gemspec path: "activesupport"/' \ + -e '/gem "dalli",/ s/$/, "< 5"/' \ -e '5igem "builder"' ../Gemfile || die rm ../Gemfile.lock || die diff --git a/dev-ruby/activesupport/activesupport-7.1.6.ebuild b/dev-ruby/activesupport/activesupport-7.1.6.ebuild index 001df453f644..b379fb282220 100644 --- a/dev-ruby/activesupport/activesupport-7.1.6.ebuild +++ b/dev-ruby/activesupport/activesupport-7.1.6.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -47,6 +47,7 @@ ruby_add_rdepend " # memcache-client, nokogiri, builder, and redis are not strictly needed, # but there are tests using this code. ruby_add_bdepend "test? ( + <dev-ruby/dalli-5 >=dev-ruby/dalli-3.0.1 >=dev-ruby/nokogiri-1.8.1 >=dev-ruby/builder-3.1.0 @@ -54,7 +55,7 @@ ruby_add_bdepend "test? ( || ( dev-ruby/rack:3.1 dev-ruby/rack:3.0 ) dev-ruby/rexml dev-ruby/mocha - >dev-ruby/minitest-5.15.0:* + >dev-ruby/minitest-5.15.0:5 )" all_ruby_prepare() { @@ -63,11 +64,13 @@ all_ruby_prepare() { # Remove items from the common Gemfile that we don't need for this # test run. This also requires handling some gemspecs. - sed -i -e "/\(system_timer\|execjs\|jquery-rails\|journey\|ruby-prof\|stackprof\|benchmark-ips\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|bcrypt\|uglifier\|minitest\|sprockets\|stackprof\|rack-cache\|sqlite\|websocket-client-simple\|\libxml-ruby\|bootsnap\|aws-sdk\|webmock\|capybara\|sass-rails\|selenium-webdriver\|webpacker\|webrick\|propshaft\|rack-test\|terser\|cgi\|net-smtp\|net-imap\|net-pop\|digest\|matrix\|web-console\|error_highlight\|jbuilder\)/ s:^:#:" \ + sed -i -e "/\(system_timer\|execjs\|jquery-rails\|journey\|ruby-prof\|stackprof\|benchmark-ips\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|bcrypt\|uglifier\|sprockets\|stackprof\|rack-cache\|sqlite\|websocket-client-simple\|\libxml-ruby\|bootsnap\|aws-sdk\|webmock\|capybara\|sass-rails\|selenium-webdriver\|webpacker\|webrick\|propshaft\|rack-test\|terser\|cgi\|net-smtp\|net-imap\|net-pop\|digest\|matrix\|web-console\|error_highlight\|jbuilder\)/ s:^:#:" \ -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \ -e '/^group :test/,/^end/ s:^:#:' \ -e '/^\s*group :\(db\|doc\|rubocop\|job\|cable\|lint\|mdl\|storage\|ujs\|test\|view\) do/,/^\s*end/ s:^:#:' \ -e 's/gemspec/gemspec path: "activesupport"/' \ + -e '/gem "dalli",/ s/$/, "< 5"/' \ + -e '/gem "minitest"/ s/$/, "~> 5"/' \ -e '5igem "builder"' ../Gemfile || die rm ../Gemfile.lock || die diff --git a/dev-ruby/activesupport/activesupport-7.2.3.ebuild b/dev-ruby/activesupport/activesupport-7.2.3.ebuild index 3f29414c1c29..251e95502654 100644 --- a/dev-ruby/activesupport/activesupport-7.2.3.ebuild +++ b/dev-ruby/activesupport/activesupport-7.2.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -45,6 +45,7 @@ ruby_add_rdepend " # memcache-client, nokogiri, builder, and redis are not strictly needed, # but there are tests using this code. ruby_add_bdepend "test? ( + <dev-ruby/dalli-5 >=dev-ruby/dalli-3.0.1 >=dev-ruby/nokogiri-1.8.1 >=dev-ruby/builder-3.1.0 @@ -52,7 +53,7 @@ ruby_add_bdepend "test? ( || ( dev-ruby/rack:3.1 dev-ruby/rack:3.0 ) dev-ruby/rexml dev-ruby/mocha - >=dev-ruby/minitest-5.15.0:* + >=dev-ruby/minitest-5.15.0:5 )" all_ruby_prepare() { @@ -61,11 +62,13 @@ all_ruby_prepare() { # Remove items from the common Gemfile that we don't need for this # test run. This also requires handling some gemspecs. - sed -i -e "/\(system_timer\|execjs\|jquery-rails\|journey\|ruby-prof\|stackprof\|benchmark-ips\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|bcrypt\|uglifier\|minitest\|sprockets\|stackprof\|rack-cache\|sqlite\|websocket-client-simple\|\libxml-ruby\|bootsnap\|aws-sdk\|webmock\|capybara\|sass-rails\|selenium-webdriver\|webpacker\|webrick\|propshaft\|rack-test\|terser\|cgi\|net-smtp\|net-imap\|net-pop\|digest\|matrix\|web-console\|error_highlight\|jbuilder\|httpclient\|prism\|useragent\|launchy\|sass-embedded\)/ s:^:#:" \ + sed -i -e "/\(system_timer\|execjs\|jquery-rails\|journey\|ruby-prof\|stackprof\|benchmark-ips\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|bcrypt\|uglifier\|sprockets\|stackprof\|rack-cache\|sqlite\|websocket-client-simple\|\libxml-ruby\|bootsnap\|aws-sdk\|webmock\|capybara\|sass-rails\|selenium-webdriver\|webpacker\|webrick\|propshaft\|rack-test\|terser\|cgi\|net-smtp\|net-imap\|net-pop\|digest\|matrix\|web-console\|error_highlight\|jbuilder\|httpclient\|prism\|useragent\|launchy\|sass-embedded\)/ s:^:#:" \ -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \ -e '/^group :test/,/^end/ s:^:#:' \ -e '/^\s*group :\(db\|doc\|rubocop\|job\|cable\|lint\|mdl\|storage\|ujs\|test\|view\) do/,/^\s*end/ s:^:#:' \ -e 's/gemspec/gemspec path: "activesupport"/' \ + -e '/gem "dalli",/ s/$/, "< 5"/' \ + -e '/gem "minitest"/ s/$/, "~> 5"/' \ -e '5igem "builder"' ../Gemfile || die rm ../Gemfile.lock || die diff --git a/dev-ruby/activesupport/activesupport-8.0.4.ebuild b/dev-ruby/activesupport/activesupport-8.0.4.ebuild index 21166b1eefb8..68a6c8d7fe65 100644 --- a/dev-ruby/activesupport/activesupport-8.0.4.ebuild +++ b/dev-ruby/activesupport/activesupport-8.0.4.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc" @@ -46,6 +46,7 @@ ruby_add_rdepend " # memcache-client, nokogiri, builder, and redis are not strictly needed, # but there are tests using this code. ruby_add_bdepend "test? ( + <dev-ruby/dalli-5 >=dev-ruby/dalli-3.0.1 >=dev-ruby/nokogiri-1.8.1 >=dev-ruby/builder-3.1.0 @@ -53,7 +54,7 @@ ruby_add_bdepend "test? ( || ( dev-ruby/rack:3.1 dev-ruby/rack:3.0 ) dev-ruby/rexml dev-ruby/mocha - >=dev-ruby/minitest-5.15.0:* + >=dev-ruby/minitest-5.15.0:5 )" all_ruby_prepare() { @@ -62,11 +63,13 @@ all_ruby_prepare() { # Remove items from the common Gemfile that we don't need for this # test run. This also requires handling some gemspecs. - sed -i -e "/\(system_timer\|execjs\|jquery-rails\|journey\|ruby-prof\|stackprof\|benchmark-ips\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|bcrypt\|uglifier\|minitest\|sprockets\|stackprof\|rack-cache\|sqlite\|libxml-ruby\|bootsnap\|webmock\|capybara\|sass-rails\|selenium-webdriver\|webpacker\|webrick\|propshaft\|rack-test\|terser\|cgi\|net-smtp\|net-imap\|net-pop\|digest\|matrix\|web-console\|error_highlight\|jbuilder\|httpclient\|prism\|useragent\|solid\|kamal\|thruster\|aws-sdk\|launchy\|releaser\)/ s:^:#:" \ + sed -i -e "/\(system_timer\|execjs\|jquery-rails\|journey\|ruby-prof\|stackprof\|benchmark-ips\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|bcrypt\|uglifier\|sprockets\|stackprof\|rack-cache\|sqlite\|libxml-ruby\|bootsnap\|webmock\|capybara\|sass-rails\|selenium-webdriver\|webpacker\|webrick\|propshaft\|rack-test\|terser\|cgi\|net-smtp\|net-imap\|net-pop\|digest\|matrix\|web-console\|error_highlight\|jbuilder\|httpclient\|prism\|useragent\|solid\|kamal\|thruster\|aws-sdk\|launchy\|releaser\)/ s:^:#:" \ -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \ -e '/^group :test/,/^end/ s:^:#:' \ -e '/^\s*group :\(db\|doc\|rubocop\|job\|cable\|lint\|mdl\|storage\|ujs\|test\|view\) do/,/^\s*end/ s:^:#:' \ -e 's/gemspec/gemspec path: "activesupport"/' \ + -e '/gem "dalli",/ s/$/, "< 5"/' \ + -e '/gem "minitest"/ s/$/, "~> 5"/' \ -e '5igem "builder"' ../Gemfile || die rm ../Gemfile.lock || die diff --git a/dev-ruby/activesupport/activesupport-8.1.1.ebuild b/dev-ruby/activesupport/activesupport-8.1.1.ebuild index b64299d765b2..aa63d2531e92 100644 --- a/dev-ruby/activesupport/activesupport-8.1.1.ebuild +++ b/dev-ruby/activesupport/activesupport-8.1.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -46,6 +46,7 @@ ruby_add_rdepend " # memcache-client, nokogiri, builder, and redis are not strictly needed, # but there are tests using this code. ruby_add_bdepend "test? ( + <dev-ruby/dalli-5 >=dev-ruby/dalli-3.0.1 >=dev-ruby/nokogiri-1.8.1 >=dev-ruby/builder-3.1.0 @@ -67,6 +68,7 @@ all_ruby_prepare() { -e '/^group :test/,/^end/ s:^:#:' \ -e '/^\s*group :\(db\|doc\|rubocop\|job\|cable\|lint\|mdl\|storage\|ujs\|test\|view\) do/,/^\s*end/ s:^:#:' \ -e 's/gemspec/gemspec path: "activesupport"/' \ + -e '/gem "dalli",/ s/$/, "< 5"/' \ -e '5igem "builder"' ../Gemfile || die rm ../Gemfile.lock || die diff --git a/dev-ruby/activesupport/activesupport-8.1.2.ebuild b/dev-ruby/activesupport/activesupport-8.1.2.ebuild index 2ec4e3ea175a..aeb06af1dab8 100644 --- a/dev-ruby/activesupport/activesupport-8.1.2.ebuild +++ b/dev-ruby/activesupport/activesupport-8.1.2.ebuild @@ -3,7 +3,7 @@ EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc" @@ -46,6 +46,7 @@ ruby_add_rdepend " # memcache-client, nokogiri, builder, and redis are not strictly needed, # but there are tests using this code. ruby_add_bdepend "test? ( + <dev-ruby/dalli-5 >=dev-ruby/dalli-3.0.1 >=dev-ruby/nokogiri-1.8.1 >=dev-ruby/builder-3.1.0 @@ -68,6 +69,7 @@ all_ruby_prepare() { -e '/^group :test/,/^end/ s:^:#:' \ -e '/^\s*group :\(db\|doc\|rubocop\|job\|cable\|lint\|mdl\|storage\|ujs\|test\|view\) do/,/^\s*end/ s:^:#:' \ -e 's/gemspec/gemspec path: "activesupport"/' \ + -e '/gem "dalli",/ s/$/, "< 5"/' \ -e '5igem "builder"' ../Gemfile || die rm ../Gemfile.lock || die diff --git a/dev-ruby/addressable/addressable-2.8.8.ebuild b/dev-ruby/addressable/addressable-2.8.8.ebuild index dbd5078b1817..da4fec83ad13 100644 --- a/dev-ruby/addressable/addressable-2.8.8.ebuild +++ b/dev-ruby/addressable/addressable-2.8.8.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" diff --git a/dev-ruby/appraisal/appraisal-2.5.0.ebuild b/dev-ruby/appraisal/appraisal-2.5.0.ebuild index c55431f03b2f..aa0b14b6e4b6 100644 --- a/dev-ruby/appraisal/appraisal-2.5.0.ebuild +++ b/dev-ruby/appraisal/appraisal-2.5.0.ebuild @@ -1,8 +1,8 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRADOC="README.md" RUBY_FAKEGEM_RECIPE_TEST="rspec3" diff --git a/dev-ruby/async/async-2.35.0.ebuild b/dev-ruby/async/async-2.35.0.ebuild index 0ca8fc77f557..05002fbb010c 100644 --- a/dev-ruby/async/async-2.35.0.ebuild +++ b/dev-ruby/async/async-2.35.0.ebuild @@ -1,9 +1,9 @@ -# Copyright 2022-2025 Gentoo Authors +# Copyright 2022-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="sus" RUBY_FAKEGEM_EXTRADOC="readme.md" diff --git a/dev-ruby/axiom-types/axiom-types-0.1.1-r1.ebuild b/dev-ruby/axiom-types/axiom-types-0.1.1-r1.ebuild index af6113b76770..c8ef1b9848ec 100644 --- a/dev-ruby/axiom-types/axiom-types-0.1.1-r1.ebuild +++ b/dev-ruby/axiom-types/axiom-types-0.1.1-r1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRADOC="CONTRIBUTING.md README.md" RUBY_FAKEGEM_RECIPE_TEST="rspec3" diff --git a/dev-ruby/bogus/bogus-0.1.7.ebuild b/dev-ruby/bogus/bogus-0.1.7-r1.ebuild index c044790057f6..e4361dce3036 100644 --- a/dev-ruby/bogus/bogus-0.1.7.ebuild +++ b/dev-ruby/bogus/bogus-0.1.7-r1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" @@ -21,6 +21,10 @@ KEYWORDS="~amd64" ruby_add_rdepend ">=dev-ruby/dependor-0.0.4" +PATCHES=( + "${FILESDIR}"/bogus-0.1.7-erb6.patch +) + all_ruby_prepare() { sed -i -e '/simplecov/,/^end/ s:^:#:' \ -e '/SimpleCov/,/^end/ s:^:#:' spec/spec_helper.rb || die diff --git a/dev-ruby/bogus/files/bogus-0.1.7-erb6.patch b/dev-ruby/bogus/files/bogus-0.1.7-erb6.patch new file mode 100644 index 000000000000..2f4669c9520d --- /dev/null +++ b/dev-ruby/bogus/files/bogus-0.1.7-erb6.patch @@ -0,0 +1,15 @@ +https://github.com/ruby/erb/pull/95 + +diff --git a/lib/bogus/stubbing/not_all_expectations_satisfied.rb b/lib/bogus/stubbing/not_all_expectations_satisfied.rb +index e358beb..af67652 100644 +--- a/lib/bogus/stubbing/not_all_expectations_satisfied.rb ++++ b/lib/bogus/stubbing/not_all_expectations_satisfied.rb +@@ -15,7 +15,7 @@ module Bogus + <% end %> + EOF + str = str.gsub(/ {6}/, '') +- template = ERB.new(str, nil, "<>") ++ template = ERB.new(str, trim_mode: "<>") + new(template.result(binding)) + end + diff --git a/dev-ruby/capybara/capybara-3.40.0-r1.ebuild b/dev-ruby/capybara/capybara-3.40.0-r1.ebuild index d0acefb4c127..fae39495fab2 100644 --- a/dev-ruby/capybara/capybara-3.40.0-r1.ebuild +++ b/dev-ruby/capybara/capybara-3.40.0-r1.ebuild @@ -3,7 +3,7 @@ EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRADOC="History.md README.md" @@ -25,10 +25,12 @@ DEPEND="${DEPEND} test? ( || ( www-client/firefox www-client/firefox-bin ) )" PATCHES=( "${FILESDIR}/${P}-sinatra.patch" ) ruby_add_bdepend "test? ( + dev-ruby/bundler dev-ruby/rspec:3 >=dev-ruby/launchy-2.4.0 >=dev-ruby/selenium-webdriver-4.8:4 dev-ruby/sinatra:4 + dev-ruby/minitest:5 www-servers/puma )" @@ -57,8 +59,23 @@ all_ruby_prepare() { # Update spec to catch the right error code. This seems to have # changed recently across ruby versions. sed -i -e '/raise_error/ s/EOFError/Net::ReadTimeout/' spec/server_spec.rb || die + + cat <<-EOF > "${T}/Gemfile" || die + gem "launchy" + gem "matrix" + gem "mini_mime" + gem "minitest", "~> 5" + gem "nokogiri" + gem "puma" + gem "rack-test" + gem "regexp_parser", "~> 2" + gem "rspec", "~> 3" + gem "selenium-webdriver", "~> 4" + gem "sinatra", "~> 4" + gem "xpath", "~> 3" + EOF } each_ruby_test() { - virtx ${RUBY} -Ilib -S rspec-3 spec + BUNDLE_GEMFILE="${T}/Gemfile" virtx ${RUBY} -S bundle exec ${RUBY} -Ilib -S rspec-3 spec } diff --git a/dev-ruby/connection_pool/Manifest b/dev-ruby/connection_pool/Manifest index 872484b0c9dc..1ece8d07d78d 100644 --- a/dev-ruby/connection_pool/Manifest +++ b/dev-ruby/connection_pool/Manifest @@ -1,4 +1,3 @@ -DIST connection_pool-2.5.0.tar.gz 13120 BLAKE2B e914c07de63367d61e0f136ac95cb15cfb0595a232f2c72095b0ae97959f7d49a7dd1295e1509a3a21a43429e2f44a454e3e2146076cce683fdf6a0229e274d4 SHA512 ce43edb4dd25c050ad93d13ad0a4243bd8ed3234f3af3593b5301696fe31574b4ec20ffb6410caa459876ab4ed4d39d4767ebf57dd2970c25ad18672b42342ed DIST connection_pool-2.5.4.tar.gz 14717 BLAKE2B 9305afdbd4d4b9f80149bdf9c8588563d8300f3bb6f519dff3d9935c2791775339bdf07726016a9b93b9bc54c742cc334b02af05fc72cd616375bafa4acab8aa SHA512 9b3e60e3b2240742183bb873c8333319981063619aa3e5a847b20e08929f53e7e72fc1331eadd4c09be042470d51ef6de8d5dc1d325e1e7fa967c91260a8503a DIST connection_pool-2.5.5.tar.gz 14970 BLAKE2B 9d85d8725d50f1bd84b531ffe2f84adb10e5c3b42c06bdd9bfa6dc49706154ad77765be87c4c6b6ade703a85563c47943a05cf2c669b2d9f38933190fe1349c8 SHA512 f4345a53ad931b4f679ce7fd8659dca74d39b5c8352a5d8f38db94e6f5cef2aac80f08eb318740f05cd95bb857887b4c0e7c31f9fc1fb3d5506fae5dc93cbf12 DIST connection_pool-3.0.2.tar.gz 15465 BLAKE2B c4a06600d69d22a5355fe56fbcd095ed3fa73280c36428236185a087404d5d3f524f3a54a89d6d564231b6342e3f50fa3278c4c2f91885f40fc43c6d7c412967 SHA512 9d44e58f7af32211b469a2eb2baf164886ba37ac28135d90530564b23eea0ba9952dd79dfbf2243e9bfbdc23a6a0b33ff032fb034c1b75389d9297637a14f870 diff --git a/dev-ruby/connection_pool/connection_pool-2.5.0.ebuild b/dev-ruby/connection_pool/connection_pool-2.5.0.ebuild deleted file mode 100644 index b5e7a3958eac..000000000000 --- a/dev-ruby/connection_pool/connection_pool-2.5.0.ebuild +++ /dev/null @@ -1,29 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_GEMSPEC="connection_pool.gemspec" -RUBY_FAKEGEM_RECIPE_TEST="rake" -RUBY_FAKEGEM_RECIPE_DOC="none" -RUBY_FAKEGEM_EXTRADOC="Changes.md README.md" - -inherit ruby-fakegem - -DESCRIPTION="Generic connection pooling for Ruby" -HOMEPAGE="https://github.com/mperham/connection_pool" -SRC_URI="https://github.com/mperham/connection_pool/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86" -IUSE="test" - -ruby_add_bdepend "test? ( >=dev-ruby/minitest-5 )" - -all_ruby_prepare() { - sed -i -e '/git ls-files/d' connection_pool.gemspec || die - sed -i -e '/\(bundler\|standard\)/ s:^:#:' Rakefile || die - sed -i -e "s/gem 'minitest'/gem 'minitest', '~> 5.0'/" test/helper.rb || die -} diff --git a/dev-ruby/connection_pool/connection_pool-2.5.5.ebuild b/dev-ruby/connection_pool/connection_pool-2.5.5.ebuild index 6b325f7cef3d..85082ccbcb1d 100644 --- a/dev-ruby/connection_pool/connection_pool-2.5.5.ebuild +++ b/dev-ruby/connection_pool/connection_pool-2.5.5.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_GEMSPEC="connection_pool.gemspec" RUBY_FAKEGEM_RECIPE_TEST="rake" @@ -21,10 +21,24 @@ SLOT="0" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" IUSE="test" -ruby_add_bdepend "test? ( >=dev-ruby/minitest-5 )" +ruby_add_bdepend "test? ( dev-ruby/bundler dev-ruby/minitest:5 )" + +PATCHES=( + "${FILESDIR}"/connection_pool-2.5.5-ruby40.patch +) all_ruby_prepare() { sed -i -e '/git ls-files/d' connection_pool.gemspec || die sed -i -e '/\(bundler\|standard\)/ s:^:#:' Rakefile || die sed -i -e "s/gem 'minitest'/gem 'minitest', '~> 5.0'/" test/helper.rb || die + + # Avoid minitest-6, bug #978775 + cat <<-EOF > "${T}/Gemfile" || die + gem 'rake' + gem 'minitest', '~> 5' + EOF +} + +each_ruby_test() { + BUNDLE_GEMFILE="${T}/Gemfile" ${RUBY} -S bundle exec ${RUBY} -S rake test || die } diff --git a/dev-ruby/connection_pool/files/connection_pool-2.5.5-ruby40.patch b/dev-ruby/connection_pool/files/connection_pool-2.5.5-ruby40.patch new file mode 100644 index 000000000000..b535c3e373f4 --- /dev/null +++ b/dev-ruby/connection_pool/files/connection_pool-2.5.5-ruby40.patch @@ -0,0 +1,15 @@ +Surgically taked from +https://github.com/mperham/connection_pool/commit/5d3f6c1db81b009c06d1f1d85e12c21c1fe74fa2 + +--- a/test/test_connection_pool.rb ++++ b/test/test_connection_pool.rb +@@ -805,7 +811,8 @@ def test_ractors_pool_usage + pool.with { |y| checkedout = y } + checkedout + end +- result = r.take ++ ++ result = (RUBY_VERSION < "4") ? r.take : r.value + assert_equal obj, result # same string but different String instance + refute_equal obj.object_id, result.object_id # was copied across Ractor boundary + end diff --git a/dev-ruby/console/console-1.34.2.ebuild b/dev-ruby/console/console-1.34.2.ebuild index 03b3e8a030b9..3c916e1b1ca4 100644 --- a/dev-ruby/console/console-1.34.2.ebuild +++ b/dev-ruby/console/console-1.34.2.ebuild @@ -1,9 +1,9 @@ -# Copyright 2022-2025 Gentoo Authors +# Copyright 2022-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRADOC="readme.md" RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" diff --git a/dev-ruby/cri/cri-2.15.12.ebuild b/dev-ruby/cri/cri-2.15.12.ebuild index c7c38d2b6c8f..bafdb0a85eba 100644 --- a/dev-ruby/cri/cri-2.15.12.ebuild +++ b/dev-ruby/cri/cri-2.15.12.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md" @@ -31,6 +31,10 @@ all_ruby_prepare() { sed -e 's/MiniTest::Unit::TestCase/Minitest::Test/' \ -i test/helper.rb || die + + # Fix against minitest-6 + sed -e 's|assert_equal(nil,|assert_nil(|' \ + -i test/test_argument_list.rb test/test_command.rb || die } each_ruby_test() { diff --git a/dev-ruby/css_parser/css_parser-1.21.1.ebuild b/dev-ruby/css_parser/css_parser-1.21.1.ebuild index 1c7194eec562..6ec18304e0f6 100644 --- a/dev-ruby/css_parser/css_parser-1.21.1.ebuild +++ b/dev-ruby/css_parser/css_parser-1.21.1.ebuild @@ -1,8 +1,8 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_DOC_DIR="doc" RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md " diff --git a/dev-ruby/dalli/Manifest b/dev-ruby/dalli/Manifest index 28afdc8d6f80..97d55f95fd23 100644 --- a/dev-ruby/dalli/Manifest +++ b/dev-ruby/dalli/Manifest @@ -1,2 +1,4 @@ DIST dalli-3.2.8.tar.gz 73367 BLAKE2B 1680fda0d272d135f8e88a0ea2e16a08cd1027808f0503334b8c53dd85472cc7c37df3649623f8347169f5b8cd645c9a1a4d98343e45d4369ce8d08cc1306316 SHA512 85a0d8121fd0e539b0fd6c15716971d91e91741d36850cf8e887d8fef17d6b49ea6036ce66c986aafd008aa0e744cd798bc574e9376383b9af33b0971e31e25c DIST dalli-4.0.0.tar.gz 86604 BLAKE2B 0da3ba44eac9c020edbd4bdf7e18c90fcf146193ad2f01781e623251f813d23bee579079e314555459681760efc6722f9c3ed3a0a0df810990888d851134a454 SHA512 cd267a6d6f957ff24091922c05a3fade55df4b00b21b49966431acdaa51043dd6174724d857dc7056b6b58cc8264c03679c07c044eb55da8d6aaae84b2f3b271 +DIST dalli-4.3.3.tar.gz 124360 BLAKE2B 46cae2db11bb3a4ff59f0a7f47280644b7421126a2a27b2c13a02b5afbfebf08bf0f1e8faac1a467c790347a9dfb8a074438d967ca4e0fb9532e68e42b9f9587 SHA512 8ff11406902f63aa123a03cf06c361ce24c8fe32886c81d7fb4bb016e71519fc0152c3e39041b7992daeddf9d6cf4cc2a42d40e36f22e4d515a2600ecfe27ac2 +DIST dalli-5.0.5.tar.gz 125345 BLAKE2B 5d1461312e8da68dc5ba74960d1cc1b1566c1c88292768e23234d62a11a2ff62c06f3d7ea284ae0a6b6bf8a1ee2a674cea8038a89dfb66d319fc1e551d2fa55e SHA512 defc49ca030a4425f3620330e17007f18ca81f65d1ff2b9f056543490b127828692920552522d69e5d9e3f63ddd935f642c90154d143870ecf7e52e2d2f96cb5 diff --git a/dev-ruby/dalli/dalli-4.3.3.ebuild b/dev-ruby/dalli/dalli-4.3.3.ebuild new file mode 100644 index 000000000000..51941ee416dd --- /dev/null +++ b/dev-ruby/dalli/dalli-4.3.3.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_BINWRAP="" +RUBY_FAKEGEM_TASK_TEST="MT_NO_PLUGINS=true test" + +RUBY_FAKEGEM_DOCDIR="doc" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md Performance.md README.md" + +RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" + +inherit ruby-fakegem + +DESCRIPTION="A high performance pure Ruby client for accessing memcached servers" +HOMEPAGE="https://github.com/petergoldstein/dalli" +SRC_URI="https://github.com/petergoldstein/dalli/archive/v${PV}.tar.gz -> ${P}.tar.gz" +LICENSE="MIT" +SLOT="$(ver_cut 1)" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="test" + +DEPEND="test? ( >=net-misc/memcached-1.5.4[ssl(-)] )" + +ruby_add_rdepend "dev-ruby/logger" + +ruby_add_bdepend "test? ( + dev-ruby/connection_pool + dev-ruby/minitest:6 + dev-ruby/minitest-mock + dev-ruby/rack + dev-ruby/rack-session +)" + +all_ruby_prepare() { + chmod 0755 "${HOME}" || die "Failed to fix permissions on home" + + sed -i -e '/\(appraisal\|bundler\)/ s:^:#:' Rakefile || die + + sed -i -e '3igem "minitest", "~> 6.0"; gem "minitest-mock"; require "dalli"' \ + -e '/bundler/ s:^:#:' test/helper.rb || die + + sed -i -e "s:/tmp:${T}:" test/utils/certificate_generator.rb || die + + # Checks for unpackaged gems + rm test/test_gem_compatibility.rb || die + + # FIXME: + sed -e "/'handles SSL error during read operations'/,/^ end/ s:^:#:" \ + -e "/'handles SSL error during pipelined get'/,/^ end/ s:^:#:" \ + -i test/integration/test_network.rb || die +} diff --git a/dev-ruby/dalli/dalli-5.0.5.ebuild b/dev-ruby/dalli/dalli-5.0.5.ebuild new file mode 100644 index 000000000000..28d769e1d216 --- /dev/null +++ b/dev-ruby/dalli/dalli-5.0.5.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_BINWRAP="" +RUBY_FAKEGEM_TASK_TEST="MT_NO_PLUGINS=true test" + +RUBY_FAKEGEM_DOCDIR="doc" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md Performance.md README.md" + +RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" + +inherit ruby-fakegem + +DESCRIPTION="A high performance pure Ruby client for accessing memcached servers" +HOMEPAGE="https://github.com/petergoldstein/dalli" +SRC_URI="https://github.com/petergoldstein/dalli/archive/v${PV}.tar.gz -> ${P}.tar.gz" +LICENSE="MIT" +SLOT="$(ver_cut 1)" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="test" + +DEPEND="test? ( >=net-misc/memcached-1.5.4[ssl(-)] )" + +ruby_add_rdepend "dev-ruby/logger" + +ruby_add_bdepend "test? ( + dev-ruby/connection_pool + dev-ruby/minitest:6 + dev-ruby/minitest-mock + dev-ruby/rack + dev-ruby/rack-session +)" + +all_ruby_prepare() { + chmod 0755 "${HOME}" || die "Failed to fix permissions on home" + + sed -i -e '/\(appraisal\|bundler\)/ s:^:#:' Rakefile || die + + sed -i -e '3igem "minitest", "~> 6"; gem "minitest-mock"; require "dalli"' \ + -e '/bundler/ s:^:#:' test/helper.rb || die + + sed -i -e "s:/tmp:${T}:" test/utils/certificate_generator.rb || die + + # Checks for unpackaged gems + rm test/test_gem_compatibility.rb || die + + # FIXME: + sed -e "/'handles SSL error during read operations'/,/^ end/ s:^:#:" \ + -e "/'handles SSL error during pipelined get'/,/^ end/ s:^:#:" \ + -i test/integration/test_network.rb || die +} diff --git a/dev-ruby/diff-lcs/Manifest b/dev-ruby/diff-lcs/Manifest index 8131ec7c0bcc..13b421f6cfaf 100644 --- a/dev-ruby/diff-lcs/Manifest +++ b/dev-ruby/diff-lcs/Manifest @@ -1,2 +1,3 @@ DIST diff-lcs-1.6.1.gem 58880 BLAKE2B 37c527732c85fb4d3a3604b5f8a12d33325a54267b218deab4bcc4b9740f817073a69183c0cd395275b721aac5688aced8cee4b2479ed28df31a83e950fceab0 SHA512 2a454a1b918d4b2b62ea1c313e0cfd9ebf5d4c222d4da8d0e2fab11cbe7f4a105de6cb495a1b75e488b894a8fb30c80b8645740e1412f6cbf57134018d5eecf0 DIST diff-lcs-1.6.2.gem 59392 BLAKE2B ffdc160b0034e53371d08ffa36baae341f93640c644a418bcd331bcf8c6c0d8cfa1b2421b899c5897e2083a4829437d58cfd051ae7e8d6674a444f61c87f5f52 SHA512 0cfaae5b02784dfb17906afe3f044aa58cedb866b4d07229fec8c0859d78c03d24eaba37a951d1a0cc85df63a4132c46a600953ff3a80cd0830ad07e687f8894 +DIST diff-lcs-2.0.0.gem 70144 BLAKE2B 069fca35035ade77af4b9122b248b5c753e05332a11b3ae58bed60375053062a77068677a08844ae55635ab45730e462b3935edc7e488798776d9f9321326930 SHA512 228fb7558bbdac3ae6d29a0f72989e9889052b6ecc39570b1f287aa9b6b4224ac80e513491886e25a12c6c60fb1aa0aeb8fba36adeeb659d7b1614b02a648ccd diff --git a/dev-ruby/diff-lcs/diff-lcs-2.0.0.ebuild b/dev-ruby/diff-lcs/diff-lcs-2.0.0.ebuild new file mode 100644 index 000000000000..f6b8a19385a0 --- /dev/null +++ b/dev-ruby/diff-lcs/diff-lcs-2.0.0.ebuild @@ -0,0 +1,33 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_RECIPE_TEST="rspec3" + +RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md" + +inherit ruby-fakegem + +DESCRIPTION="Use the McIlroy-Hunt LCS algorithm to compute differences" +HOMEPAGE="https://github.com/halostatue/diff-lcs" + +LICENSE="|| ( Artistic MIT GPL-2+ )" +SLOT="0" +# Rspec and other packages dont work with it. Cannot be slotted simply due to executables +#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris" + +each_ruby_prepare() { + # Use the current ruby to test script invocation + sed -e "/system/ s:ruby:${RUBY}:" \ + -i spec/ldiff_spec.rb || die + + # Skip ldiff specs altogether for now since the fixtures are riddled + # with encoding and newline issues and ldiff is not the core of this gem. + rm -f spec/ldiff_spec.rb || die + + sed -e '/require "simplecov/ s:^:#:' \ + -e '/SimpleCov/,/^end/ s:^:#:' \ + -i spec/spec_helper.rb || die +} diff --git a/dev-ruby/diva/diva-2.0.1.ebuild b/dev-ruby/diva/diva-2.0.1.ebuild index 16dfc22456d6..d97d28d54471 100644 --- a/dev-ruby/diva/diva-2.0.1.ebuild +++ b/dev-ruby/diva/diva-2.0.1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRADOC="README.md" diff --git a/dev-ruby/facter/facter-4.10.0-r1.ebuild b/dev-ruby/facter/facter-4.10.0-r1.ebuild index 400406dfd732..819068b56860 100644 --- a/dev-ruby/facter/facter-4.10.0-r1.ebuild +++ b/dev-ruby/facter/facter-4.10.0-r1.ebuild @@ -2,7 +2,7 @@ # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_GEMSPEC="facter.gemspec" RUBY_FAKEGEM_RECIPE_TEST="rspec3" RUBY_FAKEGEM_RECIPE_DOC="yard" @@ -33,6 +33,7 @@ ruby_add_bdepend "test? ( dev-ruby/simplecov dev-ruby/timecop dev-ruby/webmock ) PATCHES=( "${FILESDIR}"/facter-4.7.0-gentoo-thor-gemspec.patch "${FILESDIR}"/facter-4.10.0-gentoo-os-release.patch + "${FILESDIR}"/facter-4.10.0-ruby34.patch ) src_unpack() { diff --git a/dev-ruby/facter/files/facter-4.10.0-ruby34.patch b/dev-ruby/facter/files/facter-4.10.0-ruby34.patch new file mode 100644 index 000000000000..5946e5cb34f2 --- /dev/null +++ b/dev-ruby/facter/files/facter-4.10.0-ruby34.patch @@ -0,0 +1,45 @@ +--- a/spec/facter/facter_spec.rb ++++ b/spec/facter/facter_spec.rb +@@ -598,7 +598,12 @@ describe Facter do + context 'when exception and message are hashes' do + let(:message) { { 'a': 1 } } + let(:exception) { { 'b': 2 } } +- let(:expected_message) { '{:a=>1}' } ++ # https://bugs.ruby-lang.org/issues/20433 ++ if RUBY_VERSION >= '3.4' ++ let(:expected_message) { '{a: 1}' } ++ else ++ let(:expected_message) { '{:a=>1}' } ++ end + + it_behaves_like 'when exception param is not an exception' + end +@@ -682,7 +687,12 @@ describe Facter do + context 'when exception and message are hashes' do + let(:message) { { 'a': 1 } } + let(:exception) { { 'b': 2 } } +- let(:expected_message) { '{:a=>1}' } ++ # https://bugs.ruby-lang.org/issues/20433 ++ if RUBY_VERSION >= '3.4' ++ let(:expected_message) { '{a: 1}' } ++ else ++ let(:expected_message) { '{:a=>1}' } ++ end + + it_behaves_like 'when exception param is not an exception' + end +@@ -808,7 +818,12 @@ describe Facter do + end + + it 'when message is a hash' do +- expect(logger).to receive(:warn).with('{:warn=>"message"}') ++ # https://bugs.ruby-lang.org/issues/20433 ++ if RUBY_VERSION >= '3.4' ++ expect(logger).to receive(:warn).with('{warn: "message"}') ++ else ++ expect(logger).to receive(:warn).with('{:warn=>"message"}') ++ end + + Facter.warn({ warn: 'message' }) + end + diff --git a/dev-ruby/faker/faker-3.6.0.ebuild b/dev-ruby/faker/faker-3.6.0.ebuild index 692610b5319b..50c1c6fd987f 100644 --- a/dev-ruby/faker/faker-3.6.0.ebuild +++ b/dev-ruby/faker/faker-3.6.0.ebuild @@ -3,7 +3,7 @@ EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_DOC="none" diff --git a/dev-ruby/gist/gist-6.0.0-r1.ebuild b/dev-ruby/gist/gist-6.0.0-r1.ebuild index 3be5451134cd..65587aabd1ec 100644 --- a/dev-ruby/gist/gist-6.0.0-r1.ebuild +++ b/dev-ruby/gist/gist-6.0.0-r1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" inherit ruby-fakegem diff --git a/dev-ruby/git/git-4.3.0.ebuild b/dev-ruby/git/git-4.3.0.ebuild index 6845808ce999..6d7cee8b52dc 100644 --- a/dev-ruby/git/git-4.3.0.ebuild +++ b/dev-ruby/git/git-4.3.0.ebuild @@ -19,7 +19,7 @@ RUBY_S="ruby-git-${PV}" LICENSE="MIT" SLOT="$(ver_cut 1)" -KEYWORDS="~amd64 ~ppc ~x86" +KEYWORDS="~amd64 ~ppc ~ppc64 ~x86" IUSE="test" DEPEND="test? ( >=dev-vcs/git-1.6.0.0 net-misc/openssh app-arch/tar )" diff --git a/dev-ruby/globalid/Manifest b/dev-ruby/globalid/Manifest index 96f4055f6459..d5c0ae6bc6f3 100644 --- a/dev-ruby/globalid/Manifest +++ b/dev-ruby/globalid/Manifest @@ -1,2 +1,3 @@ DIST globalid-1.2.1.tar.gz 24210 BLAKE2B 0cd47d65b6af78b9201ba4300820f94c126e5e69683b87503967a8b7887b9638693d51a9a1d20277dc5678ca925c567d29ed21dc1805825386fe028ddc475074 SHA512 35f3252afd41226a3dd728238be226a1f2ebb62ca853874fdf35e296dd807603319105117d4585df98cdb577efda9166fc5e5733b7af5bea7073d5c44ddec2c1 DIST globalid-1.3.0.tar.gz 24179 BLAKE2B 3e5e361850c7bec75ac25d1afb7528c0d4b759122d7b8b89cf164c4fef16432f2bbf346c59d8b4482e5ed82bfadc8cacca799dc82d89c7bbc402d1b11acb2cab SHA512 fc23616850a6500e6774c8cb6755f8bce08eca2516b8d03d1036c5e371eba682aca760996b8262cfac98ab3dd61c9fbceea875c7a6dfafdbd0989a6bd9cdfb60 +DIST globalid-1.4.0.tar.gz 26471 BLAKE2B 9c9f537d06002439906667002ea9f482cabc834f97d06430fa90847ce9feba0b20f4a8d7766945a7ebb0776880ce551f01aacf1b9e5efd3278f12aa274488bb2 SHA512 d7707bc8ea81c9f99c35da82aa9c969f1efec9b256608d6f238aafcc0146cb4f32d5fe91769e9824492241baf1df7c29cdd8c3f0f837dac933b4abc5bf44d4c8 diff --git a/dev-ruby/globalid/globalid-1.2.1.ebuild b/dev-ruby/globalid/globalid-1.4.0.ebuild index 6d425d0050e4..36575991119d 100644 --- a/dev-ruby/globalid/globalid-1.2.1.ebuild +++ b/dev-ruby/globalid/globalid-1.4.0.ebuild @@ -1,8 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33" + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRADOC="README.md" @@ -16,13 +17,13 @@ SRC_URI="https://github.com/rails/globalid/archive/v${PV}.tar.gz -> ${P}.tar.gz" LICENSE="MIT" SLOT="0" -KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="~amd64 ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" IUSE="test" ruby_add_bdepend "test? ( dev-ruby/bundler - <dev-ruby/activemodel-7.2 - <dev-ruby/railties-7.2 + <dev-ruby/activemodel-8.1 + <dev-ruby/railties-8.1 )" ruby_add_rdepend ">=dev-ruby/activesupport-6.1:*" @@ -30,6 +31,12 @@ all_ruby_prepare() { rm -f Gemfile.lock || die # Ensure a version of rails compatible with the tests. - sed -e '/^gem / s/$/, "<7.2"/' \ + sed -e '/^gem / s/$/, "<8.1"/' \ -i Gemfile || die + + # Work around a bug in Rails: https://github.com/rails/rails/pull/55227 + sed -e '3irequire "action_controller"' \ + -i test/cases/railtie_test.rb || die + + sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die } diff --git a/dev-ruby/hashery/hashery-2.1.2-r1.ebuild b/dev-ruby/hashery/hashery-2.1.2-r1.ebuild index 901e146bf302..9a36c8f68c46 100644 --- a/dev-ruby/hashery/hashery-2.1.2-r1.ebuild +++ b/dev-ruby/hashery/hashery-2.1.2-r1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_TASK_TEST="" RUBY_FAKEGEM_RECIPE_DOC="yard" diff --git a/dev-ruby/hashie/hashie-5.1.0.ebuild b/dev-ruby/hashie/hashie-5.1.0.ebuild index 0702e949c537..0bfea46a357d 100644 --- a/dev-ruby/hashie/hashie-5.1.0.ebuild +++ b/dev-ruby/hashie/hashie-5.1.0.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" diff --git a/dev-ruby/html-pipeline/html-pipeline-2.14.3.ebuild b/dev-ruby/html-pipeline/html-pipeline-2.14.3.ebuild index d3cef29ce7d5..a89dd768fb7f 100644 --- a/dev-ruby/html-pipeline/html-pipeline-2.14.3.ebuild +++ b/dev-ruby/html-pipeline/html-pipeline-2.14.3.ebuild @@ -1,8 +1,8 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" diff --git a/dev-ruby/httparty/Manifest b/dev-ruby/httparty/Manifest index e05b97cebae0..da32f5c5ac30 100644 --- a/dev-ruby/httparty/Manifest +++ b/dev-ruby/httparty/Manifest @@ -1,4 +1,2 @@ -DIST httparty-0.23.1.tar.gz 104812 BLAKE2B 87b4d6dfb893259106eec9d9a54fce2db2bf5dff171fb0aacd40b1936847b60d84c444c21255f1b5a685ec385a85a7c9c2047ce265c1c7ba1dbf9b130beca877 SHA512 01199b9baa5dc4e30c767271513b8cd507a509342475c9c1a10020b9f8c647ed0f37c93419f5fb3cc2b29d5b73634bb8d12d6accdeffd17770aa1d33119de559 DIST httparty-0.23.2.tar.gz 104952 BLAKE2B 825c1af8452fc11cdace9c4ee718452959a0251fd82aa422d9c3a8a3ad532188e0a024fd3ec641768726279229aa17fd81f985a3a2b9cdbf3c615183279f6525 SHA512 6768cf29bdfdc2f264d810387ffb239fc53c56d41c0771d343d01c65c9191f362b9fd8c7a64191799e06db62dd65c5e99734a3f6f3088351b71d60f4540cd1cd -DIST httparty-0.24.0.tar.gz 108464 BLAKE2B ebe4b7f724d05d3bc8f4ae9a31065221283b1b273550bc04e60e1c86a88a256fd180d0bc96e30135afae7568a29efe842f8d50cc516fc9420aa6067ffb3ab0f1 SHA512 ef1577023a4a2349eea238fdbd2d395e48425e54101732b79c3f583e77043a046c34aa1928f395baa79360c9c96150d790c5582a3ba938b9f207486fb5ee670a DIST httparty-0.24.2.tar.gz 108805 BLAKE2B 7ef3026f0ee3e3283ede46288dec30f81c05b9b9e5a0009aa0473370c1bedbc3e3d8b27113714fd5299992034c9e0b34bc09abe522674ea11faaae3f1de474aa SHA512 13373b70f177011a900dd55feef2393b53e550be6dae9424e8c05920d0c4badda28cf76887e3d6f4b42a1178934f7f38303d9349ab5595a14166c0295d2c2ebc diff --git a/dev-ruby/httparty/httparty-0.23.1.ebuild b/dev-ruby/httparty/httparty-0.23.1.ebuild deleted file mode 100644 index b9386f6f9af4..000000000000 --- a/dev-ruby/httparty/httparty-0.23.1.ebuild +++ /dev/null @@ -1,65 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby31 ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_RECIPE_TEST="rspec3" - -RUBY_FAKEGEM_RECIPE_DOC="none" -RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md" - -RUBY_FAKEGEM_GEMSPEC="httparty.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="Makes http fun! Also, makes consuming restful web services dead easy" -HOMEPAGE="https://www.johnnunemaker.com/httparty/" -SRC_URI="https://github.com/jnunemaker/httparty/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="amd64 ~x86" -IUSE="test" - -ruby_add_rdepend " - dev-ruby/csv - >=dev-ruby/mini_mime-1.0.0 - >=dev-ruby/multi_xml-0.5.2 -" - -ruby_add_bdepend 'test? ( dev-ruby/webmock )' - -all_ruby_prepare() { - sed -i -e 's/git ls-files \?-\?-\?/find/' ${RUBY_FAKEGEM_GEMSPEC} || die - - # Remove bundler - rm Gemfile || die - sed -i -e '/[Bb]undler/ s:^:#:' Rakefile || die - - # Avoid test dependency on cucumber. We can't run the features since - # they depend on mongrel which is no longer packaged. - sed -i -e '/cucumber/I s:^:#:' Rakefile || die - - # Avoid test dependency on simplecov - sed -i -e '/simplecov/I s:^:#:' \ - -e '/pry/ s:^:#:' \ - -e '1i require "cgi"; require "delegate"' spec/spec_helper.rb || die - - # Avoid test that works standalone but fails in the suite - #sed -i -e '/calls block given to perform with each redirect/,/^ end/ s:^:#:' spec/httparty/request_spec.rb - - # Avoid test that is not fully compatible with newer multi_xml - sed -i -e '/should be able parse response type xml automatically/askip "multi_xml"' spec/httparty_spec.rb || die - - # Avoid test that fails due to unicode normalization differences - sed -i -e '/handles international domains/askip "unicode differences"' spec/httparty_spec.rb || die -} - -all_ruby_install() { - all_fakegem_install - - docinto examples - dodoc examples/* -} diff --git a/dev-ruby/httparty/httparty-0.24.0.ebuild b/dev-ruby/httparty/httparty-0.24.0.ebuild deleted file mode 100644 index e06fc6434ab3..000000000000 --- a/dev-ruby/httparty/httparty-0.24.0.ebuild +++ /dev/null @@ -1,65 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_RECIPE_TEST="rspec3" - -RUBY_FAKEGEM_RECIPE_DOC="none" -RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md" - -RUBY_FAKEGEM_GEMSPEC="httparty.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="Makes http fun! Also, makes consuming restful web services dead easy" -HOMEPAGE="https://www.johnnunemaker.com/httparty/" -SRC_URI="https://github.com/jnunemaker/httparty/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~amd64 ~x86" -IUSE="test" - -ruby_add_rdepend " - dev-ruby/csv - >=dev-ruby/mini_mime-1.0.0 - >=dev-ruby/multi_xml-0.5.2 -" - -ruby_add_bdepend 'test? ( dev-ruby/webmock )' - -all_ruby_prepare() { - sed -i -e 's/git ls-files \?-\?-\?/find/' ${RUBY_FAKEGEM_GEMSPEC} || die - - # Remove bundler - rm Gemfile || die - sed -i -e '/[Bb]undler/ s:^:#:' Rakefile || die - - # Avoid test dependency on cucumber. We can't run the features since - # they depend on mongrel which is no longer packaged. - sed -i -e '/cucumber/I s:^:#:' Rakefile || die - - # Avoid test dependency on simplecov - sed -i -e '/simplecov/I s:^:#:' \ - -e '/pry/ s:^:#:' \ - -e '1i require "cgi"; require "delegate"' spec/spec_helper.rb || die - - # Avoid test that works standalone but fails in the suite - #sed -i -e '/calls block given to perform with each redirect/,/^ end/ s:^:#:' spec/httparty/request_spec.rb - - # Avoid test that is not fully compatible with newer multi_xml - sed -i -e '/should be able parse response type xml automatically/askip "multi_xml"' spec/httparty_spec.rb || die - - # Avoid test that fails due to unicode normalization differences - sed -i -e '/handles international domains/askip "unicode differences"' spec/httparty_spec.rb || die -} - -all_ruby_install() { - all_fakegem_install - - docinto examples - dodoc examples/* -} diff --git a/dev-ruby/httparty/httparty-0.24.2.ebuild b/dev-ruby/httparty/httparty-0.24.2.ebuild index 9d76c05da66d..ab607f26cbee 100644 --- a/dev-ruby/httparty/httparty-0.24.2.ebuild +++ b/dev-ruby/httparty/httparty-0.24.2.ebuild @@ -3,7 +3,7 @@ EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" diff --git a/dev-ruby/i18n/i18n-1.14.8.ebuild b/dev-ruby/i18n/i18n-1.14.8.ebuild index d29d7b8320aa..6bdfc303e00a 100644 --- a/dev-ruby/i18n/i18n-1.14.8.ebuild +++ b/dev-ruby/i18n/i18n-1.14.8.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" @@ -44,10 +44,14 @@ all_ruby_prepare() { } each_ruby_test() { + local versions case ${RUBY} in - *ruby34) + *ruby40) versions="7.2 8.0" ;; + *ruby34) + versions="7.1 7.2 8.0" + ;; *ruby33) versions="7.1 7.2 8.0" ;; diff --git a/dev-ruby/image_processing/Manifest b/dev-ruby/image_processing/Manifest index f6bffa6c44a7..cc9a55c950b0 100644 --- a/dev-ruby/image_processing/Manifest +++ b/dev-ruby/image_processing/Manifest @@ -1,2 +1 @@ -DIST image_processing-1.13.0.tar.gz 1166646 BLAKE2B 9ce172f9cfe7d212165fe95f58b4b20e434803992c4cabcee963818f4e35201d9962aceddf7c3647325e99930f5ae2cb069ab8ca7b7ac1c74428953dd1710076 SHA512 92fbd94db66abf7ea6256f9c475fd05b84ba1791bc00d4b03774ba22ebea2fb56fa75bc18fd7d39330e13d6b03460df60a3aebeaf1227834c854c458d6d99d7a DIST image_processing-1.14.0.tar.gz 9326866 BLAKE2B 374a09c39ce2ea3b0d7f8e2197fa0ecf902cc1c94d75e912cf94afdc9d8b433e46052766829023386febbe1b6a8b15142ea29f05ca8943cfecd19ce1b56c2cb3 SHA512 6beb6b097fb3af6899fac6805875f03d3bbe8b10ec5fdd9af65caa50ef09697f60b65108f1edb6a4e119a659a748021c5c4ad4a9573d48dcd00b13ca09ea9e58 diff --git a/dev-ruby/image_processing/image_processing-1.13.0.ebuild b/dev-ruby/image_processing/image_processing-1.13.0.ebuild deleted file mode 100644 index db7a0a3a3f91..000000000000 --- a/dev-ruby/image_processing/image_processing-1.13.0.ebuild +++ /dev/null @@ -1,46 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_RECIPE_DOC="none" -RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md doc/*.md" - -RUBY_FAKEGEM_GEMSPEC="image_processing.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="High-level image processing helper methods with libvips and ImageMagick" -HOMEPAGE="https://github.com/janko/image_processing" -SRC_URI="https://github.com/janko/image_processing/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" -IUSE="test" - -DEPEND+=" test? ( media-gfx/imagemagick[jpeg,png,tiff,xml] )" - -ruby_add_rdepend " - >=dev-ruby/mini_magick-4.9.5:0 -" - -ruby_add_bdepend "test? ( - >=dev-ruby/minitest-5.8:5 - >=dev-ruby/minitest-hooks-1.4.2 - dev-ruby/minispec-metadata -)" - -all_ruby_prepare() { - # Only support imagemagick for now since vips is not packaged - sed -i -e '/ruby-vips/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die - rm -f test/{builder,pipeline,vips}_test.rb || die - sed -i -e '/assert_dimensions/ s:^:#:' test/*_test.rb || die - - # phash is not packaged - sed -i -e '/\(assert\|refute\)_similar/ s:^:#:' test/*_test.rb || die - - sed -i -e '/\(bundler\|phashion\|vips\)/ s:^:#:' Rakefile test/test_helper.rb || die -} diff --git a/dev-ruby/image_processing/image_processing-1.14.0-r1.ebuild b/dev-ruby/image_processing/image_processing-1.14.0-r1.ebuild index b7742b04e0df..b3d5ce65b028 100644 --- a/dev-ruby/image_processing/image_processing-1.14.0-r1.ebuild +++ b/dev-ruby/image_processing/image_processing-1.14.0-r1.ebuild @@ -3,7 +3,7 @@ EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_DOC="none" RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md doc/*.md" diff --git a/dev-ruby/image_processing/image_processing-1.14.0.ebuild b/dev-ruby/image_processing/image_processing-1.14.0.ebuild deleted file mode 100644 index 04e9b912d541..000000000000 --- a/dev-ruby/image_processing/image_processing-1.14.0.ebuild +++ /dev/null @@ -1,50 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_RECIPE_DOC="none" -RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md doc/*.md" - -RUBY_FAKEGEM_GEMSPEC="image_processing.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="High-level image processing helper methods with libvips and ImageMagick" -HOMEPAGE="https://github.com/janko/image_processing" -SRC_URI="https://github.com/janko/image_processing/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" -IUSE="test" - -DEPEND+=" test? ( media-gfx/imagemagick[jpeg,png,tiff,xml] )" - -ruby_add_rdepend " - >=dev-ruby/mini_magick-4.9.5:0 -" - -ruby_add_bdepend "test? ( - >=dev-ruby/minitest-5.8:5 - >=dev-ruby/minitest-hooks-1.4.2 - dev-ruby/minispec-metadata -)" - -all_ruby_prepare() { - # Only support imagemagick for now since vips is not packaged - sed -i -e '/ruby-vips/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die - rm -f test/{builder,pipeline,vips}_test.rb || die - sed -i -e '/assert_dimensions/ s:^:#:' test/*_test.rb || die - - # phash is not packaged - sed -i -e '/\(assert\|refute\)_similar/ s:^:#:' test/*_test.rb || die - - sed -i -e '/\(bundler\|phashion\|vips\)/ s:^:#:' Rakefile test/test_helper.rb || die - - # Avoid tests using obsolete "strip" option (fixed upstream) - sed -e '/applies \(loader\|saver\) options/askip "Uses obsolete strip option"' \ - -i test/mini_magick_test.rb || die -} diff --git a/dev-ruby/importmap-rails/importmap-rails-2.2.3-r1.ebuild b/dev-ruby/importmap-rails/importmap-rails-2.2.3-r1.ebuild new file mode 100644 index 000000000000..b4000ff6e63a --- /dev/null +++ b/dev-ruby/importmap-rails/importmap-rails-2.2.3-r1.ebuild @@ -0,0 +1,28 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_BINWRAP="" +RUBY_FAKEGEM_EXTRADOC="README.md" +RUBY_FAKEGEM_EXTRAINSTALL="app" +# Depends on appraisals, unpackaged dependencies, and unpackaged rails +# bits. +RUBY_FAKEGEM_RECIPE_TEST="none" + +inherit ruby-fakegem + +DESCRIPTION="Use ESM with importmap to manage JavaScript in Rails" +HOMEPAGE="https://github.com/rails/importmap-rails" + +LICENSE="MIT" +SLOT="$(ver_cut 1)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" + +ruby_add_rdepend " + >=dev-ruby/actionpack-6.0.0:* + >=dev-ruby/activesupport-6.0.0:* + >=dev-ruby/railties-6.0.0:* +" diff --git a/dev-ruby/io-endpoint/io-endpoint-0.17.1-r1.ebuild b/dev-ruby/io-endpoint/io-endpoint-0.17.1-r1.ebuild new file mode 100644 index 000000000000..5ebc15074530 --- /dev/null +++ b/dev-ruby/io-endpoint/io-endpoint-0.17.1-r1.ebuild @@ -0,0 +1,39 @@ +# Copyright 2022-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_RECIPE_TEST="sus" +RUBY_FAKEGEM_EXTRADOC="readme.md" +RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" + +inherit ruby-fakegem + +DESCRIPTION="Provides a separation of concerns interface for IO endpoints" +HOMEPAGE="https://github.com/socketry/io-endpoint" +SRC_URI="https://github.com/socketry/io-endpoint/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MIT" +SLOT="$(ver_cut 1)" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~riscv ~sparc ~x86" +IUSE="test" + +ruby_add_bdepend "test? ( + dev-ruby/sus-fixtures-async + dev-ruby/sus-fixtures-openssl +)" + +all_ruby_prepare() { + sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die + + sed -e '/covered/I s:^:#:' -i config/sus.rb || die + + sed -e "s:/tmp/test.ipc:${TMP}/test.ipc:" \ + -i test/io/endpoint/unix_endpoint.rb || die + + # Avoid tests that require unpackaged "bake" and require running + # with Bundler. + rm -f test/traces/backend/capture.rb || die +} diff --git a/dev-ruby/launchy/launchy-3.1.1.ebuild b/dev-ruby/launchy/launchy-3.1.1.ebuild index efae2f5f74e2..9d3425071891 100644 --- a/dev-ruby/launchy/launchy-3.1.1.ebuild +++ b/dev-ruby/launchy/launchy-3.1.1.ebuild @@ -1,8 +1,8 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_BINWRAP="" RUBY_FAKEGEM_EXTRADOC="README.md HISTORY.md" @@ -27,11 +27,20 @@ ruby_add_rdepend " !<dev-ruby/launchy-2.5.2-r1 " -ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.0:5 )" +ruby_add_bdepend "test? ( + dev-ruby/bundler + >=dev-ruby/minitest-5.0:5 +)" all_ruby_prepare() { sed -i -e "/[Ss]implecov/d" spec/spec_helper.rb || die + sed -e '/minitest-focus/d' \ + -e '/minitest-junit/d' \ + -e '/require: false/ s:^:#:' \ + -i Gemfile || die + rm Gemfile.lock || die + # Avoid tests depending on the current user's desktop environment. sed -e '/returns NotFound if it cannot determine/askip "gentoo"' \ -i spec/detect/nix_desktop_environment_spec.rb || die @@ -42,5 +51,5 @@ all_ruby_prepare() { } each_ruby_test() { - CI=true virtx each_fakegem_test + BUNDLE_GEMFILE="${S}/Gemfile" CI=true virtx ${RUBY} -S bundle exec ${RUBY} -S rake test || die } diff --git a/dev-ruby/lemon/Manifest b/dev-ruby/lemon/Manifest index adc5e05cebff..7fae77151689 100644 --- a/dev-ruby/lemon/Manifest +++ b/dev-ruby/lemon/Manifest @@ -1,2 +1 @@ -DIST lemon-0.9.1.gem 31744 BLAKE2B e1b213e9fb5690c6dcc03cac1d83e9dca48540c41ecaa8bc90873c91d393c6b5fdbd800610238e485d42c1a3412541beb6119eae1e8830753fbc0c786084f3d2 SHA512 8e77d049982ab4e0ae3a18ea3f4d0e4164026fffe1ad94d3098a4165102630c529a9909c3978febb816723a4ff7e17a159a0e067f5f826f93d11f720e49062e8 DIST lemon-0.9.3.gem 29184 BLAKE2B f212b9c4cdffd4bc074ae3036f62a0556bb3baaf62aefe2b91887949813872bdc4279f351c85b200de4e5a5613e8f636285354a26c59f21a141727a2478057b7 SHA512 e342897ca232b08a8ee9af4ed3b5b509051e2943dbd860db1e5acfa4084f86e5b60924eb2f52d2a5ba2ed8858d93b9d85b37f431bfad87d10ea021db36332874 diff --git a/dev-ruby/lemon/lemon-0.9.1-r1.ebuild b/dev-ruby/lemon/lemon-0.9.1-r1.ebuild deleted file mode 100644 index e2211197579b..000000000000 --- a/dev-ruby/lemon/lemon-0.9.1-r1.ebuild +++ /dev/null @@ -1,30 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_TASK_TEST="" -RUBY_FAKEGEM_RECIPE_DOC="yard" -RUBY_FAKEGEM_EXTRADOC="README.md" - -inherit ruby-fakegem - -DESCRIPTION="Lemon is a unit testing framework" -HOMEPAGE="https://rubyworks.github.io/lemon/" - -LICENSE="BSD-2" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86" - -ruby_add_bdepend "test? ( dev-ruby/qed )" -ruby_add_rdepend " - dev-ruby/ae - >=dev-ruby/ansi-1.3 - dev-ruby/rubytest -" - -each_ruby_test() { - ${RUBY} -S qed || die 'tests failed' -} diff --git a/dev-ruby/lemon/lemon-0.9.3.ebuild b/dev-ruby/lemon/lemon-0.9.3.ebuild index be95a4c88ef9..1ad3d80387cb 100644 --- a/dev-ruby/lemon/lemon-0.9.3.ebuild +++ b/dev-ruby/lemon/lemon-0.9.3.ebuild @@ -3,7 +3,7 @@ EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_TASK_TEST="" RUBY_FAKEGEM_RECIPE_DOC="yard" diff --git a/dev-ruby/localhost/localhost-1.7.0-r1.ebuild b/dev-ruby/localhost/localhost-1.7.0-r1.ebuild new file mode 100644 index 000000000000..3ec6a16b8d04 --- /dev/null +++ b/dev-ruby/localhost/localhost-1.7.0-r1.ebuild @@ -0,0 +1,44 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_EXTRADOC="readme.md releases.md" +RUBY_FAKEGEM_GEMSPEC="localhost.gemspec" +RUBY_FAKEGEM_RECIPE_TEST="sus" + +inherit ruby-fakegem + +DESCRIPTION="Manage a local CA for self-signed localhost development servers" +HOMEPAGE="https://github.com/socketry/localhost" +SRC_URI="https://github.com/socketry/localhost/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MIT" +SLOT="$(ver_cut 1)" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~riscv ~sparc ~x86" + +ruby_add_bdepend " + test? ( + dev-ruby/io-endpoint + dev-ruby/sus-fixtures-async + ) +" + +all_ruby_prepare() { + sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die + sed -i -e '/covered/Id' config/sus.rb || die + + sed -e "s:/tmp/state:${TMP}/state:" \ + -i test/localhost/state.rb || die + + # Avoid unpackaged sus-fixtures-async-http which has a huge dependency tree. + rm -f test/localhost/protocol.rb || die +} + +each_ruby_test() { + # Tests fail in parallel as it tries to use the same port so + # manually replicate ruby-ng_sus for now, as ruby-ng_sus runs sus-parallel. + ${RUBY} -S sus || die +} diff --git a/dev-ruby/loofah/loofah-2.25.0.ebuild b/dev-ruby/loofah/loofah-2.25.0.ebuild index 5aa56509ea6f..f92b1b7879e8 100644 --- a/dev-ruby/loofah/loofah-2.25.0.ebuild +++ b/dev-ruby/loofah/loofah-2.25.0.ebuild @@ -2,7 +2,7 @@ # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" @@ -21,7 +21,11 @@ IUSE="test" ruby_add_rdepend "=dev-ruby/crass-1.0* >=dev-ruby/crass-1.0.2 >=dev-ruby/nokogiri-1.12.0" -ruby_add_bdepend "test? ( >=dev-ruby/rr-1.1.0 )" +ruby_add_bdepend "test? ( + dev-ruby/bundler + dev-ruby/minitest:5 + >=dev-ruby/rr-1.1.0 +)" all_ruby_prepare() { # Fix version in gemspec @@ -32,8 +36,15 @@ all_ruby_prepare() { # Avoid test failing on different whitespace. sed -i -e '/test_fragment_whitewash_on_microsofty_markup/askip "gentoo"' test/integration/test_ad_hoc.rb || die + + cat <<-EOF > "${T}/Gemfile" || die + gem "crass" + gem "minitest", "~> 5" + gem "nokogiri" + gem "rr" + EOF } each_ruby_test() { - ${RUBY} -Ilib:.:test -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die + BUNDLE_GEMFILE="${T}/Gemfile" ${RUBY} -S bundle exec ${RUBY} -Ilib:.:test -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die } diff --git a/dev-ruby/maildir/maildir-2.2.3-r1.ebuild b/dev-ruby/maildir/maildir-2.2.3-r1.ebuild index 0f664795b5b2..8a4b63e32cd0 100644 --- a/dev-ruby/maildir/maildir-2.2.3-r1.ebuild +++ b/dev-ruby/maildir/maildir-2.2.3-r1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRAINSTALL="README.rdoc" diff --git a/dev-ruby/metrics/metrics-0.15.0.ebuild b/dev-ruby/metrics/metrics-0.15.0.ebuild index 2027bf601fa9..15c0191af43a 100644 --- a/dev-ruby/metrics/metrics-0.15.0.ebuild +++ b/dev-ruby/metrics/metrics-0.15.0.ebuild @@ -3,7 +3,7 @@ EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="sus" RUBY_FAKEGEM_EXTRADOC="readme.md releases.md" diff --git a/dev-ruby/mini_magick/Manifest b/dev-ruby/mini_magick/Manifest index 36f9b16bc93e..57f85b5cc2c0 100644 --- a/dev-ruby/mini_magick/Manifest +++ b/dev-ruby/mini_magick/Manifest @@ -1,4 +1,2 @@ DIST mini_magick-4.13.2.tar.gz 1330632 BLAKE2B 831d6676cf2e65f857f149db77086ff9a8a209cf9aa4cfb0dc38a73e82b5d10605cf105d7126f0319203a9cae824e0b94812cf450ad5552316bbd94e21f71365 SHA512 a7a4628fe523816aef37eecfd755b84d11072c6c57134fd3b237312f302d41d2cccc2cefcbf1ef7a291d97d02b830887aa0f628140c51ca28fa9f955c6f96b57 -DIST mini_magick-5.2.0.tar.gz 1326464 BLAKE2B ad0a5f886e60bc5378b20538465a1cec44b36a6010f18f4ebb9f8766ef3126d4a81371be11252e6fb13c4d256531db7fdf58cec9850cd8e8a01ec361afdbc8e7 SHA512 4854ebaa832d226b266b35de4334547f967649b83d9a9b0565ca2a9b1255024ca1d09c381faa983fb39dd625b54c541175aa47205266bd30e57e90e88e150bd2 -DIST mini_magick-5.3.0.tar.gz 1326570 BLAKE2B 7320e802af113a0adb041992649b1c624eb19575723b5609ee29fda261a56d14ccbffd8c5d4602478aafc64ac92c4c4064b1e72b5da6920cf8d326d976f7e5b0 SHA512 e05f759f85adaab9f19ccf90cac21757c41d56c81307e35475793078a0722b1ff730aee5e513e3811657e504606d1ffb0f16f57ea32e393fbcb75a1750a17927 DIST mini_magick-5.3.1.tar.gz 1326584 BLAKE2B 14d3ed36f136844e19654ba4b7d1803f296d1893e6b2abe28cf7339f0026595db236d44df8422ee8c1e11f86aa48366d07254444b988ac04cda7d52306d5f2b9 SHA512 4bcf1a3552eb95182c2fd6f075d3ff5c202c98c331e9da585134911e43c96daf466bf99995c2f56fff2e69c25a9b526c9b48a4d38962907754f8f84d3a38e66c diff --git a/dev-ruby/mini_magick/files/mini_magick-4.13.2-fix-imagemagick-7.patch b/dev-ruby/mini_magick/files/mini_magick-4.13.2-fix-imagemagick-7.patch new file mode 100644 index 000000000000..c04082b09af3 --- /dev/null +++ b/dev-ruby/mini_magick/files/mini_magick-4.13.2-fix-imagemagick-7.patch @@ -0,0 +1,20 @@ +https://github.com/minimagick/minimagick/issues/590 +https://github.com/minimagick/minimagick/pull/591 +https://github.com/minimagick/minimagick/commit/7f25f72f7b2d11954a8d300dbba1208611eb25fb + +From 7f25f72f7b2d11954a8d300dbba1208611eb25fb Mon Sep 17 00:00:00 2001 +From: sorenstoutner <soren@stoutner.com> +Date: Fri, 21 Mar 2025 05:57:02 -0700 +Subject: [PATCH] Fix testing with current versions of ImageMagick (#591) + +--- a/spec/lib/mini_magick/shell_spec.rb ++++ b/spec/lib/mini_magick/shell_spec.rb +@@ -57,7 +57,7 @@ + stdout, stderr, status = subject.execute(%W[identify foo]) + + expect(stdout).to eq "" +- expect(stderr).to match("unable to open image") ++ expect(stderr).to match("(unable to open image|identify: no decode delegate for this image format)") + expect(status).to eq 1 + end + diff --git a/dev-ruby/mini_magick/mini_magick-4.13.2.ebuild b/dev-ruby/mini_magick/mini_magick-4.13.2.ebuild index b9e829b2b243..20707deca668 100644 --- a/dev-ruby/mini_magick/mini_magick-4.13.2.ebuild +++ b/dev-ruby/mini_magick/mini_magick-4.13.2.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" RUBY_FAKEGEM_EXTRADOC="README.md" @@ -32,6 +32,10 @@ DEPEND="test? ( virtual/imagemagick-tools[jpeg,png,tiff] )" ruby_add_bdepend "test? ( dev-ruby/mocha dev-ruby/webmock )" +PATCHES=( + "${FILESDIR}"/mini_magick-4.13.2-fix-imagemagick-7.patch +) + all_ruby_prepare() { # remove executable bit from all files find "${S}" -type f -exec chmod -x {} + diff --git a/dev-ruby/mini_magick/mini_magick-5.2.0.ebuild b/dev-ruby/mini_magick/mini_magick-5.2.0.ebuild deleted file mode 100644 index e4ef236749b2..000000000000 --- a/dev-ruby/mini_magick/mini_magick-5.2.0.ebuild +++ /dev/null @@ -1,55 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby31 ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_RECIPE_TEST="rspec3" -RUBY_FAKEGEM_EXTRADOC="README.md" - -RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" - -RUBY_FAKEGEM_BINWRAP="" - -inherit ruby-fakegem - -DESCRIPTION="Manipulate images with minimal use of memory" -HOMEPAGE="https://github.com/minimagick/minimagick" -SRC_URI="https://github.com/minimagick/minimagick/archive/v${PV}.tar.gz -> ${P}.tar.gz" -RUBY_S="minimagick-${PV}" - -LICENSE="MIT" -SLOT="$(ver_cut 1)" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" -IUSE="test" - -# It's only used at runtime in this case because this extension only -# _calls_ the commands. But when we run tests we're going to need tiff -# and jpeg support at a minimum. -RDEPEND="media-gfx/imagemagick" -DEPEND="test? ( virtual/imagemagick-tools[jpeg,png,tiff] )" - -ruby_add_rdepend " - dev-ruby/benchmark - dev-ruby/logger -" - -ruby_add_bdepend "test? ( dev-ruby/mocha dev-ruby/webmock )" - -all_ruby_prepare() { - # remove executable bit from all files - find "${S}" -type f -exec chmod -x {} + - - sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die - - # Don't force a specific formatter but use overall Gentoo defaults - # and show all failures. - sed -i -e '/config.\(fail_fast\|formatter\)/ s:^:#:' spec/spec_helper.rb || die - - # Avoid broken spec that does not assume . in path name - sed -i -e '/reformats a layer/,/end/ s:^:#:' spec/lib/mini_magick/image_spec.rb || die - - # Avoid spec broken by recent imagemagick updates - sed -i -e '/reads exif/askip "Now returns more complete EXIF data"' spec/lib/mini_magick/image_spec.rb || die -} diff --git a/dev-ruby/mini_magick/mini_magick-5.3.0.ebuild b/dev-ruby/mini_magick/mini_magick-5.3.0.ebuild deleted file mode 100644 index 5b24f9fa0bd1..000000000000 --- a/dev-ruby/mini_magick/mini_magick-5.3.0.ebuild +++ /dev/null @@ -1,55 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_RECIPE_TEST="rspec3" -RUBY_FAKEGEM_EXTRADOC="README.md" - -RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" - -RUBY_FAKEGEM_BINWRAP="" - -inherit ruby-fakegem - -DESCRIPTION="Manipulate images with minimal use of memory" -HOMEPAGE="https://github.com/minimagick/minimagick" -SRC_URI="https://github.com/minimagick/minimagick/archive/v${PV}.tar.gz -> ${P}.tar.gz" -RUBY_S="minimagick-${PV}" - -LICENSE="MIT" -SLOT="$(ver_cut 1)" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" -IUSE="test" - -# It's only used at runtime in this case because this extension only -# _calls_ the commands. But when we run tests we're going to need tiff -# and jpeg support at a minimum. -RDEPEND="media-gfx/imagemagick" -DEPEND="test? ( virtual/imagemagick-tools[jpeg,png,tiff] )" - -ruby_add_rdepend " - dev-ruby/benchmark - dev-ruby/logger -" - -ruby_add_bdepend "test? ( dev-ruby/mocha dev-ruby/webmock )" - -all_ruby_prepare() { - # remove executable bit from all files - find "${S}" -type f -exec chmod -x {} + - - sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die - - # Don't force a specific formatter but use overall Gentoo defaults - # and show all failures. - sed -i -e '/config.\(fail_fast\|formatter\)/ s:^:#:' spec/spec_helper.rb || die - - # Avoid broken spec that does not assume . in path name - sed -i -e '/reformats a layer/,/end/ s:^:#:' spec/lib/mini_magick/image_spec.rb || die - - # Avoid spec broken by recent imagemagick updates - sed -i -e '/reads exif/askip "Now returns more complete EXIF data"' spec/lib/mini_magick/image_spec.rb || die -} diff --git a/dev-ruby/mini_magick/mini_magick-5.3.1.ebuild b/dev-ruby/mini_magick/mini_magick-5.3.1.ebuild index d62c43dc3fd5..f4c3d5745590 100644 --- a/dev-ruby/mini_magick/mini_magick-5.3.1.ebuild +++ b/dev-ruby/mini_magick/mini_magick-5.3.1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" RUBY_FAKEGEM_EXTRADOC="README.md" diff --git a/dev-ruby/minitest-around/minitest-around-0.6.0.ebuild b/dev-ruby/minitest-around/minitest-around-0.6.0.ebuild index f86fa28c8473..a8d64d6e3698 100644 --- a/dev-ruby/minitest-around/minitest-around-0.6.0.ebuild +++ b/dev-ruby/minitest-around/minitest-around-0.6.0.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_TASK_DOC="" RUBY_FAKEGEM_EXTRADOC="README.md" diff --git a/dev-ruby/mixlib-shellout/Manifest b/dev-ruby/mixlib-shellout/Manifest index da6d9c8f36d5..ea5daa241d1e 100644 --- a/dev-ruby/mixlib-shellout/Manifest +++ b/dev-ruby/mixlib-shellout/Manifest @@ -1 +1,2 @@ DIST mixlib-shellout-3.3.9.tar.gz 48052 BLAKE2B 41a232d1a02d2b53f0fb121b5128cb417cb59d41222f63f7015d2d95a5305fac513b83a6860444eb6334c6bd80a22c86baabc49cd25d9eab4af17d9b689f5307 SHA512 af5de89eef62d2c3f31278c7600ee961ee97bff3ccc282dee1c97673984719301c0ac4c7dcc48b064927dbe3dcd17d1dd3f78de05da0e5c61e5badf2f599ede7 +DIST mixlib-shellout-3.4.13.tar.gz 70457 BLAKE2B 42b8e5bda3f49ce1f5b5afda1faeb79e5ef142db71d4af23437685496656d98ee9b3684545b74478e223c0d84b56a2ab33d3d602740910bfb22b195f000b980c SHA512 7dc7981a8fe9a33316467fe57570f4a9ca149c7018b762b880feb6ec394e3dfc948cf2c3cc61885dfbb7903ac04793871ee5419d99914c90e6ef3d202f4c5e34 diff --git a/dev-ruby/mixlib-shellout/mixlib-shellout-3.4.13.ebuild b/dev-ruby/mixlib-shellout/mixlib-shellout-3.4.13.ebuild new file mode 100644 index 000000000000..08ac60de6ea7 --- /dev/null +++ b/dev-ruby/mixlib-shellout/mixlib-shellout-3.4.13.ebuild @@ -0,0 +1,37 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_RECIPE_TEST="rspec3" + +RUBY_FAKEGEM_EXTRA_DOC="CHANGELOG.md README.md" + +RUBY_FAKEGEM_GEMSPEC="mixlib-shellout.gemspec" + +inherit ruby-fakegem + +DESCRIPTION="Run external commands on Unix or Windows" +HOMEPAGE="https://github.com/chef/mixlib-shellout" +SRC_URI="https://github.com/chef/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +ruby_add_rdepend "dev-ruby/chef-utils dev-ruby/logger" + +each_ruby_prepare() { + # Make sure we actually use the right interpreter for testing + sed -i -e "/ruby_eval/ s:ruby :${RUBY} :" spec/mixlib/shellout_spec.rb || die + + # Avoid spec that requires an interactive terminal + sed -e '/with subprocess writing lots of data to both stdout and stderr/,/^ end/ s:^:#:' \ + -i spec/mixlib/shellout_spec.rb || die + + # Avoid known failing specs, bug #978798 + sed -e '/"when cgroup exists"/,/^ end/ s:^:#:' \ + -e '/"when cgroup does not exist"/,/^ end/ s:^:#:' \ + -i spec/mixlib/shellout_spec.rb || die +} diff --git a/dev-ruby/mocha/files/mocha-2.8.2-ruby35.patch b/dev-ruby/mocha/files/mocha-2.8.2-ruby35.patch new file mode 100644 index 000000000000..a636a0b2d78a --- /dev/null +++ b/dev-ruby/mocha/files/mocha-2.8.2-ruby35.patch @@ -0,0 +1,41 @@ +https://github.com/freerange/mocha/commit/1b1aa0d0e25f4527a0455562e964c19d23b987df + +From 1b1aa0d0e25f4527a0455562e964c19d23b987df Mon Sep 17 00:00:00 2001 +From: Earlopain <14981592+Earlopain@users.noreply.github.com> +Date: Fri, 9 May 2025 12:52:14 +0200 +Subject: [PATCH] Fix compatibility with ruby 3.5 + +In 3.5, most of the `cgi` gem is removed. Only methods relating to escaping/unescaping are retained. + +That means, on 3.5 you get this error: +> NoMethodError: undefined method 'parse' for class CGI + +This replaces the cgi usage with https://docs.ruby-lang.org/en/master/URI.html#method-c-decode_www_form, that also returns this information. + +It's in array form, so it first needs to be converted to an hash. + +This method is available on all versions going back to at least Ruby 2.0 so compatibility should be ok with this. + +https://bugs.ruby-lang.org/issues/21258 +--- a/lib/mocha/parameter_matchers/equivalent_uri.rb ++++ b/lib/mocha/parameter_matchers/equivalent_uri.rb +@@ -2,7 +2,6 @@ + + require 'mocha/parameter_matchers/base' + require 'uri' +-require 'cgi' + + module Mocha + module ParameterMatchers +@@ -55,7 +54,10 @@ def mocha_inspect + + # @private + def explode(uri) +- query_hash = CGI.parse(uri.query || '') ++ query_hash = Hash.new { |hash, key| hash[key] = [] } ++ URI.decode_www_form(uri.query || '').each do |key, value| ++ query_hash[key] << value ++ end + URI::Generic::COMPONENT.inject({}) { |h, k| h.merge(k => uri.__send__(k)) }.merge(query: query_hash) + end + end diff --git a/dev-ruby/mocha/mocha-2.8.2-r1.ebuild b/dev-ruby/mocha/mocha-2.8.2-r1.ebuild new file mode 100644 index 000000000000..1448de5a81ed --- /dev/null +++ b/dev-ruby/mocha/mocha-2.8.2-r1.ebuild @@ -0,0 +1,40 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_TASK_TEST="test:units test:acceptance" +RUBY_FAKEGEM_EXTRADOC="README.md RELEASE.md" +RUBY_FAKEGEM_GEMSPEC="mocha.gemspec" + +inherit ruby-fakegem + +DESCRIPTION="Mocking and stubbing using a syntax like that of JMock and SchMock" +HOMEPAGE="https://mocha.jamesmead.org/" +SRC_URI="https://github.com/freerange/mocha/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MIT" +SLOT="$(ver_cut 1)" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +ruby_add_rdepend ">=dev-ruby/ruby2_keywords-0.0.5" + +ruby_add_bdepend " + test? ( >=dev-ruby/test-unit-2.5.1-r1 dev-ruby/introspection )" + +PATCHES=( + "${FILESDIR}"/mocha-2.8.2-ruby35.patch +) + +all_ruby_prepare() { + sed -i -e '/[Bb]undler/ s:^:#:' -e '1iload "lib/mocha/version.rb"' Rakefile || die + + sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die +} + +each_ruby_test() { + export MOCHA_NO_DOCS=true + each_fakegem_test +} diff --git a/dev-ruby/mqtt/Manifest b/dev-ruby/mqtt/Manifest index da870b9da1e7..b53617af2b40 100644 --- a/dev-ruby/mqtt/Manifest +++ b/dev-ruby/mqtt/Manifest @@ -1 +1,2 @@ DIST mqtt-0.6.0.tar.gz 45975 BLAKE2B e3548db5a1d758168c86be8a1d313ccd0cc7ed7d5993f03688d6c68de7b28fc1c42f87de5d9cca459b0cb383d65640ba00c1015261fc777bb56811a51147924e SHA512 c9dbf86c583c9e57af97a1481b308a3d3fc796a6dd813dce83a8206d773a343242423fa116abc4b8ce34a1d6f0cb2026cc9189dd8b98af69c980c54501e130d8 +DIST mqtt-0.7.0.tar.gz 46972 BLAKE2B 295cf114a47fedf880c38529080f066b26186d18cd70ecf77389e48bbe1dab1c53944f6e612a4440694ee56cc3d3b1cd9c4a25e01cc14263b59bb64b74a995ed SHA512 162fe002f0a65d28eeb661d468023a039e892209d3c694559312b88fc0ed9cdcfcdd1f8527fbb16058bac918f82e48b95c1af7dfbda8eaac69d9ebfe16420ac2 diff --git a/dev-ruby/mqtt/mqtt-0.7.0.ebuild b/dev-ruby/mqtt/mqtt-0.7.0.ebuild new file mode 100644 index 000000000000..c14858e778c7 --- /dev/null +++ b/dev-ruby/mqtt/mqtt-0.7.0.ebuild @@ -0,0 +1,29 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_GEMSPEC="mqtt.gemspec" +RUBY_FAKEGEM_RECIPE_DOC="rdoc" +RUBY_FAKEGEM_RECIPE_TEST="rspec3" + +inherit ruby-fakegem + +DESCRIPTION="Pure Ruby gem that implements the MQTT protocol" +HOMEPAGE="https://github.com/njh/ruby-mqtt" +SRC_URI="https://github.com/njh/ruby-mqtt/archive/v${PV}.tar.gz -> ${P}.tar.gz" +RUBY_S="ruby-${P}" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~x86" + +all_ruby_prepare() { + sed -i -e '/bundler/I s:^:#: ; /SimpleCov/,/^end/ s:^:#:' spec/spec_helper.rb || die + + # network sandbox + sed -e '/"should respect connect_timeout"/,/^ end/ s:^:#:' \ + -i spec/mqtt_client_spec.rb || die +} diff --git a/dev-ruby/multi_xml/Manifest b/dev-ruby/multi_xml/Manifest index c2c25f1e2740..429296d2f813 100644 --- a/dev-ruby/multi_xml/Manifest +++ b/dev-ruby/multi_xml/Manifest @@ -1,4 +1,2 @@ -DIST multi_xml-0.7.1.tar.gz 17122 BLAKE2B 09b8006a12ae99d85435b85c2c32afe20009cdd6bd0970ce5129c37411274aa402ed955f7ca692e90e7641120a90883b75a03a9ae8d88bd4a53e295095e040c4 SHA512 c578b6b4cadc48182ab94219d5f1550f645398c08460576cb5f6c72d8d6d01ef90b982437848d27e72f1157b9eff03dcafc29d04f298e52c14ae5b76df9082b0 DIST multi_xml-0.7.2.tar.gz 17006 BLAKE2B e7d2e570913e974129634a7a26903c42ca08c0c3efbe1eb9fefd9bb41cc17e1c6422e810fc470864cfd936be6bc467143d67397b42e4c327724dbb431c26a56c SHA512 419d18a08bc6610ab1f7ce7b61e1418ca9aeebf86a7c4078d12cea389881a1848f9a51eba8d44ef16e8674b49ccf08fc019a012a48707162a11d5578968756a1 -DIST multi_xml-0.8.0.tar.gz 38088 BLAKE2B 399d9f737c2b3aeede7e21aeaa1ad001863815ac617b98ea51991898bfce88a730d70376ed809969a418b563e41b96e6fde665f1de7c96eff1003247a42a3a5b SHA512 e6715134a0a16b71d7c3985c7462264b47b6d69c285d7ff153906f80a5de9dc284dcc7ba46ff0a10ca791efa4517a067430fa295e458bd290ef75c9bead4d5d1 DIST multi_xml-0.8.1.tar.gz 38238 BLAKE2B a55caff882ab24d666cac57185f23524c3375a9c19450a2eaa20ad719e2bc55b8e9e86ae663a60244a43a0fbc6d0c819c6d534d8828b0e228db0cf7f70c719a6 SHA512 8edbe6b5f65893476a11adb6d8c518e4d2734d079a80db8a47b288155d36e2b9042223d3c743ec2a26b9334fa18fd90865a24b59b9ffcdfab0bb6ade079e0aa7 diff --git a/dev-ruby/multi_xml/multi_xml-0.7.1.ebuild b/dev-ruby/multi_xml/multi_xml-0.7.1.ebuild deleted file mode 100644 index 8932980678b5..000000000000 --- a/dev-ruby/multi_xml/multi_xml-0.7.1.ebuild +++ /dev/null @@ -1,47 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby31 ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_BINWRAP="" -RUBY_FAKEGEM_RECIPE_TEST="rspec3" -RUBY_FAKEGEM_TASK_DOC="yard" - -RUBY_FAKEGEM_DOCDIR="doc" -RUBY_FAKEGEM_EXTRADOC="README.md" - -RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="A generic swappable back-end for XML parsing" -HOMEPAGE="https://www.rubydoc.info/gems/multi_xml" -SRC_URI="https://github.com/sferik/multi_xml/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="amd64 ~arm64 ~ppc ~ppc64 ~x86" -IUSE="doc test" - -ruby_add_rdepend ">=dev-ruby/bigdecimal-3.1:0" - -ruby_add_bdepend "doc? ( dev-ruby/yard )" -ruby_add_bdepend "test? ( dev-ruby/ox )" - -all_ruby_prepare() { - sed -e 's:_relative ": "./:' \ - -e 's/__dir__/"."/' \ - -e 's/git ls-files -z/find * -print0/' \ - -i ${RUBY_FAKEGEM_GEMSPEC} || die - sed -i -e '/simplecov/,/^end/ s:^:#:' spec/helper.rb || die - sed -e '/bundler/I s:^:#:' \ - -e '/yardstick/,/end/ s:^:#:' \ - -e '/rubocop/I s:^:#:' \ - -i Rakefile || die -} - -each_ruby_test() { - CI=true each_fakegem_test -} diff --git a/dev-ruby/multi_xml/multi_xml-0.8.0.ebuild b/dev-ruby/multi_xml/multi_xml-0.8.0.ebuild deleted file mode 100644 index c3d4396fa420..000000000000 --- a/dev-ruby/multi_xml/multi_xml-0.8.0.ebuild +++ /dev/null @@ -1,60 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_BINWRAP="" -RUBY_FAKEGEM_TASK_DOC="yard" - -RUBY_FAKEGEM_DOCDIR="doc" -RUBY_FAKEGEM_EXTRADOC="README.md" - -RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="A generic swappable back-end for XML parsing" -HOMEPAGE="https://github.com/sferik/multi_xml" -SRC_URI="https://github.com/sferik/multi_xml/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~x86" -IUSE="doc test" - -ruby_add_rdepend "|| ( dev-ruby/bigdecimal:4 >=dev-ruby/bigdecimal-3.1:0 )" - -ruby_add_bdepend "doc? ( dev-ruby/yard )" -ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.27:5 dev-ruby/ox )" - -all_ruby_prepare() { - sed -e 's:_relative ": "./:' \ - -e 's/__dir__/"."/' \ - -e 's/git ls-files -z/find * -print0/' \ - -i ${RUBY_FAKEGEM_GEMSPEC} || die - sed -e '/bundler/I s:^:#:' \ - -e '/yardstick/,/end/ s:^:#:' \ - -e '/rubocop/I s:^:#:' \ - -i Rakefile || die - - # Avoid coverage dependencies - sed -e '/simplecov/,/^end/ s:^:#:' \ - -e '/mutant/ s:^:#:' \ - -e '1igem "minitest", "~> 5.0"' \ - -i test/test_helper.rb || die - sed -e '/cover/ s:^:#:' \ - -e '/Mutant/ s:^:#:' \ - -i test/*.rb || die - - # Avoid tests for unpackaged XML providers. - sed -e '/test_returns_oga_when_only_oga_defined/askip "Not packaged"' \ - -i test/parser_detection_test.rb || die - sed -e '/test_load_parser_handles_underscore_names/askip "Not packaged"' \ - -i test/load_parser_test.rb || die -} - -each_ruby_test() { - CI=true ${RUBY} -Ilib:.:test -e "Dir['test/**/*.rb'].each{|f| require f}" || die -} diff --git a/dev-ruby/multi_xml/multi_xml-0.8.1.ebuild b/dev-ruby/multi_xml/multi_xml-0.8.1.ebuild index 4cf8a6c45da0..53c1cb118988 100644 --- a/dev-ruby/multi_xml/multi_xml-0.8.1.ebuild +++ b/dev-ruby/multi_xml/multi_xml-0.8.1.ebuild @@ -3,7 +3,7 @@ EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_BINWRAP="" RUBY_FAKEGEM_TASK_DOC="yard" @@ -27,7 +27,7 @@ IUSE="doc test" ruby_add_rdepend "|| ( dev-ruby/bigdecimal:4 >=dev-ruby/bigdecimal-3.1:0 )" ruby_add_bdepend "doc? ( dev-ruby/yard )" -ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.27:5 dev-ruby/ox )" +ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.27:5 dev-ruby/nokogiri dev-ruby/ox )" all_ruby_prepare() { sed -e 's:_relative ": "./:' \ diff --git a/dev-ruby/mysql2/mysql2-0.5.7.ebuild b/dev-ruby/mysql2/mysql2-0.5.7.ebuild index a226b6e30243..6f9650744f40 100644 --- a/dev-ruby/mysql2/mysql2-0.5.7.ebuild +++ b/dev-ruby/mysql2/mysql2-0.5.7.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" @@ -40,6 +40,14 @@ BDEPEND=" ruby_add_rdepend "dev-ruby/bigdecimal" +each_ruby_prepare() { + if [[ ${RUBY} =~ ruby40 ]]; then + # FIXME: Fails only for ruby4.0 (Mysql 8.4 used). Doesn't fail upstream and they enable ruby4.0. + sed -e '/"should not leave dangling connections after garbage collection"/,/^ end/ s:^:#:' \ + -i spec/mysql2/client_spec.rb || die + fi +} + all_ruby_prepare() { sed -i -e '/s.version/ s/Mysql2::VERSION/"'${PV}'"/' ${RUBY_FAKEGEM_GEMSPEC} || die } diff --git a/dev-ruby/net-http-persistent/net-http-persistent-4.0.8.ebuild b/dev-ruby/net-http-persistent/net-http-persistent-4.0.8.ebuild index 320ef9612a6b..369cdeb216f0 100644 --- a/dev-ruby/net-http-persistent/net-http-persistent-4.0.8.ebuild +++ b/dev-ruby/net-http-persistent/net-http-persistent-4.0.8.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRADOC="History.txt README.rdoc" RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" diff --git a/dev-ruby/niceogiri/niceogiri-1.1.2-r1.ebuild b/dev-ruby/niceogiri/niceogiri-1.1.2-r1.ebuild index 10746eb4d87b..6010e2f63776 100644 --- a/dev-ruby/niceogiri/niceogiri-1.1.2-r1.ebuild +++ b/dev-ruby/niceogiri/niceogiri-1.1.2-r1.ebuild @@ -1,8 +1,8 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRADOC="README.md" RUBY_FAKEGEM_RECIPE_TEST="rspec3" diff --git a/dev-ruby/org-ruby/org-ruby-0.9.12_p20200519.ebuild b/dev-ruby/org-ruby/org-ruby-0.9.12_p20200519.ebuild index b702418f4f27..76509c2fa485 100644 --- a/dev-ruby/org-ruby/org-ruby-0.9.12_p20200519.ebuild +++ b/dev-ruby/org-ruby/org-ruby-0.9.12_p20200519.ebuild @@ -1,8 +1,8 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" COMMIT=7a28c2e6e91cdaceb1fddc2d870f4458632816e8 diff --git a/dev-ruby/pdf-reader/pdf-reader-2.15.1.ebuild b/dev-ruby/pdf-reader/pdf-reader-2.15.1.ebuild index dd4deaba265b..63c7c9e62d3a 100644 --- a/dev-ruby/pdf-reader/pdf-reader-2.15.1.ebuild +++ b/dev-ruby/pdf-reader/pdf-reader-2.15.1.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 GITHUB_USER=yob -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" diff --git a/dev-ruby/phlex/phlex-2.2.2.ebuild b/dev-ruby/phlex/phlex-2.2.2.ebuild index 7f652dd9f9e6..5cf7d7bd67e5 100644 --- a/dev-ruby/phlex/phlex-2.2.2.ebuild +++ b/dev-ruby/phlex/phlex-2.2.2.ebuild @@ -2,7 +2,7 @@ # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_BINWRAP="" RUBY_FAKEGEM_EXTRADOC="README.md" diff --git a/dev-ruby/phlex/phlex-2.3.2.ebuild b/dev-ruby/phlex/phlex-2.3.2.ebuild index b82b8db03953..858cbf94db9c 100644 --- a/dev-ruby/phlex/phlex-2.3.2.ebuild +++ b/dev-ruby/phlex/phlex-2.3.2.ebuild @@ -3,7 +3,7 @@ EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_BINWRAP="" RUBY_FAKEGEM_EXTRADOC="README.md" diff --git a/dev-ruby/propshaft/Manifest b/dev-ruby/propshaft/Manifest index 8aa5f35c5012..477d9a92d465 100644 --- a/dev-ruby/propshaft/Manifest +++ b/dev-ruby/propshaft/Manifest @@ -1,5 +1 @@ -DIST propshaft-0.9.1-git.tgz 250403 BLAKE2B 194dad0d196421c71220a47e66ebd36d744f8009551c210244a1f7a79a04d095fe4b00497c8dcf4b57358c9454768cae3d6743855b5f0a59a6ead0d282938a55 SHA512 5d2d707f00b09c89c01d217695a7bd7a44f2427df091e84883f07e01b821218bd16776196c6f468071fc95a211df785443f12da0f795d433e359e1655f08c4ce -DIST propshaft-1.1.0-git.tgz 251511 BLAKE2B 051071e5b54f2b29afc63d7daed83e9a482559c5ec84d59feb0b2974f33f87e9c4284ed9d5a07cce8a3d396d04a99259fd3809238bdf3521e9fcf45cfbb947d5 SHA512 474eefc0b78d404983017a513a92a09803feb6ffedaa1d029ca6fcee28c648aabf2ae6df18ffd05c30f4b038af2036b981bff4ead4e149223ede6482820be639 -DIST propshaft-1.2.0-git.tgz 256661 BLAKE2B 28760c10b90b354eaa502522ed490312384402f584a8ee4640fae5367463387acaad6c8382ef33f593ffef1e8ee0c5bbe58d56ff551d9115712f12830b0a0046 SHA512 e4dd2d1ef846b2fd59d060dbf714c7fb0af7e16d1cbd3638ebc0a8d407a09a3a4a8d0615756c9467370465b1f8f49cae34987ac3390959e47fd9ec9e50cc1a59 -DIST propshaft-1.2.1-git.tgz 258161 BLAKE2B 7ac1f2bcb0a8798e27d12f16ed9f96ad200d7ca63712bb3b7daa8b712fb022ba1a452b2671f182f4b7fce87a939651444e0dc81e7b7c9449fe2a0a2cf641a524 SHA512 0695da33eaa3c1565fd15b877f470e0e228fd48107ad97b4a4db404788618a9b536920e8b2fb601ca04b8bb1eacb907baaa442281d8a34a86340c1b4d9cf6d65 DIST propshaft-1.3.1-git.tgz 258406 BLAKE2B fe2a7f6fce912b4942b9bb5dc6f7ee1cbbb16e73a5e0f4824efa305267f0766bc907acfc60597737cc7118ace7d6c388fcf49077bbf5869576ec80eaaccd5cd2 SHA512 261327ee61694810bb15e3999d034ab672c15eedc141935aeef2a294debb8ba93a676a48f81ae71c714ac39a9aef5e1f1dc437f3deae170a5439bc9b483e18a1 diff --git a/dev-ruby/propshaft/propshaft-0.9.1.ebuild b/dev-ruby/propshaft/propshaft-0.9.1.ebuild deleted file mode 100644 index cc4eb2ea4af6..000000000000 --- a/dev-ruby/propshaft/propshaft-0.9.1.ebuild +++ /dev/null @@ -1,39 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_BINWRAP="" -RUBY_FAKEGEM_EXTRADOC="README.md" - -RUBY_FAKEGEM_GEMSPEC="propshaft.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="Deliver assets for Rails" -HOMEPAGE="https://github.com/rails/propshaft" -SRC_URI="https://github.com/rails/propshaft/archive/v${PV}.tar.gz -> ${P}-git.tgz" - -LICENSE="MIT" -SLOT="$(ver_cut 1)" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" - -IUSE="test" - -ruby_add_rdepend " - >=dev-ruby/actionpack-7.0.0:* - >=dev-ruby/activesupport-7.0.0:* - dev-ruby/rack:* - >=dev-ruby/railties-7.0.0:* -" - -ruby_add_bdepend "test? ( >=dev-ruby/rails-7.0.0 )" - -all_ruby_prepare() { - rm -f Gemfile.lock || die - sed -i -e '/debug/ s:^:#:' Gemfile || die - - sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die -} diff --git a/dev-ruby/propshaft/propshaft-1.2.0.ebuild b/dev-ruby/propshaft/propshaft-1.2.0.ebuild deleted file mode 100644 index c92fb178fd50..000000000000 --- a/dev-ruby/propshaft/propshaft-1.2.0.ebuild +++ /dev/null @@ -1,38 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_BINWRAP="" -RUBY_FAKEGEM_EXTRADOC="README.md UPGRADING.md" - -RUBY_FAKEGEM_GEMSPEC="propshaft.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="Deliver assets for Rails" -HOMEPAGE="https://github.com/rails/propshaft" -SRC_URI="https://github.com/rails/propshaft/archive/v${PV}.tar.gz -> ${P}-git.tgz" - -LICENSE="MIT" -SLOT="$(ver_cut 1)" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" - -IUSE="test" - -ruby_add_rdepend " - >=dev-ruby/actionpack-7.0.0:* - >=dev-ruby/activesupport-7.0.0:* - dev-ruby/rack:* -" - -ruby_add_bdepend "test? ( >=dev-ruby/rails-7.0.0 )" - -all_ruby_prepare() { - rm -f Gemfile.lock || die - sed -i -e '/debug/ s:^:#:' Gemfile || die - - sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die -} diff --git a/dev-ruby/propshaft/propshaft-1.2.1.ebuild b/dev-ruby/propshaft/propshaft-1.2.1.ebuild deleted file mode 100644 index c92fb178fd50..000000000000 --- a/dev-ruby/propshaft/propshaft-1.2.1.ebuild +++ /dev/null @@ -1,38 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_BINWRAP="" -RUBY_FAKEGEM_EXTRADOC="README.md UPGRADING.md" - -RUBY_FAKEGEM_GEMSPEC="propshaft.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="Deliver assets for Rails" -HOMEPAGE="https://github.com/rails/propshaft" -SRC_URI="https://github.com/rails/propshaft/archive/v${PV}.tar.gz -> ${P}-git.tgz" - -LICENSE="MIT" -SLOT="$(ver_cut 1)" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" - -IUSE="test" - -ruby_add_rdepend " - >=dev-ruby/actionpack-7.0.0:* - >=dev-ruby/activesupport-7.0.0:* - dev-ruby/rack:* -" - -ruby_add_bdepend "test? ( >=dev-ruby/rails-7.0.0 )" - -all_ruby_prepare() { - rm -f Gemfile.lock || die - sed -i -e '/debug/ s:^:#:' Gemfile || die - - sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die -} diff --git a/dev-ruby/propshaft/propshaft-1.1.0.ebuild b/dev-ruby/propshaft/propshaft-1.3.1-r1.ebuild index ccc0b27a1e3b..7253a80bec53 100644 --- a/dev-ruby/propshaft/propshaft-1.1.0.ebuild +++ b/dev-ruby/propshaft/propshaft-1.3.1-r1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_BINWRAP="" RUBY_FAKEGEM_EXTRADOC="README.md UPGRADING.md" @@ -18,7 +18,7 @@ SRC_URI="https://github.com/rails/propshaft/archive/v${PV}.tar.gz -> ${P}-git.tg LICENSE="MIT" SLOT="$(ver_cut 1)" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="~amd64 ~arm64 ~riscv ~x86" IUSE="test" @@ -26,14 +26,26 @@ ruby_add_rdepend " >=dev-ruby/actionpack-7.0.0:* >=dev-ruby/activesupport-7.0.0:* dev-ruby/rack:* - >=dev-ruby/railties-7.0.0:* " -ruby_add_bdepend "test? ( >=dev-ruby/rails-7.0.0 )" +ruby_add_bdepend "test? ( + dev-ruby/bundler + dev-ruby/minitest:5 + >=dev-ruby/rails-7.0.0 +)" all_ruby_prepare() { rm -f Gemfile.lock || die sed -i -e '/debug/ s:^:#:' Gemfile || die sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die + + cat <<-EOF > "${T}/Gemfile" || die + gem "minitest", "~> 5" + gem "rails", ">= 7.0.0" + EOF +} + +each_ruby_test() { + BUNDLE_GEMFILE="${T}/Gemfile" ${RUBY} -S bundle exec ${RUBY} -S rake || die } diff --git a/dev-ruby/propshaft/propshaft-1.3.1.ebuild b/dev-ruby/propshaft/propshaft-1.3.1.ebuild index c92fb178fd50..4568cfabf5de 100644 --- a/dev-ruby/propshaft/propshaft-1.3.1.ebuild +++ b/dev-ruby/propshaft/propshaft-1.3.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -28,11 +28,24 @@ ruby_add_rdepend " dev-ruby/rack:* " -ruby_add_bdepend "test? ( >=dev-ruby/rails-7.0.0 )" +ruby_add_bdepend "test? ( + dev-ruby/bundler + dev-ruby/minitest:5 + >=dev-ruby/rails-7.0.0 +)" all_ruby_prepare() { rm -f Gemfile.lock || die sed -i -e '/debug/ s:^:#:' Gemfile || die sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die + + cat <<-EOF > "${T}/Gemfile" || die + gem "minitest", "~> 5" + gem "rails", ">= 7.0.0" + EOF +} + +each_ruby_test() { + BUNDLE_GEMFILE="${T}/Gemfile" ${RUBY} -S bundle exec ${RUBY} -S rake || die } diff --git a/dev-ruby/pry/pry-0.16.0.ebuild b/dev-ruby/pry/pry-0.16.0.ebuild index 0c2c876acd51..4b2bbbd93ed4 100644 --- a/dev-ruby/pry/pry-0.16.0.ebuild +++ b/dev-ruby/pry/pry-0.16.0.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_DOC="yard" RUBY_FAKEGEM_RECIPE_TEST="rspec3" diff --git a/dev-ruby/public_suffix/Manifest b/dev-ruby/public_suffix/Manifest index dc5d3a291fd1..2ab3b170169a 100644 --- a/dev-ruby/public_suffix/Manifest +++ b/dev-ruby/public_suffix/Manifest @@ -1,4 +1,3 @@ DIST public_suffix-6.0.2.tar.gz 113755 BLAKE2B 2fbc5ff8dd47626fd15f463e8f376d869367fbb95b2a0917f784f3ec37650890caaa488b1484ec31597aa3ae15edaea1275f26922dba6963ab2b6849a3329e99 SHA512 01f1ffb85f8e0e52b6dc84fc82da0b248c6d85d5c5ef92cff724fc2ec5d7757329129e7c0c5e012be396dc9fa3d52037ba6b10f7d2cf1c934364113e7f526c48 -DIST public_suffix-7.0.0.tar.gz 116478 BLAKE2B 4dc71075068ccde62a4b3ab0743340c6db9573d0e7690079415c78788d44e0961dc6610c1c41d13a0ba85f7c35b133efb7068b35d08c9c808085ccbae25c1144 SHA512 e3e76bc82a14bdcc71600bcd99a91f7389eac02dd74a860efa6e5440b958dff11c284d864659e7c6782799bc126d013bb897cdb30d3e30b2535ba7e1c10cdaa7 -DIST public_suffix-7.0.1.tar.gz 119524 BLAKE2B 0126cc4b2dc4014c6917fe4de9e9755feb2032c30b4e02c940e1dddb850df34cc31e677148bc2dd9e489079e379228690104ed6885e7867b8eab90d059932ef4 SHA512 4e0cb109bf2caf1957937760418481a9f9bbd9ebf09dc17e28abaa49a8fc514fa910e5a7433ab05bc0db7b68b42f25e2ab7edcfb8e9329dcc376bb72364259c6 DIST public_suffix-7.0.2.tar.gz 119769 BLAKE2B 46a7697242f1def1ecdc9b70e5ac5ad9ef91ca4b3605b677d675da941415013e641ee7c5d4b317e2c6435b424bdc2a927a0acf2e10ef3a207f460a1f5b8dd6db SHA512 e7202feb21b41ddc0de5bf3cb5470ffb5762c889648ae134f2b03ee05fa37817163deb19569fbdfc6332115545da2557bc17cb6cef18a85a5344ff7f37f34d2c +DIST public_suffix-7.0.5.tar.gz 120329 BLAKE2B 509daa8505780973de723c21ff5a2e6c5ad392944c4b4bff8ec8fff80e401286a296b6a48ec1036077f09403dc4c0aede19a06f7d01deb2c0eedc55eb9a70aa6 SHA512 18bfd7fab7fd011bd70784a408a4b26934fb298c41981173c58119fbbe5b9000e115ae2cc30dd314553e2acce627f07803aea05a3780a0326948fff8c0982cef diff --git a/dev-ruby/public_suffix/public_suffix-7.0.0.ebuild b/dev-ruby/public_suffix/public_suffix-7.0.0.ebuild deleted file mode 100644 index 110298781de9..000000000000 --- a/dev-ruby/public_suffix/public_suffix-7.0.0.ebuild +++ /dev/null @@ -1,35 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_EXTRAINSTALL="data" -RUBY_FAKEGEM_GEMSPEC="public_suffix.gemspec" -RUBY_FAKEGEM_BINWRAP="" - -inherit ruby-fakegem - -DESCRIPTION="Parse and decompose a domain name into top level domain, domain and subdomains" -HOMEPAGE="https://simonecarletti.com/code/publicsuffix-ruby/" -SRC_URI="https://github.com/weppos/publicsuffix-ruby/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" -RUBY_S="publicsuffix-ruby-${PV}" - -LICENSE="MIT" -SLOT="$(ver_cut 1)" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris" - -ruby_add_bdepend "test? ( dev-ruby/mocha:2 )" - -all_ruby_prepare() { - sed -e 's:_relative ": "./:' \ - -e 's/__dir__/"."/' \ - -e 's/git ls-files -z/find * -print0/' \ - -i ${RUBY_FAKEGEM_GEMSPEC} || die - - sed -i -e '/rubocop/I s:^:#:' \ - -e '/yard/,/CLOBBER.include/ s:^:#:' \ - -e '/bundler/ s:^:#:' Rakefile || die - sed -i -e '/reporters/I s:^:#:' test/test_helper.rb || die -} diff --git a/dev-ruby/public_suffix/public_suffix-7.0.1.ebuild b/dev-ruby/public_suffix/public_suffix-7.0.5.ebuild index 9624df880710..b9c33aa60c14 100644 --- a/dev-ruby/public_suffix/public_suffix-7.0.1.ebuild +++ b/dev-ruby/public_suffix/public_suffix-7.0.5.ebuild @@ -3,7 +3,7 @@ EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRAINSTALL="data" RUBY_FAKEGEM_GEMSPEC="public_suffix.gemspec" @@ -20,7 +20,10 @@ LICENSE="MIT" SLOT="$(ver_cut 1)" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris" -ruby_add_bdepend "test? ( dev-ruby/mocha:2 )" +ruby_add_bdepend "test? ( + dev-ruby/minitest + dev-ruby/mocha:3 +)" all_ruby_prepare() { sed -e 's:_relative ": "./:' \ @@ -28,8 +31,7 @@ all_ruby_prepare() { -e 's/git ls-files -z/find * -print0/' \ -i ${RUBY_FAKEGEM_GEMSPEC} || die - sed -i -e '/rubocop/I s:^:#:' \ - -e '/yard/,/CLOBBER.include/ s:^:#:' \ + sed -i -e '/require/ s:\(yard\|rubocop\):no-exist:' \ -e '/bundler/ s:^:#:' Rakefile || die sed -i -e '/reporters/I s:^:#:' test/test_helper.rb || die } diff --git a/dev-ruby/qed/qed-2.9.2-r1.ebuild b/dev-ruby/qed/qed-2.9.2-r1.ebuild index c6b1dcd3bc05..c86e62ab0bff 100644 --- a/dev-ruby/qed/qed-2.9.2-r1.ebuild +++ b/dev-ruby/qed/qed-2.9.2-r1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_TASK_TEST="" RUBY_FAKEGEM_RECIPE_DOC="yard" diff --git a/dev-ruby/rails-dom-testing/rails-dom-testing-2.3.0.ebuild b/dev-ruby/rails-dom-testing/rails-dom-testing-2.3.0.ebuild index 5ec58fa08937..2030a6624897 100644 --- a/dev-ruby/rails-dom-testing/rails-dom-testing-2.3.0.ebuild +++ b/dev-ruby/rails-dom-testing/rails-dom-testing-2.3.0.ebuild @@ -1,8 +1,8 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRADOC="README.md" @@ -18,9 +18,17 @@ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" ruby_add_rdepend " >=dev-ruby/activesupport-5.0.0:* >=dev-ruby/nokogiri-1.6 - dev-ruby/minitest + dev-ruby/minitest:5 " +all_ruby_prepare() { + cat <<-EOF > "${T}/Gemfile" || die + gem "minitest", "~> 5" + gem "nokogiri" + gem "activesupport" + EOF +} + each_ruby_test() { - MT_NO_PLUGINS=1 ${RUBY} -Ilib:test:. -e 'Dir["test/*_test.rb"].each{|f| require f}' || die + BUNDLE_GEMFILE="${T}/Gemfile" MT_NO_PLUGINS=1 ${RUBY} -S bundle exec ${RUBY} -Ilib:test:. -e 'Dir["test/*_test.rb"].each{|f| require f}' || die } diff --git a/dev-ruby/rails-html-sanitizer/rails-html-sanitizer-1.6.2.ebuild b/dev-ruby/rails-html-sanitizer/rails-html-sanitizer-1.6.2.ebuild index 4c245132f941..983419a21544 100644 --- a/dev-ruby/rails-html-sanitizer/rails-html-sanitizer-1.6.2.ebuild +++ b/dev-ruby/rails-html-sanitizer/rails-html-sanitizer-1.6.2.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" @@ -19,14 +19,21 @@ IUSE="test" ruby_add_rdepend ">=dev-ruby/loofah-2.21:0 >=dev-ruby/nokogiri-1.16.8:0" -ruby_add_bdepend "test? ( dev-ruby/rails-dom-testing )" +ruby_add_bdepend "test? ( + dev-ruby/bundler + dev-ruby/minitest:5 + dev-ruby/rails-dom-testing +)" all_ruby_prepare() { # Avoid tests that depend on nokogiri patches to libxml2. # sed -i -e '/\(name_action\|attr\)_in_a_tag_in_safe_list_sanitizer/askip "libxml2"' test/sanitizer_test.rb || die -: + cat <<-EOF > "${T}/Gemfile" || die + gem "minitest", "~> 5" + gem "loofah" + EOF } each_ruby_test() { - ${RUBY} -Ilib:test:. -e 'Dir["test/*_test.rb"].each{|f| require f}' || die + BUNDLE_GEMFILE="${T}/Gemfile" ${RUBY} -S bundle exec ${RUBY} -Ilib:test:. -e 'Dir["test/*_test.rb"].each{|f| require f}' || die } diff --git a/dev-ruby/rails/rails-8.0.4-r1.ebuild b/dev-ruby/rails/rails-8.0.4-r1.ebuild new file mode 100644 index 000000000000..c670452c0952 --- /dev/null +++ b/dev-ruby/rails/rails-8.0.4-r1.ebuild @@ -0,0 +1,37 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_BINWRAP="" + +RUBY_FAKEGEM_TASK_TEST="" + +RUBY_FAKEGEM_EXTRADOC="README.md" + +inherit ruby-fakegem + +DESCRIPTION="ruby on rails is a web-application and persistence framework" +HOMEPAGE="https://rubyonrails.org" + +LICENSE="MIT" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm64 ~riscv ~x86" + +ruby_add_rdepend " + ~dev-ruby/actioncable-${PV} + ~dev-ruby/actionmailbox-${PV} + ~dev-ruby/actionmailer-${PV} + ~dev-ruby/actionpack-${PV} + ~dev-ruby/actiontext-${PV} + ~dev-ruby/actionview-${PV} + ~dev-ruby/activejob-${PV} + ~dev-ruby/activemodel-${PV} + ~dev-ruby/activerecord-${PV} + ~dev-ruby/activestorage-${PV} + ~dev-ruby/activesupport-${PV} + >=dev-ruby/bundler-1.15.0:* + ~dev-ruby/railties-${PV} +" diff --git a/dev-ruby/rails/rails-8.1.2-r1.ebuild b/dev-ruby/rails/rails-8.1.2-r1.ebuild new file mode 100644 index 000000000000..c670452c0952 --- /dev/null +++ b/dev-ruby/rails/rails-8.1.2-r1.ebuild @@ -0,0 +1,37 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_BINWRAP="" + +RUBY_FAKEGEM_TASK_TEST="" + +RUBY_FAKEGEM_EXTRADOC="README.md" + +inherit ruby-fakegem + +DESCRIPTION="ruby on rails is a web-application and persistence framework" +HOMEPAGE="https://rubyonrails.org" + +LICENSE="MIT" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm64 ~riscv ~x86" + +ruby_add_rdepend " + ~dev-ruby/actioncable-${PV} + ~dev-ruby/actionmailbox-${PV} + ~dev-ruby/actionmailer-${PV} + ~dev-ruby/actionpack-${PV} + ~dev-ruby/actiontext-${PV} + ~dev-ruby/actionview-${PV} + ~dev-ruby/activejob-${PV} + ~dev-ruby/activemodel-${PV} + ~dev-ruby/activerecord-${PV} + ~dev-ruby/activestorage-${PV} + ~dev-ruby/activesupport-${PV} + >=dev-ruby/bundler-1.15.0:* + ~dev-ruby/railties-${PV} +" diff --git a/dev-ruby/railties/railties-7.1.5.1.ebuild b/dev-ruby/railties/railties-7.1.5.1.ebuild index 4c3a0602467c..62646cd76797 100644 --- a/dev-ruby/railties/railties-7.1.5.1.ebuild +++ b/dev-ruby/railties/railties-7.1.5.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -22,7 +22,7 @@ SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz LICENSE="MIT" SLOT="$(ver_cut 1-2)" -KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" IUSE="test" RUBY_S="rails-${PV}/${PN}" diff --git a/dev-ruby/railties/railties-7.1.6-r1.ebuild b/dev-ruby/railties/railties-7.1.6-r1.ebuild index 6852b2f0e17f..f70bf01cb186 100644 --- a/dev-ruby/railties/railties-7.1.6-r1.ebuild +++ b/dev-ruby/railties/railties-7.1.6-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -22,7 +22,7 @@ SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz LICENSE="MIT" SLOT="$(ver_cut 1-2)" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" IUSE="test" RUBY_S="rails-${PV}/${PN}" diff --git a/dev-ruby/railties/railties-7.1.6.ebuild b/dev-ruby/railties/railties-7.1.6.ebuild index 516b36fe77f8..808ccf8de8ce 100644 --- a/dev-ruby/railties/railties-7.1.6.ebuild +++ b/dev-ruby/railties/railties-7.1.6.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -22,7 +22,7 @@ SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz LICENSE="MIT" SLOT="$(ver_cut 1-2)" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" IUSE="test" RUBY_S="rails-${PV}/${PN}" diff --git a/dev-ruby/railties/railties-8.0.4-r1.ebuild b/dev-ruby/railties/railties-8.0.4-r1.ebuild new file mode 100644 index 000000000000..bc4459c48cb0 --- /dev/null +++ b/dev-ruby/railties/railties-8.0.4-r1.ebuild @@ -0,0 +1,75 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_TASK_TEST="test:regular" +RUBY_FAKEGEM_RECIPE_DOC="" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc" + +RUBY_FAKEGEM_GEMSPEC="railties.gemspec" + +RUBY_FAKEGEM_BINDIR="exe" +RUBY_FAKEGEM_BINWRAP="" + +inherit ruby-fakegem + +DESCRIPTION="Tools for creating, working with, and running Rails applications" +HOMEPAGE="https://github.com/rails/rails" +SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz" + +LICENSE="MIT" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +IUSE="test" + +RUBY_S="rails-${PV}/${PN}" + +# The test suite has many failures, most likely due to a mismatch in +# exact dependencies or environment specifics. Needs further +# investigation. +RESTRICT="test" + +RDEPEND=">=app-eselect/eselect-rails-0.29" + +ruby_add_rdepend " + ~dev-ruby/actionpack-${PV} + ~dev-ruby/activesupport-${PV} + >=dev-ruby/irb-1.13:0 + >=dev-ruby/rackup-1.0.0 + >=dev-ruby/rake-12.2 + >=dev-ruby/thor-1.2.2:1 + >=dev-ruby/tsort-0.2 + >=dev-ruby/zeitwerk-2.6:2 +" + +ruby_add_bdepend " + test? ( + ~dev-ruby/actionview-${PV} + dev-ruby/mocha + )" + +all_ruby_prepare() { + rm "${S}/../Gemfile" || die "Unable to remove Gemfile" + sed -i -e '/load_paths/d' test/abstract_unit.rb || die "Unable to remove load paths" + sed -i -e '1igem "minitest", "~>4.0"' test/abstract_unit.rb || die +} + +all_ruby_install() { + all_fakegem_install + + ruby_fakegem_binwrapper rails rails-${PV} +} + +pkg_postinst() { + elog "To select between slots of rails, use:" + elog "\teselect rails" + + eselect rails update +} + +pkg_postrm() { + eselect rails update +} diff --git a/dev-ruby/railties/railties-8.1.2-r1.ebuild b/dev-ruby/railties/railties-8.1.2-r1.ebuild new file mode 100644 index 000000000000..bc4459c48cb0 --- /dev/null +++ b/dev-ruby/railties/railties-8.1.2-r1.ebuild @@ -0,0 +1,75 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_TASK_TEST="test:regular" +RUBY_FAKEGEM_RECIPE_DOC="" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc" + +RUBY_FAKEGEM_GEMSPEC="railties.gemspec" + +RUBY_FAKEGEM_BINDIR="exe" +RUBY_FAKEGEM_BINWRAP="" + +inherit ruby-fakegem + +DESCRIPTION="Tools for creating, working with, and running Rails applications" +HOMEPAGE="https://github.com/rails/rails" +SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz" + +LICENSE="MIT" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +IUSE="test" + +RUBY_S="rails-${PV}/${PN}" + +# The test suite has many failures, most likely due to a mismatch in +# exact dependencies or environment specifics. Needs further +# investigation. +RESTRICT="test" + +RDEPEND=">=app-eselect/eselect-rails-0.29" + +ruby_add_rdepend " + ~dev-ruby/actionpack-${PV} + ~dev-ruby/activesupport-${PV} + >=dev-ruby/irb-1.13:0 + >=dev-ruby/rackup-1.0.0 + >=dev-ruby/rake-12.2 + >=dev-ruby/thor-1.2.2:1 + >=dev-ruby/tsort-0.2 + >=dev-ruby/zeitwerk-2.6:2 +" + +ruby_add_bdepend " + test? ( + ~dev-ruby/actionview-${PV} + dev-ruby/mocha + )" + +all_ruby_prepare() { + rm "${S}/../Gemfile" || die "Unable to remove Gemfile" + sed -i -e '/load_paths/d' test/abstract_unit.rb || die "Unable to remove load paths" + sed -i -e '1igem "minitest", "~>4.0"' test/abstract_unit.rb || die +} + +all_ruby_install() { + all_fakegem_install + + ruby_fakegem_binwrapper rails rails-${PV} +} + +pkg_postinst() { + elog "To select between slots of rails, use:" + elog "\teselect rails" + + eselect rails update +} + +pkg_postrm() { + eselect rails update +} diff --git a/dev-ruby/rash_alt/rash_alt-0.4.12.ebuild b/dev-ruby/rash_alt/rash_alt-0.4.12.ebuild index bb316b0deb68..a70379c278f0 100644 --- a/dev-ruby/rash_alt/rash_alt-0.4.12.ebuild +++ b/dev-ruby/rash_alt/rash_alt-0.4.12.ebuild @@ -1,8 +1,8 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" diff --git a/dev-ruby/rmagick/Manifest b/dev-ruby/rmagick/Manifest index 22891df15224..acd401ef641b 100644 --- a/dev-ruby/rmagick/Manifest +++ b/dev-ruby/rmagick/Manifest @@ -1,4 +1,3 @@ DIST rmagick-5.5.0.tar.gz 2045116 BLAKE2B 018d4e940043210238b6026a8bc0b65656633aaaf559954b666c75dda74c0f0fd33319a13fd6c494a6a51a3cfac67aac283e3e79d06dc90b6d4581464805e476 SHA512 f813104c347867b14281b044135fd626805d35d2afa3167c25d5e31179b31e985c5cc75deb630f8a64d20b877d8c42ce13e31e137f573467d3c5f3f2453d514f -DIST rmagick-6.1.1.tar.gz 2048591 BLAKE2B 5511a146cb44375a66c430bff7cdc710aa3cc3b958e4d44dba6788eebe10ec97be4fb88a25d956a25caff274b4ab4fd81308f367b5b103c5c8f850ed22a95f53 SHA512 138b2b0358ee13ce2ed005c923cb77e0e63254eddd33f92fc10c8152f54be240596448eb9e6847bf065aeb1d93763f9ad34e15fba19638318add9bec42be3467 DIST rmagick-6.1.4.tar.gz 2049170 BLAKE2B 9293522f5eb066f31987fc969b76dc927a9d5bd99138558455c3c14e5dcc47bf661b702aad7a39dd5c669197d02b0fb5f61265c1bc6ca60c429d9925ca3570c9 SHA512 5b47bced53be880ac66a47fb27a52bf08f3ff79ed0c2c6d5413135de9cc9adeb4758b7e60638efed57dd5f19b11855842415b123f035fffebde6f71b9e344b86 DIST rmagick-6.1.5.tar.gz 2049192 BLAKE2B f717133c17907f7ee404bf43b4c580e5af6f1c7b5b0a09e78bbdfeb1545fc6ba4e2ff3dd7e27657990b6af5b4e5b62acf1d1c0addbab2d44a2c2065003ed6e08 SHA512 110a1d52336e673d2693d914073bde7972579cc7a0519c27e90ebe377303b1bcacc7b9be169d4da947553f494d8244217811df60e32012f6d735800bcd22e4e4 diff --git a/dev-ruby/rmagick/files/rmagick-5.5.0-ruby35.patch b/dev-ruby/rmagick/files/rmagick-5.5.0-ruby35.patch new file mode 100644 index 000000000000..b50c5ffeb3b3 --- /dev/null +++ b/dev-ruby/rmagick/files/rmagick-5.5.0-ruby35.patch @@ -0,0 +1,57 @@ +https://github.com/rmagick/rmagick/pull/1712 + +From 4f072008e8fe3cb97d6d537dd7d0a44b9a1b5be1 Mon Sep 17 00:00:00 2001 +From: Shizuo Fujita <fujita@clear-code.com> +Date: Wed, 15 Oct 2025 10:58:26 +0900 +Subject: [PATCH] CI: Support Ruby 3.5 + +--- a/spec/magick_spec.rb ++++ b/spec/magick_spec.rb +@@ -76,7 +76,14 @@ + img.new_image(200, 200, Magick::GradientFill.new(100, 50, 100, 50, 'khaki1', 'turquoise')) + img.resize(20, 20) + end +- r.take ++ ++ if r.respond_to?(:take) ++ r.take ++ else ++ # Ractor#take was replaced at Ruby 3.5. ++ # https://bugs.ruby-lang.org/issues/21262 ++ r.join ++ end + end.not_to raise_error + + expect do +@@ -90,7 +97,14 @@ + gc.text(5, 20, "'20,20'") + gc.draw(img) + end +- r.take ++ ++ if r.respond_to?(:take) ++ r.take ++ else ++ # Ractor#take was replaced at Ruby 3.5. ++ # https://bugs.ruby-lang.org/issues/21262 ++ r.join ++ end + end.not_to raise_error + + unless RUBY_PLATFORM.include?('mingw') +@@ -99,7 +113,14 @@ + r = Ractor.new do + Magick.formats # rubocop:disable RSpec/DescribedClass + end +- r.take ++ ++ if r.respond_to?(:take) ++ r.take ++ else ++ # Ractor#take was replaced at Ruby 3.5. ++ # https://bugs.ruby-lang.org/issues/21262 ++ r.join ++ end + end.not_to raise_error + end + end diff --git a/dev-ruby/rmagick/rmagick-5.5.0-r1.ebuild b/dev-ruby/rmagick/rmagick-5.5.0-r1.ebuild index 31164d60db12..2b2277b3c702 100644 --- a/dev-ruby/rmagick/rmagick-5.5.0-r1.ebuild +++ b/dev-ruby/rmagick/rmagick-5.5.0-r1.ebuild @@ -3,7 +3,7 @@ EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" @@ -36,6 +36,10 @@ DEPEND+=" >=media-gfx/imagemagick-6.9.0 test? ( >=media-gfx/imagemagick-7.1.0:=[ ruby_add_bdepend "dev-ruby/pkg-config" +PATCHES=( + "${FILESDIR}"/rmagick-5.5.0-ruby35.patch +) + all_ruby_prepare() { # Avoid unused dependency on rake-compiler. This also avoids an # extra compile during tests. diff --git a/dev-ruby/rmagick/rmagick-6.1.1.ebuild b/dev-ruby/rmagick/rmagick-6.1.1.ebuild deleted file mode 100644 index 6478029030b8..000000000000 --- a/dev-ruby/rmagick/rmagick-6.1.1.ebuild +++ /dev/null @@ -1,83 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_RECIPE_TEST="rspec3" - -RUBY_FAKEGEM_TASK_DOC="" - -RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" - -RUBY_FAKEGEM_GEMSPEC="rmagick.gemspec" - -RUBY_FAKEGEM_EXTENSIONS=(ext/RMagick/extconf.rb) - -MY_PV=RMagick_${PV//\./-} - -inherit ruby-fakegem - -DESCRIPTION="An interface between Ruby and the ImageMagick(TM) image processing library" -HOMEPAGE="https://github.com/rmagick/rmagick" -SRC_URI="https://github.com/rmagick/rmagick/archive/${MY_PV}.tar.gz -> ${P}.tar.gz" -RUBY_S="rmagick-${MY_PV}" - -LICENSE="Artistic" -SLOT="$(ver_cut 1)" -KEYWORDS="amd64 ~hppa ppc ppc64 x86" -IUSE="doc" - -RDEPEND=">=media-gfx/imagemagick-6.9.0:=" -DEPEND=">=media-gfx/imagemagick-6.9.0 test? ( >=media-gfx/imagemagick-7.1.0:=[jpeg,lqr,lcms,postscript,tiff,webp,xml] media-fonts/dejavu )" - -ruby_add_bdepend " - dev-ruby/observer - dev-ruby/pkg-config -" - -all_ruby_prepare() { - # Avoid unused dependency on rake-compiler. This also avoids an - # extra compile during tests. - sed -i -e '/extensiontask/ s:^:#:' \ - -e '/ExtensionTask/,/end/ s:^:#:' \ - -e '/compile/ s:^:#:' Rakefile || die - sed -i -e '/pry/ s:^:#:' -e '5irequire "tempfile"' spec/spec_helper.rb || die - sed -e 's/git ls-files/find */' \ - -e '/pkg-config/ s:^:#:' \ - -i ${RUBY_FAKEGEM_GEMSPEC} || die - - # Squelch harmless warning about imagemagick installation. - sed -i -e '/prefix/ s:ImageMagick:ImageMagick-6:' ext/RMagick/extconf.rb || die - - # Create directory used for a test - mkdir tmp -} - -each_ruby_test() { - # Borrowed from media-gfx/gscan2pdf - # Needed to avoid test failures on e.g. ppc, bug #815856 - # (Unclear why it doesn't manifest on amd64 here at least) - local confdir="${HOME}/.config/ImageMagick" - mkdir -p "${confdir}" || die - cat > "${confdir}/policy.xml" <<-EOT || die - <policymap> - <policy domain="coder" rights="read|write" pattern="PDF" /> - <policy domain="coder" rights="read" pattern="PS" /> - </policymap> - EOT - - RSPEC_VERSION="3" ruby-ng_rspec -} - -all_ruby_install() { - all_fakegem_install - - docinto examples - dodoc examples/* - - if use doc ; then - docinto . - dodoc -r doc - fi -} diff --git a/dev-ruby/rouge/Manifest b/dev-ruby/rouge/Manifest index 890b9abeb5a1..e9f860eb8f4c 100644 --- a/dev-ruby/rouge/Manifest +++ b/dev-ruby/rouge/Manifest @@ -1,6 +1,3 @@ DIST rouge-3.30.0.tar.gz 1036048 BLAKE2B 79dde9ed8a282b22aa044bef1a17cdde705e5361aa9298789d1de155260a69a200d8039c400d22db5719039d67f0d9179c31574190684da50ea64fba92c63ec8 SHA512 f21ff96d2d1f248dfffb02ea2312b4c01090b2b5664588e00763d0ede0d8af701efe0cdabb551a2debff26a301dfaffa7a07aa579d73806c6635f03dd15dcfe1 -DIST rouge-4.5.1.tar.gz 1079742 BLAKE2B b74cd8aeec73b35fd2670b611ae1ab3220a0d98ee85cd0abe2d008fa1a34aa827f1e66aab770ec867d4b59b9491e61339be0bb5e896dfeb4b93d77759ba256ff SHA512 f0659597cb04d04c48d1d20722be870f04fec5cf92f5b47f9ba6dde8e653a359c2a6798a1bb9f8785682e218390f16ebf5cba5c4582604a0a3a7a3596e0139b1 -DIST rouge-4.5.2.tar.gz 1082289 BLAKE2B 47c45917411b8791bee8a47c8a18c5024af2fca4838627ddefb25c9875ed5416a21d4555b9ef49d844f8e1352663692a10c3bcb28c8b16d1e2215d0621e8fe1b SHA512 dbc415067673d0e44384b743a5b124efd5cc38db93abc48c123163d0688f4cd639154534bd5efdd0c972fb10e046d7cde4df1791fa44c932952841831f051f83 -DIST rouge-4.6.0.tar.gz 1085076 BLAKE2B 2176d03499cd70f5061710e24b09bf78ec52808bc711802649b3f1e474d2a905cdcd68805a4cd3bfa272fc37d1f1ab8e6c494feba3c234c25c392379a834cbdc SHA512 5cc4279ff7023a334cebf58deb31233f652ba79faba7565e70a0166f75b5f3be1677c650043dc39291c0a167acedb91365bb66048836f605dc167406c471d0cf DIST rouge-4.6.1.tar.gz 1085941 BLAKE2B e03135483f71f929f4d29094dfb42ef7f47c08817594911332f656db5031db340f77f80407a8dc27ef36b4952f1b8e23059371b69cc9ed24ad4a67bef5e7a1ae SHA512 6ae27ed649bd9fc08aa4fe69cd03ae14772c2ced4616b12337b5f9aa8fa7e5694aa98fe2c6f945a7fbd6b1f12a22c2af365068ff73d79d0f247a8acf2f8a6ad3 DIST rouge-4.7.0.tar.gz 1082685 BLAKE2B 2882674c50a04b9b39fe10e7598d38220961933b2cd9349d89c2114642c319ab55b1bca893498219eebfe3d02bfe62a799101e7c3c0ac0fdc822d0085d372d6e SHA512 22d6ee0843c3b07b419d1b2f0c2ce3f83320f0849a8c520dfd78152d3bd8721d5055ad0f39e92db673dbd494d22ac5bc74a472ff510f0fdefce7e62de5c9aa8a diff --git a/dev-ruby/rouge/rouge-4.5.1.ebuild b/dev-ruby/rouge/rouge-4.5.1.ebuild deleted file mode 100644 index b0743e492e5e..000000000000 --- a/dev-ruby/rouge/rouge-4.5.1.ebuild +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_TASK_TEST="spec" -RUBY_FAKEGEM_RECIPE_DOC="yard" - -RUBY_FAKEGEM_GEMSPEC="rouge.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="Yet-another-markdown-parser using a strict syntax definition in pure Ruby" -HOMEPAGE="https://github.com/rouge-ruby/rouge" -SRC_URI="https://github.com/rouge-ruby/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="BSD-2 MIT" - -SLOT="$(ver_cut 1)" -KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86" -IUSE="doc test" - -ruby_add_bdepend "doc? ( dev-ruby/redcarpet ) - test? ( dev-ruby/minitest-power_assert ) - dev-ruby/yard -" - -ruby_add_rdepend "dev-ruby/redcarpet" - -all_ruby_prepare() { - rm -f tasks/{check/style,update/changelog}.rake || die - - sed -i -e '/bundler/I s:^:#: ; 5irequire "minitest-power_assert"' spec/spec_helper.rb || die - sed -i -e '/\(changelog\|bundler\|rubocop\)/ s:^:#: ; 1irequire "pathname"' Rakefile || die -} diff --git a/dev-ruby/rouge/rouge-4.5.2.ebuild b/dev-ruby/rouge/rouge-4.5.2.ebuild deleted file mode 100644 index 8b93dd862ba0..000000000000 --- a/dev-ruby/rouge/rouge-4.5.2.ebuild +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_TASK_TEST="spec" -RUBY_FAKEGEM_RECIPE_DOC="yard" - -RUBY_FAKEGEM_GEMSPEC="rouge.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="Yet-another-markdown-parser using a strict syntax definition in pure Ruby" -HOMEPAGE="https://github.com/rouge-ruby/rouge" -SRC_URI="https://github.com/rouge-ruby/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="BSD-2 MIT" - -SLOT="$(ver_cut 1)" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE="doc test" - -ruby_add_bdepend "doc? ( dev-ruby/redcarpet ) - test? ( dev-ruby/minitest-power_assert ) - dev-ruby/yard -" - -ruby_add_rdepend "dev-ruby/redcarpet" - -all_ruby_prepare() { - rm -f tasks/{check/style,update/changelog}.rake || die - - sed -i -e '/bundler/I s:^:#: ; 5irequire "minitest-power_assert"' spec/spec_helper.rb || die - sed -i -e '/\(changelog\|bundler\|rubocop\)/ s:^:#: ; 1irequire "pathname"' Rakefile || die -} diff --git a/dev-ruby/rouge/rouge-4.6.0.ebuild b/dev-ruby/rouge/rouge-4.6.0.ebuild deleted file mode 100644 index 8089fbbb1b98..000000000000 --- a/dev-ruby/rouge/rouge-4.6.0.ebuild +++ /dev/null @@ -1,37 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_TASK_TEST="spec" -RUBY_FAKEGEM_RECIPE_DOC="yard" - -RUBY_FAKEGEM_GEMSPEC="rouge.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="Yet-another-markdown-parser using a strict syntax definition in pure Ruby" -HOMEPAGE="https://github.com/rouge-ruby/rouge" -SRC_URI="https://github.com/rouge-ruby/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="BSD-2 MIT" - -SLOT="$(ver_cut 1)" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE="doc test" - -ruby_add_bdepend "doc? ( dev-ruby/redcarpet ) - test? ( dev-ruby/minitest-power_assert ) - dev-ruby/yard -" - -ruby_add_rdepend "dev-ruby/redcarpet" - -all_ruby_prepare() { - rm -f tasks/{check/style,update/changelog}.rake || die - - sed -i -e '/bundler/I s:^:#: ; 5irequire "minitest-power_assert"' spec/spec_helper.rb || die - sed -i -e '/\(changelog\|bundler\|rubocop\)/ s:^:#: ; 1irequire "pathname"' Rakefile || die -} diff --git a/dev-ruby/rouge/rouge-4.7.0.ebuild b/dev-ruby/rouge/rouge-4.7.0.ebuild index 8911ecc20a75..824eccfb9915 100644 --- a/dev-ruby/rouge/rouge-4.7.0.ebuild +++ b/dev-ruby/rouge/rouge-4.7.0.ebuild @@ -3,7 +3,7 @@ EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_TASK_TEST="spec" RUBY_FAKEGEM_RECIPE_DOC="yard" diff --git a/dev-ruby/rqrcode/Manifest b/dev-ruby/rqrcode/Manifest index 6daf4a3f9fb0..c1b84f45c483 100644 --- a/dev-ruby/rqrcode/Manifest +++ b/dev-ruby/rqrcode/Manifest @@ -1,4 +1 @@ -DIST rqrcode-2.2.0.tar.gz 109070 BLAKE2B 91a74a9c547f62f0cd83dd60d00b7af2c9363bd34f3987e43b637f906975f3e2b1f95ac67df80a0065fdd9fa3a7801e639fff1d2b36bcc4dc4abbc996fb6c919 SHA512 41d6882b28d15154b9cc5dc6aba30cad404aabad2b9101309bea0812b776cdb540fec3152ec5bb075f19c77a1aa67bc44d9b35e2161d189bd64a7d2517cafa63 -DIST rqrcode-3.1.0.tar.gz 109860 BLAKE2B 25e0ecab0856c07f01c9a691a4b9c1e7d1581e99cdfbe4e81f80899e9f49ff1ecdeb095614001468d5d522975173ed1729e88df2f9e24be04cdba022d69c95bf SHA512 f6878e05513346e5a6fa2d151384c6599088df7e3740c4997c59b1862b7c89281fafd92e9617ba04ec385db11cae2628af2aef1b0d19f640a16b79f80130a26c -DIST rqrcode-3.1.1.tar.gz 109910 BLAKE2B a0a85701e8fa006a37d6dc48ca20f9ed68a5701b1a0f6af3515b0702f7641d9b3d3025cf86c020e98756dc8254c5804389279736a66521646e37fde6acfe6c00 SHA512 f2170739379071d5b54cd98a179a7dafd511c330f144a2469f5ccad25225bd32146351e859d59ce165792c8e8925d4588dfbf74ab98e2bf838fad11b46e27e98 DIST rqrcode-3.2.0.tar.gz 120330 BLAKE2B 76b4fa23ab9a2e0b2b324deab4316c5d44cc531d8e29fbf1d303e82cc8cbd65159f434667809dff4ba249f8ac29ef5f4b2a63e1a2e58d457053c9dbe712bbb84 SHA512 87a564ce57eb8ecddb50ab91b56c9774d158c27961a989b3feddbd1542dc381f80d5bfb54464125943ff857b533f9e920df80dc910ea36e5af01fff4e6b5df64 diff --git a/dev-ruby/rqrcode/rqrcode-2.2.0.ebuild b/dev-ruby/rqrcode/rqrcode-2.2.0.ebuild deleted file mode 100644 index ed2cad6a0025..000000000000 --- a/dev-ruby/rqrcode/rqrcode-2.2.0.ebuild +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby31 ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_EXTRADOC="README.md" - -RUBY_FAKEGEM_RECIPE_TEST="rspec3" - -RUBY_FAKEGEM_BINWRAP="" - -RUBY_FAKEGEM_GEMSPEC="rqrcode.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="Library for encoding QR Codes" -HOMEPAGE="https://whomwah.com/rqrcode/" -SRC_URI="https://github.com/whomwah/rqrcode/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~amd64" - -ruby_add_rdepend " - dev-ruby/chunky_png:0 - dev-ruby/rqrcode_core:1 -" - -all_ruby_prepare() { - sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die - sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die - - sed -i -e "s:/tmp:${TMPDIR}:" spec/rqrcode/export_png_spec.rb || die -} diff --git a/dev-ruby/rqrcode/rqrcode-3.1.0.ebuild b/dev-ruby/rqrcode/rqrcode-3.1.0.ebuild deleted file mode 100644 index e08ced82b189..000000000000 --- a/dev-ruby/rqrcode/rqrcode-3.1.0.ebuild +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_EXTRADOC="README.md" - -RUBY_FAKEGEM_RECIPE_TEST="rspec3" - -RUBY_FAKEGEM_BINWRAP="" - -RUBY_FAKEGEM_GEMSPEC="rqrcode.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="Library for encoding QR Codes" -HOMEPAGE="https://github.com/whomwah/rqrcode" -SRC_URI="https://github.com/whomwah/rqrcode/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="$(ver_cut 1)" -KEYWORDS="~amd64" - -ruby_add_rdepend " - dev-ruby/chunky_png:0 - dev-ruby/rqrcode_core:2 -" - -all_ruby_prepare() { - sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die - sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die - - sed -i -e "s:/tmp:${TMPDIR}:" spec/rqrcode/export_png_spec.rb || die -} diff --git a/dev-ruby/rqrcode/rqrcode-3.1.1.ebuild b/dev-ruby/rqrcode/rqrcode-3.1.1.ebuild deleted file mode 100644 index e08ced82b189..000000000000 --- a/dev-ruby/rqrcode/rqrcode-3.1.1.ebuild +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_EXTRADOC="README.md" - -RUBY_FAKEGEM_RECIPE_TEST="rspec3" - -RUBY_FAKEGEM_BINWRAP="" - -RUBY_FAKEGEM_GEMSPEC="rqrcode.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="Library for encoding QR Codes" -HOMEPAGE="https://github.com/whomwah/rqrcode" -SRC_URI="https://github.com/whomwah/rqrcode/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="$(ver_cut 1)" -KEYWORDS="~amd64" - -ruby_add_rdepend " - dev-ruby/chunky_png:0 - dev-ruby/rqrcode_core:2 -" - -all_ruby_prepare() { - sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die - sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die - - sed -i -e "s:/tmp:${TMPDIR}:" spec/rqrcode/export_png_spec.rb || die -} diff --git a/dev-ruby/rqrcode_core/Manifest b/dev-ruby/rqrcode_core/Manifest index 2b7cbdff58a5..99e570b07fc8 100644 --- a/dev-ruby/rqrcode_core/Manifest +++ b/dev-ruby/rqrcode_core/Manifest @@ -1,4 +1 @@ -DIST rqrcode_core-1.2.0.tar.gz 21103 BLAKE2B 9988dc999b2853888e91b6346af074defe59dbd1be097e6c058fb7e8e68a779aedef14458ac14aa06e57e8cccdd1240e5eb003944951b47c174a1239cc35d77f SHA512 423a492b29ed8cb4e2f037305121a77f22e76dafc93675d0a24e2c6ad1918522003a8d404d55fa28e007bbb9be6d2038eafab76b2dd5e5e59c0d9adb7ab4626c -DIST rqrcode_core-2.0.0.tar.gz 23393 BLAKE2B 15cc340bbda082b1662dd349eecf5c1de3ee8f386726c481dd8fcb59cc2929e9a403eb8691a8ad5d3675ea9a2c5d4964d5187151359827c233573d5f4f6ab705 SHA512 3bf39902649e2937bcf8a0270a53a3d6f65fe42e3f56a1e4892b747d7df5e82505225203fa424a4779b7c68b64241ef9b16eeb80806d40b90510bc4264be1a2e -DIST rqrcode_core-2.0.1.tar.gz 23430 BLAKE2B 366b87fc2668105fdd02ea9435e61dae2ebc3bf0249893690ba31a3df3780260d777e3b3b61b1eadc906af9cda34f5cd6bd1e014f5b0e7b8263d8667fd02d5e8 SHA512 b8465bc7664f9cec539f13f5b3f2eee19847883c72566a54423b0ab13e01101c8906d95e63cf3ff2225cb2998d6b25910aa9f83378dc355bfbbbe02315bf8b34 DIST rqrcode_core-2.1.0.tar.gz 55425 BLAKE2B e26385223b33f962f2d26cc0e22f4e3197e4f309ecd2ab46eecc5b8f32ad571385ab84d367fb1e428477a485c2aad8a4c28ac45e45eacac21b1ee2a20c45c399 SHA512 422da55a0f39635598ac4f71675509ca831a01840050d873f9e46bb4bf2f973f9d058585f65c1ad610984a2dd2a0359cbcd8db3bca4cc1b5ec353d7e7a3538bc diff --git a/dev-ruby/rqrcode_core/rqrcode_core-1.2.0.ebuild b/dev-ruby/rqrcode_core/rqrcode_core-1.2.0.ebuild deleted file mode 100644 index 9622bc8201df..000000000000 --- a/dev-ruby/rqrcode_core/rqrcode_core-1.2.0.ebuild +++ /dev/null @@ -1,31 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby31 ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_EXTRADOC="README.md" - -RUBY_FAKEGEM_BINWRAP="" - -RUBY_FAKEGEM_GEMSPEC="rqrcode_core.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="Library for encoding QR Codes" -HOMEPAGE="https://github.com/whomwah/rqrcode_core/" -SRC_URI="https://github.com/whomwah/rqrcode_core/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="$(ver_cut 1)" -KEYWORDS="~amd64" - -all_ruby_prepare() { - sed -i -e '/bundler/ s:^:#:' Rakefile test/test_helper.rb || die - sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die -} - -each_ruby_test() { - ${RUBY} -Ilib:.:test -e 'Dir["test/**/*_test.rb"].each {|f| require f}' || die -} diff --git a/dev-ruby/rqrcode_core/rqrcode_core-2.0.0.ebuild b/dev-ruby/rqrcode_core/rqrcode_core-2.0.0.ebuild deleted file mode 100644 index ea243fdc6618..000000000000 --- a/dev-ruby/rqrcode_core/rqrcode_core-2.0.0.ebuild +++ /dev/null @@ -1,31 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_EXTRADOC="README.md" - -RUBY_FAKEGEM_BINWRAP="" - -RUBY_FAKEGEM_GEMSPEC="rqrcode_core.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="Library for encoding QR Codes" -HOMEPAGE="https://github.com/whomwah/rqrcode_core/" -SRC_URI="https://github.com/whomwah/rqrcode_core/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="$(ver_cut 1)" -KEYWORDS="~amd64" - -all_ruby_prepare() { - sed -i -e '/bundler/ s:^:#:' Rakefile test/test_helper.rb || die - sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die -} - -each_ruby_test() { - ${RUBY} -Ilib:.:test -e 'Dir["test/**/*_test.rb"].each {|f| require f}' || die -} diff --git a/dev-ruby/rqrcode_core/rqrcode_core-2.0.1.ebuild b/dev-ruby/rqrcode_core/rqrcode_core-2.0.1.ebuild deleted file mode 100644 index ee698b2b4a45..000000000000 --- a/dev-ruby/rqrcode_core/rqrcode_core-2.0.1.ebuild +++ /dev/null @@ -1,31 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby32 ruby33 ruby34 ruby40" - -RUBY_FAKEGEM_EXTRADOC="README.md" - -RUBY_FAKEGEM_BINWRAP="" - -RUBY_FAKEGEM_GEMSPEC="rqrcode_core.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="Library for encoding QR Codes" -HOMEPAGE="https://github.com/whomwah/rqrcode_core/" -SRC_URI="https://github.com/whomwah/rqrcode_core/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="$(ver_cut 1)" -KEYWORDS="~amd64" - -all_ruby_prepare() { - sed -i -e '/bundler/ s:^:#:' Rakefile test/test_helper.rb || die - sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die -} - -each_ruby_test() { - ${RUBY} -Ilib:.:test -e 'Dir["test/**/*_test.rb"].each {|f| require f}' || die -} diff --git a/dev-ruby/rr/rr-3.1.2.ebuild b/dev-ruby/rr/rr-3.1.2.ebuild index b681a677f95f..d7e65608a1d1 100644 --- a/dev-ruby/rr/rr-3.1.2.ebuild +++ b/dev-ruby/rr/rr-3.1.2.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_TASK_DOC="" RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md" diff --git a/dev-ruby/ruby-feedparser/Manifest b/dev-ruby/ruby-feedparser/Manifest index 41ab98adc5ab..df9cc8af7dc7 100644 --- a/dev-ruby/ruby-feedparser/Manifest +++ b/dev-ruby/ruby-feedparser/Manifest @@ -1,2 +1 @@ -DIST ruby-feedparser-0.11.3.tar.gz 2688778 BLAKE2B ea7fa378de51e44ce8b02dd1004b2b83e2d14e93d2725db180e00dd90a010e4bda2bc890a48729f33f565f4e0db92044b1dd3156225ef5b23dc2da0613a2a525 SHA512 fb4e27da60b67668af4ed4c6535ea420c13e1fb53d211f63899553407f14cbdd2b0c2d95fcc07cc6acace682b3392698c99de3e5f67a1c461e26dd262b7b8249 DIST ruby-feedparser-0.11.4.tar.gz 3193181 BLAKE2B 2e570c6e8b325e3dc043c0ac44d7571b3cb682c65003198de05920bcb504767bf7fa6ea57ff8f5d7423472d585a4f41020d7752130bcce7298d9d1d4bc5aa315 SHA512 61b7c5f9263047cd3a13264d98b86d7ac163e7a0568bf6f39e3ad0ef1f84dd9b9314788d7de31843fa06f2c28f2ddc1af03693f5b18b6ce9ab06f67332e48e89 diff --git a/dev-ruby/ruby-feedparser/ruby-feedparser-0.11.3.ebuild b/dev-ruby/ruby-feedparser/ruby-feedparser-0.11.3.ebuild deleted file mode 100644 index 83906dc04ee3..000000000000 --- a/dev-ruby/ruby-feedparser/ruby-feedparser-0.11.3.ebuild +++ /dev/null @@ -1,39 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_EXTRADOC="README" - -RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" - -inherit ruby-fakegem - -GITHUB_USER="feed2imap" - -DESCRIPTION="Ruby library to parse ATOM/RSS feeds" -HOMEPAGE="https://github.com/feed2imap/ruby-feedparser" -SRC_URI="https://github.com/${GITHUB_USER}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64" -IUSE="test" - -ruby_add_rdepend "dev-ruby/magic" - -ruby_add_bdepend "dev-ruby/magic - test? ( dev-ruby/mocha:2 dev-ruby/test-unit )" - -all_ruby_prepare() { - # Extract gemspec source from Rakefile - sed -n -e '/Gem::Specification/,/end$/p' Rakefile > ${RUBY_FAKEGEM_GEMSPEC} || die - sed -i -e 's/PKG_NAME/"'${PN}'"/' \ - -e 's/PKG_VERSION/"'${PV}'"/' \ - -e '/s.files/d' ${RUBY_FAKEGEM_GEMSPEC} || die -} - -each_ruby_prepare() { - sed -i -e '/PKG_VERSION/ s:ruby:'${RUBY}':' Rakefile || die -} diff --git a/dev-ruby/ruby-feedparser/ruby-feedparser-0.11.4.ebuild b/dev-ruby/ruby-feedparser/ruby-feedparser-0.11.4.ebuild index 6e5b86eefee0..07f6373efef9 100644 --- a/dev-ruby/ruby-feedparser/ruby-feedparser-0.11.4.ebuild +++ b/dev-ruby/ruby-feedparser/ruby-feedparser-0.11.4.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRADOC="README" diff --git a/dev-ruby/ruby-oembed/ruby-oembed-0.18.1.ebuild b/dev-ruby/ruby-oembed/ruby-oembed-0.18.1.ebuild index 5abaebf73742..df3f46438b49 100644 --- a/dev-ruby/ruby-oembed/ruby-oembed-0.18.1.ebuild +++ b/dev-ruby/ruby-oembed/ruby-oembed-0.18.1.ebuild @@ -1,8 +1,8 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" diff --git a/dev-ruby/ruby-shadow/ruby-shadow-2.5.1.ebuild b/dev-ruby/ruby-shadow/ruby-shadow-2.5.1.ebuild index 7fbf2f53f563..065802bf530c 100644 --- a/dev-ruby/ruby-shadow/ruby-shadow-2.5.1.ebuild +++ b/dev-ruby/ruby-shadow/ruby-shadow-2.5.1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_TASK_TEST="" @@ -11,7 +11,7 @@ RUBY_FAKEGEM_EXTRADOC="HISTORY README README.euc" RUBY_FAKEGEM_EXTENSIONS=(./extconf.rb) -inherit ruby-fakegem +inherit flag-o-matic ruby-fakegem DESCRIPTION="ruby shadow bindings" HOMEPAGE="https://github.com/apalmblad/ruby-shadow" @@ -29,3 +29,10 @@ all_ruby_prepare() { sed -e '16i$CFLAGS += ENV["CFLAGS"]' \ -i extconf.rb || die } + +src_configure() { + # Definition no longer set in >=ruby40? + append-cflags -DRUBY19 # doesn't respect CPPFLAGS + + ruby-ng_src_configure +} diff --git a/dev-ruby/rubytest-cli/rubytest-cli-0.2.0-r1.ebuild b/dev-ruby/rubytest-cli/rubytest-cli-0.2.0-r1.ebuild index 8b7a88821ecf..402afc1a242d 100644 --- a/dev-ruby/rubytest-cli/rubytest-cli-0.2.0-r1.ebuild +++ b/dev-ruby/rubytest-cli/rubytest-cli-0.2.0-r1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_TASK_TEST="" RUBY_FAKEGEM_RECIPE_DOC="yard" diff --git a/dev-ruby/rubytest/rubytest-0.8.1-r1.ebuild b/dev-ruby/rubytest/rubytest-0.8.1-r1.ebuild index c349d5a91f01..e3bd39e6224b 100644 --- a/dev-ruby/rubytest/rubytest-0.8.1-r1.ebuild +++ b/dev-ruby/rubytest/rubytest-0.8.1-r1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_TASK_TEST="" RUBY_FAKEGEM_RECIPE_DOC="yard" diff --git a/dev-ruby/rubyzip/rubyzip-2.4.1.ebuild b/dev-ruby/rubyzip/rubyzip-2.4.1.ebuild index 228c4e97bdc8..80192895701c 100644 --- a/dev-ruby/rubyzip/rubyzip-2.4.1.ebuild +++ b/dev-ruby/rubyzip/rubyzip-2.4.1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_DOC="none" RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md TODO" @@ -26,7 +26,7 @@ IUSE="test" DEPEND="test? ( app-arch/zip )" -ruby_add_bdepend "test? ( dev-ruby/minitest:5 )" +ruby_add_bdepend "test? ( dev-ruby/minitest:5 dev-ruby/bundler )" all_ruby_install() { all_fakegem_install @@ -52,4 +52,14 @@ all_ruby_prepare() { # Fix broken test that uses native endian sed -i -e '/pack/ s/LLS/VVv/' test/file_extract_test.rb || die + + # Avoid minitest-6, bug #978921 + cat <<-EOF > "${T}/Gemfile" || die + gem 'rake' + gem 'minitest', '~> 5.25' + EOF +} + +each_ruby_test() { + BUNDLE_GEMFILE="${T}/Gemfile" ${RUBY} -S bundle exec ${RUBY} -S rake test || die } diff --git a/dev-ruby/sass/sass-3.7.4-r3.ebuild b/dev-ruby/sass/sass-3.7.4-r3.ebuild index 88811008713a..68b0a5eff838 100644 --- a/dev-ruby/sass/sass-3.7.4-r3.ebuild +++ b/dev-ruby/sass/sass-3.7.4-r3.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_TASK_DOC="" RUBY_FAKEGEM_DOCDIR="doc" diff --git a/dev-ruby/sassc/sassc-2.4.0-r1.ebuild b/dev-ruby/sassc/sassc-2.4.0-r1.ebuild index 78c4bb247652..0cb07f2cad10 100644 --- a/dev-ruby/sassc/sassc-2.4.0-r1.ebuild +++ b/dev-ruby/sassc/sassc-2.4.0-r1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_DOC="none" RUBY_FAKEGEM_DOCDIR="doc" diff --git a/dev-ruby/selenium-webdriver/selenium-webdriver-4.1.0-r1.ebuild b/dev-ruby/selenium-webdriver/selenium-webdriver-4.1.0-r1.ebuild index 8029c89dc9b2..e29aa84c9a3c 100644 --- a/dev-ruby/selenium-webdriver/selenium-webdriver-4.1.0-r1.ebuild +++ b/dev-ruby/selenium-webdriver/selenium-webdriver-4.1.0-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -28,7 +28,7 @@ HOMEPAGE="https://github.com/seleniumhq/selenium" LICENSE="Apache-2.0" SLOT="$(ver_cut 1)" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" IUSE="" ruby_add_rdepend "dev-ruby/childprocess:5 diff --git a/dev-ruby/selenium-webdriver/selenium-webdriver-4.11.0.ebuild b/dev-ruby/selenium-webdriver/selenium-webdriver-4.11.0.ebuild index 99c59243417a..bad3306baf7c 100644 --- a/dev-ruby/selenium-webdriver/selenium-webdriver-4.11.0.ebuild +++ b/dev-ruby/selenium-webdriver/selenium-webdriver-4.11.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -28,7 +28,7 @@ HOMEPAGE="https://github.com/seleniumhq/selenium" LICENSE="Apache-2.0" SLOT="$(ver_cut 1)" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86" IUSE="" ruby_add_rdepend " diff --git a/dev-ruby/selenium-webdriver/selenium-webdriver-4.40.0.ebuild b/dev-ruby/selenium-webdriver/selenium-webdriver-4.40.0.ebuild index b1715aa5bcc5..151ac6ac5901 100644 --- a/dev-ruby/selenium-webdriver/selenium-webdriver-4.40.0.ebuild +++ b/dev-ruby/selenium-webdriver/selenium-webdriver-4.40.0.ebuild @@ -19,7 +19,7 @@ HOMEPAGE="https://github.com/seleniumhq/selenium" LICENSE="Apache-2.0" SLOT="$(ver_cut 1)" -KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv ~x86" RDEPEND=">=dev-util/selenium-manager-$(ver_cut 1-2)" diff --git a/dev-ruby/shoulda-matchers/shoulda-matchers-4.5.1-r1.ebuild b/dev-ruby/shoulda-matchers/shoulda-matchers-4.5.1-r1.ebuild index 3ebb934b624c..8bd07392666f 100644 --- a/dev-ruby/shoulda-matchers/shoulda-matchers-4.5.1-r1.ebuild +++ b/dev-ruby/shoulda-matchers/shoulda-matchers-4.5.1-r1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="none" diff --git a/dev-ruby/shoulda-matchers/shoulda-matchers-5.3.0.ebuild b/dev-ruby/shoulda-matchers/shoulda-matchers-5.3.0.ebuild index f990e4259615..1625fc8812e4 100644 --- a/dev-ruby/shoulda-matchers/shoulda-matchers-5.3.0.ebuild +++ b/dev-ruby/shoulda-matchers/shoulda-matchers-5.3.0.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" RUBY_FAKEGEM_EXTRAINSTALL="CHANGELOG.md README.md" RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" diff --git a/dev-ruby/shoulda-matchers/shoulda-matchers-6.4.0.ebuild b/dev-ruby/shoulda-matchers/shoulda-matchers-6.4.0.ebuild index 8139c1bfacc6..1625fc8812e4 100644 --- a/dev-ruby/shoulda-matchers/shoulda-matchers-6.4.0.ebuild +++ b/dev-ruby/shoulda-matchers/shoulda-matchers-6.4.0.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" RUBY_FAKEGEM_EXTRAINSTALL="CHANGELOG.md README.md" RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" diff --git a/dev-ruby/shoulda-matchers/shoulda-matchers-6.5.0.ebuild b/dev-ruby/shoulda-matchers/shoulda-matchers-6.5.0.ebuild index 7e61e6005c91..b8b7fb2a69db 100644 --- a/dev-ruby/shoulda-matchers/shoulda-matchers-6.5.0.ebuild +++ b/dev-ruby/shoulda-matchers/shoulda-matchers-6.5.0.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" RUBY_FAKEGEM_EXTRAINSTALL="CHANGELOG.md README.md" RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" diff --git a/dev-ruby/shoulda-matchers/shoulda-matchers-7.0.1.ebuild b/dev-ruby/shoulda-matchers/shoulda-matchers-7.0.1.ebuild index ce00b0e27a3b..4a8181b1cd7c 100644 --- a/dev-ruby/shoulda-matchers/shoulda-matchers-7.0.1.ebuild +++ b/dev-ruby/shoulda-matchers/shoulda-matchers-7.0.1.ebuild @@ -3,7 +3,7 @@ EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" RUBY_FAKEGEM_EXTRAINSTALL="CHANGELOG.md README.md" diff --git a/dev-ruby/shoulda/shoulda-4.0.0.ebuild b/dev-ruby/shoulda/shoulda-4.0.0.ebuild index 50bb0b934fa3..2779ab90ccab 100644 --- a/dev-ruby/shoulda/shoulda-4.0.0.ebuild +++ b/dev-ruby/shoulda/shoulda-4.0.0.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_TASK_DOC="" RUBY_FAKEGEM_EXTRADOC="README.md" diff --git a/dev-ruby/sinatra/Manifest b/dev-ruby/sinatra/Manifest index 8818d309b4ae..62daf22adfe1 100644 --- a/dev-ruby/sinatra/Manifest +++ b/dev-ruby/sinatra/Manifest @@ -1,3 +1,2 @@ DIST sinatra-4.1.1.tar.gz 271795 BLAKE2B 6d42ccbc40a3c4df6902a5be78749136ac4dd84149d3d4a748fbe71f8cf882785645a98b735cb899833145f967282b57f0e295e4f35c516daa212175e3f31325 SHA512 d9022acc28048f6424f077216bfc620000887afdc5fb34152610d3f0a5139cea367a165cb6caa1e0b1f02fb8328b563d6993f16419d798bde50e45450b558f2d -DIST sinatra-4.2.0.tar.gz 272591 BLAKE2B 1991ec2ac1d0d65adbc5d179e2e5ddcf51351f080311c2813eee5a1df803710a86ca527cb5156d02b7f699f7bd74a663623785b4efce435fc52d78018b0abee2 SHA512 468a7f963240edda9f405fc31e524af91788e55138e3d07707953427b30cc21c12a879dcca2b5c159f7cf4482827367c506c56c8ce7f8015b1b9b3fa09b58b55 DIST sinatra-4.2.1.tar.gz 272817 BLAKE2B 1dcfdca0edb8ad598f00e3057aeb875b6abb71c43a090e9b207fcb5e46511ad91d24f226ed029d84793fda002ba0e7ef8a28ba3c9eaf4226eab5546677836453 SHA512 fa3283635f4d66f9c12f315d7c9e9e04e25c65afa4ab4e7a42de4a73b1f17a97aba305335e7c6b6a1522979140936d681a569b24286d656c9a30ac2e4e5fc83a diff --git a/dev-ruby/sinatra/sinatra-4.1.1.ebuild b/dev-ruby/sinatra/sinatra-4.1.1.ebuild index 255dc4602a62..9724e79fe80b 100644 --- a/dev-ruby/sinatra/sinatra-4.1.1.ebuild +++ b/dev-ruby/sinatra/sinatra-4.1.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -45,6 +45,6 @@ ruby_add_bdepend "doc? ( dev-ruby/yard )" all_ruby_prepare() { sed -i \ - -e "/require 'rack'/igem 'rack', '~> 3.0.0'" \ + -e "/require 'rack'/igem 'rack', '>= 3.0.0'" \ test/test_helper.rb || die } diff --git a/dev-ruby/sinatra/sinatra-4.2.0.ebuild b/dev-ruby/sinatra/sinatra-4.2.1-r1.ebuild index 6f4ea879f3d2..08f4177cbfba 100644 --- a/dev-ruby/sinatra/sinatra-4.2.0.ebuild +++ b/dev-ruby/sinatra/sinatra-4.2.1-r1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_TASK_TEST="MT_NO_PLUGINS=true test:core" @@ -19,7 +19,7 @@ SRC_URI="https://github.com/sinatra/sinatra/archive/v${PV}.tar.gz -> ${P}.tar.gz LICENSE="MIT" SLOT="$(ver_cut 1)" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~riscv ~sparc ~x86" IUSE="doc test" ruby_add_rdepend " @@ -34,11 +34,15 @@ ruby_add_rdepend " # circular dependencies so we don't require it for tests. ruby_add_bdepend " test? ( + dev-ruby/activesupport dev-ruby/builder + dev-ruby/bundler dev-ruby/erubi - >=dev-ruby/rack-test-0.5.6 + dev-ruby/minitest:5 + dev-ruby/mustermann dev-ruby/rackup - dev-ruby/activesupport + >=dev-ruby/rack-test-0.5.6 + dev-ruby/tilt www-servers/puma ) " @@ -46,6 +50,25 @@ ruby_add_bdepend "doc? ( dev-ruby/yard )" all_ruby_prepare() { sed -i \ - -e "/require 'rack'/igem 'rack', '~> 3.0.0'" \ + -e "/require 'rack'/igem 'rack', '>= 3.0.0';" \ test/test_helper.rb || die + + cat <<-EOF > "${T}/Gemfile" || die + gem "activesupport" + gem "builder" + gem "erubi" + gem "minitest", "~> 5" + gem "mustermann" + gem "puma" + gem "rack-protection" + gem "rack-session" + gem "rack-test" + gem "rackup" + gem "rake" + gem "tilt" + EOF +} + +each_ruby_test() { + BUNDLE_GEMFILE="${T}/Gemfile" MT_NO_PLUGINS=true ${RUBY} -S bundle exec ${RUBY} -S rake test:core || die } diff --git a/dev-ruby/sinatra/sinatra-4.2.1.ebuild b/dev-ruby/sinatra/sinatra-4.2.1.ebuild index 6f4ea879f3d2..2e86672f4711 100644 --- a/dev-ruby/sinatra/sinatra-4.2.1.ebuild +++ b/dev-ruby/sinatra/sinatra-4.2.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -34,11 +34,15 @@ ruby_add_rdepend " # circular dependencies so we don't require it for tests. ruby_add_bdepend " test? ( + dev-ruby/activesupport dev-ruby/builder + dev-ruby/bundler dev-ruby/erubi - >=dev-ruby/rack-test-0.5.6 + dev-ruby/minitest:5 + dev-ruby/mustermann dev-ruby/rackup - dev-ruby/activesupport + >=dev-ruby/rack-test-0.5.6 + dev-ruby/tilt www-servers/puma ) " @@ -46,6 +50,25 @@ ruby_add_bdepend "doc? ( dev-ruby/yard )" all_ruby_prepare() { sed -i \ - -e "/require 'rack'/igem 'rack', '~> 3.0.0'" \ + -e "/require 'rack'/igem 'rack', '>= 3.0.0';" \ test/test_helper.rb || die + + cat <<-EOF > "${T}/Gemfile" || die + gem "activesupport" + gem "builder" + gem "erubi" + gem "minitest", "~> 5" + gem "mustermann" + gem "puma" + gem "rack-protection" + gem "rack-session" + gem "rack-test" + gem "rackup" + gem "rake" + gem "tilt" + EOF +} + +each_ruby_test() { + BUNDLE_GEMFILE="${T}/Gemfile" MT_NO_PLUGINS=true ${RUBY} -S bundle exec ${RUBY} -S rake test:core || die } diff --git a/dev-ruby/spring/spring-4.4.0.ebuild b/dev-ruby/spring/spring-4.4.0.ebuild index 1cb0c2135f90..a88d78b9e711 100644 --- a/dev-ruby/spring/spring-4.4.0.ebuild +++ b/dev-ruby/spring/spring-4.4.0.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_TASK_DOC="" RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" diff --git a/dev-ruby/sprockets-rails/sprockets-rails-3.5.2-r1.ebuild b/dev-ruby/sprockets-rails/sprockets-rails-3.5.2-r1.ebuild new file mode 100644 index 000000000000..499f8caef9d1 --- /dev/null +++ b/dev-ruby/sprockets-rails/sprockets-rails-3.5.2-r1.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_TASK_DOC="" + +RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" + +inherit ruby-fakegem + +DESCRIPTION="Sprockets implementation for Rails 4.x (and beyond) Asset Pipeline" +HOMEPAGE="https://github.com/rails/sprockets-rails" +SRC_URI="https://github.com/rails/sprockets-rails/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MIT" +SLOT="$(ver_cut 1)" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" + +IUSE="test" + +ruby_add_rdepend " + >=dev-ruby/actionpack-6.1:* + >=dev-ruby/activesupport-6.1:* + >=dev-ruby/sprockets-3.0.0:*" + +ruby_add_bdepend " + test? ( + dev-ruby/bundler + dev-ruby/minitest:5 + >=dev-ruby/railties-6.1:* + dev-ruby/test-unit:2 + )" + +all_ruby_prepare() { + sed -i -e '/bundler/ s:^:#:' Rakefile || die + + # It looks like tests are order dependent + sed -i -e '/test_order/ s/:random/:alpha/' test/test_helper.rb || die + + cat <<-EOF > "${T}/Gemfile" || die + gem "actionpack", ">= 6.1" + gem "activesupport", ">= 6.1" + gem "minitest", "~> 5" + gem "railties", ">= 6.1" + gem "sprockets", ">= 3" + gem "test-unit", ">= 2" + EOF +} + +each_ruby_test() { + BUNDLE_GEMFILE="${T}/Gemfile" ${RUBY} -S bundle exec ${RUBY} -S rake || die +} diff --git a/dev-ruby/sprockets-rails/sprockets-rails-3.5.2.ebuild b/dev-ruby/sprockets-rails/sprockets-rails-3.5.2.ebuild index fad74a0be374..ed877313fd2f 100644 --- a/dev-ruby/sprockets-rails/sprockets-rails-3.5.2.ebuild +++ b/dev-ruby/sprockets-rails/sprockets-rails-3.5.2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -28,6 +28,7 @@ ruby_add_rdepend " ruby_add_bdepend " test? ( + dev-ruby/bundler dev-ruby/minitest:5 >=dev-ruby/railties-6.1:* dev-ruby/test-unit:2 @@ -38,4 +39,17 @@ all_ruby_prepare() { # It looks like tests are order dependent sed -i -e '/test_order/ s/:random/:alpha/' test/test_helper.rb || die + + cat <<-EOF > "${T}/Gemfile" || die + gem "actionpack", ">= 6.1" + gem "activesupport", ">= 6.1" + gem "minitest", "~> 5" + gem "railties", ">= 6.1" + gem "sprockets", ">= 3" + gem "test-unit", ">= 2" + EOF +} + +each_ruby_test() { + BUNDLE_GEMFILE="${T}/Gemfile" ${RUBY} -S bundle exec ${RUBY} -S rake || die } diff --git a/dev-ruby/sprockets/sprockets-3.7.2-r3.ebuild b/dev-ruby/sprockets/sprockets-3.7.2-r3.ebuild index d1c235e81790..d9789d7b7980 100644 --- a/dev-ruby/sprockets/sprockets-3.7.2-r3.ebuild +++ b/dev-ruby/sprockets/sprockets-3.7.2-r3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -33,13 +33,18 @@ ruby_add_rdepend " >=dev-ruby/rack-1:* <dev-ruby/rack-3:*" ruby_add_bdepend "test? ( + dev-ruby/bundler dev-ruby/json dev-ruby/rack-test =dev-ruby/coffee-script-2* =dev-ruby/execjs-2* + dev-ruby/minitest:5 dev-ruby/nokogiri =dev-ruby/sass-3* >=dev-ruby/sass-3.1 dev-ruby/uglifier + dev-ruby/timecop + dev-ruby/nokogiri + dev-ruby/base64 )" all_ruby_prepare() { @@ -54,6 +59,24 @@ all_ruby_prepare() { sed -i -e 's/MiniTest/Minitest/' test/sprockets_test.rb test/test*.rb || die sed -i -e '2igem "rack", "<3"' test/sprockets_test.rb || die sed -i -e '5irequire "rack/lint"' test/test_server.rb || die + + cat <<-EOF > "${T}/Gemfile" || die + gem "base64" + gem "coffee-script", "~> 2" + gem "concurrent-ruby", "~> 1" + gem "execjs", "~> 2" + gem "json" + gem "logger" + gem "minitest", "~> 5" + gem "nokogiri" + gem "rack", "< 3" + gem "rack-test" + gem "rake" + gem "sass", "~> 3" + gem "sassc" + gem "timecop" + gem "uglifier" + EOF } each_ruby_prepare() { @@ -67,5 +90,5 @@ each_ruby_test() { rm -rf test || die mv test-new test || die - each_fakegem_test + BUNDLE_GEMFILE="${T}/Gemfile" ${RUBY} -S bundle exec ${RUBY} -S rake || die } diff --git a/dev-ruby/sprockets/sprockets-4.2.2.ebuild b/dev-ruby/sprockets/sprockets-4.2.2.ebuild index a074e9e2a427..5655c5bb6870 100644 --- a/dev-ruby/sprockets/sprockets-4.2.2.ebuild +++ b/dev-ruby/sprockets/sprockets-4.2.2.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRADOC="README.md" @@ -28,13 +28,17 @@ ruby_add_rdepend " " ruby_add_bdepend "test? ( + dev-ruby/bundler dev-ruby/json dev-ruby/rack-test =dev-ruby/coffee-script-2* =dev-ruby/execjs-2* + dev-ruby/minitest:5 =dev-ruby/sass-3* >=dev-ruby/sass-3.1 dev-ruby/sassc dev-ruby/uglifier + dev-ruby/timecop + dev-ruby/nokogiri )" all_ruby_prepare() { @@ -54,6 +58,23 @@ all_ruby_prepare() { sed -i -e "/bundler/d" Rakefile || die sed -i -e 's/MiniTest/Minitest/' test/sprockets_test.rb test/test*.rb || die + + cat <<-EOF > "${T}/Gemfile" || die + gem "coffee-script", "~> 2" + gem "concurrent-ruby", "~> 1" + gem "execjs", "~> 2" + gem "json" + gem "logger" + gem "minitest", "~> 5" + gem "nokogiri" + gem "rack" + gem "rack-test" + gem "rake" + gem "sass", "~> 3" + gem "sassc" + gem "timecop" + gem "uglifier" + EOF } each_ruby_prepare() { @@ -67,5 +88,5 @@ each_ruby_test() { rm -rf test || die mv test-new test || die - each_fakegem_test + BUNDLE_GEMFILE="${T}/Gemfile" ${RUBY} -S bundle exec ${RUBY} -S rake || die } diff --git a/dev-ruby/sqlite3/Manifest b/dev-ruby/sqlite3/Manifest index 7c5dbd8aad1e..714e027d3d8f 100644 --- a/dev-ruby/sqlite3/Manifest +++ b/dev-ruby/sqlite3/Manifest @@ -1,6 +1,2 @@ -DIST sqlite3-1.7.3.gem 3307008 BLAKE2B 0df742c7cb4a8f920196106b5701eae07e60e668f040ca6e3276afdd0dfdeed3fb19ed455425f332e13082ca740f42d914536ccdf565ed151b6eb0f6ccd7c676 SHA512 b6ed36a5618134ca1f993b21a351ac279ebb7e1370be521eae67ed9224a1fac11d71ddd7573b3b14da47657756cb68b3eab0164b6e6ed058d3f64fa95699bc2f DIST sqlite3-2.7.3.tar.gz 94800 BLAKE2B 08036a1078818c6e6c5c67d922aa8ebcb05dbd8f2a1789e52af5014e41a39f9c5a9b373e356f99919c2227fc62996e2e87198f6253a102af03076e614f072fa2 SHA512 30015de31653b6dbec699a8245172b2db921c7f2c5c74872f926ceec06226bb43545f3caa89a6cc846761dcd3e291e8d9508cc787a1f520eda036df01f03e30e -DIST sqlite3-2.7.4.tar.gz 94824 BLAKE2B f7726bebfa44fb724c23c58b5a20c733c31a916224cefc0da2fac5390cec0c87fa2a8377e0a01fa824a4bd3dcdd7e46feecca14feb06d0265a095b0564e52a84 SHA512 eba6eb50ec017f66996e4bb4491d22579912f323aeaa6d0ec57465ddda71acefe8c12d582eb2fc8aa85691c6420ea6b30b697cf208479a40afbbc82ad7ad4f2d -DIST sqlite3-2.8.0.tar.gz 94833 BLAKE2B 6ff832dea938f3dd29a5cde3d2424202042bb993737f99a3056ea1e6707b757f404aa6b0aac87e3f46f82f6a37211319205ab024808665deda5f3a9d5aded887 SHA512 43493a5aef6c0514fa64286d35612dabca2d926abb84f6827638f3fcc81eeead1e611f5d615d3a3d30db25cb2d3267d539424a90e76e03117058e529e795ddf3 -DIST sqlite3-2.8.1.tar.gz 94904 BLAKE2B c1c7f9f7cf6fa881f56e16f6896ed58885a1cab08d403ad5a9e51c8f2f146a0139eaf07058738ad98ccace8dea38f2a3cd5af4c7d98a0ac47171cc175c4e67cf SHA512 dbb3e159f4e47020601c81b472675843a96a3243d618296f0f1a314ea2fbcc24aefe4284f51831efc7084a9f341de857a6adb158679ee4f0188a29873a4b77d1 DIST sqlite3-2.9.0.tar.gz 95483 BLAKE2B c9fa9b3a5e96366fbbf27697ad21fc6d6155b4735125f7fcd909b7539e7c6772465ac1329bfd3357464027c6a3dcb358aad725de2ab9a9dab72cdfff3ca45347 SHA512 37d0268460e1c6b847c9259bfe75becff09c28d8e9d2e8a2ce7c8bb4848f39700f2c3741bb86e846907dbeb315971188585b0c86f2d04d002ba952882a6bee39 diff --git a/dev-ruby/sqlite3/sqlite3-1.7.3.ebuild b/dev-ruby/sqlite3/sqlite3-1.7.3.ebuild deleted file mode 100644 index 051662a50035..000000000000 --- a/dev-ruby/sqlite3/sqlite3-1.7.3.ebuild +++ /dev/null @@ -1,57 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby31 ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_TASK_DOC="faq" -RUBY_FAKEGEM_DOCDIR="doc faq" -RUBY_FAKEGEM_EXTRADOC="API_CHANGES.md README.md ChangeLog.cvs CHANGELOG.md" - -RUBY_FAKEGEM_EXTENSIONS=(ext/sqlite3/extconf.rb) -RUBY_FAKEGEM_EXTENSION_LIBDIR=lib/sqlite3 - -inherit ruby-fakegem - -DESCRIPTION="An extension library to access a SQLite database from Ruby" -HOMEPAGE="https://github.com/sparklemotion/sqlite3-ruby" -LICENSE="BSD" - -SLOT="0" -KEYWORDS="amd64 ~arm ~arm64 ~hppa ppc ppc64 ~riscv ~sparc x86 ~x64-macos ~x64-solaris" -IUSE="doc test" - -# We track the bundled sqlite version here -RDEPEND+=" >=dev-db/sqlite-3.45.2:3" -DEPEND+=" >=dev-db/sqlite-3.45.2:3" - -ruby_add_bdepend " - doc? ( dev-ruby/rdoc ) - test? ( dev-ruby/minitest:5 ) -" - -all_ruby_prepare() { - sed -i -e 's/enable_config("system-libraries")/true/' ext/sqlite3/extconf.rb || die - - # Remove the runtime dependency on mini_portile2. We build without - # it and it is not a runtime dependency for us. - sed -i -e '/^dependencies:/,/force_ruby_platform/d' ../metadata || die - - # Avoid a failure about a specific syntax for an error, introduced with newer sqlite versions. - sed -e '/test_strict_mode/askip "Newer sqlite versions have different quoting"' \ - -i test/test_database.rb || die -} - -all_ruby_compile() { - all_fakegem_compile - - if use doc; then - rdoc --title "${P} Documentation" -o doc --main README.rdoc lib *.rdoc ext/*/*.c || die - rm -f doc/js/*.gz || die - fi -} - -each_ruby_test() { - ${RUBY} -Ilib:test:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die -} diff --git a/dev-ruby/sqlite3/sqlite3-2.7.4.ebuild b/dev-ruby/sqlite3/sqlite3-2.7.4.ebuild deleted file mode 100644 index f7185bcefcf6..000000000000 --- a/dev-ruby/sqlite3/sqlite3-2.7.4.ebuild +++ /dev/null @@ -1,66 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_BINWRAP="" -RUBY_FAKEGEM_TASK_DOC="faq" -RUBY_FAKEGEM_DOCDIR="doc faq" -RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" - -RUBY_FAKEGEM_EXTENSIONS=(ext/sqlite3/extconf.rb) -RUBY_FAKEGEM_EXTENSION_LIBDIR=lib/sqlite3 -RUBY_FAKEGEM_GEMSPEC="sqlite3.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="An extension library to access a SQLite database from Ruby" -HOMEPAGE="https://github.com/sparklemotion/sqlite3-ruby" -SRC_URI="https://github.com/sparklemotion/sqlite3-ruby/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" -RUBY_S="sqlite3-ruby-${PV}" -LICENSE="BSD" - -SLOT="$(ver_cut 1)" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos ~x64-solaris" -IUSE="doc test" - -# We track the bundled sqlite version here -RDEPEND=">=dev-db/sqlite-3.50.4:3" -DEPEND=">=dev-db/sqlite-3.50.4:3" - -ruby_add_bdepend " - doc? ( dev-ruby/rdoc ) - test? ( dev-ruby/minitest:5 ) -" - -all_ruby_prepare() { - sed -i -e 's/enable_config("system-libraries")/true/' ext/sqlite3/extconf.rb || die - - # Remove the runtime dependency on mini_portile2. We build without - # it and it is not a runtime dependency for us. - sed -e '/mini_portile2/ s:^:#:' \ - -e '/WARNING/ s:^:#:' \ - -e "s/0.0.0/${PV}/" \ - -i ${RUBY_FAKEGEM_GEMSPEC} || die - - # Avoid a failing spec for reprepares stats. Upstream indicates that - # the stats data should not be relied on other than for human - # debugging. - sed -e '/def test_stat_reprepares/askip "Fails on Gentoo"' \ - -i test/test_statement.rb || die -} - -all_ruby_compile() { - all_fakegem_compile - - if use doc; then - rdoc --title "${P} Documentation" -o doc --main README.rdoc lib *.rdoc ext/*/*.c || die - rm -f doc/js/*.gz || die - fi -} - -each_ruby_test() { - ${RUBY} -Ilib:test:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die -} diff --git a/dev-ruby/sqlite3/sqlite3-2.8.0.ebuild b/dev-ruby/sqlite3/sqlite3-2.8.0.ebuild deleted file mode 100644 index 48968e582d0d..000000000000 --- a/dev-ruby/sqlite3/sqlite3-2.8.0.ebuild +++ /dev/null @@ -1,66 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_BINWRAP="" -RUBY_FAKEGEM_TASK_DOC="faq" -RUBY_FAKEGEM_DOCDIR="doc faq" -RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" - -RUBY_FAKEGEM_EXTENSIONS=(ext/sqlite3/extconf.rb) -RUBY_FAKEGEM_EXTENSION_LIBDIR=lib/sqlite3 -RUBY_FAKEGEM_GEMSPEC="sqlite3.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="An extension library to access a SQLite database from Ruby" -HOMEPAGE="https://github.com/sparklemotion/sqlite3-ruby" -SRC_URI="https://github.com/sparklemotion/sqlite3-ruby/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" -RUBY_S="sqlite3-ruby-${PV}" -LICENSE="BSD" - -SLOT="$(ver_cut 1)" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos ~x64-solaris" -IUSE="doc test" - -# We track the bundled sqlite version here -RDEPEND=">=dev-db/sqlite-3.51.0:3" -DEPEND=">=dev-db/sqlite-3.51.0:3" - -ruby_add_bdepend " - doc? ( dev-ruby/rdoc ) - test? ( dev-ruby/minitest:5 ) -" - -all_ruby_prepare() { - sed -i -e 's/enable_config("system-libraries")/true/' ext/sqlite3/extconf.rb || die - - # Remove the runtime dependency on mini_portile2. We build without - # it and it is not a runtime dependency for us. - sed -e '/mini_portile2/ s:^:#:' \ - -e '/WARNING/ s:^:#:' \ - -e "s/0.0.0/${PV}/" \ - -i ${RUBY_FAKEGEM_GEMSPEC} || die - - # Avoid a failing spec for reprepares stats. Upstream indicates that - # the stats data should not be relied on other than for human - # debugging. - sed -e '/def test_stat_reprepares/askip "Fails on Gentoo"' \ - -i test/test_statement.rb || die -} - -all_ruby_compile() { - all_fakegem_compile - - if use doc; then - rdoc --title "${P} Documentation" -o doc --main README.rdoc lib *.rdoc ext/*/*.c || die - rm -f doc/js/*.gz || die - fi -} - -each_ruby_test() { - ${RUBY} -Ilib:test:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die -} diff --git a/dev-ruby/sqlite3/sqlite3-2.8.1.ebuild b/dev-ruby/sqlite3/sqlite3-2.8.1.ebuild deleted file mode 100644 index c5a4d6999344..000000000000 --- a/dev-ruby/sqlite3/sqlite3-2.8.1.ebuild +++ /dev/null @@ -1,66 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_BINWRAP="" -RUBY_FAKEGEM_TASK_DOC="faq" -RUBY_FAKEGEM_DOCDIR="doc faq" -RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" - -RUBY_FAKEGEM_EXTENSIONS=(ext/sqlite3/extconf.rb) -RUBY_FAKEGEM_EXTENSION_LIBDIR=lib/sqlite3 -RUBY_FAKEGEM_GEMSPEC="sqlite3.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="An extension library to access a SQLite database from Ruby" -HOMEPAGE="https://github.com/sparklemotion/sqlite3-ruby" -SRC_URI="https://github.com/sparklemotion/sqlite3-ruby/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" -RUBY_S="sqlite3-ruby-${PV}" -LICENSE="BSD" - -SLOT="$(ver_cut 1)" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos ~x64-solaris" -IUSE="doc test" - -# We track the bundled sqlite version here -RDEPEND=">=dev-db/sqlite-3.51.1:3" -DEPEND=">=dev-db/sqlite-3.51.1:3" - -ruby_add_bdepend " - doc? ( dev-ruby/rdoc ) - test? ( dev-ruby/minitest:5 ) -" - -all_ruby_prepare() { - sed -i -e 's/enable_config("system-libraries")/true/' ext/sqlite3/extconf.rb || die - - # Remove the runtime dependency on mini_portile2. We build without - # it and it is not a runtime dependency for us. - sed -e '/mini_portile2/ s:^:#:' \ - -e '/WARNING/ s:^:#:' \ - -e "s/0.0.0/${PV}/" \ - -i ${RUBY_FAKEGEM_GEMSPEC} || die - - # Avoid a failing spec for reprepares stats. Upstream indicates that - # the stats data should not be relied on other than for human - # debugging. - sed -e '/def test_stat_reprepares/askip "Fails on Gentoo"' \ - -i test/test_statement.rb || die -} - -all_ruby_compile() { - all_fakegem_compile - - if use doc; then - rdoc --title "${P} Documentation" -o doc --main README.rdoc lib *.rdoc ext/*/*.c || die - rm -f doc/js/*.gz || die - fi -} - -each_ruby_test() { - ${RUBY} -Ilib:test:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die -} diff --git a/dev-ruby/stringex/stringex-2.8.6.ebuild b/dev-ruby/stringex/stringex-2.8.6.ebuild index 5e21b1309a17..a8bbcdc74987 100644 --- a/dev-ruby/stringex/stringex-2.8.6.ebuild +++ b/dev-ruby/stringex/stringex-2.8.6.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRAINSTALL="locales" inherit ruby-fakegem diff --git a/dev-ruby/sus-fixtures-async/sus-fixtures-async-0.2.0-r2.ebuild b/dev-ruby/sus-fixtures-async/sus-fixtures-async-0.2.0-r2.ebuild new file mode 100644 index 000000000000..17de0b7d711b --- /dev/null +++ b/dev-ruby/sus-fixtures-async/sus-fixtures-async-0.2.0-r2.ebuild @@ -0,0 +1,33 @@ +# Copyright 2022-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_EXTRADOC="readme.md" +RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" +RUBY_FAKEGEM_RECIPE_TEST="sus" + +inherit ruby-fakegem + +DESCRIPTION="Convenient fixture for testing async components in a reactor" +HOMEPAGE="https://github.com/socketry/sus-fixtures-async" +SRC_URI="https://github.com/socketry/sus-fixtures-async/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~riscv ~sparc ~x86" + +ruby_add_rdepend " + dev-ruby/async + >=dev-ruby/sus-0.10:0 +" + +all_ruby_prepare() { + sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die + + # Remove the sus configuration which enabled coverage checks. + # Its dependency is not packaged. + rm -f config/sus.rb || die +} diff --git a/dev-ruby/sus-fixtures-console/sus-fixtures-console-0.5.0.ebuild b/dev-ruby/sus-fixtures-console/sus-fixtures-console-0.5.0.ebuild index 2094447b9915..bc16d4cc51bd 100644 --- a/dev-ruby/sus-fixtures-console/sus-fixtures-console-0.5.0.ebuild +++ b/dev-ruby/sus-fixtures-console/sus-fixtures-console-0.5.0.ebuild @@ -3,7 +3,7 @@ EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRADOC="readme.md" RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" diff --git a/dev-ruby/temple/temple-0.10.4.ebuild b/dev-ruby/temple/temple-0.10.4.ebuild index e60196e114c3..ce17a60100b7 100644 --- a/dev-ruby/temple/temple-0.10.4.ebuild +++ b/dev-ruby/temple/temple-0.10.4.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRADOC="CHANGES EXPRESSIONS.md README.md" RUBY_FAKEGEM_GEMSPEC="temple.gemspec" diff --git a/dev-ruby/terminal-table/terminal-table-3.0.2.ebuild b/dev-ruby/terminal-table/terminal-table-3.0.2.ebuild index f3f2d0e03c62..d13f653c1eda 100644 --- a/dev-ruby/terminal-table/terminal-table-3.0.2.ebuild +++ b/dev-ruby/terminal-table/terminal-table-3.0.2.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" diff --git a/dev-ruby/terminal-table/terminal-table-4.0.0.ebuild b/dev-ruby/terminal-table/terminal-table-4.0.0.ebuild index f3f2d0e03c62..d13f653c1eda 100644 --- a/dev-ruby/terminal-table/terminal-table-4.0.0.ebuild +++ b/dev-ruby/terminal-table/terminal-table-4.0.0.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" diff --git a/dev-ruby/test-unit-rr/test-unit-rr-1.0.5-r2.ebuild b/dev-ruby/test-unit-rr/test-unit-rr-1.0.5-r2.ebuild index 223ad34b3b9b..0d2bdd87e52c 100644 --- a/dev-ruby/test-unit-rr/test-unit-rr-1.0.5-r2.ebuild +++ b/dev-ruby/test-unit-rr/test-unit-rr-1.0.5-r2.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_TASK_TEST="" diff --git a/dev-ruby/test_construct/test_construct-2.0.2-r1.ebuild b/dev-ruby/test_construct/test_construct-2.0.2-r1.ebuild index 16c0509f5ae9..6916419cfcae 100644 --- a/dev-ruby/test_construct/test_construct-2.0.2-r1.ebuild +++ b/dev-ruby/test_construct/test_construct-2.0.2-r1.ebuild @@ -1,8 +1,8 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" diff --git a/dev-ruby/tilt/Manifest b/dev-ruby/tilt/Manifest index 8ea45e91bb65..a05eac707602 100644 --- a/dev-ruby/tilt/Manifest +++ b/dev-ruby/tilt/Manifest @@ -1,2 +1,3 @@ DIST tilt-2.6.0.tar.gz 61451 BLAKE2B aa007d0665685ddefb6c5228b3c89444913d632c462d7c9be017bdbd6138238e4d533b25e00f65c99ec0c6e59de512b446916b15a6ff7ef7bd1f9b3cda9911c3 SHA512 b1f2e146d98b75e97e479bfcbad125c0fd9c5bc707b5d9ea73185033f70461d008f9f94e5bab6e6e4676fd8237af08f9ea13f311f4673d3644c8dcc335d25c68 DIST tilt-2.6.1.tar.gz 61702 BLAKE2B 05c261e12b18f745e71f36d03bec312561e5bbe848e41158394d9d7a39a4f948edc060d42ca92bf9a337616b74e9c7997cb9865cd60b3c80f322515642439bdd SHA512 805d016427a7d923832699ebec991ba36c928088b5fd0381d9b7bee7d97329854a909113821d71e569cbae7877b2ca160ae2f14d29ad369976b173f671e5b708 +DIST tilt-2.8.0.tar.gz 61917 BLAKE2B 4f2019484688938ef0645304967047b61b1ce906db1e8c2550a17883687477423907ae082690bed48f76090fd2f10d17aaa3f74247ffb0860e94c1dd0916f1e0 SHA512 3683d7f17b38cb22aadee2811cba309a28601c117d183464d1c9c1d3bbbb4956cf7c04ef4210f276f8b969a67d88bc17d88ddc6904475d1db1e71bf5569fabf1 diff --git a/dev-ruby/tilt/tilt-2.8.0.ebuild b/dev-ruby/tilt/tilt-2.8.0.ebuild new file mode 100644 index 000000000000..2fcc5d8ac4a3 --- /dev/null +++ b/dev-ruby/tilt/tilt-2.8.0.ebuild @@ -0,0 +1,35 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_RECIPE_DOC="none" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" + +RUBY_FAKEGEM_GEMSPEC="tilt.gemspec" + +inherit ruby-fakegem + +DESCRIPTION="Thin interface over template engines to make their usage as generic as possible" +HOMEPAGE="https://github.com/jeremyevans/tilt" +SRC_URI="https://github.com/jeremyevans/tilt/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MIT" +SLOT="2" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos ~x64-solaris" + +# Block on some of the potential test dependencies. These dependencies +# are optional for the test suite, and we don't want to depend on all of +# them to facilitate keywording and stabling. +ruby_add_bdepend "test? ( + dev-ruby/erubi + dev-ruby/minitest + dev-ruby/nokogiri +)" + +all_ruby_prepare() { + sed -e '/bundler/I s:^:#:' -i Rakefile test/test_helper.rb || die + sed -e '7irequire "uri"' -i test/test_helper.rb || die +} diff --git a/dev-ruby/traces/traces-0.18.2.ebuild b/dev-ruby/traces/traces-0.18.2.ebuild index 6e8a99c0abde..c87c765714e4 100644 --- a/dev-ruby/traces/traces-0.18.2.ebuild +++ b/dev-ruby/traces/traces-0.18.2.ebuild @@ -1,9 +1,9 @@ -# Copyright 2022-2025 Gentoo Authors +# Copyright 2022-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="sus" RUBY_FAKEGEM_EXTRADOC="readme.md releases.md" diff --git a/dev-ruby/unicode-display_width/Manifest b/dev-ruby/unicode-display_width/Manifest index 24def0e078e6..5cb7496433d2 100644 --- a/dev-ruby/unicode-display_width/Manifest +++ b/dev-ruby/unicode-display_width/Manifest @@ -1,3 +1,2 @@ DIST unicode-display_width-2.6.0.tar.gz 13178 BLAKE2B 416929b43d494e59a6d790f775215e30ee8ca24404f99193757d79575ec952567164731eb4cdefe836edc70e56fe176c416bab182a51ee6b1d9e5c959e7c8658 SHA512 f67178a3907175575038204d84a71a466bafe73f9519bdd65b4ca6fa0dd9a1ff21937daa7914ff2881c3d7343a16f22863d7bfe6dd5e223c3d44fed730abe7e4 -DIST unicode-display_width-3.1.4.tar.gz 19753 BLAKE2B bc99d3551d6be9f1e3982c6c34d7b5432f9314cfa4a009576c0eea42f2a5e628f0587973518f94aeabb6a0248617e0c5be3fa81110ebf5f7a315a9036911bc0b SHA512 c820c31401992161f8cf94021d837f59b6791693cd1decdc32468097d9b3bc1d37bd18ebf79a4c2b86288b18fc30e64624f077306e24fa8d10f6527757a9fffc DIST unicode-display_width-3.1.5.tar.gz 19759 BLAKE2B f27fcc131486dbb2058902fc153978883cec23920a5394ea7e3fe060cc84a71d8226624e9f662e18ed6467f8c461dbbbaa78c5be0465153b2171ffa11d876e12 SHA512 01ad48ba36c12c259b1285b013ab6a68714bac3b63b9b4f9ae5aeb5c867c95e15331d695321a0cf7dbfda90be53677cf65e4dd7bae21054624f4d052735f358a diff --git a/dev-ruby/unicode-display_width/unicode-display_width-2.6.0.ebuild b/dev-ruby/unicode-display_width/unicode-display_width-2.6.0.ebuild index 9f05a715e7cb..f3b5822e36d8 100644 --- a/dev-ruby/unicode-display_width/unicode-display_width-2.6.0.ebuild +++ b/dev-ruby/unicode-display_width/unicode-display_width-2.6.0.ebuild @@ -1,8 +1,8 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" diff --git a/dev-ruby/unicode-display_width/unicode-display_width-3.1.4.ebuild b/dev-ruby/unicode-display_width/unicode-display_width-3.1.4.ebuild deleted file mode 100644 index 16ad86e1dd50..000000000000 --- a/dev-ruby/unicode-display_width/unicode-display_width-3.1.4.ebuild +++ /dev/null @@ -1,30 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" - -RUBY_FAKEGEM_RECIPE_TEST="rspec3" - -RUBY_FAKEGEM_EXTRAINSTALL="data" - -RUBY_FAKEGEM_GEMSPEC="unicode-display_width.gemspec" - -inherit ruby-fakegem - -DESCRIPTION="Adds String#display_width to get the display size using EastAsianWidth.txt" -HOMEPAGE="https://github.com/janlelis/unicode-display_width" -SRC_URI="https://github.com/janlelis/unicode-display_width/archive/v${PV}.tar.gz -> ${P}.tar.gz" -LICENSE="MIT" - -SLOT="$(ver_cut 1)" -KEYWORDS="~amd64 ~arm64" - -ruby_add_rdepend ">=dev-ruby/unicode-emoji-4.0.4:4" - -all_ruby_prepare() { - # Avoid experimental emoji support for now - sed -e '/\[emoji\]/,/^ end/ s:^:#:' \ - -e '/Config object based API/,/^end/ s:^:#:' \ - -i spec/display_width_spec.rb || die -} diff --git a/dev-ruby/unicode-display_width/unicode-display_width-3.1.5.ebuild b/dev-ruby/unicode-display_width/unicode-display_width-3.1.5.ebuild index 7b2570c3563f..ca59eabd4c04 100644 --- a/dev-ruby/unicode-display_width/unicode-display_width-3.1.5.ebuild +++ b/dev-ruby/unicode-display_width/unicode-display_width-3.1.5.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" diff --git a/dev-ruby/uuidtools/uuidtools-2.2.0-r1.ebuild b/dev-ruby/uuidtools/uuidtools-2.2.0-r1.ebuild index 18b79be35860..bdd89faa70f5 100644 --- a/dev-ruby/uuidtools/uuidtools-2.2.0-r1.ebuild +++ b/dev-ruby/uuidtools/uuidtools-2.2.0-r1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" diff --git a/dev-ruby/uuidtools/uuidtools-3.0.0.ebuild b/dev-ruby/uuidtools/uuidtools-3.0.0.ebuild index ad0da9a200ac..b4d0e5597733 100644 --- a/dev-ruby/uuidtools/uuidtools-3.0.0.ebuild +++ b/dev-ruby/uuidtools/uuidtools-3.0.0.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" diff --git a/dev-ruby/virtus/virtus-2.0.0.ebuild b/dev-ruby/virtus/virtus-2.0.0.ebuild index f08bb77c1d34..29d4dba2abb8 100644 --- a/dev-ruby/virtus/virtus-2.0.0.ebuild +++ b/dev-ruby/virtus/virtus-2.0.0.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRADOC="Changelog.md CONTRIBUTING.md README.md" RUBY_FAKEGEM_RECIPE_TEST="rspec3" diff --git a/dev-ruby/webmock/webmock-3.25.1.ebuild b/dev-ruby/webmock/webmock-3.25.1.ebuild index 5784831fcbc3..02db9166505c 100644 --- a/dev-ruby/webmock/webmock-3.25.1.ebuild +++ b/dev-ruby/webmock/webmock-3.25.1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_TASK_TEST="test spec NO_CONNECTION=true" diff --git a/dev-ruby/webrobots/webrobots-0.1.2-r3.ebuild b/dev-ruby/webrobots/webrobots-0.1.2-r3.ebuild index 155b8089453e..b2b66c8f8603 100644 --- a/dev-ruby/webrobots/webrobots-0.1.2-r3.ebuild +++ b/dev-ruby/webrobots/webrobots-0.1.2-r3.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_DOCDIR="rdoc" RUBY_FAKEGEM_EXTRADOC="README.rdoc" diff --git a/dev-ruby/yard/Manifest b/dev-ruby/yard/Manifest index 95078c76c556..659c086ed71a 100644 --- a/dev-ruby/yard/Manifest +++ b/dev-ruby/yard/Manifest @@ -1,2 +1,3 @@ DIST yard-0.9.37-git.tgz 941020 BLAKE2B 40c9ad5be234d00d84fd3187271357691841a2b57fd37ee9fc346e8d8c91c54f751d6ad46df988f6d40e3a1c3c4d644cfdce825579e7294b23ec52f28489e45d SHA512 f48a25df1fba7cdde7388842c6bce63ab149e613921cca8c809adb2a3bd7edce49c573c8867e62a3cb33c8cb3868dd67bd87f34c65ffce1e66c1353a2f93f9ca DIST yard-0.9.38-git.tgz 944234 BLAKE2B b6d5818df4cf64c37942ecd449ba90e603f2da6b2e317d10cd1c553e4a8e32a5fbd572010d08d303d190bca808f3c6b23096289c6fa15ee896038d7a4c76407c SHA512 8c0111641b9abf032d9b934259356d04a00b91221bf20e6193104e38c0bfcda863c8e0f50f8156601af0615159383cd36144047aa830234e80ebd75a020f3be2 +DIST yard-0.9.45-git.tgz 1019182 BLAKE2B ec2920103210b99e6001ac231bdee5e6ad6d6e611cd6113e84ef162b7576292fd1de1558d8d785d4675bd65450cede6d450bfd6ec58c5fa0ec12c836fd62c7dd SHA512 80e95a4fb167b793fca3bd428af2ede960ab699f8cbd24379db9b2d8d3f21e7700e71ebc971569a40b9244743ca2693537b39f7deaad4f2a6937ac01ee3afea0 diff --git a/dev-ruby/yard/yard-0.9.45.ebuild b/dev-ruby/yard/yard-0.9.45.ebuild new file mode 100644 index 000000000000..100b0eabe219 --- /dev/null +++ b/dev-ruby/yard/yard-0.9.45.ebuild @@ -0,0 +1,62 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34 ruby40" + +RUBY_FAKEGEM_RECIPE_TEST="rspec3" +RUBY_FAKEGEM_TASK_DOC="yard" + +RUBY_FAKEGEM_EXTRADOC="README.md" +RUBY_FAKEGEM_DOCDIR="doc docs" + +RUBY_FAKEGEM_EXTRAINSTALL="templates .yardopts" + +RUBY_FAKEGEM_GEMSPEC="yard.gemspec" + +inherit ruby-fakegem + +DESCRIPTION="Documentation generation tool for the Ruby programming language" +HOMEPAGE="https://yardoc.org/" + +# The gem lacks the gemspec file needed to pass tests. +SRC_URI="https://github.com/lsegal/yard/archive/v${PV}.tar.gz -> ${P}-git.tgz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="test" + +ruby_add_bdepend "doc? ( || ( dev-ruby/maruku dev-ruby/rdiscount dev-ruby/kramdown ) )" + +ruby_add_bdepend "test? ( dev-ruby/rackup dev-ruby/rack:3.1 >=dev-ruby/rspec-3.11.0 dev-ruby/webrick )" + +all_ruby_prepare() { + sed -i -e '/[Bb]undler/ s:^:#:' -e '3igem "rack", "~> 3.1.0"' spec/spec_helper.rb || die + + sed -i -e '/samus/I s:^:#:' Rakefile || die + + sed -i -e 's/git ls-files/find/' ${RUBY_FAKEGEM_GEMSPEC} || die + + # Avoid specs that make assumptions on load ordering that are not + # true for us. This may be related to how we install in Gentoo. This + # also drops a test requirement on dev-ruby/rack. + rm -f spec/cli/server_spec.rb || die + + # Avoid specs that only work with bundler + sed -i -e '/#initialize/,/^ end/ s:^:#:' spec/cli/yri_spec.rb || die + sed -e '/overwrites options with data in/askip "wrong assumptions on file access"' \ + -e '/loads any gem plugins starting with/askip "wrong assumptions on file access"' \ + -i spec/config_spec.rb || die + + # Avoid specs making assumptions about how rubygems works internally + sed -i -e '/searches for .gem file/askip "rubygems internals"' spec/cli/diff_spec.rb || die + + # Avoid redcarpet-specific spec that is not optional + sed -i -e '/autolinks URLs/askip "make redcarpet optional"' spec/templates/helpers/html_helper_spec.rb || die + + # Avoid asciidoc-specific spec that is not optional + sed -e '/\(AsciiDoc specific\|AsciiDoc header\)/askip "skipping asciidoc test"' \ + -i spec/templates/helpers/html_helper_spec.rb || die +} diff --git a/dev-ruby/zeitwerk/Manifest b/dev-ruby/zeitwerk/Manifest index 817738ac8c47..3f27f98cf393 100644 --- a/dev-ruby/zeitwerk/Manifest +++ b/dev-ruby/zeitwerk/Manifest @@ -1,3 +1,3 @@ -DIST zeitwerk-2.7.0.tar.gz 129163 BLAKE2B 3c90a6d20f645f662f17bcfad39fe2cf5377c0308b9f5bcc02ae5ce3d7a24e99ae156002fb10aab79c0779efeb32d9966cd2bd3c0da51505f71c1912a570ec8c SHA512 a3699493a1a07b973a9c5e2fc2d894643d3b36a678cb63a0a9a60a069f2e108e8929ffbcc2f4285c13a189ac4732bc17245c0ace3078b12a744edf3036f6bd11 DIST zeitwerk-2.7.2.tar.gz 131872 BLAKE2B 8ac1e725099655a8db65d699a89ec47f6134c31243d11f724a39668015f22d71cd850d38993bb51f247b6fb70523102e4f51c849551ed7fd2b5e76bdf7f705ee SHA512 3da8d33ee272148b31981f1795200ce112c4b5c4e26cc051000f24355d7f2df05f0591aa05390e523d9a3e7c8dffd51cd17ea19ed8427d8a4217061bde2d590f DIST zeitwerk-2.7.3.tar.gz 132616 BLAKE2B 6c9f51bdb4215c7d6ac108c5574b9fc506b08aea19fc6279052a5bf5c9c140f8af79eb7860b28e7acf9fe83a717aad8944afa54f54d6b000eaf7d543ca459332 SHA512 c84a5175f0c1b7c616ae9ff1ee2a3f46ba550e0d49f6a08a8862bc3181eadafc1b95adfb97cb3fc8015971fa26d68439f6eadec3eb375abb727ccd6c3ac78cec +DIST zeitwerk-2.8.2.tar.gz 140760 BLAKE2B 995d2ff4c061538ea6ccce70fa4fd701e5c4cba5b99c7e07bd6404c3641e2f4fce2fba712003a9eb3d88d029407d62c67d2765c0aff9422c7c49d1ee30c73a23 SHA512 c50f0b105cf177f86ed4966d8d116e8838c5afb88e2d921057cd77c256bde0b3d21c827ada4abf2e4df0d05b2d28587d1c4af1be240af3e6f4005b558232a320 diff --git a/dev-ruby/zeitwerk/zeitwerk-2.7.0.ebuild b/dev-ruby/zeitwerk/zeitwerk-2.8.2.ebuild index fb4cb59fc5ad..302b67bae15e 100644 --- a/dev-ruby/zeitwerk/zeitwerk-2.7.0.ebuild +++ b/dev-ruby/zeitwerk/zeitwerk-2.8.2.ebuild @@ -1,8 +1,8 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" @@ -18,10 +18,15 @@ SRC_URI="https://github.com/fxn/zeitwerk/archive/v${PV}.tar.gz -> ${P}.tar.gz" LICENSE="MIT" SLOT="2" -KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" IUSE="test" -ruby_add_bdepend "test? ( dev-ruby/bundler dev-ruby/warning )" +ruby_add_bdepend "test? ( + dev-ruby/bundler + dev-ruby/minitest:6 + dev-ruby/minitest-mock + dev-ruby/warning +)" all_ruby_prepare() { rm -f Gemfile.lock || die @@ -29,9 +34,12 @@ all_ruby_prepare() { # It's more of a quality check for the tests themselves rather than a test sed -i -e '/\(focus\|reporters\|Reporters\|prove_\?it\)/ s:^:#:' Gemfile test/test_helper.rb || die - sed -i -e 's:require_relative "lib:require "./lib:' ${RUBY_FAKEGEM_GEMSPEC} || die + sed -i -e "s:require_relative 'lib:require './lib:" ${RUBY_FAKEGEM_GEMSPEC} || die + + sed -e "/gem 'rubocop'/d" \ + -i Gemfile || die } each_ruby_test() { - ${RUBY} -S bundle exec rake test || die + ${RUBY} -S bundle exec minitest || die } diff --git a/dev-ruby/zstd-ruby/Manifest b/dev-ruby/zstd-ruby/Manifest index ce6c62b257dc..ab9a76764eb8 100644 --- a/dev-ruby/zstd-ruby/Manifest +++ b/dev-ruby/zstd-ruby/Manifest @@ -1,5 +1,2 @@ -DIST zstd-ruby-1.5.7.0.tar.gz 1971147 BLAKE2B 9f308d1988d9e38067640169acd5431f5a92a9c8f2e58a19b3e0fc05d64ef76c207f8b065bac50fd69f14cfd0e996642bd9554a2cc6c3bc81a8af1d9ec4ff9af SHA512 fb51b9baaa5e27e8af35f7d0a94998ccf3a3d3bd2472099fa8d0e6ef3a7e97fee7a3be7e96e0e897ee5a7805127a2aefe525b130e14d24fc5561efc8cc3763cc DIST zstd-ruby-1.5.7.1.tar.gz 1972177 BLAKE2B b8d021ad22e4aa0bf1393bb7e3105dffd0bcac248f33a9323a72b709bd6705d8024a0547561276436180279fa181032a5eb343b0a8dedc501593da4a360de569 SHA512 e640c5ca1f51d596f927197772fc64646e20631e3291adadee410d498bf38efb0b859445e2f04df62e861f0338bac4ede92c04760bc3950b2928cc5588c90f6a -DIST zstd-ruby-2.0.3.tar.gz 1973769 BLAKE2B 90a6f318173f2cee94868554b1d523b88265ce02d2f5d69d9013148d30cd3a83c5e7732e7b038ba44867671dc545bffd17d576c08a150828b815da921e032988 SHA512 cdfcdf1c172e744f5c99e1ac64e6e2b5d3949529dcb922608b9adb543e4d615fd2a9f89f11e7bd8524102510b3ba8ce6decc963d71f4a5e9515487402c08fee7 -DIST zstd-ruby-2.0.4.tar.gz 1973815 BLAKE2B 72f1c4273cb0f3dd16f83df51f8187e7bcf680c68ddd2b36bed4d474297e76648c7f6cf8bc7dae210513af6fd0d957ecc8c74e03338352163ebca8f5f698c39f SHA512 85e4bd83fbdcbed171adc8465906c58062890492d62f63b4bfa577e3b5d0154e19fbdf4cfd97f61938fd709d210d797259abb96e73c6f5c632a52dfa3da039d9 DIST zstd-ruby-2.0.5.tar.gz 1973796 BLAKE2B b7d7c32bacbc23da1cf71344090ea0f7f0d08be685fff32d2f54d155de7af6a434b048034ce14ba177bcdc316808af71b88ea79c944f784a35ce62d09b9c339d SHA512 3d3639177eb2e59c572ef64786f1fbb137a14403be0de5e40bc218591f8b461e8b3d870bf53b358992a1bbfb5db3f544037804f93ab83e44eabff1d0c6f16e02 diff --git a/dev-ruby/zstd-ruby/files/zstd-ruby-1.5.7.1-ruby35.patch b/dev-ruby/zstd-ruby/files/zstd-ruby-1.5.7.1-ruby35.patch new file mode 100644 index 000000000000..cbb5f6e7ea6e --- /dev/null +++ b/dev-ruby/zstd-ruby/files/zstd-ruby-1.5.7.1-ruby35.patch @@ -0,0 +1,55 @@ +https://github.com/SpringMT/zstd-ruby/pull/118 +https://github.com/SpringMT/zstd-ruby/commit/7cc7e95bcd43b6ca42fb7961267eac216ed960a5 + +From 5c6d656d39501d356df21c562b0a12fb0480ebf2 Mon Sep 17 00:00:00 2001 +From: Shizuo Fujita <fujita@clear-code.com> +Date: Sat, 18 Oct 2025 13:32:15 +0900 +Subject: [PATCH] CI: Support Ruby 3.5 + +Ractor#take was replaced at Ruby 3.5. +https://bugs.ruby-lang.org/issues/21262 +--- a/spec/zstd-ruby-streaming-compress_spec.rb ++++ b/spec/zstd-ruby-streaming-compress_spec.rb +@@ -115,7 +115,11 @@ + stream << "abc" << "def" + res = stream.finish + } +- expect(Zstd.decompress(r.take)).to eq('abcdef') ++ # Ractor#take was replaced at Ruby 3.5. ++ # https://bugs.ruby-lang.org/issues/21262 ++ result = r.respond_to?(:take) ? r.take : r.value ++ ++ expect(Zstd.decompress(result)).to eq('abcdef') + end + end + end +--- a/spec/zstd-ruby-streaming-decompress_spec.rb ++++ b/spec/zstd-ruby-streaming-decompress_spec.rb +@@ -169,7 +169,11 @@ + result << stream.decompress(cstr[10..-1]) + result + } +- expect(r.take).to eq('foo bar buzz') ++ # Ractor#take was replaced at Ruby 3.5. ++ # https://bugs.ruby-lang.org/issues/21262 ++ result = r.respond_to?(:take) ? r.take : r.value ++ ++ expect(result).to eq('foo bar buzz') + end + end + end +--- a/spec/zstd-ruby_spec.rb ++++ b/spec/zstd-ruby_spec.rb +@@ -118,7 +118,11 @@ def to_str + describe 'Ractor' do + it 'should be supported' do + r = Ractor.new { Zstd.compress('abc') } +- expect(Zstd.decompress(r.take)).to eq('abc') ++ # Ractor#take was replaced at Ruby 3.5. ++ # https://bugs.ruby-lang.org/issues/21262 ++ result = r.respond_to?(:take) ? r.take : r.value ++ ++ expect(Zstd.decompress(result)).to eq('abc') + end + end + end diff --git a/dev-ruby/zstd-ruby/zstd-ruby-1.5.7.0.ebuild b/dev-ruby/zstd-ruby/zstd-ruby-1.5.7.0.ebuild deleted file mode 100644 index 5cda7646f04a..000000000000 --- a/dev-ruby/zstd-ruby/zstd-ruby-1.5.7.0.ebuild +++ /dev/null @@ -1,44 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby32 ruby33 ruby34" - -# This gem includes a bundled version of app-arch/zstd. It requires -# features that are only available with a statically linked zstd library -# (e.g. ZSTD_SKIPPABLEHEADERSIZE) and changing the build system to build -# against a statically linked app-arch/zstd does not seem worth it. - -RUBY_FAKEGEM_BINWRAP="" -RUBY_FAKEGEM_EXTRADOC="README.md" -RUBY_FAKEGEM_EXTENSIONS=(ext/zstdruby/extconf.rb) -RUBY_FAKEGEM_EXTENSION_LIBDIR="lib/zstd-ruby" -RUBY_FAKEGEM_GEMSPEC="zstd-ruby.gemspec" -RUBY_FAKEGEM_RECIPE_TEST="rspec3" - -inherit ruby-fakegem - -DESCRIPTION="Ruby binding for zstd (Zstandard - Fast real-time compression algorithm)" -HOMEPAGE="https://github.com/SpringMT/zstd-ruby" -SRC_URI="https://github.com/SpringMT/zstd-ruby/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="BSD" -SLOT="$(ver_cut 1)" -KEYWORDS="amd64 ~ppc64" - -all_ruby_prepare() { - sed -e 's/git ls-files -z/find * -print0/' \ - -i ${RUBY_FAKEGEM_GEMSPEC} - - # Removing the -O3 optimization flag causes the test suite to hang - # consuming CPU. - # sed -e '/CFLAGS/ s/-O3//' \ -i - # ext/zstdruby/extconf.rb || die - - sed -e '/bundler/ s:^:#:' \ - -i spec/spec_helper.rb || die - - sed -e '/pry/ s:^:#:' \ - -i spec/zstd-ruby-stream_reader_spec.rb || die -} diff --git a/dev-ruby/zstd-ruby/zstd-ruby-1.5.7.1.ebuild b/dev-ruby/zstd-ruby/zstd-ruby-1.5.7.1.ebuild index 5cda7646f04a..5cc5e1aae03b 100644 --- a/dev-ruby/zstd-ruby/zstd-ruby-1.5.7.1.ebuild +++ b/dev-ruby/zstd-ruby/zstd-ruby-1.5.7.1.ebuild @@ -3,7 +3,7 @@ EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" # This gem includes a bundled version of app-arch/zstd. It requires # features that are only available with a statically linked zstd library @@ -27,6 +27,10 @@ LICENSE="BSD" SLOT="$(ver_cut 1)" KEYWORDS="amd64 ~ppc64" +PATCHES=( + "${FILESDIR}"/zstd-ruby-1.5.7.1-ruby35.patch +) + all_ruby_prepare() { sed -e 's/git ls-files -z/find * -print0/' \ -i ${RUBY_FAKEGEM_GEMSPEC} diff --git a/dev-ruby/zstd-ruby/zstd-ruby-2.0.3.ebuild b/dev-ruby/zstd-ruby/zstd-ruby-2.0.3.ebuild deleted file mode 100644 index 32c2bef51c18..000000000000 --- a/dev-ruby/zstd-ruby/zstd-ruby-2.0.3.ebuild +++ /dev/null @@ -1,44 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby32 ruby33 ruby34" - -# This gem includes a bundled version of app-arch/zstd. It requires -# features that are only available with a statically linked zstd library -# (e.g. ZSTD_SKIPPABLEHEADERSIZE) and changing the build system to build -# against a statically linked app-arch/zstd does not seem worth it. - -RUBY_FAKEGEM_BINWRAP="" -RUBY_FAKEGEM_EXTRADOC="README.md" -RUBY_FAKEGEM_EXTENSIONS=(ext/zstdruby/extconf.rb) -RUBY_FAKEGEM_EXTENSION_LIBDIR="lib/zstd-ruby" -RUBY_FAKEGEM_GEMSPEC="zstd-ruby.gemspec" -RUBY_FAKEGEM_RECIPE_TEST="rspec3" - -inherit ruby-fakegem - -DESCRIPTION="Ruby binding for zstd (Zstandard - Fast real-time compression algorithm)" -HOMEPAGE="https://github.com/SpringMT/zstd-ruby" -SRC_URI="https://github.com/SpringMT/zstd-ruby/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="BSD" -SLOT="$(ver_cut 1)" -KEYWORDS="~amd64 ~ppc64" - -all_ruby_prepare() { - sed -e 's/git ls-files -z/find * -print0/' \ - -i ${RUBY_FAKEGEM_GEMSPEC} - - # Removing the -O3 optimization flag causes the test suite to hang - # consuming CPU. - # sed -e '/CFLAGS/ s/-O3//' \ -i - # ext/zstdruby/extconf.rb || die - - sed -e '/bundler/ s:^:#:' \ - -i spec/spec_helper.rb || die - - sed -e '/pry/ s:^:#:' \ - -i spec/zstd-ruby-stream_reader_spec.rb || die -} diff --git a/dev-ruby/zstd-ruby/zstd-ruby-2.0.4.ebuild b/dev-ruby/zstd-ruby/zstd-ruby-2.0.4.ebuild deleted file mode 100644 index 32c2bef51c18..000000000000 --- a/dev-ruby/zstd-ruby/zstd-ruby-2.0.4.ebuild +++ /dev/null @@ -1,44 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -USE_RUBY="ruby32 ruby33 ruby34" - -# This gem includes a bundled version of app-arch/zstd. It requires -# features that are only available with a statically linked zstd library -# (e.g. ZSTD_SKIPPABLEHEADERSIZE) and changing the build system to build -# against a statically linked app-arch/zstd does not seem worth it. - -RUBY_FAKEGEM_BINWRAP="" -RUBY_FAKEGEM_EXTRADOC="README.md" -RUBY_FAKEGEM_EXTENSIONS=(ext/zstdruby/extconf.rb) -RUBY_FAKEGEM_EXTENSION_LIBDIR="lib/zstd-ruby" -RUBY_FAKEGEM_GEMSPEC="zstd-ruby.gemspec" -RUBY_FAKEGEM_RECIPE_TEST="rspec3" - -inherit ruby-fakegem - -DESCRIPTION="Ruby binding for zstd (Zstandard - Fast real-time compression algorithm)" -HOMEPAGE="https://github.com/SpringMT/zstd-ruby" -SRC_URI="https://github.com/SpringMT/zstd-ruby/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="BSD" -SLOT="$(ver_cut 1)" -KEYWORDS="~amd64 ~ppc64" - -all_ruby_prepare() { - sed -e 's/git ls-files -z/find * -print0/' \ - -i ${RUBY_FAKEGEM_GEMSPEC} - - # Removing the -O3 optimization flag causes the test suite to hang - # consuming CPU. - # sed -e '/CFLAGS/ s/-O3//' \ -i - # ext/zstdruby/extconf.rb || die - - sed -e '/bundler/ s:^:#:' \ - -i spec/spec_helper.rb || die - - sed -e '/pry/ s:^:#:' \ - -i spec/zstd-ruby-stream_reader_spec.rb || die -} diff --git a/dev-util/cucumber-ci-environment/cucumber-ci-environment-10.0.1.ebuild b/dev-util/cucumber-ci-environment/cucumber-ci-environment-10.0.1.ebuild index fdc54c10cfc8..90e2e9604f66 100644 --- a/dev-util/cucumber-ci-environment/cucumber-ci-environment-10.0.1.ebuild +++ b/dev-util/cucumber-ci-environment/cucumber-ci-environment-10.0.1.ebuild @@ -1,8 +1,8 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" diff --git a/dev-util/cucumber-compatibility-kit/cucumber-compatibility-kit-18.0.3.ebuild b/dev-util/cucumber-compatibility-kit/cucumber-compatibility-kit-18.0.3.ebuild index d70e247fa851..3c4f834f8a98 100644 --- a/dev-util/cucumber-compatibility-kit/cucumber-compatibility-kit-18.0.3.ebuild +++ b/dev-util/cucumber-compatibility-kit/cucumber-compatibility-kit-18.0.3.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" # The specs have become a no-op with version 18 since the features they # should test have all been removed. diff --git a/dev-util/cucumber-compatibility-kit/cucumber-compatibility-kit-20.1.0.ebuild b/dev-util/cucumber-compatibility-kit/cucumber-compatibility-kit-20.1.0.ebuild index d70e247fa851..3c4f834f8a98 100644 --- a/dev-util/cucumber-compatibility-kit/cucumber-compatibility-kit-20.1.0.ebuild +++ b/dev-util/cucumber-compatibility-kit/cucumber-compatibility-kit-20.1.0.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" # The specs have become a no-op with version 18 since the features they # should test have all been removed. diff --git a/dev-util/cucumber-core/cucumber-core-15.4.0.ebuild b/dev-util/cucumber-core/cucumber-core-15.4.0.ebuild index 4b3018af5064..0b9dccd7b09c 100644 --- a/dev-util/cucumber-core/cucumber-core-15.4.0.ebuild +++ b/dev-util/cucumber-core/cucumber-core-15.4.0.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" diff --git a/dev-util/cucumber-cucumber-expressions/cucumber-cucumber-expressions-18.0.1.ebuild b/dev-util/cucumber-cucumber-expressions/cucumber-cucumber-expressions-18.0.1.ebuild index d91c33de9986..8ee61cf1450e 100644 --- a/dev-util/cucumber-cucumber-expressions/cucumber-cucumber-expressions-18.0.1.ebuild +++ b/dev-util/cucumber-cucumber-expressions/cucumber-cucumber-expressions-18.0.1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_GEMSPEC="cucumber-cucumber-expressions.gemspec" RUBY_FAKEGEM_RECIPE_TEST="rspec3" diff --git a/dev-util/cucumber-gherkin/cucumber-gherkin-30.1.3.ebuild b/dev-util/cucumber-gherkin/cucumber-gherkin-30.1.3.ebuild index 145d64fdcd4d..23f2ff22fc1f 100644 --- a/dev-util/cucumber-gherkin/cucumber-gherkin-30.1.3.ebuild +++ b/dev-util/cucumber-gherkin/cucumber-gherkin-30.1.3.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" diff --git a/dev-util/cucumber-html-formatter/cucumber-html-formatter-22.2.0.ebuild b/dev-util/cucumber-html-formatter/cucumber-html-formatter-22.2.0.ebuild index 3f48dd9fccb6..cbca3bc0bc30 100644 --- a/dev-util/cucumber-html-formatter/cucumber-html-formatter-22.2.0.ebuild +++ b/dev-util/cucumber-html-formatter/cucumber-html-formatter-22.2.0.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_EXTRAINSTALL="assets" RUBY_FAKEGEM_RECIPE_TEST="rspec3" diff --git a/dev-util/cucumber-messages/cucumber-messages-27.2.0.ebuild b/dev-util/cucumber-messages/cucumber-messages-27.2.0.ebuild index 1e16f9f8ca45..14300064b1a2 100644 --- a/dev-util/cucumber-messages/cucumber-messages-27.2.0.ebuild +++ b/dev-util/cucumber-messages/cucumber-messages-27.2.0.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_GEMSPEC="cucumber-messages.gemspec" RUBY_FAKEGEM_RECIPE_TEST="rspec3" diff --git a/dev-util/cucumber-tag-expressions/cucumber-tag-expressions-6.1.2.ebuild b/dev-util/cucumber-tag-expressions/cucumber-tag-expressions-6.1.2.ebuild index 2d90a0c0d84e..d7b20cb6cf4a 100644 --- a/dev-util/cucumber-tag-expressions/cucumber-tag-expressions-6.1.2.ebuild +++ b/dev-util/cucumber-tag-expressions/cucumber-tag-expressions-6.1.2.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_RECIPE_TEST="rspec3" RUBY_FAKEGEM_EXTRADOC="README.md" diff --git a/dev-util/cucumber/cucumber-10.2.0.ebuild b/dev-util/cucumber/cucumber-10.2.0.ebuild index ee10ff7ec26d..5836d47e6034 100644 --- a/dev-util/cucumber/cucumber-10.2.0.ebuild +++ b/dev-util/cucumber/cucumber-10.2.0.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" # Documentation task depends on sdoc which we currently don't have. RUBY_FAKEGEM_TASK_DOC="" diff --git a/dev-util/selenium-manager/selenium-manager-4.46.0.ebuild b/dev-util/selenium-manager/selenium-manager-4.46.0.ebuild index fe362f3f34c4..a0995d7187c8 100644 --- a/dev-util/selenium-manager/selenium-manager-4.46.0.ebuild +++ b/dev-util/selenium-manager/selenium-manager-4.46.0.ebuild @@ -35,7 +35,7 @@ LICENSE+=" BZIP2 " SLOT="0" -KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv ~x86" IUSE="telemetry test" RESTRICT="!test? ( test )" diff --git a/dev-util/vulkan-tools/vulkan-tools-1.4.350.0.ebuild b/dev-util/vulkan-tools/vulkan-tools-1.4.350.0.ebuild index 335b9bb50795..97d3bb675d86 100644 --- a/dev-util/vulkan-tools/vulkan-tools-1.4.350.0.ebuild +++ b/dev-util/vulkan-tools/vulkan-tools-1.4.350.0.ebuild @@ -27,6 +27,7 @@ RESTRICT="!test? ( test )" BDEPEND="${PYTHON_DEPS} cube? ( ~dev-util/glslang-${PV}:=[${MULTILIB_USEDEP}] ) + test? ( dev-cpp/gtest ) " RDEPEND=" wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] ) diff --git a/dev-util/vulkan-tools/vulkan-tools-9999.ebuild b/dev-util/vulkan-tools/vulkan-tools-9999.ebuild index 95fbf44d46d8..97d3bb675d86 100644 --- a/dev-util/vulkan-tools/vulkan-tools-9999.ebuild +++ b/dev-util/vulkan-tools/vulkan-tools-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -27,6 +27,7 @@ RESTRICT="!test? ( test )" BDEPEND="${PYTHON_DEPS} cube? ( ~dev-util/glslang-${PV}:=[${MULTILIB_USEDEP}] ) + test? ( dev-cpp/gtest ) " RDEPEND=" wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] ) diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass index 637396381ca4..aa855f37384e 100644 --- a/eclass/kernel-2.eclass +++ b/eclass/kernel-2.eclass @@ -1501,14 +1501,14 @@ kernel-2_src_unpack() { # @FUNCTION: kernel-2_src_prepare # @USAGE: # @DESCRIPTION: -# Apply any user patches from /etc/portage/patches -# and patches defined in any ebuild inheriting this eclass +# Apply patches defined in any ebuild inheriting this eclass +# and any user patches from /etc/portage/patches kernel-2_src_prepare() { - debug-print "$FUNCNAME: Applying any user patches from /etc/portage/patches/*" - eapply_user debug-print "$FUNCNAME: Applying patches defined in ebuild PATCHES=<*>" [[ -n ${PATCHES[@]} ]] && eapply "${PATCHES[@]}" + debug-print "$FUNCNAME: Applying any user patches from /etc/portage/patches/*" + eapply_user } # @FUNCTION: kernel-2_src_compile diff --git a/games-emulation/atari800/Manifest b/games-emulation/atari800/Manifest index 3d59cbdb2cd2..fa42682836b7 100644 --- a/games-emulation/atari800/Manifest +++ b/games-emulation/atari800/Manifest @@ -1,3 +1,4 @@ DIST atari800-7.0.0-src.tgz 1953091 BLAKE2B 0df8b0bfc2277646c093386c0047b2d2229c69daa37eee41f79bfb9a13e354ed31ff8e94a6e7951f078673797165c7de3d73432d7ce266f5d21f2fd6701e97f6 SHA512 3e948b9b8ed93e1ab7cf795a867c30a85161ceff251def4b2d594490fd040477f6326e8f4e0710a6773f3e87f37456e8c609fe52e55ef1f25a6c6078b5713379 DIST atari800-7.1.0-src.tgz 1957342 BLAKE2B b0e5afd9a1dd85fc22926cb8c28c862721cac048a358fc865f94b2791133af3042f76943d4a57215d9dd0ff363f3a3c98e75ab28eced1e5c492ec20d5a35cb77 SHA512 406fca1597703d7f9e2357dfd750fef82ed64155cfc2dd9af082ebcd33f333fc5465ed6766f8d6f265aaf6823e7ced27e81670ffcb3e4389ca2676e4538c2e8e +DIST atari800-7.1.2-src.tgz 1957587 BLAKE2B 95c0f2871a6654587f79d94d4ce05dffcaa6ed254199deac0096ffcb83fed0d7d5f5db5600cf110fe8942b10fd032ad33faf54de6d269a9509e30c18ceadbf9e SHA512 473e3560e21dec6605d09af1cefd673677e8151bd29e773492627c9a122274c0e44fa73ed01a786f77c242bb4ff3a85e6fc418dcef8f4c3f7b9a7414edf98a66 DIST xf25.zip 188942 BLAKE2B c10b9108eebc571ac334ea6fca76d227e3d2fcde1595e8823a3d178dc31d9efa9b209572ee03875461289093615470192cf5c9a06cf0b4363d097a9eac201db4 SHA512 306612fc2af41ed10d76103af83e141cfd8bd3ba2ea3cbd1d0b81d4d5b0108c06948a5c626648c8a2424536757a42a3f8b9af1fb63fa3c31096447ffed0f9923 diff --git a/games-emulation/atari800/atari800-7.1.2.ebuild b/games-emulation/atari800/atari800-7.1.2.ebuild new file mode 100644 index 000000000000..35dcc2101b82 --- /dev/null +++ b/games-emulation/atari800/atari800-7.1.2.ebuild @@ -0,0 +1,93 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=9 + +inherit autotools desktop + +DESCRIPTION="Emulator of Atari 8-bit computer systems and 5200 game console" +HOMEPAGE=" + https://atari800.github.io/ + https://github.com/atari800/atari800/ +" +SRC_URI=" + https://github.com/atari800/atari800/releases/download/ATARI800_${PV//./_}/${P}-src.tgz + https://sourceforge.net/projects/atari800/files/ROM/Original%20XL%20ROM/xf25.zip +" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="download encode-mp3 opengl readline +sdl +sound" +REQUIRED_USE=" + encode-mp3? ( sound ) + opengl? ( sdl ) +" + +DEPEND=" + download? ( + net-misc/curl + ) + encode-mp3? ( + media-sound/lame + ) + sdl? ( + >=media-libs/libsdl2-2.26.0[joystick,opengl?,sound?,video] + ) + !sdl? ( + sys-libs/ncurses:= + ) + readline? ( + sys-libs/readline:= + ) + media-libs/libpng:= + virtual/zlib:= +" +RDEPEND=" + ${DEPEND} +" +BDEPEND=" + app-arch/unzip +" + +src_prepare() { + local PATCHES=( + # Bug 544608 + "${FILESDIR}"/atari800-3.1.0-tgetent-detection.patch + ) + + default + eautoreconf +} + +src_configure() { + local video=ncurses + local sound=no + + if use sdl; then + video=sdl2 + use sound && sound=sdl2 + elif use sound; then + sound=oss + fi + + local myconf=( + $(use_enable download) + $(use_with opengl) + $(use_with readline) + $(use_with encode-mp3 mp3) + --with-video=${video} + --with-sound=${sound} + ) + econf "${myconf[@]}" +} + +src_install() { + default + insinto "/usr/share/${PN}" + doins "${WORKDIR}/"*.ROM + insinto /etc + newins "${FILESDIR}"/atari800-4.2.0.cfg atari800.cfg + newicon data/atari2.svg ${PN}.svg + make_desktop_entry ${PN} -n "Atari 800 emulator" +} diff --git a/gui-wm/gamescope/gamescope-3.16.25.ebuild b/gui-wm/gamescope/gamescope-3.16.25-r1.ebuild index c989370b30e7..3563c076beb5 100644 --- a/gui-wm/gamescope/gamescope-3.16.25.ebuild +++ b/gui-wm/gamescope/gamescope-3.16.25-r1.ebuild @@ -39,7 +39,7 @@ RDEPEND=" >=dev-libs/libinput-1.14.0:= >=dev-libs/wayland-1.23.1 gui-libs/libdecor - gui-libs/wlroots:0.19 + gui-libs/wlroots:0.19[libinput,X] <media-libs/libdisplay-info-0.4:= media-libs/vulkan-loader sys-apps/hwdata diff --git a/mail-mta/msmtp/files/msmtp-1.8.31-fix-disable-nls.patch b/mail-mta/msmtp/files/msmtp-1.8.31-fix-disable-nls.patch deleted file mode 100644 index c52c42af9d0d..000000000000 --- a/mail-mta/msmtp/files/msmtp-1.8.31-fix-disable-nls.patch +++ /dev/null @@ -1,30 +0,0 @@ -Subject: [PATCH] Fix header encoding when building with --disable-nls. - -With disabled NLS, msmtp now assumes that UTF-8 is the current codeset, -which is a better guess than ASCII, which is what nl_langinfo() returns. - -This fixes github issue #203. ---- -URL: https://github.com/marlam/msmtp/commit/c6baa5b39e811ea4459a35ae0de88163f65bf8a2 ---- - src/tools.c | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/src/tools.c b/src/tools.c -index b65b4c5..9d78fc8 100644 ---- a/src/tools.c -+++ b/src/tools.c -@@ -1012,7 +1012,13 @@ char *encode_for_header(const char *s) - size_t b64_s_len = BASE64_LENGTH(s_len); - char* encoding = - #ifdef HAVE_LANGINFO_H -+ /* With disabled NLS, nl_langinfo() always seems to return -+ * ANSI_X3.4-1968 (i.e. ASCII). We want to assume UTF-8 instead. */ -+# ifdef ENABLE_NLS - nl_langinfo(CODESET); -+# else -+ "UTF-8"; -+# endif - #else - # ifdef W32_NATIVE - w32_langinfo_codeset(); diff --git a/mail-mta/msmtp/files/msmtp-fix-tests-without-msmtpd.patch b/mail-mta/msmtp/files/msmtp-fix-tests-without-msmtpd.patch deleted file mode 100644 index a7c5cf17f1d1..000000000000 --- a/mail-mta/msmtp/files/msmtp-fix-tests-without-msmtpd.patch +++ /dev/null @@ -1,56 +0,0 @@ -https://github.com/marlam/msmtp/pull/200 -https://bugs.gentoo.org/948087 - -From fce1dfefd7af8175708deabc3e55f8682d181d22 Mon Sep 17 00:00:00 2001 -From: Gabi Falk <gabifalk@gmx.com> -Date: Wed, 13 Aug 2025 09:00:00 +0000 -Subject: [PATCH] tests: skip msmtpd-dependent tests if msmtpd is not built - -Link: https://bugs.gentoo.org/948087 ---- - tests/test-auth-plain.sh | 8 +++++++- - tests/test-header-handling.sh | 8 +++++++- - 2 files changed, 14 insertions(+), 2 deletions(-) - -diff --git a/tests/test-auth-plain.sh b/tests/test-auth-plain.sh -index 27d406e..a670dcd 100755 ---- a/tests/test-auth-plain.sh -+++ b/tests/test-auth-plain.sh -@@ -2,9 +2,15 @@ - - set -e - -+msmtpd=../src/msmtpd -+if [ ! -x $msmtpd ]; then -+ echo 'msmtpd is not built' -+ exit 77 -+fi -+ - # Start an msmtpd with PLAIN authentication - echo "Starting msmtpd" --../src/msmtpd --interface=::1 --port=12345 --auth='testuser,echo testpassword' \ -+$msmtpd --interface=::1 --port=12345 --auth='testuser,echo testpassword' \ - --command='cat > out-auth-plain-mail.txt; echo > out-auth-plain-rcpt.txt' & - MSMTPD_PID=$! - trap "kill $MSMTPD_PID" EXIT -diff --git a/tests/test-header-handling.sh b/tests/test-header-handling.sh -index e58cde4..9109bd3 100755 ---- a/tests/test-header-handling.sh -+++ b/tests/test-header-handling.sh -@@ -2,9 +2,15 @@ - - set -e - -+msmtpd=../src/msmtpd -+if [ ! -x $msmtpd ]; then -+ echo 'msmtpd is not built' -+ exit 77 -+fi -+ - # Start an msmtpd that dumps the mail and the recipient lists so we can check them - echo "Starting msmtpd" --../src/msmtpd --interface=::1 --port=12346 \ -+$msmtpd --interface=::1 --port=12346 \ - --command='cat > out-header-handling-mail.txt; echo > out-header-handling-rcpt.txt' & - MSMTPD_PID=$! - trap "kill $MSMTPD_PID" EXIT diff --git a/media-libs/libxmp/Manifest b/media-libs/libxmp/Manifest index 9a485209c401..3879cdf4d90d 100644 --- a/media-libs/libxmp/Manifest +++ b/media-libs/libxmp/Manifest @@ -1,2 +1,2 @@ DIST libxmp-4.6.3.tar.gz 805616 BLAKE2B 5cf99574d990d48f069f1ebb3f06d6b0658f41adb5f032b11c7d8849f4a8ad08597e3881d8804c10ef895c4620c329bf3369a2f7f84b553f5350407c520e06c9 SHA512 fc87fafa392ebd07f6f9823801cdf296d5f5a6216e15a437d0539bc4ebf0f963bb8d868c73499d1ece33a238b71a8da6da303be23d409975a62b166225853bec -DIST libxmp-4.7.1.tar.gz 857457 BLAKE2B 967dd399a308e28f9286a929b0230de7e5389e30c2245adf1efecbe817593a35d6a0fc9a06b0f571cf487902272c8017ff4e92f35ac3ff8f7c3b41d5b1abbf18 SHA512 a677802b36c1e4c7c43d134ea0bbbb0ca28726dec8d93a6a4cf9bde22bdba2c6db3deba20eff9549f47804f5108824be335da9e3049ae23e61ec629802d155b8 +DIST libxmp-4.7.2.tar.gz 857784 BLAKE2B 0c519d50791a396069aa9e38463ebbdee6bb6119ae7c77db2d9b702c01c5fa690f8858710d362d2d2097d661cd62e4517160df55b89d2fe128338b37a384b759 SHA512 f05d46fcb7ba8060f44964a366487b191ff6a4c379ecc3cb7b34977bfec803417ba6ef7eb1d08fb23bde59d5b10c898b4908093583a470cf3f0e5ec595d9f57a diff --git a/media-libs/libxmp/libxmp-4.7.1.ebuild b/media-libs/libxmp/libxmp-4.7.2.ebuild index c7c43b0ff092..c7c43b0ff092 100644 --- a/media-libs/libxmp/libxmp-4.7.1.ebuild +++ b/media-libs/libxmp/libxmp-4.7.2.ebuild diff --git a/media-plugins/live/Manifest b/media-plugins/live/Manifest index 23ceebf7fcd2..b360a90295ca 100644 --- a/media-plugins/live/Manifest +++ b/media-plugins/live/Manifest @@ -1,4 +1,2 @@ -DIST live.2024.10.31.tar.gz 696459 BLAKE2B 627f7ed37d5873f7464958e6a82068b132d1dc151686ee373ad92600db77af6d728c5e7cd299288f6ba00da48a4397afaff7184888746daac973b7af871c059e SHA512 88325e4b87f1ed8de16af08489a1b856e0526c627d5f590ed7060d8899a91ec9d9947a5fb0c4714a3acb5f5f37a2eb5c63f59739a75dcbea70a79263f7eb56aa -DIST live.2025.07.19.tar.gz 696976 BLAKE2B 14c7da61c68c749340383a946e4cb92d20a14b29a8363ea3d5d8d0e6b3a47232d48ed17d50424fc3b51aecfa27ef313bd5557ee85c7453a4d7daa84fbc0d0794 SHA512 6acc02b22a65c24c07e744f9d3069b78199677d903567649a034408ce785a2253c789a2868e2af30eda0fadb9e9a224fddbbefe5e626277f7df40a26c9230a1d -DIST live.2025.10.13.tar.gz 696849 BLAKE2B 917f95a644dc1e610eaff922acf14157b1f56b620202860d22ad29cd213c3ccea2f4dd86707dd46496954dd1c66386389635d26fa27233d76fc6ad8f83c08b8c SHA512 5854825e5c983ef29937cfd965941d5525a902d7bbdb4952f679d3b55cb253306b6fbcbc2a663c6f1e96cabbdab16676da0ce74a1f62c69e99f8e0e140ad2d33 DIST live.2025.11.06.tar.gz 696989 BLAKE2B 34a5ea2d5c42684e9c7b46cf5bc3cf78c6fbb185cc18034df161339a74356490156df0f9a0b8414f73d498eb0d78e430a925afd51dcc60c0eeca6800354318a1 SHA512 cbe689f904d7c16cb7926a41a1e4768adcd66cc17b950e4a4b08288a3f443c6bbc1ddd9ec7a08290bdfa66021348f8953c6e1f1253d73fe755fa6d846d104587 +DIST live.2026.07.23.tar.gz 693926 BLAKE2B 3c57074eb3d0870d9599ea3fbe37983cb23d6f6a97a095e55ead35d998520e3a1ad80c3f39ef5d7de5c867b2d660cb405ff5698f65a211663e9f1edf7fb6613e SHA512 a0b70009fd9f4c202cfecb2eb7b019c69c0603c1b11c9879649cf71138f01f241acf2fe25dc3e940909d3418aea513f31434d5c9cf623b9dba53f2fdc28086eb diff --git a/media-plugins/live/live-2024.10.31.ebuild b/media-plugins/live/live-2024.10.31.ebuild deleted file mode 100644 index 3d0a7f5df28a..000000000000 --- a/media-plugins/live/live-2024.10.31.ebuild +++ /dev/null @@ -1,76 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit flag-o-matic toolchain-funcs - -DESCRIPTION="Libraries for standards-based RTP/RTCP/RTSP multimedia streaming" -HOMEPAGE="http://www.live555.com/" -# bug #719336 -SRC_URI=" - http://www.live555.com/liveMedia/public/${P/-/.}.tar.gz - https://download.videolan.org/contrib/live555/${P/-/.}.tar.gz -" -S="${WORKDIR}/live" - -LICENSE="LGPL-2.1" -# follow versioning in config.linux-with-shared-libraries -# SLOT="0/${libliveMedia_VERSION_CURRENT}.${libBasicUsageEnvironment_VERSION_CURRENT}.${libUsageEnvironment_VERSION_CURRENT}.${libgroupsock_VERSION_CURRENT}" -SLOT="0/115.3.5.32" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86" - -IUSE="ssl tools" - -# no tests -RESTRICT="test" - -DEPEND="ssl? ( dev-libs/openssl:= )" -RDEPEND="${DEPEND}" - -src_configure() { - # sanity check subslot to kick would be drive by bumpers - local detected_abi - detected_abi="$(awk -F'=' '$1 ~ ".*_VERSION_CURRENT" {printf("%s.",$2)}' config.linux-with-shared-libraries)" - detected_abi="${detected_abi%.}" - if [[ "${SLOT}" != "0/${detected_abi}" ]]; then - die "SLOT ${SLOT} doesn't match upstream specified ABI ${detected_abi}." - fi - - # This ebuild uses its own build system - # We don't want to call ./configure or anything here. - # The only thing we can do is honour the user's SSL preference. - if ! use ssl ; then - einfo "Disabling SSL support" - append-cppflags -DNO_OPENSSL=1 - sed -i -e 's|-lssl -lcrypto||' config.linux-with-shared-libraries || die - fi - - if ! use tools ; then - einfo "Disabling tools" - # Remove testprogs build+install - # http://www.live555.com/liveMedia/#testProgs - sed -i -e '/subdirs/ { s/testProgs// } ' genMakefiles || die - sed -i -e '/TESTPROGS_DIR/d' Makefile.tail || die - fi - - # Bug 718912 - tc-export CC CXX - - # ODR violations bug #940324 - filter-lto - - # BasicTaskScheduler.cpp:191:40: error: 'struct std::atomic_flag' has no member named 'test' - append-cxxflags -std=c++20 - - # And defer to the scripts that upstream provide. - ./genMakefiles linux-with-shared-libraries || die -} - -src_install() { - # Makefiles don't create directories before installing in them - mkdir -p "${ED}/usr/$(get_libdir)" || die - emake PREFIX="${ED}/usr" LIBDIR="${ED}/usr/$(get_libdir)" install - - einstalldocs -} diff --git a/media-plugins/live/live-2025.10.13.ebuild b/media-plugins/live/live-2025.10.13.ebuild deleted file mode 100644 index 6cb6e31d46b0..000000000000 --- a/media-plugins/live/live-2025.10.13.ebuild +++ /dev/null @@ -1,76 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit flag-o-matic toolchain-funcs - -DESCRIPTION="Libraries for standards-based RTP/RTCP/RTSP multimedia streaming" -HOMEPAGE="http://www.live555.com/" -# bug #719336 -SRC_URI=" - http://www.live555.com/liveMedia/public/${P/-/.}.tar.gz - https://download.videolan.org/contrib/live555/${P/-/.}.tar.gz -" -S="${WORKDIR}/live" - -LICENSE="LGPL-2.1" -# follow versioning in config.linux-with-shared-libraries -# SLOT="0/${libliveMedia_VERSION_CURRENT}.${libBasicUsageEnvironment_VERSION_CURRENT}.${libUsageEnvironment_VERSION_CURRENT}.${libgroupsock_VERSION_CURRENT}" -SLOT="0/117.3.5.32" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" - -IUSE="ssl tools" - -# no tests -RESTRICT="test" - -DEPEND="ssl? ( dev-libs/openssl:= )" -RDEPEND="${DEPEND}" - -src_configure() { - # sanity check subslot to kick would be drive by bumpers - local detected_abi - detected_abi="$(awk -F'=' '$1 ~ ".*_VERSION_CURRENT" {printf("%s.",$2)}' config.linux-with-shared-libraries)" - detected_abi="${detected_abi%.}" - if [[ "${SLOT}" != "0/${detected_abi}" ]]; then - die "SLOT ${SLOT} doesn't match upstream specified ABI ${detected_abi}." - fi - - # This ebuild uses its own build system - # We don't want to call ./configure or anything here. - # The only thing we can do is honour the user's SSL preference. - if ! use ssl ; then - einfo "Disabling SSL support" - append-cppflags -DNO_OPENSSL=1 - sed -i -e 's|-lssl -lcrypto||' config.linux-with-shared-libraries || die - fi - - if ! use tools ; then - einfo "Disabling tools" - # Remove testprogs build+install - # http://www.live555.com/liveMedia/#testProgs - sed -i -e '/subdirs/ { s/testProgs// } ' genMakefiles || die - sed -i -e '/TESTPROGS_DIR/d' Makefile.tail || die - fi - - # Bug 718912 - tc-export CC CXX - - # ODR violations bug #940324 - filter-lto - - # BasicTaskScheduler.cpp:191:40: error: 'struct std::atomic_flag' has no member named 'test' - append-cxxflags -std=c++20 - - # And defer to the scripts that upstream provide. - ./genMakefiles linux-with-shared-libraries || die -} - -src_install() { - # Makefiles don't create directories before installing in them - mkdir -p "${ED}/usr/$(get_libdir)" || die - emake PREFIX="${ED}/usr" LIBDIR="${ED}/usr/$(get_libdir)" install - - einstalldocs -} diff --git a/media-plugins/live/live-2025.07.19.ebuild b/media-plugins/live/live-2026.07.23.ebuild index ed8f9ac642a7..b8ed14a06884 100644 --- a/media-plugins/live/live-2025.07.19.ebuild +++ b/media-plugins/live/live-2026.07.23.ebuild @@ -1,7 +1,7 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=8 +EAPI=9 inherit flag-o-matic toolchain-funcs @@ -9,7 +9,7 @@ DESCRIPTION="Libraries for standards-based RTP/RTCP/RTSP multimedia streaming" HOMEPAGE="http://www.live555.com/" # bug #719336 SRC_URI=" - http://www.live555.com/liveMedia/public/${P/-/.}.tar.gz + https://download.live555.com/${P/-/.}.tar.gz https://download.videolan.org/contrib/live555/${P/-/.}.tar.gz " S="${WORKDIR}/live" @@ -17,8 +17,8 @@ S="${WORKDIR}/live" LICENSE="LGPL-2.1" # follow versioning in config.linux-with-shared-libraries # SLOT="0/${libliveMedia_VERSION_CURRENT}.${libBasicUsageEnvironment_VERSION_CURRENT}.${libUsageEnvironment_VERSION_CURRENT}.${libgroupsock_VERSION_CURRENT}" -SLOT="0/116.3.5.32" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86" +SLOT="0/120.3.5.33" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" IUSE="ssl tools" diff --git a/media-plugins/live/metadata.xml b/media-plugins/live/metadata.xml index 741e30d9e1d1..9cec757d02ae 100644 --- a/media-plugins/live/metadata.xml +++ b/media-plugins/live/metadata.xml @@ -8,7 +8,7 @@ <flag name="tools">Build test tools</flag> </use> <upstream> - <changelog>http://www.live555.com/liveMedia/public/changelog.txt</changelog> + <changelog>https://download.live555.com/changelog.txt</changelog> <remote-id type="cpe">cpe:/a:live555:streaming_media</remote-id> </upstream> <origin>baldeagleos-repo</origin> diff --git a/media-radio/svxlink/Manifest b/media-radio/svxlink/Manifest index 277b4c1bdd14..7844e32f7f32 100644 --- a/media-radio/svxlink/Manifest +++ b/media-radio/svxlink/Manifest @@ -1,2 +1,2 @@ DIST svxlink-25.05.1_p20250929.tgz 19320626 BLAKE2B 6edca5e57e2667c16981b349a393e0391a1862c09c1a294bcc95b43e8c9c5df7224d66c7114d023342645e6a473a340f1b8e3993533606e1fe47b22532a00cb2 SHA512 c5bef7d38fbc38e9abae5cf8feea1f67f60c48336ddafbace1e6e1325e9b182064006d4fbd4de1db9cdbf1d1601841d881d07418e32f85bd03e87bc95909e266 -DIST svxlink-26.05.tar.gz 2069313 BLAKE2B 8bf2e3f851030859d5f5af8ad16d95b40a097ea755e701d27aa4b44eaed4bce39375b67cb09fe0b15e263518fc77e8ce37ed3a827142e5abf6541e415f10fffa SHA512 e0b8ef8237ab08220026da835e4d153e7fcd3090e7933897c20f5dce4bfdd6ea4bc59d71c4644c44d240a88129755cb27bad9aee153abdd6d249e0af4f24dcfb +DIST svxlink-26.05.1.tar.gz 2072886 BLAKE2B d740009f3164de198b6589db54a309fdae22fab6bc3682487244e1b57d773a2ae77968271cfa0caf3fde4b02385f43b07104b024d4a7cc8b7c64ac8347b7f506 SHA512 e16c808fdd9fc7346eb6250ab3f6954f76d0bd62c00efb3ae503e46efb8b80a58cdbff3e35576900bac6c135dad88b9067dac2c5a09ec2d6ec27589e639600f7 diff --git a/media-radio/svxlink/svxlink-26.05.ebuild b/media-radio/svxlink/svxlink-26.05.1.ebuild index 323e4afa9cef..323e4afa9cef 100644 --- a/media-radio/svxlink/svxlink-26.05.ebuild +++ b/media-radio/svxlink/svxlink-26.05.1.ebuild diff --git a/media-sound/musescore/musescore-4.7.4-r1.ebuild b/media-sound/musescore/musescore-4.7.4-r1.ebuild index 076b52b140fe..1de52529f2de 100644 --- a/media-sound/musescore/musescore-4.7.4-r1.ebuild +++ b/media-sound/musescore/musescore-4.7.4-r1.ebuild @@ -17,7 +17,7 @@ else SRC_URI=" https://github.com/musescore/MuseScore/archive/v${PV}.tar.gz -> ${P}.tar.gz " - KEYWORDS="~amd64 ~arm64 ~x86" + KEYWORDS="amd64 ~arm64 ~x86" S="${WORKDIR}/MuseScore-${PV}" fi diff --git a/media-sound/strawberry/Manifest b/media-sound/strawberry/Manifest index 442332bc7e2d..b0871c1914d8 100644 --- a/media-sound/strawberry/Manifest +++ b/media-sound/strawberry/Manifest @@ -1,2 +1,2 @@ DIST strawberry-1.2.19.tar.xz 11542036 BLAKE2B d76a956496bbe56d888bee7f08efd3a0d25e54ec8db9ed3c2fe9e5551e1fc0661f3d2b9e5a6665be17d34aa7e563a623c81c56eae48857b2164ec2325cacddb2 SHA512 e5da4868115c4021c624b66c946243564ebf0fedb321939097c7da7e69b3ff772bd2e7f05fbcc541773bf89d0ce70b7b4d0415565d353c1ed20a7c56a033cda2 -DIST strawberry-1.2.23.tar.xz 11678824 BLAKE2B 019a14c0f102145b4cdb26d32cebb0722168dbdb37aa8cd417b9a68e1e54913e8c199e3868cce4ca86f1413667f968ddcb8c5cd1971ef1f56e45b9ab40e3fedf SHA512 577fae2bcb418f084fee34e70ceb1bb2a9b742014fdba9bea1e0715df37d4b1a92086467b49fe738ff9d63f5a4976e197c53e285762cfce53d2e4ec41dbd65d9 +DIST strawberry-1.2.25.tar.xz 11691564 BLAKE2B a1f70cee07e689f83c352cc0f1a0477e52de9393e1bbbca62892b139754ff87d95932a3b298d4efa520768103c6897cda4dd6ec17f0f0b98434fb53bc7c04733 SHA512 42da776b5cd6077821ca135729fc616e0d23f3164325ed4e3d596ab0be3c76b84c98657a1017365074aed9480e2fd60055a6dd644e751b8232443d75689cb104 diff --git a/media-sound/strawberry/strawberry-1.2.23.ebuild b/media-sound/strawberry/strawberry-1.2.25.ebuild index 1a35d3538e18..8961b775fea6 100644 --- a/media-sound/strawberry/strawberry-1.2.23.ebuild +++ b/media-sound/strawberry/strawberry-1.2.25.ebuild @@ -87,8 +87,9 @@ src_configure() { -DENABLE_DEBUG_OUTPUT="$(usex debug)" -DENABLE_DISCORD_RPC="$(usex discord)" -DENABLE_KGLOBALACCEL_GLOBALSHORTCUTS=$(usex kde) - -DENABLE_SONGFINGERPRINTING="$(usex chromaprint)" - -DENABLE_MUSICBRAINZ="$(usex chromaprint)" + -DENABLE_CHROMAPRINT="$(usex chromaprint)" + -DENABLE_SONGTRACKING="$(usex chromaprint)" + -DENABLE_TAGFETCHER="$(usex chromaprint)" -DENABLE_X11_GLOBALSHORTCUTS="$(usex X)" -DENABLE_AUDIOCD="$(usex cdda)" -DENABLE_MTP="$(usex mtp)" diff --git a/media-sound/strawberry/strawberry-9999.ebuild b/media-sound/strawberry/strawberry-9999.ebuild index 1a35d3538e18..8961b775fea6 100644 --- a/media-sound/strawberry/strawberry-9999.ebuild +++ b/media-sound/strawberry/strawberry-9999.ebuild @@ -87,8 +87,9 @@ src_configure() { -DENABLE_DEBUG_OUTPUT="$(usex debug)" -DENABLE_DISCORD_RPC="$(usex discord)" -DENABLE_KGLOBALACCEL_GLOBALSHORTCUTS=$(usex kde) - -DENABLE_SONGFINGERPRINTING="$(usex chromaprint)" - -DENABLE_MUSICBRAINZ="$(usex chromaprint)" + -DENABLE_CHROMAPRINT="$(usex chromaprint)" + -DENABLE_SONGTRACKING="$(usex chromaprint)" + -DENABLE_TAGFETCHER="$(usex chromaprint)" -DENABLE_X11_GLOBALSHORTCUTS="$(usex X)" -DENABLE_AUDIOCD="$(usex cdda)" -DENABLE_MTP="$(usex mtp)" diff --git a/net-analyzer/icinga2/files/icinga2-boost-1.89.patch b/net-analyzer/icinga2/files/icinga2-boost-1.89.patch deleted file mode 100644 index 98d51bdf0f22..000000000000 --- a/net-analyzer/icinga2/files/icinga2-boost-1.89.patch +++ /dev/null @@ -1,23 +0,0 @@ -From 76fa0d9e8054f405dc3d1e39a4b48f21e86afdf0 Mon Sep 17 00:00:00 2001 -From: "Alexander A. Klimov" <alexander.klimov@icinga.com> -Date: Thu, 14 Aug 2025 11:05:37 +0200 -Subject: [PATCH] Boost: don't require "system" component - -It's vanished in v1.89. ---- - CMakeLists.txt | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 86abc77d661..1a087b8ed2f 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -172,7 +172,7 @@ else() - set(LOGROTATE_CREATE "\n\tcreate 644 ${ICINGA2_USER} ${ICINGA2_GROUP}") - endif() - --find_package(Boost ${BOOST_MIN_VERSION} COMPONENTS coroutine context date_time filesystem iostreams thread system program_options regex REQUIRED) -+find_package(Boost ${BOOST_MIN_VERSION} COMPONENTS coroutine context date_time filesystem iostreams thread program_options regex REQUIRED) - - # Boost.Coroutine2 (the successor of Boost.Coroutine) - # (1) doesn't even exist in old Boost versions and diff --git a/net-dns/cares-tools/Manifest b/net-dns/cares-tools/Manifest index 9df8691db2e8..92114223a095 100644 --- a/net-dns/cares-tools/Manifest +++ b/net-dns/cares-tools/Manifest @@ -1 +1,2 @@ DIST cares-tools-0.3.tar.bz2 11767 BLAKE2B 9d2f782525581259a6ff13e4830249ca4d139e62730348f23a8f702de4bf3ee0dfdd2896b9a4c23e88bd0871d86c7bf19972044066248dc9a271a570bf033b7c SHA512 c19994be79450b670793c52a7f54af9a8cafeebb98460bda3d2ec98c8326fce39dd799c5c0fd2644afc2dc35323872db387b6d4373d0669d19c122ccaf19a65f +DIST cares-tools-0.4.tar.bz2 12695 BLAKE2B c99831527a5e041bb680cebc45574b5ce82106f5e7f1e33054504977c7a01133382cab9af72568c0c57187e747363658186339c648c80823e7cb40b0645a7fae SHA512 389b174438e38893014075a393f0935af1f5f25b89b60c866768a4a65dffce137cfbf64dcd895b845b40d64966b519761d943f1e59b6537564080d950df8c95c diff --git a/net-dns/cares-tools/cares-tools-0.4.ebuild b/net-dns/cares-tools/cares-tools-0.4.ebuild new file mode 100644 index 000000000000..268ec6a47939 --- /dev/null +++ b/net-dns/cares-tools/cares-tools-0.4.ebuild @@ -0,0 +1,33 @@ +# Copyright 2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=9 + +inherit toolchain-funcs + +DESCRIPTION="c-ares tools: host, nslookup" +HOMEPAGE="https://gitlab.com/grobian/cares-tools" +SRC_URI="https://gitlab.com/grobian/${PN}/-/archive/${PV}/${P}.tar.bz2" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm64-macos ~x64-macos ~x64-solaris" + +DEPEND=" + net-dns/c-ares + sys-libs/readline +" +RDEPEND="${DEPEND} + !net-dns/bind-tools + !net-dns/bind +" + +src_compile() { + tc-export CC + default +} + +src_install() { + exeinto /usr/bin + doexe host nslookup +} diff --git a/net-im/discord/Manifest b/net-im/discord/Manifest index 931275823d9a..ab0534afe42c 100644 --- a/net-im/discord/Manifest +++ b/net-im/discord/Manifest @@ -1,14 +1,3 @@ -DIST discord-0.0.135.tar.gz 107861168 BLAKE2B 59f7a303c45c137cdf870abf8cf421c39ced29b55cd3b8703f2d9d253857c305cd579380cc4f7cba2cf95ac2f64524a9dc53c0fcf6eefe4c7805d58b8f1dac59 SHA512 7be159b69fe322939fccfbe82c2c15b0dffb2ee2106a19824d7cc1ccb6b5f87b90446ba1915dfb81bbc59dab56561c104645d969acca5e9a95ac5b4c7afbd2ba -DIST discord-1.0.146-discord_desktop_core.distro 525075 BLAKE2B 26670215bc3f8dc2119bee6e2cab2c4d683a0e9a3b2c1a625679d36acc56e07d7ee21c29014cceed7b7715d7de22ed62e542ae50597f0027fc0f64312f30f4c1 SHA512 88024b0faf4e4db8e283af9081b88072ec8ab908e4b72a7c0bab8ae7fcb3c5ae09b2b3e34af0b35429b51f46be359dc39983191e376a762c6c4831d4918a9792 -DIST discord-1.0.146-discord_erlpack.distro 2067901 BLAKE2B 1121dbd1d74abb61824e3f44fa6812ecd7ae6c2f97a83238c0775f49ff32ada41828825c0fa1f6b30ac1f228d3440edc3c14f86b204a35837da8618dd5e59521 SHA512 755e37330fc16d99f630ed0036eaabf83b4f137123c72eae35fe47996d243ceaed1ddc6f1891efaeffb3f28fa4c0eb9b2be76308df50d98a97be24c37f5e41f0 -DIST discord-1.0.146-discord_game_utils.distro 3172533 BLAKE2B d820da64a700f033c3e318bfa8a87d38043eb7ecde4bce0f14f7e2d880707ebac401062ee60ec1ecaa80ceb9b7fa768fbf0081576de1e237fb775282ffd5ec53 SHA512 f23b41b7e55c6611a77767c4ccd7010bfc5a901d241ac91826b191ca7d894e5960eda1afde05a0b52564b555006ce762620b08c9378eff733a0b89c5fd49a3e4 -DIST discord-1.0.146-discord_krisp.distro 36158173 BLAKE2B 332f4c5b5d10e695cb6f944ba43904f0214389cb7c4fff3080a84552b4adc98169de677aacdb71411dacef6a08759bb60ff205e6771d7bb9e0970cbfc37f5573 SHA512 7283eb04ec779a5f679e7c90f793c5d9bb2a6a44507f966156d831f0013ebcad507fbcc07d037719740861f3e23f95a532b5c9d0da707932a0da9ffd7e17349d -DIST discord-1.0.146-discord_rpc.distro 30384 BLAKE2B eb7178155d05bf26a939877c35cbfd0520159bdc68eb3003859a12b63b5d8446f01562c818c832db96c988c35b7af65f42a6d0581781b5af05fc39e5ae6cac1e SHA512 6e75733d93b41b4a3d59749ce5331b9da4d6fb5fad1266bf639a948cc497c05b03ea3f15bfd6384e819730bd220dbf34dbb967c90f9683bb2529f73a4ed5897b -DIST discord-1.0.146-discord_spellcheck.distro 9889890 BLAKE2B 4503e444095421012d83281f2586c0fdc0ac3efe700e6bfd76f9f796820f9e711da472031aa2fac6712262ade16811a4be3a668961fd9d7505caa6a4944bf317 SHA512 aee5b9cd718d803618e6f83f4f004853f283e89c5c8bc87b61b85189787aed0c710bba2b9ab81e148e18c685e5a1bcbe18554cc67f6123be360c3299349d0edc -DIST discord-1.0.146-discord_utils.distro 4597694 BLAKE2B aa7009ba3466cca3ac339708fdf78554320baadc70b3cd9a930d0be20188c81053f8458d7c7ab02796c25391189b1d451107a299a0512fb1d2c9a06347fdc02a SHA512 e88e7ce27b6d406d1fe631964b772067bc52808a74ecb57a96b5585199ec2aceab405321f9d9faf9199870fd83823afc6c5402eb85c9ed41826cedb60d8925d9 -DIST discord-1.0.146-discord_voice.distro 32845629 BLAKE2B 07a376e84e0bb552507a55b704ca1423fba5c24a8b0c06f4114df0df01ff0dadf0256e11b53301c00cc2de728e21762b646e0096ee2f52fb58846333571d6149 SHA512 fc5dd9840f0b13bf8b66dc4901833c701293a914c54765c04c18414755f237284e93e1a7bf2660120507263500f9ab385c1c9966fe0f33e368b3fae9d695b432 -DIST discord-1.0.146-discord_zstd.distro 328071 BLAKE2B 7e5cd3914da41834a0b01466602e9e421600a9cf7c2c3c33c3405c06c90fe3be1b58cfc27c02e7e97bee0e7dd96657fdfe4326073534e94e733b71604e03d828 SHA512 b7a676bd7e7cb1a9d57aaad1c828499f7ecdc0360bb982a3138181bb29710354509c50998344004c73ca2b87f7866a603109c2cb79b848b3240fa08a35578b16 -DIST discord-1.0.146.distro 91381828 BLAKE2B 4dd4a2b2751a0adec640a29a23a12999ae5ec108e089671dba532d4b203ed63d7ec5e359277effa063d7718ac1bf032c5d1b5bdc7ccb92b7b48b25639f95fdf1 SHA512 dca9bbf55afcb1425af7bd0fc4d891fe0cc37859436a8b2a1ae9d29689d72e574dc2f974d468a86527c0420847fd27af5517da7b02075ee2eebe8bd2d43a7d09 DIST discord-1.0.147-discord_desktop_core.distro 525093 BLAKE2B e60942556c96bb40802a5955a4ed4e7d1510606839a9e870a6f7117569a2f4f93432515742dd0751312f644e9d9140e064dec61653ddd4ac849b71dbe26128a1 SHA512 0a0c02df8fd04e6671f391b052c7227b29aa805afd86688d4c435b4b7b6f6d3b58669c205f37f84a8057074e976fea449d8fb17f88011e370a5eb7058215a892 DIST discord-1.0.147-discord_erlpack.distro 2065488 BLAKE2B e15d3dd989d4d0c45e2d89f1fca8eb3a1941270967f949071fb39b10288478ce0778b2d2f55c409969ae7035b4674a7d0f877cfdd7518fccd71a079d2ca76b76 SHA512 798c6cb73018b4cec6ff1c94259be3d56b3051f3daaea6cd5fee26d2fb55dee109cafd978b33d2b54f260d6db0ba0876501d83e342e135b5ebfb05f7d744a696 DIST discord-1.0.147-discord_game_utils.distro 3172405 BLAKE2B 1556e8434e0af0a68a997ecf2cb343318fb650111b338d5b7cc3e453b3fd6577d8c5217a933729edb3ac5915b11d27f5a994ccfd8e7af3d241dbe5a4d3417bac SHA512 c027fe9cf7e60c0272a719ae56eb14bf2ceafb6d012fecf521750a5d8608668ae422b085e621458a0c7dde7cf75bf7a705052be4cee39a52cb21b8081d87ea6a @@ -19,4 +8,14 @@ DIST discord-1.0.147-discord_utils.distro 4597800 BLAKE2B c23c6bf4be84ba72df81f8 DIST discord-1.0.147-discord_voice.distro 32863361 BLAKE2B 0c9600f405401b0c7c1e718ce909fa1546456f7e1ec7032fdaad9c64b2126c93bfe09624120e959e0022c580253e77a6feb177f2a4f9e89026328dfd0905fbca SHA512 e561cf39de736024e9ada0f9a358b17b351e9a86fec023d08b7cef0b105739d33e040892127c25009f7ad27b14aaa4fcdc3b5866ef0b3ccd71d2b31c58dc63d4 DIST discord-1.0.147-discord_zstd.distro 328096 BLAKE2B fee95e0e1b9041844024460ae6dba19f89f823bfc8edb42fe492c0cc9b377d5fd1bcde810a71f7170810dd63e5e33985eeb5b81542adb174e644c3c55980854a SHA512 ff520ab95719fafb3c38d7592152c2914ae8b20245ad3bf58a7fe4b2afa06c824f0948954581e02afd9569db6669a0d93f430a6032ca62d8e5e7dbb46cb3099c DIST discord-1.0.147.distro 91387601 BLAKE2B 3648418ca590cf5e3fe51ef06960e90eb69ac4c9530b8120a56111ec60629d1b619eddf705872b258ff65bd9ffb2c8a4c0511fc19bd635b01f927e8ffc2cb5f2 SHA512 434f927e1f259adebbf7988a4c42a7eb6b5a4a271f0fa30ee13eaf234f83ed655a92edf182a17d8684f28e3d57beafd9b4bdf1bcaa755811f304e4689e582f6a +DIST discord-1.0.150-discord_desktop_core.distro 525281 BLAKE2B 82ea2921c9a64fd0aa7d80eca4208372598350a67ca0b38869c532d100d7cd5430a1c226c44c380f860ba3c50d631e01c71b1aaaa9527602ae4b6396653d260b SHA512 a96fbea3946631a63210812bb67e9921fdfc2c415e120e1919c1ec4880187b6cd9433668c5ca5fdbbfcc1c23c6a759995d734f0e9096baed4dea5da8eac9a536 +DIST discord-1.0.150-discord_erlpack.distro 2063817 BLAKE2B 75c0202bff58b42ed1f2a73d3b46433959f5251165362cf4819efe420ee098457a961fbc7d929842ceb42e4fb1e2b72ee1dbe6791bb8969c8d84c12bb09a58bf SHA512 621291c04f248d69e9ae0022d84e6903b375e75598ea3198f787c94fd4efe1b944df42a9b8a6974ef5cdc18de3f7db03da26c73a7bf176f2d3524d6a298e3ea9 +DIST discord-1.0.150-discord_game_utils.distro 3171493 BLAKE2B 8d04330ec0582c1e83524a47b55cccdc1a8de42d1c54b253da52590cf625a2768d9181e2f3d28a683127124330023aaf192bda495a796ce7cbf56da5e3d02eb8 SHA512 c92c12100a5181309503c1ba2ffd41a9e9287b21645d86119ef823f1192958ee6cfa6fcce657647b8cfdc65cad8b767cce53cb3300c996875343fe2c1d1faa14 +DIST discord-1.0.150-discord_krisp.distro 36151342 BLAKE2B 362c7bbc0c0328022494745125505e371faf848e143da18bee063211429428e7fb663251a97463974f350c91254efebd37be0a5d407b9c55c4485c04dd2cb876 SHA512 0464dada650407f44e7d3fd378e2fee36496dc898f25e2e486bb993d01afbc5233228b61ffa76a68ededba40887c91938d06c149280ca56e6c58790838d3a8e2 +DIST discord-1.0.150-discord_rpc.distro 30367 BLAKE2B 8dffdea4c750fb48611d5ac782bfd92795b040c5c1fdf6a350026dc5b46481f872cf9f5ad45613054c36c8799f703767f5dd1bb2dedb03e6e223e0aa985fde37 SHA512 75fb9521399db1ffac32b97baa6ed09055b243a83a2b83864f8ba52060cc204b308305b7d917d3e2c78f7aaeaeed2ea23b927cc34d973446907ed4f403dbd75f +DIST discord-1.0.150-discord_spellcheck.distro 9902947 BLAKE2B c010f7e7e968be02deafcda3bcafd19336cedd2e88a23e8e3434d86bb053cf5238341439166d44574c587ac137b17f0467747f93a1445b46dea84c6cfcd1d936 SHA512 ce8bf2acba824bb3bd400b13744498b65e295fc4dd586a7306ddcd53e41c8b14435d4ca0319bc956868a1fbd6b7ecf062379ba925a2a0f356b7e13e11159a512 +DIST discord-1.0.150-discord_utils.distro 4597651 BLAKE2B f028824c2733562c5777bc4eccb2755fb31653c66d4a0966abcd4d8fe974bdf6db209a646a890af03daa7bd27eed9afe044d76956e977964d656b018d3880f6a SHA512 ceb6589cd74c06766d26311422d1522f88dbcb569d7c600c0d1e915404f19bf8d35c310d6c6aa1813477809e0de21c0fbc7a4a74eaafd31b2e50e16cded8fdb7 +DIST discord-1.0.150-discord_voice.distro 32831145 BLAKE2B 027f04683a1b5b07cca78eb07a35a41ef6c9df43b6c5c673a8bb6e15f8d22b2e774c65ef4d49d0e10ed682df6c6a3834514aa3ad9f3d057174634c9825bdd04c SHA512 afa90192782ff0f7a03d9b0f0e3a53258ef7bb632ec991513c349d6b859cf26264f6cd1b9d54a96e9bc91afe1669bd849752aec22b5010c92cda0ef59e513ddd +DIST discord-1.0.150-discord_zstd.distro 328092 BLAKE2B 8c815df9894e10d2bd8ec7f4006a811d74fe863ffb02e2c5547e18d9fa1f47395b127ff5e1c9af81b384621459dcefb15eb0cab99671175e8ade9ff30a508b18 SHA512 a33345164429656bbcc28c48b6d82bf39ef622753686447199661ae2cb8a11780080db02a0a20d838a2dfb2625e4599478f8b16ea120c3ce250193f6133effd5 +DIST discord-1.0.150.distro 91367262 BLAKE2B 41a49c6b3df582e290a73ac71b5869caf1a75c8f9d4ec0e70b09445217c1aecec0cbf32b7955d2e781f7e2040414bee61215e99038f8c8d25a89223222e8f0a3 SHA512 f0a322304334265bc3ee1485eec718df70320a089992ac8c4c2802ce418e8d58d5b1fcf700ab98216f81512f5aeb4e29fedbf4dbddcc465ee90c9b815d4bc1e7 DIST discord-disable-breaking-updates-2f26748a667045d26bc19841f1a731b4be7a7514.py 1299 BLAKE2B b6c923c450a28405e2a439e0d1b8a83e01e0536c62095fafbae74612aa4e891df733aa13999ce6a8be3618fd14e154aec802aa4ee21aad1303b05626ffd23314 SHA512 a7ef493a216c71a5b02685cff6866bfc3940aaf9cdc73b58859c962d0d33b613349289ef7027359f184f42dddaed486b84f6d85b9023ab8530ab7ba66431c3c7 diff --git a/net-im/discord/discord-0.0.135.ebuild b/net-im/discord/discord-0.0.135.ebuild deleted file mode 100644 index 443ddec80668..000000000000 --- a/net-im/discord/discord-0.0.135.ebuild +++ /dev/null @@ -1,165 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -MY_PN="${PN/-bin/}" -MY_PV="${PV/-r*/}" - -CHROMIUM_LANGS=" - af am ar bg bn ca cs da de el en-GB en-US es es-419 et fa fi fil fr gu he hi - hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr sv - sw ta te th tr uk ur vi zh-CN zh-TW -" -PYTHON_COMPAT=( python3_{13..14} ) -UPDATE_DISABLER_COMMIT="2f26748a667045d26bc19841f1a731b4be7a7514" - -inherit chromium-2 desktop linux-info optfeature python-single-r1 unpacker xdg - -DESCRIPTION="All-in-one voice and text chat for gamers" -HOMEPAGE="https://discord.com/" -SRC_URI=" - https://dl.discordapp.net/apps/linux/${MY_PV}/${MY_PN}-${MY_PV}.tar.gz - https://github.com/flathub/com.discordapp.Discord/raw/${UPDATE_DISABLER_COMMIT}/disable-breaking-updates.py - -> discord-disable-breaking-updates-${UPDATE_DISABLER_COMMIT}.py -" -S="${WORKDIR}/${MY_PN^}" - -LICENSE="all-rights-reserved" -SLOT="0" -KEYWORDS="amd64" - -IUSE="appindicator +seccomp wayland" -REQUIRED_USE="${PYTHON_REQUIRED_USE}" -RESTRICT="bindist mirror strip test" - -RDEPEND=" - ${PYTHON_DEPS} - >=app-accessibility/at-spi2-core-2.46.0:2 - dev-libs/expat - dev-libs/glib:2 - dev-libs/nspr - dev-libs/nss - dev-libs/wayland - media-libs/alsa-lib - media-libs/fontconfig - media-libs/mesa[gbm(+)] - net-print/cups - sys-apps/dbus - sys-apps/util-linux - sys-libs/glibc - x11-libs/cairo - x11-libs/libdrm - x11-libs/gdk-pixbuf:2 - x11-libs/gtk+:3 - x11-libs/libX11 - x11-libs/libXScrnSaver - x11-libs/libXcomposite - x11-libs/libXdamage - x11-libs/libXext - x11-libs/libXfixes - x11-libs/libXrandr - x11-libs/libxcb - x11-libs/libxkbcommon - x11-libs/libxshmfence - x11-libs/pango - appindicator? ( dev-libs/libayatana-appindicator ) -" - -DESTDIR="/opt/${MY_PN}" - -QA_PREBUILT="*" - -CONFIG_CHECK="~USER_NS" - -src_unpack() { - unpack ${MY_PN}-${MY_PV}.tar.gz -} - -src_configure() { - default - chromium_suid_sandbox_check_kernel_config -} - -src_prepare() { - default - # remove post-install script - rm postinst.sh || die "the removal of the unneeded post-install script failed" - # cleanup languages - pushd "locales/" >/dev/null || die "location change for language cleanup failed" - chromium_remove_language_paks - popd >/dev/null || die "location reset for language cleanup failed" - - # fix .desktop exec location - sed --in-place --expression "/^Exec=/s:/usr/share/discord/Discord:/usr/bin/${MY_PN}:" \ - "${MY_PN}.desktop" || - die "fixing of exec location on .desktop failed" - - # Update exec location in launcher - sed --expression "s:@@DESTDIR@@:${DESTDIR}:" \ - "${FILESDIR}/launcher-r1.sh" > "${T}/launcher.sh" || die "updating of exec location in launcher failed" - - # USE seccomp in launcher - if use seccomp; then - sed --in-place --expression '/^EBUILD_SECCOMP=/s/false/true/' \ - "${T}/launcher.sh" || die "sed failed for seccomp" - fi - - # USE wayland in launcher - if use wayland; then - sed --in-place --expression '/^EBUILD_WAYLAND=/s/false/true/' \ - "${T}/launcher.sh" || die "sed failed for wayland" - fi -} - -src_install() { - doicon -s 256 "${MY_PN}.png" - - # install .desktop file - domenu "${MY_PN}.desktop" - - exeinto "${DESTDIR}" - - doexe "${MY_PN^}" chrome-sandbox libEGL.so libffmpeg.so libGLESv2.so libvk_swiftshader.so - - insinto "${DESTDIR}" - doins chrome_100_percent.pak chrome_200_percent.pak icudtl.dat resources.pak snapshot_blob.bin v8_context_snapshot.bin - insopts -m0755 - doins -r locales resources - - # Chrome-sandbox requires the setuid bit to be specifically set. - # see https://github.com/electron/electron/issues/17972 - fowners root "${DESTDIR}/chrome-sandbox" - fperms 4711 "${DESTDIR}/chrome-sandbox" - - # Crashpad is included in the package once in a while and when it does, it must be installed. - # See #903616 and #890595 - [[ -x chrome_crashpad_handler ]] && doins chrome_crashpad_handler - - # https://bugs.gentoo.org/905289 - newins "${DISTDIR}/discord-disable-breaking-updates-${UPDATE_DISABLER_COMMIT}.py" disable-breaking-updates.py - python_fix_shebang "${ED}/${DESTDIR}/disable-breaking-updates.py" - - exeinto "/usr/bin" - newexe "${T}/launcher.sh" "discord" || die "failing to install launcher" - - # https://bugs.gentoo.org/898912 - if use appindicator; then - dosym ../../usr/lib64/libayatana-appindicator3.so /opt/discord/libappindicator3.so - fi -} - -pkg_postinst() { - xdg_pkg_postinst - - optfeature_header "Install the following packages for additional support:" - optfeature "sound support" \ - media-sound/pulseaudio media-sound/apulse[sdk] media-video/pipewire - optfeature "emoji support" media-fonts/noto-emoji - if has_version kde-plasma/kwin[-screencast] && use wayland; then - einfo " " - einfo "When using KWin on Wayland, the kde-plasma/kwin[screencast] USE flag" - einfo "must be enabled for screensharing." - einfo " " - fi -} diff --git a/net-im/discord/discord-1.0.146.ebuild b/net-im/discord/discord-1.0.150.ebuild index 2bb428c4c8b4..008eb84bc750 100644 --- a/net-im/discord/discord-1.0.146.ebuild +++ b/net-im/discord/discord-1.0.150.ebuild @@ -46,7 +46,7 @@ S="${WORKDIR}/${MY_PN^}" LICENSE="all-rights-reserved" SLOT="0" -KEYWORDS="~amd64" +KEYWORDS="amd64" IUSE="appindicator +seccomp wayland" REQUIRED_USE="${PYTHON_REQUIRED_USE}" diff --git a/net-im/telegram-desktop/files/tdesktop-5.2.2-libdispatch.patch b/net-im/telegram-desktop/files/tdesktop-5.2.2-libdispatch.patch deleted file mode 100644 index dee252c5a7ea..000000000000 --- a/net-im/telegram-desktop/files/tdesktop-5.2.2-libdispatch.patch +++ /dev/null @@ -1,24 +0,0 @@ -# https://bugs.gentoo.org/881697 -# https://github.com/telegramdesktop/tdesktop/issues/17437 - ---- tdesktop-5.2.0-orig/cmake/external/CMakeLists.txt -+++ tdesktop-5.2.0-full/cmake/external/CMakeLists.txt -@@ -18,7 +18,7 @@ - add_checked_subdirectory(cld3) - endif() - add_checked_subdirectory(crash_reports) --if (LINUX) -+if (LINUX AND DESKTOP_APP_USE_LIBDISPATCH) - add_checked_subdirectory(dispatch) - endif() - add_checked_subdirectory(expected) ---- tdesktop-5.2.0-orig/cmake/variables.cmake -+++ tdesktop-5.2.0-full/cmake/variables.cmake -@@ -21,6 +21,7 @@ - endif() - - option(DESKTOP_APP_LOTTIE_USE_CACHE "Use caching in lottie animations." ON) -+cmake_dependent_option(DESKTOP_APP_USE_LIBDISPATCH "Use libdispatch instead of QThreadPool." OFF LINUX ON) - cmake_dependent_option(DESKTOP_APP_DISABLE_X11_INTEGRATION "Disable all code for X11 integration." OFF LINUX ON) - cmake_dependent_option(DESKTOP_APP_USE_ALLOCATION_TRACER "Use simple allocation tracer." OFF LINUX OFF) - cmake_dependent_option(DESKTOP_APP_USE_PACKAGED_LAZY "Bundle recommended Qt plugins for self-contained packages." OFF LINUX OFF) diff --git a/net-im/telegram-desktop/files/tdesktop-6.5.1-zlib-1.3.2.patch b/net-im/telegram-desktop/files/tdesktop-6.5.1-zlib-1.3.2.patch deleted file mode 100644 index e35f5e6fd47a..000000000000 --- a/net-im/telegram-desktop/files/tdesktop-6.5.1-zlib-1.3.2.patch +++ /dev/null @@ -1,12 +0,0 @@ -(part of a downstream quickfix batch, may still need to be looked at upstream) - -https://bugs.gentoo.org/970227 ---- a/Telegram/lib_base/base/zlib_help.h -+++ b/Telegram/lib_base/base/zlib_help.h -@@ -8,4 +8,4 @@ - --#include <zip.h> --#include <unzip.h> -+#include <minizip/zip.h> -+#include <minizip/unzip.h> - #include "logs.h" diff --git a/net-im/telegram-desktop/files/tdesktop-6.6.2-qt6-no-wayland.patch b/net-im/telegram-desktop/files/tdesktop-6.6.2-qt6-no-wayland.patch deleted file mode 100644 index f69d93129b08..000000000000 --- a/net-im/telegram-desktop/files/tdesktop-6.6.2-qt6-no-wayland.patch +++ /dev/null @@ -1,119 +0,0 @@ -Allow disabling wayland integration for Qt6 builds - -Upstream has removed the required toggle for wayland integration, and instead -is forcing it when qt has been built with USE=wayland. - -I'm not certain keeping patching it like this is feasible in the long term. A -method of disabling QT_FEATURE_wayland should be more appropriate. - -https://bugs.gentoo.org/928451 -https://github.com/desktop-app/cmake_helpers/commit/a428df5440e76a726abc30924766ac7da0cb381c - ---- tdesktop-6.6.2-full.orig/Telegram/lib_base/base/platform/linux/base_info_linux.cpp -+++ tdesktop-6.6.2-full/Telegram/lib_base/base/platform/linux/base_info_linux.cpp -@@ -340,7 +340,7 @@ - } - static const bool result = - #if QT_VERSION >= QT_VERSION_CHECK(6, 7, 0) --#if defined QT_FEATURE_wayland && QT_CONFIG(wayland) -+#if !defined DESKTOP_APP_DISABLE_WAYLAND_INTEGRATION && defined QT_FEATURE_wayland && QT_CONFIG(wayland) - qApp->nativeInterface<QNativeInterface::QWaylandApplication>() - #else // wayland - false ---- tdesktop-6.6.2-full.orig/Telegram/lib_base/base/platform/linux/base_linux_xdg_activation_token.cpp -+++ tdesktop-6.6.2-full/Telegram/lib_base/base/platform/linux/base_linux_xdg_activation_token.cpp -@@ -15,7 +15,7 @@ - namespace base::Platform { - - void RunWithXdgActivationToken(Fn<void(QString)> callback) { --#if defined QT_FEATURE_wayland && QT_CONFIG(wayland) -+#if !defined DESKTOP_APP_DISABLE_WAYLAND_INTEGRATION && defined QT_FEATURE_wayland && QT_CONFIG(wayland) - const auto window = QGuiApplication::focusWindow(); - if (!window) { - callback({}); ---- tdesktop-6.6.2-full.orig/Telegram/lib_ui/ui/platform/linux/ui_utility_linux.cpp -+++ tdesktop-6.6.2-full/Telegram/lib_ui/ui/platform/linux/ui_utility_linux.cpp -@@ -414,7 +414,7 @@ - } - #endif // !DESKTOP_APP_DISABLE_X11_INTEGRATION - --#if defined QT_FEATURE_wayland && QT_CONFIG(wayland) -+#if !defined DESKTOP_APP_DISABLE_WAYLAND_INTEGRATION && defined QT_FEATURE_wayland && QT_CONFIG(wayland) - void ShowWaylandWindowMenu(not_null<QWidget*> widget, const QPoint &point) { - static const auto wl_proxy_marshal_array = [] { - void (*result)( -@@ -548,7 +548,7 @@ - } - - bool WindowMarginsSupported() { --#if defined QT_FEATURE_wayland && QT_CONFIG(wayland) -+#if !defined DESKTOP_APP_DISABLE_WAYLAND_INTEGRATION && defined QT_FEATURE_wayland && QT_CONFIG(wayland) - static const auto WaylandResult = [] { - using namespace QNativeInterface::Private; - QWindow window; -@@ -575,7 +575,7 @@ - } - - void SetWindowMargins(not_null<QWidget*> widget, const QMargins &margins) { --#if defined QT_FEATURE_wayland && QT_CONFIG(wayland) -+#if !defined DESKTOP_APP_DISABLE_WAYLAND_INTEGRATION && defined QT_FEATURE_wayland && QT_CONFIG(wayland) - using namespace QNativeInterface::Private; - const auto window = not_null(widget->windowHandle()); - const auto platformWindow = not_null(window->handle()); -@@ -597,7 +597,7 @@ - } - - void ShowWindowMenu(not_null<QWidget*> widget, const QPoint &point) { --#if defined QT_FEATURE_wayland && QT_CONFIG(wayland) -+#if !defined DESKTOP_APP_DISABLE_WAYLAND_INTEGRATION && defined QT_FEATURE_wayland && QT_CONFIG(wayland) - if (::Platform::IsWayland()) { - ShowWaylandWindowMenu(widget, point); - return; ---- tdesktop-6.6.2-full.orig/Telegram/lib_ui/ui/widgets/popup_menu.cpp -+++ tdesktop-6.6.2-full/Telegram/lib_ui/ui/widgets/popup_menu.cpp -@@ -1053,7 +1053,7 @@ - 0), - _padding.top() - _topShift); - auto r = screen ? screen->availableGeometry() : QRect(); --#if QT_VERSION >= QT_VERSION_CHECK(6, 11, 0) && defined QT_FEATURE_wayland && QT_CONFIG(wayland) -+#if QT_VERSION >= QT_VERSION_CHECK(6, 11, 0) && !defined DESKTOP_APP_DISABLE_WAYLAND_INTEGRATION && defined QT_FEATURE_wayland && QT_CONFIG(wayland) - using namespace QNativeInterface::Private; - if (const auto native - = windowHandle()->nativeInterface<QWaylandWindow>()) { ---- tdesktop-6.6.2-full.orig/Telegram/lib_ui/ui/widgets/tooltip.cpp -+++ tdesktop-6.6.2-full/Telegram/lib_ui/ui/widgets/tooltip.cpp -@@ -112,7 +112,7 @@ - p.setX(m.x() - (s.width() / 2)); - } - --#if QT_VERSION >= QT_VERSION_CHECK(6, 11, 0) && defined QT_FEATURE_wayland && QT_CONFIG(wayland) -+#if QT_VERSION >= QT_VERSION_CHECK(6, 11, 0) && !defined DESKTOP_APP_DISABLE_WAYLAND_INTEGRATION && defined QT_FEATURE_wayland && QT_CONFIG(wayland) - using namespace QNativeInterface::Private; - create(); - if (const auto native ---- tdesktop-6.6.2-full.orig/cmake/options.cmake -+++ tdesktop-6.6.2-full/cmake/options.cmake -@@ -22,6 +22,13 @@ - ) - endif() - -+if (DESKTOP_APP_DISABLE_WAYLAND_INTEGRATION) -+ target_compile_definitions(common_options -+ INTERFACE -+ DESKTOP_APP_DISABLE_WAYLAND_INTEGRATION -+ ) -+endif() -+ - if (WIN32) - include(cmake/options_win.cmake) - elseif (APPLE) ---- tdesktop-6.6.2-full.orig/cmake/variables.cmake -+++ tdesktop-6.6.2-full/cmake/variables.cmake -@@ -27,6 +27,7 @@ - option(DESKTOP_APP_LOTTIE_DISABLE_RECOLORING "Disable recoloring of lottie animations." OFF) - option(DESKTOP_APP_LOTTIE_USE_CACHE "Use caching in lottie animations." ON) - cmake_dependent_option(DESKTOP_APP_DISABLE_X11_INTEGRATION "Disable all code for X11 integration." OFF LINUX ON) -+cmake_dependent_option(DESKTOP_APP_DISABLE_WAYLAND_INTEGRATION "Disable all code for Wayland integration." OFF LINUX ON) - cmake_dependent_option(DESKTOP_APP_USE_ALLOCATION_TRACER "Use simple allocation tracer." OFF LINUX OFF) - option(DESKTOP_APP_USE_PACKAGED_FONTS "Use preinstalled fonts instead of bundled patched ones." OFF) - option(DESKTOP_APP_USE_PACKAGED_RLOTTIE "Find rlottie using CMake instead of bundled patched one." OFF) diff --git a/net-libs/webkit-gtk/webkit-gtk-2.52.5-r410.ebuild b/net-libs/webkit-gtk/webkit-gtk-2.52.5-r410.ebuild index e3117e36abab..63dfb0ebe5bf 100644 --- a/net-libs/webkit-gtk/webkit-gtk-2.52.5-r410.ebuild +++ b/net-libs/webkit-gtk/webkit-gtk-2.52.5-r410.ebuild @@ -17,7 +17,7 @@ S="${WORKDIR}/${MY_P}" LICENSE="LGPL-2+ BSD" SLOT="4.1/0" # soname version of libwebkit2gtk-4.1 -KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="amd64 ~arm arm64 ~loong ~ppc ppc64 ~riscv ~sparc ~x86" IUSE="aqua avif custom-cflags examples gamepad keyring +gstreamer +introspection pdf jpegxl +jumbo-build lcms seccomp spell systemd wayland X" REQUIRED_USE="|| ( aqua wayland X )" diff --git a/net-libs/webkit-gtk/webkit-gtk-2.52.5-r600.ebuild b/net-libs/webkit-gtk/webkit-gtk-2.52.5-r600.ebuild index 24b3346b2a00..174f861bf821 100644 --- a/net-libs/webkit-gtk/webkit-gtk-2.52.5-r600.ebuild +++ b/net-libs/webkit-gtk/webkit-gtk-2.52.5-r600.ebuild @@ -17,7 +17,7 @@ S="${WORKDIR}/${MY_P}" LICENSE="LGPL-2+ BSD" SLOT="6/0" # soname version of libwebkit2gtk-6.0 -KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="amd64 ~arm arm64 ~loong ~ppc ppc64 ~riscv ~sparc ~x86" IUSE="aqua avif custom-cflags examples gamepad keyring +gstreamer +introspection pdf jpegxl +jumbo-build lcms seccomp spell systemd wayland X" REQUIRED_USE="|| ( aqua wayland X )" diff --git a/net-misc/dropbear/files/dropbear-2026.92-skip-failing-convert-test.patch b/net-misc/dropbear/files/dropbear-2026.92-skip-failing-convert-test.patch deleted file mode 100644 index 0845ea746bc1..000000000000 --- a/net-misc/dropbear/files/dropbear-2026.92-skip-failing-convert-test.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- a/test/test_dropbearconvert.py -+++ b/test/test_dropbearconvert.py -@@ -28,6 +28,9 @@ - if kt == 'dss' and keyformat is None: - pytest.skip("dss doesn't support openssh format") - -+ if keytype == "ed25519" and keyformat == "PEM": -+ pytest.skip("ssh-keygen does not support PEM format for type ed25519") -+ - os_kt = kt - if os_kt == 'dss': - # OpenSSH calls it 'dsa', Dropbear calls it 'dss' diff --git a/profiles/package.deprecated b/profiles/package.deprecated index 71e53cf2fc82..cc121f480040 100644 --- a/profiles/package.deprecated +++ b/profiles/package.deprecated @@ -17,6 +17,19 @@ #--- END OF EXAMPLES --- +# Michał Górny <mgorny@gentoo.org> (2026-07-27) +# The project is not actively developed since 2020, when the developer +# switched to Rust. The maintenance currently seems to be limited to +# mass merging slop security fixes. dev-python/dulwich seems to be +# the best available alternative right now. +dev-python/gitpython + +# Alfred Wingate <parona@protonmail.com> (2026-07-26) +# Discontinued upstream since 2019. +# Replaced by dev-ruby/sassc +# https://sass-lang.com/blog/ruby-sass-is-unsupported/ +dev-ruby/sass + # Michał Górny <mgorny@gentoo.org> (2026-06-10) # Part of stdlib since Python 3.11 (as tomllib). dev-python/tomli diff --git a/sci-calculators/qalculate-gtk/Manifest b/sci-calculators/qalculate-gtk/Manifest index d50de01f1fa8..a87d18634d53 100644 --- a/sci-calculators/qalculate-gtk/Manifest +++ b/sci-calculators/qalculate-gtk/Manifest @@ -1,3 +1,4 @@ DIST qalculate-gtk-5.10.0.tar.gz 3784042 BLAKE2B fabcdb841990a549957e9617f4cab58402f6c27729cffa706a4f56168de5e05ab2dba409fae1791876a5e447f639357b014170853c43522351854662ab557eae SHA512 150bac0613c0053750b45f429c730c7a13e57900bcf417fab258b3532d76da0bbbe1f8d8738b7208dd1d1243af44d936847e786ccd452cec78778aefd29158b2 +DIST qalculate-gtk-5.12.0.tar.gz 3801021 BLAKE2B 7a3b89285a3faf65e542cdbae9ca9fd77ff72c48539011c841d2d3af2846270c227d7e3d504106bb9a6d9ecd61bf54f494e71f409569a61c4f1fdd2aa978a902 SHA512 3efcea53f4ce7a3b31f2dc52af3f0b34b8aedbe7c5fa43a227ee91cb72fff60ced0000aeefa7e0df59451e4c20c136e986cf88b089e6b602791a5f6e428f67ec DIST qalculate-gtk-5.8.2.tar.gz 3095670 BLAKE2B 644dd1347defbc619623bc0e39b259601a7fe91b40573b61757596022bcc234b085d3277337e0dab6a45b6e0d102b8435ea735e0e0f7ef72645489d06a7a3145 SHA512 00cb454e68b251d8efc770dfaa0026e0e893c8dbb6301c0efe857c1308f7d31dd3fc14689ccbe0ef9bb329d3220e33b85744e330e48d16fc2104b099e94a00c4 DIST qalculate-gtk-5.9.0.tar.gz 3619981 BLAKE2B e30a14221d1374f77981b413858f8819143226f99cfdfa80962d6ad715aeb282d885b3af9c7c5f81c9e7fed1a2c1ca74c762c7c2a2919a3b7ef8040cbc18d42c SHA512 f3ed5aca18cd197e3d43f9af6013d22cc68a0fcf6f902d4d6540ab930b95899d3fad90c581bd62258e956e89d4f1e50b0d73c93ae7a82a88ceb082aa6662c678 diff --git a/sci-calculators/qalculate-gtk/qalculate-gtk-5.12.0.ebuild b/sci-calculators/qalculate-gtk/qalculate-gtk-5.12.0.ebuild new file mode 100644 index 000000000000..c9e53e0404e0 --- /dev/null +++ b/sci-calculators/qalculate-gtk/qalculate-gtk-5.12.0.ebuild @@ -0,0 +1,45 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Note: bump with sci-libs/libqalculate and sci-calculators/qalculate-qt! + +inherit optfeature xdg + +DESCRIPTION="Modern multi-purpose calculator" +HOMEPAGE="https://qalculate.github.io/" +SRC_URI="https://github.com/Qalculate/${PN}/releases/download/v${PV}/${P}.tar.gz" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86" + +RDEPEND="dev-libs/glib:2 + >=sci-libs/libqalculate-${PV}:= + x11-libs/cairo + x11-libs/gdk-pixbuf + x11-libs/gtk+:3 + x11-libs/pango" +DEPEND="${RDEPEND}" +BDEPEND=">=dev-util/gdbus-codegen-2.80.5-r1 + dev-util/intltool + sys-devel/gettext + virtual/pkgconfig" + +src_prepare() { + # Required by src_test() and `make check` + cat >po/POTFILES.skip <<-EOF || die + # Required by make check + data/calendarconversion.ui + data/periodictable.ui + EOF + + default +} + +pkg_postinst() { + xdg_pkg_postinst + + optfeature "gnuplot support" sci-libs/libqalculate[gnuplot] +} diff --git a/sci-calculators/qalculate-qt/Manifest b/sci-calculators/qalculate-qt/Manifest index 39d3500946d9..f0ba6529cfb7 100644 --- a/sci-calculators/qalculate-qt/Manifest +++ b/sci-calculators/qalculate-qt/Manifest @@ -1,3 +1,4 @@ DIST qalculate-qt-5.10.0.tar.gz 2040825 BLAKE2B 729a76dada619938878ae0d773d116cb58101d9196a860b54dfa311410fa6b7b14e00cd7dca177d5f74e3489b2903b3548e54934b5b64540abdde0d50716def6 SHA512 83af45f2b84c349aad1f5cd48264fc8131e139e462baf77ab74818808add66437e1fcde6a55ac78589e20247787c273111c88897591f5e3a3a56204d12ba51f3 +DIST qalculate-qt-5.12.0.tar.gz 2096399 BLAKE2B e0c409a90785ac737bf7ddeebb2f57314efdc598f2178adfedefb023776d8878be48d8755d1918359114459eee70af41ae0feb80a1635012f148731c11999b0d SHA512 ebedff48784efa19200a4496d250c99b56af03e79626ce5eefb77da81bb5bf80cae35dae4482da87fd1303a875ff4467061c795bf7ba4a36044fd013b44e4d21 DIST qalculate-qt-5.8.2.tar.gz 2027585 BLAKE2B d0adf9bb019fb49068b1ad693f4fb2ae32b0ae3b677e1e1d0efb4a4b3a6ab74e11d355bdc70a3fe9a59e601c3f422461d7c6a8c514c62520c8dd938f94b516df SHA512 b01a009829073fc1198443973a665e7fad3be9f4b7b070ca606b1355b88aeac467fe75eb729ced054d619d91881c6b26ba01e4c62ab2e30279f37b65e063dc68 DIST qalculate-qt-5.9.0.tar.gz 2043503 BLAKE2B 668b7e9c6630e41f40328c414affc625930335062ced51287ff0ddefd119356ec2e9c30e00843f1395abb58f1536b55a72f7f4ef94539f7ff0437c68c78e013a SHA512 943746116215b893a6c552592af76b2be163b62153c55f9916df7e8468c15d52f1dc7982db722c9b57e08e6d4bb7b8362edb21415b7ea20fe28f93c3f381c341 diff --git a/sci-calculators/qalculate-qt/qalculate-qt-5.12.0.ebuild b/sci-calculators/qalculate-qt/qalculate-qt-5.12.0.ebuild new file mode 100644 index 000000000000..68071b42f5d8 --- /dev/null +++ b/sci-calculators/qalculate-qt/qalculate-qt-5.12.0.ebuild @@ -0,0 +1,37 @@ +# Copyright 2022-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Bump with sci-libs/libqalculate and sci-calculators/qalculate-gtk! + +inherit optfeature qmake-utils xdg + +DESCRIPTION="Qt-based UI for libqalculate" +HOMEPAGE="https://github.com/Qalculate/qalculate-qt" +SRC_URI="https://github.com/Qalculate/${PN}/releases/download/v${PV}/${P}.tar.gz" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~arm64" + +DEPEND=" + dev-qt/qtbase:6[gui,network,widgets] + >=sci-libs/libqalculate-${PV}:= +" +RDEPEND="${DEPEND}" +BDEPEND="dev-qt/qttools:6[linguist]" + +src_configure() { + eqmake6 PREFIX="${EPREFIX}/usr" +} + +src_install() { + emake INSTALL_ROOT="${ED}" install +} + +pkg_postinst() { + xdg_pkg_postinst + + optfeature "gnuplot support" sci-libs/libqalculate[gnuplot] +} diff --git a/sci-libs/libqalculate/Manifest b/sci-libs/libqalculate/Manifest index b0689e1cbc3e..c6f30ed7d368 100644 --- a/sci-libs/libqalculate/Manifest +++ b/sci-libs/libqalculate/Manifest @@ -1,3 +1,4 @@ DIST libqalculate-5.10.0.tar.gz 2297914 BLAKE2B 3545d9893ef54296aa0dba9f6d8c064c9a8f2dfbfa6906eece54c9534c24b143ab49546e760264f33dfc78c87fc6dc4ecd0deae7cca3d7a9b0f096ee93596591 SHA512 4b9d0e07e7915acea052d153298d175dcfcc0e116e2c106d0296c06eb4459f2c072e813b590c3f92826bce29eea15c439f5a7984695b3bf36e48932218df5cc9 +DIST libqalculate-5.12.0.tar.gz 2342253 BLAKE2B ac895766d0ff611bfa266f208692d00b32a566c585287a0aba678dd6f72efac46ce6d48e3747ee93c96f239f8d45dd76b1ef0dd5d65d81310d0197ae3e450279 SHA512 0a0f648061fe79f5b4062216a3a56c9f448bcd905203d32002c358950fdb863775024216898b1ef283399e5cee08d5aa32bb5cf0e0260193a37c2a5a5048b8ac DIST libqalculate-5.8.2.tar.gz 2370999 BLAKE2B 4a7fd5d5a4977e2506c88b3cdfea681841d19e831b31bf644c923764c192b48c4b8b2659077f54e0784c49417b5611b3255801042aaa8d8f4c984f1ac3f0738b SHA512 7f35184fdab3a0bd10ae39c54023491aaa52160f9bd97c4b6e3bb465b49389009627719da2678015d9b297fa8339cc0abe48332fccfe51ad9b2ee888a608ac0a DIST libqalculate-5.9.0.tar.gz 2282817 BLAKE2B 74a53595ecd2e6487d46834b863bf45ee13c282c6a8ad9e5d7be4924996661aff7d3e77607d6d2a383b6e9993f06973a73a2c959dcd638b1e3db849361430845 SHA512 8c9e2515da0b4bd4d8116a196f2a5f32e8e20a6075e548db41ed40c252f9ae6d4b9997d6c4dd2574f32b42f2248af1f604c7c54ff8a96e08138e9c8153a6805c diff --git a/sci-libs/libqalculate/libqalculate-5.12.0.ebuild b/sci-libs/libqalculate/libqalculate-5.12.0.ebuild new file mode 100644 index 000000000000..06a910bcafc9 --- /dev/null +++ b/sci-libs/libqalculate/libqalculate-5.12.0.ebuild @@ -0,0 +1,89 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=9 + +# Bump with sci-calculators/qalculate-gtk and sci-calculators/qalculate-qt + +inherit autotools flag-o-matic toolchain-funcs + +MY_PV="${PV//b/}" + +DESCRIPTION="A modern multi-purpose calculator library" +HOMEPAGE="https://qalculate.github.io/" +SRC_URI="https://github.com/Qalculate/libqalculate/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}"/"${PN}-${MY_PV}" + +LICENSE="GPL-2+" +# SONAME changes pretty often on bumps. Check! +SLOT="0/23.3" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="+curl icu gnuplot +hardened readline test" +RESTRICT="!test? ( test )" + +DEPEND="dev-libs/gmp:= + dev-libs/libxml2:2= + dev-libs/mpfr:= + virtual/libiconv + curl? ( net-misc/curl ) + icu? ( dev-libs/icu:= ) + readline? ( sys-libs/readline:= )" +RDEPEND="${DEPEND} + gnuplot? ( >=sci-visualization/gnuplot-3.7 )" +BDEPEND="dev-util/intltool + sys-devel/gettext + virtual/pkgconfig" + +src_prepare() { + default + cat >po/POTFILES.skip <<-EOF || die + # Required by make check + data/currencies.xml.in + data/datasets.xml.in + data/elements.xml.in + data/functions.xml.in + data/planets.xml.in + data/prefixes.xml.in + data/units.xml.in + data/variables.xml.in + src/defs2doc.cc + EOF + + eautoreconf +} + +src_configure() { + # Needed for po-defs/Makefile + export CXX_FOR_BUILD="$(tc-getBUILD_CXX)" + export CXXCPP_FOR_BUILD="$(tc-getBUILD_CXX) -E" + + # bug #792027 + tc-export CC + + # bug #924939 + use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152 + + local myeconfargs=( + $(use_enable test tests) + $(use_enable test unittests) + $(use_with curl libcurl) + $(use_with gnuplot gnuplot-call) + $(use_enable !hardened insecure) + $(use_with icu) + $(use_with readline) + ) + + econf "${myeconfargs[@]}" +} + +src_install() { + # docs/reference/Makefile.am -> referencedir= + emake \ + DESTDIR="${D}" \ + referencedir="${EPREFIX}/usr/share/doc/${PF}/html" \ + install + + einstalldocs + + find "${ED}" -name '*.la' -delete || die +} diff --git a/sci-misc/jupyterlab-desktop-bin/Manifest b/sci-misc/jupyterlab-desktop-bin/Manifest index 8ae9d1515347..32f24fbbb6c5 100644 --- a/sci-misc/jupyterlab-desktop-bin/Manifest +++ b/sci-misc/jupyterlab-desktop-bin/Manifest @@ -1 +1,2 @@ DIST jupyterlab-desktop-bin-4.2.5.1.rpm 336515433 BLAKE2B 7173a3179b848471540070b172f5b196e7a0192bc3dd60d9ba20b129ce1276ac4707c6f37a2371707fdce1c2a4ed8943006e9e08b1464717f0d696ad5e11843d SHA512 62669c48a632441075bdf96796866e4a64601ad06f4e9fc85b52e3956aa6ce85dd7f52816cc3c9c4466eeff7759c92721dbabf274dc6001785cb71cb84e2ed9f +DIST jupyterlab-desktop-bin-4.6.2.1.rpm 411215781 BLAKE2B 61c5374bfd3ed78ddf1b805894dab998249b3f72bc3977fd98d4bb4f737f508bbd7191d72d57859ebae313a6ef8aeffe4d3b79eddb05eafb2a6ee0b8fc3e2e6c SHA512 163b2370ad21d56488746f6d00446c0968c8a59b08be74d092cda3cfa3b018a345fe5e8d9b9e0526920195bcefe5b78f2e4d4f2a55c2c22180134fb60eb08405 diff --git a/sci-misc/jupyterlab-desktop-bin/jupyterlab-desktop-bin-4.6.2.1.ebuild b/sci-misc/jupyterlab-desktop-bin/jupyterlab-desktop-bin-4.6.2.1.ebuild new file mode 100644 index 000000000000..fae4000ce759 --- /dev/null +++ b/sci-misc/jupyterlab-desktop-bin/jupyterlab-desktop-bin-4.6.2.1.ebuild @@ -0,0 +1,107 @@ +# Copyright 2019-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CHROMIUM_LANGS=" + af am ar bg bn ca cs da de el en-GB en-US es es-419 et fa fi fil fr gu he hi + hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr sv + sw ta te th tr uk ur vi zh-CN zh-TW +" + +RPM_COMPRESS_TYPE=xz +inherit chromium-2 desktop rpm xdg + +DESCRIPTION="JupyterLab desktop application, based on Electron" +HOMEPAGE="https://jupyter.org/" +SRC_URI="https://github.com/jupyterlab/${PN%%-bin}/releases/download/v$(ver_rs 3 -)/JupyterLab-Setup-Fedora-x64.rpm -> ${P}.rpm" +S="${WORKDIR}" + +# Electron bundles a bunch of things +LICENSE=" + MIT BSD BSD-2 BSD-4 AFL-2.1 Apache-2.0 Ms-PL GPL-2 LGPL-2.1 APSL-2 + unRAR OFL-1.1 CC-BY-SA-3.0 MPL-2.0 android public-domain all-rights-reserved +" +SLOT="0" +KEYWORDS="-* ~amd64" +RESTRICT="bindist mirror" + +RDEPEND=" + >=app-accessibility/at-spi2-core-2.46.0:2 + dev-libs/expat + dev-libs/glib + dev-libs/nspr + dev-libs/nss + >=dev-python/jupyterlab-$(ver_cut 1-3) + media-libs/alsa-lib + media-libs/mesa + net-print/cups + sys-apps/dbus + sys-libs/glibc + x11-libs/cairo + x11-libs/gdk-pixbuf + x11-libs/gtk+:3 + x11-libs/libdrm + x11-libs/libX11 + x11-libs/libxcb + x11-libs/libXcomposite + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libxkbcommon + x11-libs/libXrandr + x11-libs/libxshmfence + x11-libs/pango +" + +QA_PREBUILT="opt/JupyterLab/*" + +pkg_pretend() { + chromium_suid_sandbox_check_kernel_config +} + +src_prepare() { + default + # cleanup languages + pushd "opt/JupyterLab/locales" || die + chromium_remove_language_paks + popd || die +} + +src_configure() { + chromium_suid_sandbox_check_kernel_config + default +} + +src_install() { + local size=512 + doicon -s ${size} "usr/share/icons/hicolor/${size}x${size}/apps/jupyterlab-desktop.png" + + domenu usr/share/applications/jupyterlab-desktop.desktop + + local DESTDIR="/opt/JupyterLab" + pushd "opt/JupyterLab" || die + + exeinto "${DESTDIR}" + doexe chrome_crashpad_handler jupyterlab-desktop *.so* + + insinto "${DESTDIR}" + doins *.pak *.bin *.json *.dat + insopts -m0755 + doins -r locales resources + + dosym "${DESTDIR}"/jupyterlab-desktop /opt/bin/jupyterlab-desktop + popd || die +} + +pkg_postinst() { + xdg_pkg_postinst + elog "" + elog "On initial startup you will be prompted to select the python environment of" + elog "your choice. Either select a specific python version, e.g. /usr/bin/pythonX.Y," + elog "or choose /usr/bin/python to follow the system wide setting in" + elog "/etc/python-exec/python-exec.conf." + elog "Please note that only python environments corresponding to the enabled" + elog "PYTHON_TARGETS on dev-python/jupyterlab will work." + elog "" +} diff --git a/sys-apps/acl/acl-2.4.0.ebuild b/sys-apps/acl/acl-2.4.0-r1.ebuild index c215e1806aa8..da7d856434f9 100644 --- a/sys-apps/acl/acl-2.4.0.ebuild +++ b/sys-apps/acl/acl-2.4.0-r1.ebuild @@ -28,6 +28,10 @@ LICENSE="LGPL-2.1+ GPL-2" SLOT="0" IUSE="nls static-libs" +# attr dep should be obsolete with >=2.4.0 but there's a configure check +# left, and also some header use in libacl/ still (bug #978746, reported on acl-devel). +DEPEND="sys-apps/attr" +RDEPEND="${DEPEND}" BDEPEND+=" nls? ( sys-devel/gettext )" src_prepare() { diff --git a/sys-apps/acl/acl-9999.ebuild b/sys-apps/acl/acl-9999.ebuild index c215e1806aa8..da7d856434f9 100644 --- a/sys-apps/acl/acl-9999.ebuild +++ b/sys-apps/acl/acl-9999.ebuild @@ -28,6 +28,10 @@ LICENSE="LGPL-2.1+ GPL-2" SLOT="0" IUSE="nls static-libs" +# attr dep should be obsolete with >=2.4.0 but there's a configure check +# left, and also some header use in libacl/ still (bug #978746, reported on acl-devel). +DEPEND="sys-apps/attr" +RDEPEND="${DEPEND}" BDEPEND+=" nls? ( sys-devel/gettext )" src_prepare() { diff --git a/sys-apps/renameutils/files/renameutils-0.12.0-c23.patch b/sys-apps/renameutils/files/renameutils-0.12.0-c23.patch new file mode 100644 index 000000000000..e86efb21f716 --- /dev/null +++ b/sys-apps/renameutils/files/renameutils-0.12.0-c23.patch @@ -0,0 +1,146 @@ +https://bugs.gentoo.org/944428#c2 + +--- a/src/common/hmap.c ++++ b/src/common/hmap.c +@@ -363,7 +363,7 @@ hmap_iterator(HMap *map, HMapIterator *it) + * function. But no other entry. + */ + void +-hmap_foreach_value(HMap *map, void (*iterator)()) ++hmap_foreach_value(HMap *map, void (*iterator)(void*)) + { + uint32_t c; + +@@ -378,7 +378,7 @@ hmap_foreach_value(HMap *map, void (*iterator)()) + } + + void +-hmap_foreach_key(HMap *map, void (*iterator)()) ++hmap_foreach_key(HMap *map, void (*iterator)(void*)) + { + uint32_t c; + +--- a/src/common/hmap.h ++++ b/src/common/hmap.h +@@ -50,8 +50,8 @@ void *hmap_put(HMap *map, void *key, void *value); + bool hmap_contains_key(HMap *map, const void *key); + void *hmap_remove(HMap *map, const void *key); + void hmap_iterator(HMap *map, HMapIterator *it); +-void hmap_foreach_key(HMap *map, void (*iterator)()); +-void hmap_foreach_value(HMap *map, void (*iterator)()); ++void hmap_foreach_key(HMap *map, void (*iterator)(void*)); ++void hmap_foreach_value(HMap *map, void (*iterator)(void*)); + void hmap_clear(HMap *map); + size_t hmap_size(HMap *map); + void hmap_set_hash_fn(HMap *map, hash_fn_t hash); +--- a/src/common/llist.c ++++ b/src/common/llist.c +@@ -445,7 +445,7 @@ llist_is_empty(LList *list) + } + + void +-llist_iterate(LList *list, void (*iterator_func)()) ++llist_iterate(LList *list, void (*iterator_func)(void*)) + { + LNode *entry; + for (entry = list->first; entry != NULL; entry = entry->next) +--- a/src/common/llist.h ++++ b/src/common/llist.h +@@ -68,7 +68,7 @@ LList *llist_clone(LList *list); + void **llist_to_array(LList *list); + void **llist_to_null_terminated_array(LList *list); + +-void llist_iterate(LList *list, void (*iterator_func)()); ++void llist_iterate(LList *list, void (*iterator_func)(void*)); + void llist_iterator(LList *list, LListIterator *it); + + void llist_reverse(LList *list); +--- a/src/common/tmap.c ++++ b/src/common/tmap.c +@@ -507,7 +507,7 @@ predecessor(TMapNode *node) + #endif + + static void +-tmap_foreach_nodes_key(TMapNode *node, void (*iterator)()) ++tmap_foreach_nodes_key(TMapNode *node, void (*iterator)(void*)) + { + if (node->left != &nil) + tmap_foreach_nodes_key(node->left, iterator); +@@ -517,7 +517,7 @@ tmap_foreach_nodes_key(TMapNode *node, void (*iterator)()) + } + + static void +-tmap_foreach_nodes_value(TMapNode *node, void (*iterator)()) ++tmap_foreach_nodes_value(TMapNode *node, void (*iterator)(void*)) + { + if (node->left != &nil) + tmap_foreach_nodes_value(node->left, iterator); +@@ -527,14 +527,14 @@ tmap_foreach_nodes_value(TMapNode *node, void (*iterator)()) + } + + void +-tmap_foreach_key(TMap *map, void (*iterator)()) ++tmap_foreach_key(TMap *map, void (*iterator)(void*)) + { + if (map->root != &nil) + tmap_foreach_nodes_key(map->root, iterator); + } + + void +-tmap_foreach_value(TMap *map, void (*iterator)()) ++tmap_foreach_value(TMap *map, void (*iterator)(void*)) + { + if (map->root != &nil) + tmap_foreach_nodes_value(map->root, iterator); +--- a/src/common/tmap.h ++++ b/src/common/tmap.h +@@ -51,8 +51,8 @@ void *tmap_remove(TMap *map, const void *key); + void tmap_iterator(TMap *map, TMapIterator *it); /* value iterator */ + bool tmap_iterator_partial(TMap *map, TMapIterator *it, const void *match, comparison_fn_t comparator); + void tmap_clear(TMap *map); +-void tmap_foreach_key(TMap *map, void (*iterator)()); +-void tmap_foreach_value(TMap *map, void (*iterator)()); ++void tmap_foreach_key(TMap *map, void (*iterator)(void*)); ++void tmap_foreach_value(TMap *map, void (*iterator)(void*)); + + #ifdef ENABLE_TMAP_TESTING + #include <stdio.h> +--- a/src/list.c ++++ b/src/list.c +@@ -166,14 +166,14 @@ import_command(char **args) + hmap_free(map_files); + if (ferror(fh)) { + warn(_("%s: cannot read from file: %s\n"), quotearg(args[1]), errstr); +- llist_iterate(new_files, free_file_spec); ++ llist_iterate(new_files, (void(*)(void *))free_file_spec); + llist_free(new_files); + fclose(fh); + return; + } + fclose(fh); + +- llist_iterate(work_files, free_file_spec); ++ llist_iterate(work_files, (void(*)(void *))free_file_spec); + llist_free(work_files); + work_files = new_files; + } +@@ -370,7 +370,7 @@ list_files(char **args) + free_plan(plan); + plan = NULL; + } +- llist_iterate(work_files, free_file_spec); ++ llist_iterate(work_files, (void(*)(void *))free_file_spec); + llist_clear(work_files); + + if (!process_ls_output(firstdir, work_files, ls_fd)) { +--- a/src/qcmd.c ++++ b/src/qcmd.c +@@ -263,7 +263,7 @@ main(int argc, char **argv) + free_plan(plan); + + /*dump_spec_list(work_files);*/ +- llist_iterate(work_files, free_file_spec); ++ llist_iterate(work_files, (void(*)(void *))free_file_spec); + llist_free(work_files); + free(all_options); + free(editor_program); diff --git a/sys-apps/renameutils/renameutils-0.12.0.ebuild b/sys-apps/renameutils/renameutils-0.12.0.ebuild index 80ed8c2901f8..bdb88cf0a49a 100644 --- a/sys-apps/renameutils/renameutils-0.12.0.ebuild +++ b/sys-apps/renameutils/renameutils-0.12.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -20,6 +20,7 @@ RDEPEND="${DEPEND}" PATCHES=( "${FILESDIR}"/${P}-typo.patch "${FILESDIR}"/${P}-autopoint.patch + "${FILESDIR}"/${P}-c23.patch ) src_prepare() { diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest index 241769a89f76..6d9588c066ad 100644 --- a/sys-devel/gcc/Manifest +++ b/sys-devel/gcc/Manifest @@ -23,6 +23,7 @@ DIST gcc-13-20260624.tar.xz 84614412 BLAKE2B 84395636773b8d14ac7908e7f9ae64c55ed DIST gcc-13-20260701.tar.xz 84614044 BLAKE2B b5c6a5ec54cd1bce45bad201892d59d9f672403f1b40c580da1cbb32fead817d09bdb674d9fc6ae664e97a8f1480fc635de3174f39608e09cde6e4d7def21d68 SHA512 4fa6cbfad37950f6f9cdecfc2782a570a5f59774adb2a24120049c4a2007730988a1eef80f36f1b0bfee2ebeef754fb30029140c3364089f3d2cd055e74f6462 DIST gcc-13-20260708.tar.xz 84617648 BLAKE2B 841a0f9806c74d01547c8d8f0e716f9991d81398a7f70279a654bf0079b6d79384974d173cdf927a7d1eeaaa7d3f0665d963ee1c95135bd16b92a4cf98719215 SHA512 b28615b77bdc4839b88775842a7763ba779fc1246adf2afedd6472ebdaed98f15819a7b746d8fbf028e564b8c596418e8593e9d42993ce18d92f15f55d50e4cf DIST gcc-13-20260715.tar.xz 84621548 BLAKE2B 476965a264994adc359c7340fec5470013d33debea7b2a8b56ebfa01e61967a24a6d950ce9dbca68b558046a676ecb05751b37f7fec42841e1a9ba2fd3032409 SHA512 1979288927926526ef85712b1a4d4172e03204d89ef2f217f12ed69f9fdecd622d248ac68beb7c13392ee1c51857905fa8c56c75c1ca0c3af1802600d22c0e4e +DIST gcc-13-20260722.tar.xz 84613400 BLAKE2B fbef224dffa582641e2b88689be148fd1b471325a7a74979866952f6eac12e8fbe4642b9f2e1a33f95bfc09a5890fead3f61200be69400f524009b622a06c285 SHA512 eefa873d0596c13befaccde28d44dbb6b5ef8c890b6fb7e3a82709307e752d341f6a8d47d9ac25587bd2fefcf12b861823c3c1f50cbffb7dbf5c62a12f8c58dc DIST gcc-13.2.0-musl-patches-2.tar.xz 5292 BLAKE2B c057d6574d03c05854edaa9f3fd40e9149662b04f3ac7a7db3eb078d73a7b535726d1bf52e5b12736dedb2f9898ad731f2e48a6421fcfbf7b90f929dee072fcb SHA512 a691da0c87c443a5e9d23731f4005f27871c5b12bc9102873ffa24d374aa7b9fbd187c4f5635d23fa9ffb17e351e76173c2d3fdf40646e355c4cb314b538de69 DIST gcc-13.2.0-patches-3.tar.xz 30956 BLAKE2B 29ce043b46645640ca1e983397af3e158588ad87575f0bc59451ea4a7dd5e3bb5b190ed031de6a22cd790d423ba111e95d222187dd09985dceb12db9f0a2d907 SHA512 4ffecae7be320124ad0c4e71e39e142b7aa8db0e70b5f486f491d7a33ea31efc6464c6abeea77df02a8bd5cf81f08225d625c8af5c27f9afa32c0d7d989f7a3c DIST gcc-13.2.0.tar.xz 87858592 BLAKE2B 0034b29d3d6cc05821f0c4253ce077805943aff7b370729dd203bda57d89c107edd657eeddc2fb1e69ea15c7b0323b961f46516c7f4af89a3ccf7fea84701be2 SHA512 d99e4826a70db04504467e349e9fbaedaa5870766cda7c5cab50cdebedc4be755ebca5b789e1232a34a20be1a0b60097de9280efe47bdb71c73251e30b0862a2 @@ -42,6 +43,7 @@ DIST gcc-14-20260604.tar.xz 88473776 BLAKE2B 0d022d76185b04d314b05ee0e7906b030df DIST gcc-14-20260611.tar.xz 88470760 BLAKE2B b4c70945e290ce5a6eff36161ca0d3678dc809910e02785b9e3ac52664a6cf1ed8a824d3f4820572b77feafdd247d19f3b5aecd82d324bf29f2eb968a6b5e8fd SHA512 a66030357aaf596263386d3d91d686a739e77b6200a3fcbba40accc70049282efbd42a16323dd5c539a21239645c01ad625fd1ab537d8c9fa5b573e38ee59d3d DIST gcc-14-20260618.tar.xz 88486332 BLAKE2B 51717d015582d4b6e8690abb731681029354c53b8fdf6d8c4ff06d10aaae70ba8d89029c52d10c4e6792e09357378e8691ee96bbc77cdba28f5a12a5b2adefbb SHA512 1edaefad5cb9d76c364208e0b4fae5f3a7ba0583866551b1f48b41893ef4f902746812b8ab53c050e5c429db21c24693d48882b37b3df2881dbb9988e25846fa DIST gcc-14-20260716.tar.xz 88509636 BLAKE2B 1e31c1c969a3ee7184d6e466dc9bf627e67e98f2c61fc4d34a74b02d7128718f7e8d0eb3a178b4e9734665fe93eeccf42e9bf5ba80e62b583044dab93b7939b1 SHA512 c587f5568ae6e8b9089dcb5e4753ad3ef5d807c3c30d329407e6be093e0a0ef26906c8dbc33a5aef20168371c10ded69c067e05acf42696eee45ade981ade321 +DIST gcc-14-20260723.tar.xz 88515920 BLAKE2B 256ee68d45b9bff530ae6d7d19ab5b2419a339a0a7a6deacc7a889c0a0fa0ae3b80a9de8ea4160b47376b1bd088d77c2348206b5781a1759201d9bf539dea927 SHA512 ee56897d9693e4d15574648cb6bec61c48fc9cf3aaf343228e9f9c988e8264b71da471b13591ea4e12092aa32216ce951e6f066226483d51b081048cf6832991 DIST gcc-14.3.0-musl-patches-2.tar.xz 6888 BLAKE2B e2f9ce6d445b7ced8f78c18585887422ffdd32356368a456a7cfde5a1854515b32546c1d25a2ab8637ee62d04a2c0bda1afc8d53c44e5c80c12499918c3c18fc SHA512 0b59d228213024cd93d9ffbd4ae5947021db2dc71bd320cc0e4ccf523d39f72e61be25c1a49a343729fe7b9abf7181503de3e650b255d80ab6d969d0de317d19 DIST gcc-14.3.0-patches-4.tar.xz 28116 BLAKE2B 5804f10b40befad1cb9eab4e536377c08aed8c54d3de27f188ae2d52fa7c082a529ad9cb64f9574087afe74e64138c9fc918d653bd2c1d062b8b68d5c7ab640d SHA512 75ee4895efea0131107cf664a0f9fd10f38da0d0f93704e1920778e07f1a860d872a97e1e528f8e1ab754cca25948bb09c444b80cc04f5ae3a516336290bb99c DIST gcc-14.3.0-patches-5.tar.xz 53952 BLAKE2B 3e5f63d760caf3c18c0f683c00170bb71998b4f0e15552103359d5c0954144676f6ca60e3e367a94cbdff0ab9bec21f3e04e30c38aae8f7e79911da30e6aeb76 SHA512 1702b7f6ee791468d02fcb9d418d2dd48e10cd6dc6eab0cf455aaf848bb78d953b00690fd78cab1ddd5af02acc237072c99ee43f0e512ae3e2e5f922f40f0dfe @@ -63,6 +65,7 @@ DIST gcc-15-20260626.tar.xz 92467392 BLAKE2B 550f3c27ca29390f25930bd457457062bbc DIST gcc-15-20260703.tar.xz 92460800 BLAKE2B 861549f8c17d79f9613e85ae455989e1ec96aa7d8da872e88254c70193fa2ab26918918ae8a290a5aa8986a55f1d91b3854fee308c5a8c86b960204ff750fbd5 SHA512 0a6889326713c1bac4486512f0d34ac6576293810ab5dd6678766185889e8f55c1af841dca5b3240e89c7aa3421be1fdccfcaf3f20ca58fbbfcf1bd25c958d9c DIST gcc-15-20260710.tar.xz 92477556 BLAKE2B 2517f39cc25e43ef36ed6de251ecdadf93a604f1de3f95f4fbf26eee8d52f13581e8065890a86a851227dac0709ea5250b4fd1830b64e8ca4110f13ba055c3a2 SHA512 45609630f6207327d7dc5a7e076b6105afb67a4bfa03ee17e392ae14fecb674cb530fe5068f8023f8a5569110fa4ca734d14d7490c11b28e838ba66be33053ae DIST gcc-15-20260717.tar.xz 92482140 BLAKE2B ae84ad42a0f5a35a36c362340298c94c8e8a64c7695102bb3a29b394527033186bf3599323ae8b1a478e215806cee702bfa48740421c504eefbafacbe74d2086 SHA512 91aaf673637458ebf73df2b1d87c21c9cbf432211b98e6dff965ae0f073f2ea8be8921a9828711fb6c10b9b3ec2e20213d118a05c08f31b8192ab291b448375d +DIST gcc-15-20260724.tar.xz 92484484 BLAKE2B 5d4803dbf9123408e941f923318b1d9a3a398194113556f87bac9a7b417cba2dec16307b5448bdea91b447000ee860fcb90ac9323465512494ce8c72d179af7b SHA512 4119a5b2eb8312f666dc31946c57f51e308f573f39860ac5db950cc4886920212519f1b4cc9beef588a29d6f6842b60b29f529925fe2014bdd92d8593187ae0c DIST gcc-15.2.0-musl-patches-1.tar.xz 7168 BLAKE2B 6b7cfb123c3a691693240db815e6852a1e6c3820baa499368c463e0a0c1490c701053cfea10bf1d33f89dd2ba7bbddf63c4e6e0976590e3aaf1fee78b9282079 SHA512 ab80ffd69b9ead1fe06a9433faaa97ae53947d214999e77ea363fa6435de080d031a1aa6869e1dc088e800317952f2dc249a9e872113db56fb76f0a432240871 DIST gcc-15.2.0-patches-2.tar.xz 18708 BLAKE2B 09c54bd1b8436e12a3da1c3ee41017cd3e960268a5d4637252152b44a4cc93934d4dc93eff842d7dcee4d1688b7f2d98be48114ef5c864793242177f7549c933 SHA512 f11cfafe00f7d18e05a316bd1dc522477cc4118fdd65019cf85bca674ff0180951506fef84ce0b5b13190ccfe44c777a64afdc602a4580595005b43b79ae7411 DIST gcc-15.2.0-patches-4.tar.xz 19912 BLAKE2B 255d6435fe5b205d23d04eb885c55b421b1e6ffc30623fad5fe8a4cee5582f210e9851165b0976629d7e49288366a14635acdf1ad70f6d2fe288bdf88a9416a5 SHA512 f36c0a1e8abbb25cebfd93965950c072f33d8dbbc0be285e8e374a3602fe7e7cae3dfe44f24856d2231bcbfb40fe0c1de3b629e2f573d97f82212a7acf52ccc8 @@ -84,6 +87,7 @@ DIST gcc-16-20260627.tar.xz 98980236 BLAKE2B 48c1a93aa5bc19b8253a434e5d618cc90c8 DIST gcc-16-20260704.tar.xz 98986144 BLAKE2B b076e3ead68d27af90c9154c3b0e56fbb6fa07cf7d6d951ae56bec32071487a156c7cbf26bf56a0c29cd3292dbda51b338bcd58f80438d39e08f252effe9afac SHA512 c3501b4a21c4de8dd6cb28b03cb42e9f6d167491ef39f8957d8995e14c4608fa7de9fe3c4ed9fbc0ad169fb24e2d40fdec1e6689c2abf0bc1e57126e1025ec26 DIST gcc-16-20260711.tar.xz 98998588 BLAKE2B 43a6fc591a66a240ec31f301eb5f38bf851e53750a720360f413fdb626ba74c56d5f9c949341d5320b6524003cfae6a712f063664a61da55f1bd968653a56fad SHA512 20b287bf06e263675c8f9bea7ae65432d375ab2005ebcdd7373d60b22ba87b3dfb7808f19167e251ad2c0fbf4d9d21ee1c8cb3736b3b349cbb2f98a25bf921b0 DIST gcc-16-20260718.tar.xz 99011700 BLAKE2B 727ad34ae3f964ad86edd072c159cbb5201efd0cb5996cd515895e1f024a44572090e6595a1082509244b5a7fc4faf3bd75eee07883246905fbb66b9d6effa02 SHA512 b621bd5a602468576cbd563fec4a1a2f1b71e89a9f248403d3dd92d8d1c3d7e6439e93eed912d78f71b9ca0e3acff7f786ecb62d9560ba837dcaaddc6b38d946 +DIST gcc-16-20260725.tar.xz 99059320 BLAKE2B a7573939ff5e0f57cebfd3a570622a9c4f0c55834b1d7be2d6d85b0afe94a5431a51aaae041016464252b03dac04dbae3089968571b51567133da00aac136fbe SHA512 16d82c8f3d4d644d63c34120d101b54f6dc421efd2111deacd25b08252f1154b29bf8a0b52c4d57d816a05f9ab1d7293aab54bf5e8840fd2b49ccb009fad9974 DIST gcc-16.1.0-musl-patches-1.tar.xz 3036 BLAKE2B 348d0233c92e6b269011342a170989bb6375ff267b6ecfc00aafab2f793b925f1cccd654f438a4f88168a7999cab965aadfb6dfc9957a9b1a5bca62c326e0b84 SHA512 dc9c2d4a6e9088ad245039a962333ecba8476288844c686e7df9c867c8018451fccbd645a5690d554ee39809e6467285b3c619553edfed379c5f84c003bcb7e5 DIST gcc-16.1.0-patches-1.tar.xz 25128 BLAKE2B 487f8e1f204b8218ae54ef093fd3b99dd94a24e0fdc22ac37182b28e382e5601edc85e9af5c8374e76a576c8e8280cb84603e6f60bfb645a2adff5ee8e2e0070 SHA512 f5b4aefa101cef70c6bd78c689e90b0a30db14718ae2ff01827fe13af793f812616f16cc705fa333676f31025f3e840e243ef52851d32278b86d8b515589a2d9 DIST gcc-16.1.0-patches-2.tar.xz 26584 BLAKE2B 3597414aa1bedace5444834778bb666fc3372f3703975d5bc4656a792dbe498a76be582254bb3400f157cfcce2925c117d19595380fa2ffb6dab1e6f0d36ad57 SHA512 480a457b8944df5dd189c912d76457d650c348bce161465fd6031dd7c2803f8f9b26ef31b4ae8a8770c88eaa9c59a42c06ee1be3e1c8ec718974dda8b38a84ad @@ -102,8 +106,10 @@ DIST gcc-17-20260628.tar.xz 99479040 BLAKE2B 0cc20cccf6acd0efbabc0e7a2282bb694af DIST gcc-17-20260705.tar.xz 99562960 BLAKE2B 940a4601a98682bf268e8f992991866629749bb6ec3613c708c2cbb48829b0315ee7f8bdcb0de34398ba7d3a4a89ea5a538641c145523bda444e36ceed55d673 SHA512 2b76d0549aa6184d75e0cb9ab58210141ed920804eaad28642c8e5423063c1a0295115ee3df9488352b1051e0c01775ac021c8d85d2669b8c2653de598334dd1 DIST gcc-17-20260712.tar.xz 99644004 BLAKE2B 44ec1406c4a244680784f5b0b58680fa46e15c4f6d91b5222d38a24a45c8e8e26df8cec431183a42b94b2b775ac5e680219dfe8e8ff70d56bab9446582bdc9e7 SHA512 805fdb8def2362c9cc87087c86d2a144076371cf3f2da0bfe9ccb2cfcd7b04f40db36869972476bf936213e6eb4aa1a45a2248175a3d717308490f74941171cd DIST gcc-17-20260719.tar.xz 99705072 BLAKE2B 1b1df12903d2764a55bbaf84e124049102ede274669af17092614670aa1dc74646e60521b1c6dcf13fd4d2979605d02e26b1ff711048cd3727e45d22dfdc694a SHA512 2c102293aeaaa13b046d0f68e6b6ba98b6e1fcf2540437e2dfbb3d07b2b44ab3d7f2b6cfea2a96fbed5cfd28b2aa285bfcb202dc996cbb524255bcf84b098fbc +DIST gcc-17-20260726.tar.xz 99770080 BLAKE2B 2c3f137cf3a01c57f879a0e84d45815e271cce13d6f043ad5ae12281d4b30d4c5ab6a86a42133683ed2a4ff09250b16846d0f6484880f78fd1b7b9d902231c70 SHA512 6a503ca0cdd5fd6eedfd28ef408581dabefeb603b1e5ec472c99e4b6152af1cb5c23524b27f2503369554f127578f0119d38cb7095ba375ab26ac86be6397dd9 DIST gcc-17.0.0-musl-patches-1.tar.xz 3040 BLAKE2B cc39906facd9c395bae9f87c67124066b8081521df39857d752f1e398dca5113240d24a836ca0f793313f954d6c38ff39961bf71a8036a1d5bc62751e71eb7c9 SHA512 4e330ee1c87229ba30644ad7a6841683aba368ce00585b5a7af433f215e248534a8d81f6f95fcf7b348c7d9aeaf1eeae015d76601e3d918a0ca39d94ed7e521c DIST gcc-17.0.0-patches-1.tar.xz 25196 BLAKE2B 7db76cfcc56556489c5c0698bad9d8f8f41d57f81ee439c7dc57add47858226fc37e8818e1644be69eff7322d4823b28571784dc0166624c866868b92c9f6e42 SHA512 9349836f0578d121b2b824c91f6ec18e5df3c4fc811f9b5e118e0ee957f9983cb2ff3b8b254b5dd912b5b1113259a3e2ac5e7b06c7c121ba9ca964c89a73bfa0 +DIST gcc-17.0.0-patches-10.tar.xz 23180 BLAKE2B d0a6bcd57675fbd6090341896f0b8427f04ae1a19c1eba37109de08d474cc857283ea9a64e751710d8266e976c07e07f534b55a6c8b683fa7afb3810b2551f9f SHA512 5e7fb665b2468cd8bc68e573a3e883ed70d4f5688d416fd1c471e2441bad95b6117ebdd433b49c8fbc34c937bc291dc1bcc5f99e1913b611d8833445b2d816d1 DIST gcc-17.0.0-patches-2.tar.xz 25148 BLAKE2B 0d1358c7cca8ed3779d0b618160fa31105dd1a84f0b84f351edaf0095e5e72cc59e204b70f843a7c327c4ea8a243c2ddfddfefc61ce1b1bc6275855cf84f4abc SHA512 80bc3b6369a602b4705f8ae658962c5ab23e3e93bcb91fa551ca9e180e3a8cdea534190d21702313a4bf8bbdbf26c6984eee53ee3c5a346ce4cee549b376f1ca DIST gcc-17.0.0-patches-3.tar.xz 27364 BLAKE2B e7c039dbfb942f5f61b7faed8cd0fd31d52ae27ba256da98722eea8af5d692702faf1419e79d7c34e6d462cb7f4b3dd64ca47e4cd2527209ebbbbc4be819e1fa SHA512 e1ec00b76407aaf640f8b06d626ee85074fed1e936c14ee48f177796f4fd0100aa2e372e31181c84d7feea0c5b1e5a08e9619d572090196e5d1462bdba619450 DIST gcc-17.0.0-patches-4.tar.xz 26632 BLAKE2B 69b491f3b1be38c9d0c72510b9f31a12cc8149f3d7125897095ebeafadc2a99596287a38fd8206af85b49831b336bab7e96920a56a44071d4834dd9aa4297975 SHA512 3c983d9df9a308fdc442b5453c3dd66f27fa731afd4dedc906e0841c23cd8e6f9b8c1ae5de5ac3466e5e0ea923cc6df0af46893ea7dce78135b74c494a0fecca diff --git a/sys-devel/gcc/gcc-13.4.1_p20260722.ebuild b/sys-devel/gcc/gcc-13.4.1_p20260722.ebuild new file mode 100644 index 000000000000..1b48162dfa0d --- /dev/null +++ b/sys-devel/gcc/gcc-13.4.1_p20260722.ebuild @@ -0,0 +1,68 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Maintenance notes and explanations of GCC handling are on the wiki: +# https://wiki.gentoo.org/wiki/Project:Toolchain/sys-devel/gcc + +TOOLCHAIN_HAS_TESTS=1 +PATCH_GCC_VER="13.3.0" +MUSL_GCC_VER="13.3.0" +PATCH_VER="9" +MUSL_VER="3" +PYTHON_COMPAT=( python3_{13..14} ) + +if [[ ${PV} == *.9999 ]] ; then + MY_PV_2=$(ver_cut 2) + MY_PV_3=1 + if [[ ${MY_PV_2} == 0 ]] ; then + MY_PV_2=0 + MY_PV_3=0 + else + MY_PV_2=$((${MY_PV_2} - 1)) + fi + + # e.g. 12.2.9999 -> 12.1.1 + TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} +elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch + eapply_user +} diff --git a/sys-devel/gcc/gcc-14.4.1_p20260723.ebuild b/sys-devel/gcc/gcc-14.4.1_p20260723.ebuild new file mode 100644 index 000000000000..b4578274f0d3 --- /dev/null +++ b/sys-devel/gcc/gcc-14.4.1_p20260723.ebuild @@ -0,0 +1,56 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Maintenance notes and explanations of GCC handling are on the wiki: +# https://wiki.gentoo.org/wiki/Project:Toolchain/sys-devel/gcc + +TOOLCHAIN_HAS_TESTS=1 +PATCH_GCC_VER="14.3.0" +PATCH_VER="6" +MUSL_VER="2" +MUSL_GCC_VER="14.3.0" +PYTHON_COMPAT=( python3_{13..14} ) + +if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=releases/gcc-$(ver_cut 1) +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # m68k doesnt build (ICE, bug 932733) + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch + eapply_user +} diff --git a/sys-devel/gcc/gcc-15.3.1_p20260724.ebuild b/sys-devel/gcc/gcc-15.3.1_p20260724.ebuild new file mode 100644 index 000000000000..13c1da8a4cb1 --- /dev/null +++ b/sys-devel/gcc/gcc-15.3.1_p20260724.ebuild @@ -0,0 +1,56 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Maintenance notes and explanations of GCC handling are on the wiki: +# https://wiki.gentoo.org/wiki/Project:Toolchain/sys-devel/gcc + +TOOLCHAIN_HAS_TESTS=1 +PATCH_GCC_VER="15.2.0" +PATCH_VER="8" +MUSL_VER="1" +MUSL_GCC_VER="15.2.0" +PYTHON_COMPAT=( python3_{13..14} ) + +if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=master +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch + [[ ${CHOST} == m68k-* ]] && eapply "${FILESDIR}"/${PN}-15-m68k-workaround.patch + eapply_user +} diff --git a/sys-devel/gcc/gcc-16.1.1_p20260725.ebuild b/sys-devel/gcc/gcc-16.1.1_p20260725.ebuild new file mode 100644 index 000000000000..4ac77031fb7a --- /dev/null +++ b/sys-devel/gcc/gcc-16.1.1_p20260725.ebuild @@ -0,0 +1,56 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Maintenance notes and explanations of GCC handling are on the wiki: +# https://wiki.gentoo.org/wiki/Project:Toolchain/sys-devel/gcc + +TOOLCHAIN_HAS_TESTS=1 +PATCH_GCC_VER="16.1.0" +PATCH_VER="3" +MUSL_VER="1" +MUSL_GCC_VER="16.1.0" +PYTHON_COMPAT=( python3_{13..14} ) + +if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=master +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch + [[ ${CHOST} == m68k-* ]] && eapply "${FILESDIR}"/${PN}-15-m68k-workaround.patch + eapply_user +} diff --git a/sys-devel/gcc/gcc-17.0.0_p20260726.ebuild b/sys-devel/gcc/gcc-17.0.0_p20260726.ebuild new file mode 100644 index 000000000000..5111cc50e5fc --- /dev/null +++ b/sys-devel/gcc/gcc-17.0.0_p20260726.ebuild @@ -0,0 +1,56 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Maintenance notes and explanations of GCC handling are on the wiki: +# https://wiki.gentoo.org/wiki/Project:Toolchain/sys-devel/gcc + +TOOLCHAIN_HAS_TESTS=1 +PATCH_GCC_VER="17.0.0" +PATCH_VER="10" +MUSL_GCC_VER="17.0.0" +MUSL_VER="1" +PYTHON_COMPAT=( python3_{13..14} ) + +if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +if tc_is_live ; then + # Needs to be after inherit (for now?), bug #830908 + EGIT_BRANCH=master +elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + # Don't keyword live ebuilds + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + :; +fi + +if [[ ${CATEGORY} != cross-* ]] ; then + # Technically only if USE=hardened *too* right now, but no point in complicating it further. + # If GCC is enabling CET by default, we need glibc to be built with support for it. + # bug #830454 + RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" + DEPEND="${RDEPEND}" +fi + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch + [[ ${CHOST} == m68k-* ]] && eapply "${FILESDIR}"/${PN}-15-m68k-workaround.patch + eapply_user +} diff --git a/sys-fs/ncdu/ncdu-2.9.2.ebuild b/sys-fs/ncdu/ncdu-2.9.2.ebuild index a85754f32b8f..f98c84f19f5d 100644 --- a/sys-fs/ncdu/ncdu-2.9.2.ebuild +++ b/sys-fs/ncdu/ncdu-2.9.2.ebuild @@ -18,7 +18,7 @@ SRC_URI=" LICENSE="MIT" SLOT="0" -KEYWORDS="amd64" +KEYWORDS="amd64 ~arm64" BDEPEND="verify-sig? ( sec-keys/openpgp-keys-yorhel )" DEPEND=" diff --git a/sys-kernel/git-sources/Manifest b/sys-kernel/git-sources/Manifest index ec1a30732d2b..bb5e3c06e5e6 100644 --- a/sys-kernel/git-sources/Manifest +++ b/sys-kernel/git-sources/Manifest @@ -3,3 +3,4 @@ DIST patch-7.2-rc1.patch 66285326 BLAKE2B dc79502b61dcabe7e8dba9809ce445187cb45a DIST patch-7.2-rc2.patch 67371285 BLAKE2B ff1a14ea8b823f22d61869d817d454ebb5d1989459bea6130c5f8d58a5e8dacc8abd645ff93fc126fe64118e6c6d371a314c440bd9cc8728cf6db652a6d85838 SHA512 10f5fd0e25eeea0cd239974edfb4674fa4c48de4bdc5a158e361d757403030ae534b93a8725823a5367c13162194beb1c780152760eee5d886e61a043cc28938 DIST patch-7.2-rc3.patch 67920691 BLAKE2B 146416fb494f9d2daa6b77b20253d308eebadd58790f3bf9b2d4c60f5f92fd58787f274dc1933353fbbcc3dcfd798e2869f130d91e06016a49735e9657c9cb5a SHA512 2bf02d65cf74f2baca54f4d711d746ea8f31ec46414cdeed85f1878364a4d1a4992de2bc02c68d127eb64e830893e4d535802254cd22b28f20031507aec62a43 DIST patch-7.2-rc4.patch 68480836 BLAKE2B c2336bd13a35b0901a60d6e4b9d74d0a66e25b2817f97de840644f40205a9f2bfdd15923c3764660d4d6ddb706672e541a2e7c3a4c828a5d4a79b460825e5ffa SHA512 c9323f758a33e09a6361ccb21baa819e3df05ec2a05e4bd31bc6929c78f57d9435852611e97ab028ed9fe68969f89d707ef088cdc219a3dda52785f8c9eb9527 +DIST patch-7.2-rc5.patch 69138794 BLAKE2B 2023df56db4101182dd1be1dc6d9506e3e29b62516a632a646d2a1938a2408f3e66c9e827972bdadfc41997f191db21be913db3a4773f7f8cf1fabd1715f669f SHA512 29abf5f012a8ceca43b087a90d3f3c8f0832fe5d80ce23cc01f3b3a8f1cd75da0ec2132f8c7c78b7e50e98381cf2cde6d7411055f188bd234c508af83ca41f6b diff --git a/sys-kernel/git-sources/git-sources-7.2_rc5.ebuild b/sys-kernel/git-sources/git-sources-7.2_rc5.ebuild new file mode 100644 index 000000000000..b9c6828ffddd --- /dev/null +++ b/sys-kernel/git-sources/git-sources-7.2_rc5.ebuild @@ -0,0 +1,39 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" +UNIPATCH_STRICTORDER="yes" +K_NOUSENAME="yes" +K_NOSETEXTRAVERSION="yes" +K_NOUSEPR="yes" +K_SECURITY_UNSUPPORTED="1" +K_BASE_VER="7.1" +K_EXP_GENPATCHES_NOUSE="1" +K_FROM_GIT="yes" +K_NODRYRUN="yes" +ETYPE="sources" +CKV="${PVR/-r/-git}" + +# only use this if it's not an _rc/_pre release +[ "${PV/_pre}" == "${PV}" ] && [ "${PV/_rc}" == "${PV}" ] && OKV="${PV}" +inherit kernel-2 +detect_version + +DESCRIPTION="The very latest -git version of the Linux kernel" +HOMEPAGE="https://www.kernel.org" +SRC_URI="${KERNEL_URI}" + +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~s390 ~sparc ~x86" + +K_EXTRAEINFO="This kernel is not supported by Gentoo due to its unstable and +experimental nature. If you have any issues, try a matching vanilla-sources +ebuild -- if the problem is not there, please contact the upstream kernel +developers at https://bugzilla.kernel.org and on the linux-kernel mailing list to +report the problem so it can be fixed in time for the next kernel release." + +DEPEND="${RDEPEND} + sys-devel/patch" + +pkg_postinst() { + postinst_sources +} diff --git a/sys-libs/glibc/Manifest b/sys-libs/glibc/Manifest index 4153cd4d6622..90f80b449004 100644 --- a/sys-libs/glibc/Manifest +++ b/sys-libs/glibc/Manifest @@ -37,6 +37,9 @@ DIST glibc-2.43-patches-2.tar.xz 90172 BLAKE2B 9927b0bfc836597047e2c268a1d5c7b59 DIST glibc-2.43-patches-3.tar.xz 99856 BLAKE2B 4bc4b2fc9b23e7e2d295b8f87919ed676147d3520b27e773db48200768c3f6647a4383fcf8962881611d622ddbc71fe1bc3732fbb7df5c1968ea78ab047226a6 SHA512 0070d0b8552f8385e3133f522dfb563b9fa5f5663e1cce3c4b99a4e1d9da57a4c0305e3908f1c739f4e17113f4775b253af83fc8ee3885a0305aebc970314edf DIST glibc-2.43.tar.xz 20297012 BLAKE2B a764edf3d0d52809aa94cf1a8f73341159d226ecc2a595aa3c9e1d1fd4b2d4eb9a599d70bda8812b73d8ef58b39746efdd34026772e38c0f091fe071d461ea98 SHA512 25765f86bf54a22fc69dd13023ec9be59bd7e1f9d6ea1630cf21851898df2043bb8a01538c4b5fdd06495d0163289362b0768b391b0617f709b89a777168291c DIST glibc-2.43.tar.xz.sig 1018 BLAKE2B 99fb3f296795498f6de8090d537e32d8af0bfa75c7d8145ba4c35ca1b54c281fd2b9cb121886aef1800c0a6e508244914a2de67339d113561a9fc2c515110924 SHA512 6e26f0edee146710bcb73c3890c455e8b479009f99d284c43ea695b73bfe45e4ba47d1460300ce8c7496689b0c21a1c77e6359e005957973648b86755160c8f5 +DIST glibc-2.44-patches-1.tar.xz 29216 BLAKE2B ba7ef5f516353b87bbb399f3e4eecd8bfb3779c572552a900eb9de7340044b9f943ebd040e0e817f1318631bdfe1843695607897597fe07dc72651eee5ffc5c0 SHA512 2d8765ecd7f37d489252ae8de7b64e6677e4d80a463ca59f6b5b0914305bcb704468781d4cbed85b6ccec2762c662cd0db60553e32cb5b55cbdace951037c391 +DIST glibc-2.44.tar.xz 20620544 BLAKE2B f943e302ad4e44a204e4c5d85460653bec030717c2a502f16764d74bd6d87c280e126f37820b96ec726aff611a8c4e0dba95a7b4d72907adcb0aa88d304e4823 SHA512 963dc0275f7738653379909b64ee32e28f13cca77440f2cf9bd0ab82cb183f6cd1f7376d25cc5442de69b972713bd81bf0e38dbcca9b2a4d6649843e76fd50a5 +DIST glibc-2.44.tar.xz.sig 870 BLAKE2B 0ecb4965c61714a49f871b3ac24cafe8d6b79ce039c5364082fd8e61f6ac4102f0fab8b26f130707daf9ec6dad5a9b29198e56533ea3d7d3351538ada3f52f02 SHA512 e2034e369d2c233c9f9e155d6bc4b5e7472cace8a000253514a08b4dac3be6ed59cafe9aa6ceea2bdd07678291528c7937b358f43ab02a6f09422e7498837494 DIST glibc-systemd-20210729.tar.gz 1480 BLAKE2B 37722c7579df782d890e44dbab99c3de52ab466eb9de80d82405e9bb5620bf39ffc8c5f466a435bdb86ef6d36dd7019c0736573916bda6c67d02a2581e0ec979 SHA512 efd75af58b50522c28cdac7abd1fc56555bc1bb042512c90d8340c1ec09c5791b3872a305bf83723252bbde5855b75d958c041083457765c4cfd170732d09238 DIST glibc-systemd-20210814.tar.gz 1469 BLAKE2B 10fa7bcb46d4fdce9c0ab353cbd30871e9b09a347a13a9c9a3b5777f931aa3c826c158d2e49532c604d4a834f2fab4089b67495fb88d0398945dc50d45ad9ef1 SHA512 5346a9ea459a1e6ccf665389f2a294de1e16f1e3e05cdf07e3dd99ed0e4f6f8b52cc333d4bff3c75ac90ab6ce70cd4ab2b3e126f920ce7979abd6dda56315efc DIST locale-gen-2.00.tar.gz 7738 BLAKE2B cde6de5ba3400aea24d0d5f1b79471f89f09fb747c8e371e38316c7ada92f967e0865f573f23cb353d82419c234724143c0aeca9eb70eb945dfc581cc7491eb1 SHA512 b609fddb9ec5e567c008841fef3390eddb5d6e7699a8271b3b8c0ade1b44b0ac2e5d1daa8b9acabf3432e3b88110b538a96f209b1ad0f9e988b7efce66606dff diff --git a/sys-libs/glibc/glibc-2.44.ebuild b/sys-libs/glibc/glibc-2.44.ebuild new file mode 100644 index 000000000000..7b39f481948a --- /dev/null +++ b/sys-libs/glibc/glibc-2.44.ebuild @@ -0,0 +1,1934 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Bumping notes: https://wiki.gentoo.org/wiki/Project:Toolchain/sys-libs/glibc +# Please read & adapt the page as necessary if obsolete. + +PYTHON_COMPAT=( python3_{13..14} ) +TMPFILES_OPTIONAL=1 + +EMULTILIB_PKG="true" + +# Gentoo patchset (ignored for live ebuilds) +PATCH_VER=1 + +# gcc mulitilib bootstrap files version +GCC_BOOTSTRAP_VER=20201208 + +# systemd integration version +GLIBC_SYSTEMD_VER=20210729 + +# Minimum kernel version that glibc requires (used with USE=old-kernel) +MIN_KERN_VER_UPSTREAM="3.2.0" + +# Minimum kernel version that Gentoo recommends (oldest in the tree) +MIN_KERN_VER_GENTOO="6.1.0" + +# Minimum pax-utils version needed (which contains any new syscall changes for +# its seccomp filter!). Please double check this! +MIN_PAX_UTILS_VER="1.3.3" + +# Minimum systemd version needed (which contains any new syscall changes for +# its seccomp filter!). Please double check this! +MIN_SYSTEMD_VER="254.9-r1" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/glibc.asc + +inherit python-any-r1 prefix preserve-libs toolchain-funcs flag-o-matic gnuconfig \ + multilib systemd multiprocessing tmpfiles eapi9-ver verify-sig + +DESCRIPTION="GNU libc C library" +HOMEPAGE="https://www.gnu.org/software/libc/" + +if [[ ${PV} == *9999 ]]; then + inherit git-r3 +else + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + SRC_URI="mirror://gnu/glibc/${P}.tar.xz" + SRC_URI+=" https://distfiles.gentoo.org/pub/proj/toolchain/glibc/patches/${P}-patches-${PATCH_VER}.tar.xz" + SRC_URI+=" verify-sig? ( mirror://gnu/glibc/${P}.tar.xz.sig )" +fi + +SRC_URI+=" multilib-bootstrap? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )" +SRC_URI+=" systemd? ( https://gitweb.gentoo.org/proj/toolchain/glibc-systemd.git/snapshot/glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz )" + +LICENSE="LGPL-2.1+ BSD HPND ISC inner-net rc PCRE" +SLOT="2.2" +IUSE="audit caps cet clang compile-locales custom-cflags doc gd hash-sysv-compat headers-only +multiarch multilib multilib-bootstrap nscd old-kernel perl profile selinux sframe +ssp stack-realign +static-libs suid systemd systemtap test vanilla" + +# Here's how the cross-compile logic breaks down ... +# CTARGET - machine that will target the binaries +# CHOST - machine that will host the binaries +# CBUILD - machine that will build the binaries +# If CTARGET != CHOST, it means you want a libc for cross-compiling. +# If CHOST != CBUILD, it means you want to cross-compile the libc. +# CBUILD = CHOST = CTARGET - native build/install +# CBUILD != (CHOST = CTARGET) - cross-compile a native build +# (CBUILD = CHOST) != CTARGET - libc for cross-compiler +# CBUILD != CHOST != CTARGET - cross-compile a libc for a cross-compiler +# For install paths: +# CHOST = CTARGET - install into / +# CHOST != CTARGET - install into /usr/CTARGET/ +# +export CBUILD=${CBUILD:-${CHOST}} +export CTARGET=${CTARGET:-${CHOST}} +if [[ ${CTARGET} == ${CHOST} ]] ; then + if [[ ${CATEGORY} == cross-* ]] ; then + export CTARGET=${CATEGORY#cross-} + fi +fi + +# Note [Disable automatic stripping] +# Disabling automatic stripping for a few reasons: +# - portage's attempt to strip breaks non-native binaries at least on +# arm: bug #697428 +# - portage's attempt to strip libpthread.so.0 breaks gdb thread +# enumeration: bug #697910. This is quite subtle: +# * gdb uses glibc's libthread_db-1.0.so to enumerate threads. +# * libthread_db-1.0.so needs access to libpthread.so.0 local symbols +# via 'ps_pglobal_lookup' symbol defined in gdb. +# * 'ps_pglobal_lookup' uses '.symtab' section table to resolve all +# known symbols in 'libpthread.so.0'. Specifically 'nptl_version' +# (unexported) is used to sanity check compatibility before enabling +# debugging. +# Also see https://sourceware.org/gdb/wiki/FAQ#GDB_does_not_see_any_threads_besides_the_one_in_which_crash_occurred.3B_or_SIGTRAP_kills_my_program_when_I_set_a_breakpoint +# * normal 'strip' command trims '.symtab' +# Thus our main goal here is to prevent 'libpthread.so.0' from +# losing it's '.symtab' entries. +# - similarly, valgrind requires knowledge about symbols in ld.so: +# bug #920753 +# As Gentoo's strip does not allow us to pass less aggressive stripping +# options and does not check the machine target we strip selectively. + +# We need a new-enough binutils/gcc to match upstream baseline. +# Also we need to make sure our binutils/gcc supports TLS, +# and that gcc already contains the hardened patches. +# Lastly, let's avoid some openssh nastiness, bug 708224, as +# convenience to our users. + +IDEPEND=" + !compile-locales? ( sys-apps/locale-gen ) +" +BDEPEND=" + ${PYTHON_DEPS} + >=app-misc/pax-utils-${MIN_PAX_UTILS_VER} + sys-devel/bison + compile-locales? ( sys-apps/locale-gen ) + doc? ( + dev-lang/perl + sys-apps/texinfo + ) + sframe? ( >=sys-devel/binutils-2.45 ) + test? ( + dev-lang/perl + >=net-dns/libidn2-2.3.0 + sys-apps/gawk[mpfr] + ) + verify-sig? ( sec-keys/openpgp-keys-glibc ) +" +COMMON_DEPEND=" + gd? ( media-libs/gd:2= ) + nscd? ( selinux? ( + audit? ( sys-process/audit ) + caps? ( sys-libs/libcap ) + ) ) + suid? ( caps? ( sys-libs/libcap ) ) + selinux? ( sys-libs/libselinux ) + systemtap? ( dev-debug/systemtap ) +" +DEPEND="${COMMON_DEPEND} +" +RDEPEND="${COMMON_DEPEND} + !<app-misc/pax-utils-${MIN_PAX_UTILS_VER} + !<sys-apps/systemd-${MIN_SYSTEMD_VER} + perl? ( dev-lang/perl ) +" + +RESTRICT="!test? ( test )" + +if [[ ${CATEGORY} == cross-* ]] ; then + BDEPEND+=" !headers-only? ( + >=${CATEGORY}/binutils-2.27 + >=${CATEGORY}/gcc-6.2 + )" + + case ${CATEGORY} in + *-linux*) + DEPEND+=" ${CATEGORY}/linux-headers" + ;; + *-gnu) + DEPEND+=" ${CATEGORY}/gnumach[-headers-only]" + ;; + esac +else + BDEPEND+=" + >=sys-devel/binutils-2.27 + clang? ( || ( ( >=sys-devel/gcc-6.2 ) + ( >=sys-devel/gcc-6.2 >=llvm-core/clang-18 ) + ( >=llvm-core/clang-18 >=llvm-runtimes/libgcc-18 ) ) ) + !clang? ( >=sys-devel/gcc-6.2 ) + " + DEPEND+=" virtual/os-headers " + RDEPEND+=" + >=net-dns/libidn2-2.3.0 + vanilla? ( !sys-libs/timezone-data ) + " + PDEPEND+=" !vanilla? ( sys-libs/timezone-data )" +fi + +# Ignore tests whitelisted below +GENTOO_GLIBC_XFAIL_TESTS="${GENTOO_GLIBC_XFAIL_TESTS:-yes}" + +# The following tests fail due to the Gentoo build system and are thus +# executed but ignored: +XFAIL_TEST_LIST=( + # buggy test, assumes /dev/ and /dev/null on a single filesystem + # 'mount --bind /dev/null /chroot/dev/null' breaks it. + # https://sourceware.org/PR25909 + tst-support_descriptors + + # The following tests fail only inside portage + # https://bugs.gentoo.org/831267 + tst-system + tst-strerror + tst-strsignal + + # Fails with certain PORTAGE_NICENESS/PORTAGE_SCHEDULING_POLICY + tst-sched1 + tst-sched_setattr + tst-sched_setattr-thread + + # Fails regularly, unreliable + tst-valgrind-smoke + + # https://sourceware.org/bugzilla/show_bug.cgi?id=31877 (bug #927973) + tst-shstk-legacy-1g + + # https://sourceware.org/bugzilla/show_bug.cgi?id=33239 + test-double-compoundn + test-float-compoundn + test-float32-compoundn + test-float32x-compoundn + test-float64-compoundn + + # Fails only in portage. Needs investigation. + tst-setvbuf2 +) + +XFAIL_NSPAWN_TEST_LIST=( + # These tests need to be adapted to handle EPERM/ENOSYS(?) properly + # upstream, as systemd-nspawn's default seccomp whitelist is too strict. + # https://sourceware.org/PR30603 + test-errno-linux + tst-aarch64-pkey + tst-bz21269 + tst-mlock2 + tst-mseal-pkey + tst-ntp_gettime + tst-ntp_gettime-time64 + tst-ntp_gettimex + tst-ntp_gettimex-time64 + tst-pkey + tst-process_mrelease + tst-adjtime + tst-adjtime-time64 + tst-clock2 + tst-clock2-time64 + + # These fail if --suppress-sync and/or low priority is set + tst-sync_file_range + test-errno +) + +# +# Small helper functions +# + +dump_build_environment() { + einfo ==== glibc build environment ======================================================== + local v + for v in ABI CBUILD CHOST CTARGET CBUILD_OPT CTARGET_OPT CC CXX CPP LD \ + {AS,C,CPP,CXX,LD}FLAGS MAKEINFO NM AR AS STRIP RANLIB OBJCOPY \ + STRINGS OBJDUMP READELF; do + einfo " $(printf '%15s' ${v}:) ${!v}" + done + einfo ===================================================================================== +} + +is_crosscompile() { + [[ ${CHOST} != ${CTARGET} ]] +} + +is_linux() { + [[ ${CTARGET} == *-linux-* ]] +} + +is_hurd() { + # Let's hope this holds for a long time + [[ ${CTARGET} != *-linux-* ]] +} + +just_headers() { + is_crosscompile && use headers-only +} + +alt_prefix() { + is_crosscompile && echo /usr/${CTARGET} +} + +# This prefix is applicable to CHOST when building against this +# glibc. It is baked into the library at configure time. +host_eprefix() { + is_crosscompile || echo "${EPREFIX}" +} + +# This prefix is applicable to CBUILD when building against this +# glibc. It determines the destination path at install time. +build_eprefix() { + is_crosscompile && echo "${EPREFIX}" +} + +alt_headers() { + echo $(alt_prefix)/usr/include +} +alt_libdir() { + echo $(alt_prefix)/$(get_libdir) +} +alt_usrlibdir() { + echo $(alt_prefix)/usr/$(get_libdir) +} + +builddir() { + echo "${WORKDIR}/build-${ABI}-${CTARGET}-$1" +} + +do_compile_test() { + local ret save_cflags=${CFLAGS} + CFLAGS+=" $1" + shift + + pushd "${T}" >/dev/null + + rm -f glibc-test* + printf '%b' "$*" > glibc-test.c + + # We assume CC is already set up. + nonfatal emake glibc-test + ret=$? + + popd >/dev/null + + CFLAGS=${save_cflags} + return ${ret} +} + +do_run_test() { + local ret + + if [[ ${MERGE_TYPE} == "binary" ]] ; then + # ignore build failures when installing a binary package #324685 + CC="${glibc__ORIG_CC}" CXX="${glibc__ORIG_CXX}" CPP="${glibc__ORIG_CPP}" \ + CFLAGS="-O2" LDFLAGS="" do_compile_test "" "$@" 2>/dev/null || return 0 + else + ebegin "Performing simple compile test for ABI=${ABI}" + if ! do_compile_test "" "$@" ; then + ewarn "Simple build failed ... assuming this is desired #324685" + eend 1 + return 0 + else + eend 0 + fi + fi + + pushd "${T}" >/dev/null + + ./glibc-test + ret=$? + rm -f glibc-test* + + popd >/dev/null + + return ${ret} +} + +setup_target_flags() { + # This largely mucks with compiler flags. None of which should matter + # when building up just the headers. + just_headers && return 0 + + case $(tc-arch) in + alpha) + # glibc selects its hand-written assembly mem*/str* routines by the + # host triplet's machine prefix (sysdeps/alpha/preconfigure does + # machine=alpha/$machine), NOT by the -mcpu codegen flag. With the + # bare alpha-*-* CHOST only the generic C is built. Map -mcpu to the + # most specific sysdeps/alpha/alphaev* dir that exists (Implies chain + # alphaev67 -> alphaev6 -> alphaev5) so the tuned asm is selected. + local cpu + case $(get-flag mcpu) in + 21264a|ev67) cpu="alphaev67" ;; + 21264|ev6) cpu="alphaev6" ;; + 21164*|ev5|ev56|pca56) cpu="alphaev5" ;; + esac + [[ -n ${cpu} ]] && CTARGET_OPT="${cpu}-${CTARGET#*-}" + ;; + x86) + # -march needed for #185404 #199334 + # TODO: When creating the first glibc cross-compile, this test will + # always fail as it does a full link which in turn requires glibc. + # Probably also applies when changing multilib profile settings (e.g. + # enabling x86 when the profile was amd64-only previously). + # We could change main to _start and pass -nostdlib here so that we + # only test the gcc code compilation. Or we could do a compile and + # then look for the symbol via scanelf. + if ! do_compile_test "" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n'; then + local t=${CTARGET_OPT:-${CTARGET}} + t=${t%%-*} + filter-flags '-march=*' + export CFLAGS="-march=${t} ${CFLAGS}" + einfo "Auto adding -march=${t} to CFLAGS #185404" + fi + # For compatibility with older binaries at slight performance cost. + use stack-realign && export CFLAGS+=" -mstackrealign" + ;; + amd64) + # -march needed for #185404 #199334 + # TODO: See cross-compile issues listed above for x86. + if [[ ${ABI} == x86 ]]; then + if ! do_compile_test "${CFLAGS_x86}" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n'; then + local t=${CTARGET_OPT:-${CTARGET}} + t=${t%%-*} + # Normally the target is x86_64-xxx, so turn that into the -march that + # gcc actually accepts. #528708 + [[ ${t} == "x86_64" ]] && t="x86-64" + filter-flags '-march=*' + # ugly, ugly, ugly. ugly. + CFLAGS_x86=$( + CFLAGS=${CFLAGS_x86} + filter-flags '-march=*' + is-flagq '-mfpmath=sse' && append-cflags -msse + echo "${CFLAGS}" + ) + export CFLAGS_x86="${CFLAGS_x86} -march=${t}" + einfo "Auto adding -march=${t} to CFLAGS_x86 #185404 (ABI=${ABI})" + fi + # For compatibility with older binaries at slight performance cost. + use stack-realign && export CFLAGS_x86+=" -mstackrealign" + fi + + if is_hurd ; then + # doesnt build with -march=native and probably other values, debugging required + filter-flags '-march=*' + fi + ;; + mips) + # The mips abi cannot support the GNU style hashes. #233233 + filter-ldflags -Wl,--hash-style=gnu -Wl,--hash-style=both + ;; + ppc|ppc64) + # Many arch-specific implementations do not work on ppc with + # cache-block not equal to 128 bytes. This breaks memset: + # https://sourceware.org/PR26522 + # https://bugs.gentoo.org/737996 + # Use default -mcpu=. For ppc it means non-multiarch setup. + filter-flags '-mcpu=*' + ;; + sparc) + # Both sparc and sparc64 can use -fcall-used-g6. -g7 is bad, though. + filter-flags "-fcall-used-g7" + append-flags "-fcall-used-g6" + + local cpu + case ${CTARGET} in + sparc64-*) + cpu="sparc64" + case $(get-flag mcpu) in + v9) + # We need to force at least v9a because the base build doesn't + # work with just v9. + # https://sourceware.org/bugzilla/show_bug.cgi?id=19477 + append-flags "-Wa,-xarch=v9a" + ;; + esac + ;; + sparc-*) + case $(get-flag mcpu) in + v8|supersparc|hypersparc|leon|leon3) + cpu="sparcv8" + ;; + *) + cpu="sparcv9" + ;; + esac + ;; + esac + [[ -n ${cpu} ]] && CTARGET_OPT="${cpu}-${CTARGET#*-}" + ;; + esac +} + +setup_flags() { + # Make sure host make.conf doesn't pollute us + if is_crosscompile || tc-is-cross-compiler ; then + CHOST=${CTARGET} strip-unsupported-flags + fi + + # Store our CFLAGS because it's changed depending on which CTARGET + # we are building when pulling glibc on a multilib profile + CFLAGS_BASE=${CFLAGS_BASE-${CFLAGS}} + CFLAGS=${CFLAGS_BASE} + CXXFLAGS_BASE=${CXXFLAGS_BASE-${CXXFLAGS}} + CXXFLAGS=${CXXFLAGS_BASE} + ASFLAGS_BASE=${ASFLAGS_BASE-${ASFLAGS}} + ASFLAGS=${ASFLAGS_BASE} + + # Allow users to explicitly avoid flag sanitization via + # USE=custom-cflags. + if ! use custom-cflags; then + # Over-zealous CFLAGS can often cause problems. What may work for one + # person may not work for another. To avoid a large influx of bugs + # relating to failed builds, we strip most CFLAGS out to ensure as few + # problems as possible. + strip-flags + + # Allow -O2 and -O3, but nothing else for now. + # TODO: Test -Os, -Oz. + if ! is-flagq '-O@(2|3)' ; then + # Lock glibc at -O2. We want to be conservative here. + filter-flags '-O?' + append-flags -O2 + fi + fi + + strip-unsupported-flags + filter-lto + filter-flags -m32 -m64 '-mabi=*' + + # glibc aborts if rpath is set by LDFLAGS + filter-ldflags '-Wl,-rpath=*' + + # ld can't use -r & --relax at the same time, bug #788901 + # https://sourceware.org/PR27837 + filter-ldflags '-Wl,--relax' + + # Flag added for cross-prefix, but causes ldconfig to segfault. Not needed + # anyway because glibc already handles this by itself. + filter-ldflags '-Wl,--dynamic-linker=*' + + # Fails to link (bug #940709) in some cases but even if it manages to, + # subtle runtime breakage will occur because the linker scripts need + # adaptation. Mentioned in PR21557#c0. + filter-ldflags '-Wl,--gc-sections' + + # some weird software relies on sysv hashes in glibc, bug 863863, bug 864100 + # we have to do that here already so mips can filter it out again :P + if use hash-sysv-compat ; then + append-ldflags '-Wl,--hash-style=both' + fi + + # clang warns about linker flags unused during compilation, but we don't + # want that to turn into errors! + # Let's turn the warning off entirely since it spams. + append-flags -Wno-unused-command-line-argument + + # #492892 + filter-flags -frecord-gcc-switches + + # #898098 + filter-flags -fno-builtin + + # #798774 + filter-flags -fno-semantic-interposition + + # #829583 + filter-lfs-flags + + case ${CTARGET} in + *-linux*) + ;; + *-gnu) + # -g3 confuses MIG which relies on preprocessed input + replace-flags -ggdb[3-9] -ggdb2 + replace-flags -g3 -g + ;; + esac + + unset CBUILD_OPT CTARGET_OPT + if use multilib ; then + CTARGET_OPT=$(get_abi_CTARGET) + [[ -z ${CTARGET_OPT} ]] && CTARGET_OPT=$(get_abi_CHOST) + fi + + setup_target_flags + + if [[ -n ${CTARGET_OPT} && ${CBUILD} == ${CHOST} ]] && ! is_crosscompile; then + CBUILD_OPT=${CTARGET_OPT} + fi + + # glibc's headers disallow -O0 and fail at build time: + # include/libc-symbols.h:75:3: #error "glibc cannot be compiled without optimization" + # https://sourceware.org/glibc/wiki/FAQ#Why_do_I_get:.60.23error_.22glibc_cannot_be_compiled_without_optimization.22.27.2C_when_trying_to_compile_GNU_libc_with_GNU_CC.3F + replace-flags -O0 -O1 + + # Similar issues as with SSP. Can't inject yourself that early. + filter-flags '-fsanitize=*' + + # See end of bug #830454; we handle this via USE=cet + filter-flags '-fcf-protection=*' + + # When bootstrapping, we may have a situation where + # CET-enabled gcc from seed is used to build CET-disabled + # glibc. As such, gcc implicitly enables CET if no + # -fcf-protection flag is passed. For a typical package it + # should not be a problem, but for glibc it matters as it is + # dealing with CET in ld.so. So if CET is supposed to be + # disabled for glibc, be explicit about it. + if ! use cet; then + case ${ABI}-${CTARGET} in + amd64-x86_64-*|x32-x86_64-*-*-gnux32) + append-flags '-fcf-protection=none' + ;; + arm64-aarch64*) + append-flags '-mbranch-protection=none' + ;; + esac + fi +} + +use_multiarch() { + # Allow user to disable runtime arch detection in multilib. + use multiarch || return 1 + # Make sure binutils is new enough to support indirect functions, + # #336792. This funky sed supports gold and bfd linkers. + local bver nver + bver=$($(tc-getLD ${CTARGET}) -v | sed -n -r '1{s:[^0-9]*::;s:^([0-9.]*).*:\1:;p}') + case $(tc-arch ${CTARGET}) in + amd64|x86) nver="2.20" ;; + arm) nver="2.22" ;; + hppa) nver="2.23" ;; + ppc|ppc64) nver="2.20" ;; + # ifunc support was added in 2.23, but glibc also needs + # machinemode which is in 2.24. + s390) nver="2.24" ;; + sparc) nver="2.21" ;; + *) return 1 ;; + esac + ver_test ${bver} -ge ${nver} +} + +# Setup toolchain variables that had historically been defined in the +# profiles for these archs. +setup_env() { + # silly users + unset LD_RUN_PATH + unset LD_ASSUME_KERNEL + + if is_crosscompile || tc-is-cross-compiler ; then + multilib_env ${CTARGET_OPT:-${CTARGET}} + + if ! use multilib ; then + MULTILIB_ABIS=${DEFAULT_ABI} + else + MULTILIB_ABIS=${MULTILIB_ABIS:-${DEFAULT_ABI}} + fi + + # If the user has CFLAGS_<CTARGET> in their make.conf, use that, + # and fall back on CFLAGS. + local VAR=CFLAGS_${CTARGET//[-.]/_} + CFLAGS=${!VAR-${CFLAGS}} + einfo " $(printf '%15s' 'Manual CFLAGS:') ${CFLAGS}" + fi + + setup_flags + + export ABI=${ABI:-${DEFAULT_ABI:-default}} + + if just_headers ; then + # Avoid mixing host's CC and target's CFLAGS_${ABI}: + # At this bootstrap stage we have only binutils for + # target but not compiler yet. + einfo "Skip CC ABI injection. We can't use (cross-)compiler yet." + return 0 + fi + + # glibc does not work with non-bfd (for various reasons): + # * gold (bug #269274) + # * mold (bug #860900) + tc-ld-force-bfd + + if use doc ; then + export MAKEINFO=makeinfo + else + export MAKEINFO=/dev/null + fi + + # Reset CC and CXX to the value at start of emerge + export CC=${glibc__ORIG_CC:-${CC:-$(tc-getCC ${CTARGET})}} + export CXX=${glibc__ORIG_CXX:-${CXX:-$(tc-getCXX ${CTARGET})}} + export CPP=${glibc__ORIG_CPP:-${CPP:-$(tc-getCPP ${CTARGET})}} + + # and make sure glibc__ORIG_CC and glibc__ORIG_CXX is defined now. + export glibc__ORIG_CC=${CC} + export glibc__ORIG_CXX=${CXX} + export glibc__ORIG_CPP=${CPP} + + if tc-is-clang && ! ( use clang || use custom-cflags ) && ! is_crosscompile ; then + export glibc__force_gcc=yes + # once this is toggled on, it needs to stay on, since with CPP manipulated + # tc-is-clang does not work correctly anymore... + fi + + if [[ ${glibc__force_gcc} == "yes" ]] ; then + # If we are running in an otherwise clang/llvm environment, we need to + # recover the proper gcc and binutils settings here, at least until glibc + # is finally building with clang. So let's override everything that is + # set in the clang profiles. + # Want to shoot yourself into the foot? Set USE="clang" or USE="custom-cflags". + # Also, if you are crosscompiling, let's assume you know what you are doing. + # Hopefully. + # Last, we need the settings of the *build* environment, not of the + # target environment... + + local current_binutils_path=$(env CHOST="${CBUILD}" ROOT="${BROOT}" binutils-config -B "${CTARGET}") + local current_gcc_path=$(env ROOT="${BROOT}" gcc-config -B) + einfo "Overriding clang configuration, since it won't work here" + + export CC="${current_gcc_path}/${CTARGET}-gcc" + export CPP="${current_gcc_path}/${CTARGET}-cpp" + export CXX="${current_gcc_path}/${CTARGET}-g++" + export LD="${current_binutils_path}/ld.bfd" + export AR="${current_binutils_path}/ar" + export AS="${current_binutils_path}/as" + export NM="${current_binutils_path}/nm" + export STRIP="${current_binutils_path}/strip" + export RANLIB="${current_binutils_path}/ranlib" + export OBJCOPY="${current_binutils_path}/objcopy" + export STRINGS="${current_binutils_path}/strings" + export OBJDUMP="${current_binutils_path}/objdump" + export READELF="${current_binutils_path}/readelf" + export ADDR2LINE="${current_binutils_path}/addr2line" + + # do we need to also do flags munging here? yes! at least... + filter-flags '-fuse-ld=*' + filter-flags '-D_FORTIFY_SOURCE=*' + + else + # this is the "normal" case + + # Always use tuple-prefixed toolchain. For non-native ABI glibc's configure + # can't detect them automatically due to ${CHOST} mismatch and fallbacks + # to unprefixed tools. Similar to multilib.eclass:multilib_toolchain_setup(). + export CC="$(tc-getCC ${CTARGET})" + export CXX="$(tc-getCXX ${CTARGET})" + export CPP="$(tc-getCPP ${CTARGET})" + export NM="$(tc-getNM ${CTARGET})" + export READELF="$(tc-getREADELF ${CTARGET})" + + fi + + # We need to move CFLAGS with abi information into CC etc per glibc upstream + # requirement. Keep around the original clean value to avoid appending + # multiple ABIs on top of each other. + export glibc__GLIBC_CC=${CC} + export glibc__GLIBC_CXX=${CXX} + export glibc__GLIBC_CPP=${CPP} + + export glibc__abi_CFLAGS="$(get_abi_CFLAGS)" + + # CFLAGS can contain ABI-specific flags like -mfpu=neon, see bug #657760 + # To build .S (assembly) files with the same ABI-specific flags + # upstream currently recommends adding CFLAGS to CC/CXX: + # https://sourceware.org/PR23273 + # Note: Passing CFLAGS via CPPFLAGS overrides glibc's arch-specific CFLAGS + # and breaks multiarch support. See 659030#c3 for an example. + # The glibc configure script doesn't properly use LDFLAGS all the time. + export CC="${glibc__GLIBC_CC} ${glibc__abi_CFLAGS} ${CFLAGS} ${LDFLAGS}" + + # Some of the tests are written in C++, so we need to force our multlib abis in, bug 623548 + export CXX="${glibc__GLIBC_CXX} ${glibc__abi_CFLAGS} ${CFLAGS}" + + export CPP="${glibc__GLIBC_CPP} ${glibc__abi_CFLAGS} ${CFLAGS}" + + if is_crosscompile; then + # Assume worst-case bootstrap: glibc is built for the first time + # with ${CTARGET}-g++ not available yet. We avoid + # building auxiliary programs that require C++: bug #683074 + # It should not affect final result. + export libc_cv_cxx_link_ok=no + # The line above has the same effect. We set CXX explicitly + # to make build logs less confusing. + export CXX= + fi +} + +foreach_abi() { + setup_env + + local ret=0 + local abilist="" + if use multilib ; then + abilist=$(get_install_abis) + else + abilist=${DEFAULT_ABI} + fi + local -x ABI + for ABI in ${abilist:-default} ; do + setup_env + einfo "Running $1 for ABI ${ABI}" + $1 + : $(( ret |= $? )) + done + return ${ret} +} + +glibc_banner() { + local b="Gentoo ${PVR}" + [[ -n ${PATCH_VER} ]] && ! use vanilla && b+=" (patchset ${PATCH_VER})" + echo "${b}" +} + +# The following Kernel version handling functions are mostly copied from portage +# source. It's better not to use linux-info.eclass here since a) it adds too +# much magic, see bug 326693 for some of the arguments, and b) some of the +# functions are just not provided. + +g_get_running_KV() { + uname -r + return $? +} + +g_KV_major() { + [[ -z $1 ]] && return 1 + local KV=$@ + echo "${KV%%.*}" +} + +g_KV_minor() { + [[ -z $1 ]] && return 1 + local KV=$@ + KV=${KV#*.} + echo "${KV%%.*}" +} + +g_KV_micro() { + [[ -z $1 ]] && return 1 + local KV=$@ + KV=${KV#*.*.} + echo "${KV%%[^[:digit:]]*}" +} + +g_KV_to_int() { + [[ -z $1 ]] && return 1 + local KV_MAJOR=$(g_KV_major "$1") + local KV_MINOR=$(g_KV_minor "$1") + local KV_MICRO=$(g_KV_micro "$1") + local KV_int=$(( KV_MAJOR * 65536 + KV_MINOR * 256 + KV_MICRO )) + + # We make version 2.2.0 the minimum version we will handle as + # a sanity check ... if its less, we fail ... + if [[ ${KV_int} -ge 131584 ]] ; then + echo "${KV_int}" + return 0 + fi + return 1 +} + +g_int_to_KV() { + local version=$1 major minor micro + major=$((version / 65536)) + minor=$(((version % 65536) / 256)) + micro=$((version % 256)) + echo ${major}.${minor}.${micro} +} + +get_kheader_version() { + printf '#include <linux/version.h>\nLINUX_VERSION_CODE\n' | \ + $(tc-getCPP ${CTARGET}) -I "${ESYSROOT}$(alt_headers)" - | \ + tail -n 1 +} + +# We collect all sanity checks here. Consistency is not guranteed between +# pkg_ and src_ phases, so we call this function both in pkg_pretend and in +# src_unpack. +sanity_prechecks() { + # Prevent native builds from downgrading + if [[ ${MERGE_TYPE} != "buildonly" ]] && \ + [[ -z ${ROOT} ]] && \ + [[ ${CBUILD} == ${CHOST} ]] && \ + [[ ${CHOST} == ${CTARGET} ]] ; then + + # The high rev # is to allow people to downgrade between -r# + # versions. We want to block 2.20->2.19, but 2.20-r3->2.20-r2 + # should be fine. Hopefully we never actually use a r# this + # high. + if has_version ">${CATEGORY}/${P}-r10000" ; then + eerror "Sanity check to keep you from breaking your system:" + eerror " Downgrading glibc is not supported and a sure way to destruction." + [[ ${I_ALLOW_TO_BREAK_MY_SYSTEM} = yes ]] || die "Aborting to save your system." + fi + + if is_linux && ! do_run_test '#include <unistd.h>\n#include <sys/syscall.h>\nint main(){return syscall(1000)!=-1;}\n' ; then + eerror "Your old kernel is broken. You need to update it to a newer" + eerror "version as syscall(<bignum>) will break. See bug 279260." + [[ ${I_ALLOW_TO_BREAK_MY_SYSTEM} = yes ]] || die "Old and broken kernel." + fi + fi + + if [[ ${CTARGET} == i386-* ]] ; then + eerror "i386 CHOSTs are no longer supported." + eerror "Chances are you don't actually want/need i386." + eerror "Please read https://www.gentoo.org/doc/en/change-chost.xml" + die "Please fix your CHOST" + fi + + if [[ -e /proc/xen ]] && [[ $(tc-arch) == "x86" ]] && ! is-flag -mno-tls-direct-seg-refs ; then + ewarn "You are using Xen but don't have -mno-tls-direct-seg-refs in your CFLAGS." + ewarn "This will result in a 50% performance penalty when running with a 32bit" + ewarn "hypervisor, which is probably not what you want." + fi + + # ABI-specific checks follow here. Hey, we have a lot more specific conditions that + # we test for... + if ! is_crosscompile && ! tc-is-cross-compiler ; then + if use amd64 && use multilib && [[ ${MERGE_TYPE} != "binary" ]] ; then + ebegin "Checking if the system can execute 32-bit binaries" + echo 'int main(){return 0;}' > "${T}/check-ia32-emulation.c" + local STAT + if ${CC-${CHOST}-gcc} ${CFLAGS_x86} "${T}/check-ia32-emulation.c" -o "${T}/check-ia32-emulation.elf32"; then + "${T}/check-ia32-emulation.elf32" + STAT=$? + else + # Don't fail here to allow single->multi ABI switch + # or recover from breakage like bug #646424 + ewarn "Failed to compile the ABI test. Broken host glibc?" + STAT=0 + fi + rm -f "${T}/check-ia32-emulation.elf32" + eend $STAT + if [[ $STAT -ne 0 ]]; then + eerror "Ensure that CONFIG_IA32_EMULATION is enabled in the kernel." + eerror "Seek support otherwise." + die "Unable to execute 32-bit binaries" + fi + fi + + fi + + # When we actually have to compile something... + if ! just_headers && [[ ${MERGE_TYPE} != "binary" ]] ; then + if [[ -d "${ESYSROOT}"/usr/lib/include ]] ; then + # bug #833620, bug #643302 + eerror "Found ${ESYSROOT}/usr/lib/include directory!" + eerror "This is known to break glibc's build." + eerror "Please backup its contents then remove the directory." + die "Found directory (${ESYSROOT}/usr/lib/include) which will break build (bug #833620)!" + fi + + if is_linux ; then + if use old-kernel ; then + MIN_KERN_VER=${MIN_KERN_VER_UPSTREAM} + else + MIN_KERN_VER=${MIN_KERN_VER_GENTOO} + fi + + local run_kv build_kv want_kv + + run_kv=$(g_get_running_KV) + build_kv=$(g_int_to_KV $(get_kheader_version)) + want_kv=${MIN_KERN_VER} + + if ! is_crosscompile && ! tc-is-cross-compiler ; then + # Building fails on an non-supporting kernel + ebegin "Checking running kernel version (${run_kv} >= ${want_kv})" + if ! [[ $(g_KV_to_int ${run_kv}) -ge $(g_KV_to_int ${want_kv}) ]] ; then + eend 1 + echo + eerror "You need a kernel of at least ${want_kv}!" + die "Kernel version too low! Maybe setting USE=old-kernel helps." + fi + eend 0 + fi + + # Do not run this check for pkg_pretend, just pkg_setup and friends (if we ever get used there). + # It's plausible (seen it in the wild) that Portage will (correctly) schedule a linux-headers + # upgrade before glibc, but because pkg_pretend gets run before any packages are merged at all (not + # just glibc), the whole emerge gets aborted without a good reason. We probably don't + # need to run this check at all given we have a dependency on the right headers, + # but let's leave it as-is for now. + if [[ ${EBUILD_PHASE_FUNC} != pkg_pretend ]] ; then + ebegin "Checking linux-headers version (${build_kv} >= ${want_kv})" + if ! [[ $(g_KV_to_int ${build_kv}) -ge $(g_KV_to_int ${want_kv}) ]] ; then + eend 1 + echo + eerror "You need linux-headers of at least ${want_kv}!" + die "linux-headers version too low!" + fi + eend 0 + fi + fi + fi +} + +upgrade_warning() { + is_crosscompile && return + + if [[ ${MERGE_TYPE} != buildonly && -n ${REPLACING_VERSIONS} && -z ${ROOT} ]]; then + if ver_replacing -lt $(ver_cut 1-2 ${PV}); then + ewarn "After upgrading glibc, please restart all running processes." + ewarn "Be sure to include init (telinit u) or systemd (systemctl daemon-reexec)." + ewarn "Alternatively, reboot your system." + ewarn "(See bug #660556, bug #741116, bug #823756, etc)" + fi + fi +} + +# +# the phases +# + +# pkg_pretend + +pkg_pretend() { + upgrade_warning +} + +# pkg_setup + +pkg_setup() { + # see bug 682570 + [[ -z ${BOOTSTRAP_RAP} ]] && python-any-r1_pkg_setup +} + +# src_unpack + +src_unpack() { + setup_env + + einfo "Checking general environment sanity." + sanity_prechecks + + use multilib-bootstrap && unpack gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz + + if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI=" + https://anongit.gentoo.org/git/proj/toolchain/glibc-patches.git + https://github.com/gentoo/glibc-patches.git + " + EGIT_CHECKOUT_DIR=${WORKDIR}/patches-git + git-r3_src_unpack + mv patches-git/9999 patches || die + EGIT_REPO_URI=" + https://sourceware.org/git/glibc.git + https://git.sr.ht/~sourceware/glibc + https://gitlab.com/x86-glibc/glibc.git + " + EGIT_CHECKOUT_DIR=${S} + [[ ${PV} == *.*.9999 ]] && EGIT_BRANCH=release/${PV%.*}/master + git-r3_src_unpack + else + if use verify-sig; then + verify-sig_verify_detached "${DISTDIR}/${P}.tar.xz" "${DISTDIR}/${P}.tar.xz.sig" + fi + unpack ${P}.tar.xz + + cd "${WORKDIR}" || die + unpack ${P}-patches-${PATCH_VER}.tar.xz + fi + + cd "${WORKDIR}" || die + use systemd && unpack glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz +} + +# src_prepare + +src_prepare() { + local patchsetname + if ! use vanilla ; then + if [[ ${PV} == 9999* ]] ; then + patchsetname="from git master" + else + patchsetname="${PV}-${PATCH_VER}" + fi + einfo "Applying Gentoo Glibc patchset ${patchsetname}" + eapply "${WORKDIR}"/patches + einfo "Done." + + # Patches we should apply only for Hurd to be conservative + if is_hurd ; then + eapply "${FILESDIR}"/glibc-2.43-hurd-CLOCK_MONOTONIC.patch + fi + fi + + case ${CTARGET} in + m68*-aligned-*) + einfo "Applying utmp format fix for m68k with -maligned-int" + eapply "${FILESDIR}/glibc-2.41-m68k-malign.patch" + ;; + *) + ;; + esac + + default + + gnuconfig_update + + cd "${WORKDIR}" || die + find . -name configure -exec touch {} + + + # Fix permissions on some of the scripts. + chmod u+x "${S}"/scripts/*.sh + + cd "${S}" || die +} + +# src_configure + +glibc_do_configure() { + dump_build_environment + + local myconf=() + + # Use '=strong' instead of '=all' to protect only functions + # worth protecting from stack smashes. + myconf+=( --enable-stack-protector=$(usex ssp strong no) ) + + # Keep a whitelist of targets supporting IFUNC. glibc's ./configure + # is not robust enough to detect proper support: + # https://bugs.gentoo.org/641216 + # https://sourceware.org/PR22634#c0 + case $(tc-arch ${CTARGET}) in + # Keep whitelist of targets where autodetection mostly works. + amd64|x86|sparc|ppc|ppc64|arm|arm64|s390|riscv|loong) ;; + # Blacklist everywhere else + *) myconf+=( libc_cv_ld_gnu_indirect_function=no ) ;; + esac + + case ${ABI}-${CTARGET} in + amd64-x86_64-*|x32-x86_64-*-*-gnux32) myconf+=( $(use_enable cet) ) ;; + *) ;; + esac + + case ${ABI}-${CTARGET} in + amd64-x86_64-*|arm64-aarch64-*) myconf+=( $(use_enable sframe) ) ;; + *) ;; + esac + + [[ $(tc-is-softfloat) == "yes" ]] && myconf+=( --without-fp ) + + if use old-kernel ; then + MIN_KERN_VER=${MIN_KERN_VER_UPSTREAM} + else + MIN_KERN_VER=${MIN_KERN_VER_GENTOO} + fi + myconf+=( --enable-kernel=${MIN_KERN_VER} ) + + # Since SELinux support is only required for nscd, only enable it if: + # 1. USE selinux + # 2. only for the primary ABI on multilib systems + # 3. Not a crosscompile + if ! is_crosscompile && use selinux ; then + if use multilib ; then + if is_final_abi ; then + myconf+=( --with-selinux ) + else + myconf+=( --without-selinux ) + fi + else + myconf+=( --with-selinux ) + fi + else + myconf+=( --without-selinux ) + fi + + # Force a few tests where we always know the answer but + # configure is incapable of finding it. + if is_crosscompile ; then + export \ + libc_cv_c_cleanup=yes \ + libc_cv_forced_unwind=yes + fi + + myconf+=( + --disable-werror + --enable-bind-now + --enable-fortify-source + --build=${CBUILD_OPT:-${CBUILD}} + --host=${CTARGET_OPT:-${CTARGET}} + $(use_enable profile) + $(use_with gd) + --with-headers="${ESYSROOT}$(alt_headers)" + --prefix="$(host_eprefix)/usr" + --sysconfdir="$(host_eprefix)/etc" + --localstatedir="$(host_eprefix)/var" + --libdir='$(prefix)'/$(get_libdir) + --mandir='$(prefix)'/share/man + --infodir='$(prefix)'/share/info + --libexecdir='$(libdir)'/misc/glibc + --with-bugurl=https://bugs.gentoo.org/ + --with-pkgversion="$(glibc_banner)" + $(use_multiarch || echo --disable-multi-arch) + $(use_enable nscd) + + # /usr/bin/mtrace has a Perl shebang. Gentoo Prefix QA checks fail if + # Perl hasn't been installed inside the prefix yet and configure picks + # up a Perl from outside the prefix instead. configure will fail to + # execute Perl during configure if we're cross-compiling a prefix, but + # it will just disable mtrace in that case. + # Note: mtrace is needed by the test suite. + ac_cv_path_PERL="$(usex perl "${EPREFIX}"/usr/bin/perl $(usex test "${EPREFIX}"/usr/bin/perl $(usex doc "${EPREFIX}"/usr/bin/perl no)))" + + # locale data is arch-independent + # https://bugs.gentoo.org/753740 + libc_cv_complocaledir='${exec_prefix}/lib/locale' + + # On aarch64 there is no way to override -mcpu=native, and if + # the current cpu does not support SVE configure fails. + # Let's boldly assume our toolchain can always build SVE instructions. + libc_cv_aarch64_sve_asm=yes + + ${EXTRA_ECONF} + ) + + # We rely on sys-libs/timezone-data for timezone tools normally. + myconf+=( $(use_enable vanilla timezone-tools) ) + + if is_crosscompile ; then + myconf+=( --disable-systemtap ) + else + myconf+=( $(use_enable systemtap) ) + fi + + # These libs don't have configure flags. + ac_cv_lib_audit_audit_log_user_avc_message=$(usex audit || echo no) + ac_cv_lib_cap_cap_init=$(usex caps || echo no) + + # There is no configure option for this and we need to export it + # since the glibc build will re-run configure on itself + export libc_cv_rootsbindir="$(host_eprefix)/sbin" + export libc_cv_slibdir="$(host_eprefix)/$(get_libdir)" + + local builddir=$(builddir nptl) + mkdir -p "${builddir}" + cd "${builddir}" + set -- "${S}"/configure "${myconf[@]}" + echo "$@" + "$@" || die "failed to configure glibc" + + # If we're trying to migrate between ABI sets, we need + # to lie and use a local copy of gcc. Like if the system + # is built with MULTILIB_ABIS="amd64 x86" but we want to + # add x32 to it, gcc/glibc don't yet support x32. + # + if [[ -n ${GCC_BOOTSTRAP_VER} ]] && use multilib-bootstrap ; then + echo 'int main(void){}' > "${T}"/test.c || die + if ! $(tc-getCC ${CTARGET}) ${CFLAGS} ${LDFLAGS} "${T}"/test.c -Wl,-emain -lgcc 2>/dev/null ; then + sed -i -e '/^CC = /s:$: -B$(objdir)/../'"gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}/${ABI}:" config.make || die + fi + fi +} + +glibc_headers_configure() { + export ABI=default + + local builddir=$(builddir "headers") + mkdir -p "${builddir}" + cd "${builddir}" + + # if we don't have a compiler yet, we can't really test it now ... + # hopefully they don't affect header generation, so let's hope for + # the best here ... + local v vars=( + ac_cv_header_cpuid_h=yes + libc_cv_{386,390,alpha,arm,hppa,mips,{powerpc,sparc}{,32,64},sh,x86_64}_tls=yes + libc_cv_asm_cfi_directives=yes + libc_cv_broken_visibility_attribute=no + libc_cv_c_cleanup=yes + libc_cv_compiler_powerpc64le_binary128_ok=yes + libc_cv_forced_unwind=yes + libc_cv_gcc___thread=yes + libc_cv_mlong_double_128=yes + libc_cv_mlong_double_128ibm=yes + libc_cv_ppc_machine=yes + libc_cv_ppc_rel16=yes + libc_cv_predef_fortify_source=no + libc_cv_target_power8_ok=yes + libc_cv_visibility_attribute=yes + libc_cv_z_combreloc=yes + libc_cv_z_execstack=yes + libc_cv_z_initfirst=yes + libc_cv_z_nodelete=yes + libc_cv_z_nodlopen=yes + libc_cv_z_relro=yes + libc_mips_abi=${ABI} + libc_mips_float=$([[ $(tc-is-softfloat) == "yes" ]] && echo soft || echo hard) + # These libs don't have configure flags. + ac_cv_lib_audit_audit_log_user_avc_message=no + ac_cv_lib_cap_cap_init=no + ) + + einfo "Forcing cached settings:" + for v in "${vars[@]}" ; do + einfo " ${v}" + export ${v} + done + + local headers_only_arch_CPPFLAGS=() + + # Blow away some random CC settings that screw things up. #550192 + if [[ -d ${S}/sysdeps/mips ]]; then + pushd "${S}"/sysdeps/mips >/dev/null + sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=32:' mips32/Makefile mips64/n32/Makefile || die + sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=64:' mips64/n64/Makefile || die + + # Force the mips ABI to the default. This is OK because the set of + # installed headers in this phase is the same between the 3 ABIs. + # If this ever changes, this hack will break, but that's unlikely + # as glibc discourages that behavior. + # https://crbug.com/647033 + sed -i -e 's:abiflag=.*:abiflag=_ABIO32:' preconfigure || die + + popd >/dev/null + fi + + local myconf=() + + case ${CTARGET} in + aarch64*) + # The configure checks fail during cross-build, so disable here + # for headers-only + myconf+=( + --disable-mathvec + ) ;; + riscv*) + # RISC-V interrogates the compiler to determine which target to + # build. If building the headers then we don't strictly need a + # RISC-V compiler, so the built-in definitions that are provided + # along with all RISC-V compiler might not exist. This causes + # glibc's RISC-V preconfigure script to blow up. Since we're just + # building the headers any value will actually work here, so just + # pick the standard one (rv64g/lp64d) to make the build scripts + # happy for now -- the headers are all the same anyway so it + # doesn't matter. + headers_only_arch_CPPFLAGS+=( + -D__riscv_xlen=64 + -D__riscv_flen=64 + -D__riscv_float_abi_double=1 + -D__riscv_atomic=1 + ) ;; + esac + + myconf+=( + --disable-sanity-checks + --enable-hacker-mode + --disable-werror + --enable-bind-now + --build=${CBUILD_OPT:-${CBUILD}} + --host=${CTARGET_OPT:-${CTARGET}} + --with-headers="${ESYSROOT}$(alt_headers)" + --prefix="$(host_eprefix)/usr" + ${EXTRA_ECONF} + ) + + # Nothing is compiled here which would affect the headers for the target. + # So forcing CC/CFLAGS is sane. + local headers_only_CC=$(tc-getBUILD_CC) + local headers_only_CFLAGS="-O1 -pipe" + local headers_only_CPPFLAGS="-U_FORTIFY_SOURCE ${headers_only_arch_CPPFLAGS[*]}" + local headers_only_LDFLAGS="" + set -- "${S}"/configure "${myconf[@]}" + echo \ + "CC=${headers_only_CC}" \ + "CFLAGS=${headers_only_CFLAGS}" \ + "CPPFLAGS=${headers_only_CPPFLAGS}" \ + "LDFLAGS=${headers_only_LDFLAGS}" \ + "$@" + CC=${headers_only_CC} \ + CFLAGS=${headers_only_CFLAGS} \ + CPPFLAGS=${headers_only_CPPFLAGS} \ + LDFLAGS="" \ + "$@" || die "failed to configure glibc" +} + +do_src_configure() { + if just_headers ; then + glibc_headers_configure + else + glibc_do_configure nptl + fi +} + +src_configure() { + foreach_abi do_src_configure +} + +# src_compile + +do_src_compile() { + emake -C "$(builddir nptl)" +} + +src_compile() { + if just_headers ; then + return + fi + + foreach_abi do_src_compile +} + +# src_test + +glibc_src_test() { + cd "$(builddir nptl)" + + local myxfailparams="" + if [[ "${GENTOO_GLIBC_XFAIL_TESTS}" == "yes" ]] ; then + local virt=$(systemd-detect-virt 2>/dev/null) + if [[ ${virt} == systemd-nspawn ]] ; then + ewarn "Skipping extra tests because in systemd-nspawn container" + XFAIL_TEST_LIST+=( "${XFAIL_NSPAWN_TEST_LIST[@]}" ) + fi + if [[ "$(nice)" == "19" ]] ; then + # Expects to be able to increase niceness, which it can't do if + # already at the highest nice value + XFAIL_TEST_LIST+=( "tst-nice" ) + fi + + for myt in ${XFAIL_TEST_LIST[@]} ; do + myxfailparams+="test-xfail-${myt}=yes " + done + fi + + # https://inbox.sourceware.org/libc-alpha/lhuikb5ibey.fsf@oldenburg.str.redhat.com/ + local -x GAWK_GNU_MATCHERS=1 + + # sandbox does not understand unshare() and prevents + # writes to /proc/, which makes many tests fail + + # we give the tests a bit more time to avoid spurious + # bug reports on slow arches + + SANDBOX_ON=0 LD_PRELOAD= TIMEOUTFACTOR=16 nonfatal emake ${myxfailparams} check +} + +src_test() { + if just_headers ; then + return + fi + + # glibc_src_test uses nonfatal so that we can run tests for all ABIs + # and fail at the end instead. + foreach_abi glibc_src_test || die "tests failed" +} + +# src_install + +run_locale_gen() { + local fatal=$1 prefix=$2 + local user_config action config stderr noun ret + local -a hasversion_opts localegen_args + + if [[ ${EBUILD_PHASE_FUNC} == src_install ]]; then + hasversion_opts=( -b ) + fi + + if has_version "${hasversion_opts[@]}" '>=sys-apps/locale-gen-3'; then + localegen_args=( --prefix "${prefix}" ) + else + config="${prefix}/usr/share/i18n/SUPPORTED" + user_config="${prefix}/etc/locale.gen" + if [[ ${EBUILD_PHASE_FUNC} == src_install ]]; then + # For USE=compile-locales, all locales should be built. + mkdir -p -- "${prefix}/usr/lib/locale" || die + elif locale-gen --list --config "${user_config}" | read -r; then + config=${user_config} + fi + localegen_args=( --config "${config}" --destdir "${prefix}" ) + fi + + # bug 736794: we need to be careful with the parallelization... the + # number of processors saved in the environment of a binary package may + # differ strongly from the number of processes available during postinst + if [[ ${EMERGE_FROM} != binary ]]; then + localegen_args+=( --jobs "$(get_makeopts_jobs)" ) + fi + + printf 'Executing: locale-gen %s\n' "${localegen_args[*]@Q}" >&2 + { stderr=$(locale-gen "${localegen_args[@]}" 2>&1 >&3); } 3>&1 + ret=$? + action="ewarn" + if (( ret == 0 )); then + noun="warning" + else + noun="error" + if (( fatal )); then + action="die" + fi + fi + # Convey warnings/errors so that they can be reseen upon emerge exiting. + if [[ ${stderr} ]]; then + ewarn "locale-gen(8) issued the following ${noun}s:" + while read -r; do + ewarn "$REPLY" + done <<<"${stderr}" + fi + if (( ret != 0 )); then + "${action}" "locale-gen(8) unexpectedly failed during the ${EBUILD_PHASE_FUNC} phase" + fi +} + +glibc_do_src_install() { + local builddir=$(builddir nptl) + cd "${builddir}" + + emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install + + # This version (2.26) provides some compatibility libraries for the NIS/NIS+ support + # which come without headers etc. Only needed for binary packages since the + # external net-libs/libnsl has increased soversion. Keep only versioned libraries. + find "${D}" -name "libnsl.a" -delete + find "${D}" -name "libnsl.so" -delete + + # Normally upstream_pv is ${PV}. Live ebuilds are exception, there we need + # to infer upstream version: + # '#define VERSION "2.26.90"' -> '2.26.90' + local upstream_pv=$(sed -n -r 's/#define VERSION "(.*)"/\1/p' "${S}"/version.h) + + # Avoid stripping binaries not targeted by ${CHOST}. Or else + # ${CHOST}-strip would break binaries build for ${CTARGET}. + is_crosscompile && dostrip -x / + + # gdb thread introspection relies on local libpthreads symbols. stripping breaks it + # See Note [Disable automatic stripping] + dostrip -x $(alt_libdir)/libpthread-${upstream_pv}.so + # valgrind requires knowledge about ld.so symbols. + dostrip -x $(alt_libdir)/ld-*.so* + + if [[ -e ${ED}/$(alt_usrlibdir)/libm-${upstream_pv}.a ]] ; then + # Move versioned .a file out of libdir to evade portage QA checks + # instead of using gen_usr_ldscript(). We fix ldscript as: + # "GROUP ( /usr/lib64/libm-<pv>.a ..." -> "GROUP ( /usr/lib64/glibc-<pv>/libm-<pv>.a ..." + sed -i "s@\(libm-${upstream_pv}.a\)@${P}/\1@" \ + "${ED}"/$(alt_usrlibdir)/libm.a || die + dodir $(alt_usrlibdir)/${P} + mv "${ED}"/$(alt_usrlibdir)/libm-${upstream_pv}.a \ + "${ED}"/$(alt_usrlibdir)/${P}/libm-${upstream_pv}.a || die + fi + + # We configure toolchains for standalone prefix systems with a sysroot, + # which is prepended to paths in ld scripts, so strip the prefix from these. + # Before: GROUP ( /foo/lib64/libc.so.6 /foo/usr/lib64/libc_nonshared.a AS_NEEDED ( /foo/lib64/ld-linux-x86-64.so.2 ) ) + # After: GROUP ( /lib64/libc.so.6 /usr/lib64/libc_nonshared.a AS_NEEDED ( /lib64/ld-linux-x86-64.so.2 ) ) + if [[ -n $(host_eprefix) ]] ; then + local file + grep -lZIF "ld script" "${ED}/$(alt_usrlibdir)"/lib*.{a,so} 2>/dev/null | while read -rd '' file ; do + sed -i "s|$(host_eprefix)/|/|g" "${file}" || die + done + fi + + # We'll take care of the cache ourselves + rm -f "${ED}"/etc/ld.so.cache + + # Everything past this point just needs to be done once ... + is_final_abi || return 0 + + # Make sure the non-native interp can be found on multilib systems even + # if the main library set isn't installed into the right place. Maybe + # we should query the active gcc for info instead of hardcoding it ? + local i ldso_abi ldso_name + if is_linux ; then + local ldso_abi_list=( + # x86 + amd64 /lib64/ld-linux-x86-64.so.2 + x32 /libx32/ld-linux-x32.so.2 + x86 /lib/ld-linux.so.2 + # mips + o32 /lib/ld.so.1 + n32 /lib32/ld.so.1 + n64 /lib64/ld.so.1 + # powerpc + ppc /lib/ld.so.1 + # riscv + ilp32d /lib/ld-linux-riscv32-ilp32d.so.1 + ilp32 /lib/ld-linux-riscv32-ilp32.so.1 + lp64d /lib/ld-linux-riscv64-lp64d.so.1 + lp64 /lib/ld-linux-riscv64-lp64.so.1 + # s390 + s390 /lib/ld.so.1 + s390x /lib/ld64.so.1 + # sparc + sparc32 /lib/ld-linux.so.2 + sparc64 /lib64/ld-linux.so.2 + ) + case $(tc-endian) in + little) + ldso_abi_list+=( + # arm + arm64 /lib/ld-linux-aarch64.so.1 + # ELFv2 (glibc does not support ELFv1 on LE) + ppc64 /lib64/ld64.so.2 + ) + ;; + big) + ldso_abi_list+=( + # arm + arm64 /lib/ld-linux-aarch64_be.so.1 + # ELFv1 (glibc does not support ELFv2 on BE) + ppc64 /lib64/ld64.so.1 + ) + ;; + esac + else + # we must be using hurd then + local ldso_abi_list=( + # x86 + amd64 /lib64/ld-x86-64.so.1 + x86 /lib/ld.so.1 + ) + fi + if [[ ${SYMLINK_LIB} == "yes" ]] && [[ ! -e ${ED}/$(alt_prefix)/lib ]] ; then + dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) $(alt_prefix)/lib + fi + for (( i = 0; i < ${#ldso_abi_list[@]}; i += 2 )) ; do + ldso_abi=${ldso_abi_list[i]} + has ${ldso_abi} $(get_install_abis) || continue + + ldso_name="$(alt_prefix)${ldso_abi_list[i+1]}" + if [[ ! -L ${ED}/${ldso_name} && ! -e ${ED}/${ldso_name} ]] ; then + dosym ../$(get_abi_LIBDIR ${ldso_abi})/${ldso_name##*/} ${ldso_name} + fi + done + + if is_linux ; then + # In the LSB 5.0 definition, someone had the excellent idea to "standardize" + # the runtime loader name, see also https://xkcd.com/927/ + # Normally, in Gentoo one should never come across executables that require this. + # However, binary commercial packages are known to adhere to weird practices. + # https://refspecs.linuxfoundation.org/LSB_5.0.0/LSB-Core-AMD64/LSB-Core-AMD64.html#BASELIB + local lsb_ldso_name native_ldso_name lsb_ldso_abi + local lsb_ldso_abi_list=( + # x86 + amd64 ld-linux-x86-64.so.2 ld-lsb-x86-64.so.3 + ) + for (( i = 0; i < ${#lsb_ldso_abi_list[@]}; i += 3 )) ; do + lsb_ldso_abi=${lsb_ldso_abi_list[i]} + native_ldso_name=${lsb_ldso_abi_list[i+1]} + lsb_ldso_name=${lsb_ldso_abi_list[i+2]} + has ${lsb_ldso_abi} $(get_install_abis) || continue + + if [[ ! -L ${ED}/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name} && ! -e ${ED}/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name} ]] ; then + dosym ${native_ldso_name} "$(alt_prefix)/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name}" + fi + done + fi + + # On Hurd, glibc and (unpatched) gcc tend to disagree about the proper location for + # the dynamic loader. Which is maximally stupid since this one information is hardcoded + # into every single binary, and even if we were to fix *our* gcc it could still prevent + # us from running binaries prepared anywhere else... + + if is_hurd && has amd64 $(get_install_abis) ; then + # First, let's check for sanity + if [[ -f "${D}/$(alt_prefix)/lib/ld-x86-64.so.1" ]] ; then + die "Somehow your amd64 hurd glibc installed /lib/ld-x86-64.so.1 ... this should not happen." + fi + + # Then make a compatibility symlink. + dosym ../lib64/ld-x86-64.so.1 "$(alt_prefix)/lib/ld-x86-64.so.1" + fi + + if is_hurd && has x86 $(get_install_abis) ; then + # First, let's check for sanity + if [[ -f "${D}/$(alt_prefix)/$(get_abi_LIBDIR x86)/ld.so" ]] ; then + die "Somehow your x86 hurd glibc installed ld.so ... this should not happen." + fi + + # Then make a compatibility symlink. + dosym ld.so.1 "$(alt_prefix)/$(get_abi_LIBDIR x86)/ld.so" + fi + + # With devpts under Linux mounted properly, we do not need the pt_chown + # binary to be setuid. This is because the default owners/perms will be + # exactly what we want. + if ! use suid ; then + find "${ED}" -name pt_chown -exec chmod -s {} + + fi + + ################################################################# + # EVERYTHING AFTER THIS POINT IS FOR NATIVE GLIBC INSTALLS ONLY # + ################################################################# + + # Make sure we install some symlink hacks so that when we build + # a 2nd stage cross-compiler, gcc finds the target system + # headers correctly. See gcc/doc/gccinstall.info + if is_crosscompile ; then + # We need to make sure that /lib and /usr/lib always exists. + # gcc likes to use relative paths to get to its multilibs like + # /usr/lib/../lib64/. So while we don't install any files into + # /usr/lib/, we do need it to exist. + keepdir $(alt_prefix)/lib + keepdir $(alt_prefix)/usr/lib + + dosym usr/include $(alt_prefix)/sys-include + return 0 + fi + + # Files for Debian-style locale updating + dodir /usr/share/i18n + sed \ + -e "/^#/d" \ + -e "/SUPPORTED-LOCALES=/d" \ + -e "s: \\\\::g" -e "s:/: :g" \ + "${S}"/localedata/SUPPORTED > "${ED}"/usr/share/i18n/SUPPORTED \ + || die "generating /usr/share/i18n/SUPPORTED failed" + + cd "${S}" || die + + # Install misc network config files + insinto /etc + doins posix/gai.conf + + if use systemd ; then + doins "${WORKDIR}/glibc-systemd-${GLIBC_SYSTEMD_VER}/gentoo-config/nsswitch.conf" + else + doins nss/nsswitch.conf + fi + + # Gentoo-specific + newins "${FILESDIR}"/host.conf-1 host.conf + + if use nscd ; then + doins nscd/nscd.conf + + newinitd "$(prefixify_ro "${FILESDIR}"/nscd-1)" nscd + + local nscd_args=( + -e "s:@PIDFILE@:$(strings "${ED}"/usr/sbin/nscd | grep nscd.pid):" + ) + + sed -i "${nscd_args[@]}" "${ED}"/etc/init.d/nscd + + use systemd && systemd_dounit nscd/nscd.service + newtmpfiles nscd/nscd.tmpfiles nscd.conf + fi + + echo 'LDPATH="include ld.so.conf.d/*.conf"' > "${T}"/00glibc + doenvd "${T}"/00glibc + + for d in BUGS ChangeLog CONFORMANCE FAQ NEWS NOTES PROJECTS README* ; do + [[ -s ${d} ]] && dodoc ${d} + done + dodoc -r ChangeLog.old + + # Prevent overwriting of the /etc/localtime symlink. We'll handle the + # creation of the "factory" symlink in pkg_postinst(). + rm -f "${ED}"/etc/localtime + + # Generate all locales if this is a native build as locale generation + if use compile-locales && ! is_crosscompile; then + run_locale_gen 1 "${ED}" + fi +} + +glibc_headers_install() { + local builddir=$(builddir "headers") + cd "${builddir}" + emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install-headers + + insinto $(alt_headers)/gnu + doins "${S}"/include/gnu/stubs.h + + # Make sure we install the sys-include symlink so that when + # we build a 2nd stage cross-compiler, gcc finds the target + # system headers correctly. See gcc/doc/gccinstall.info + dosym usr/include $(alt_prefix)/sys-include +} + +src_install() { + if just_headers ; then + export ABI=default + glibc_headers_install + return + fi + + foreach_abi glibc_do_src_install + + if ! use static-libs ; then + einfo "Not installing static glibc libraries" + find "${ED}" -name "*.a" -and -not -name "*_nonshared.a" -delete + fi +} + +# Simple test to make sure our new glibc isn't completely broken. +# Make sure we don't test with statically built binaries since +# they will fail. Also, skip if this glibc is a cross compiler. +# +# If coreutils is built with USE=multicall, some of these files +# will just be wrapper scripts, not actual ELFs we can test. +glibc_sanity_check() { + cd / #228809 + + # We enter ${ED} so to avoid trouble if the path contains + # special characters; for instance if the path contains the + # colon character (:), then the linker will try to split it + # and look for the libraries in an unexpected place. This can + # lead to unsafe code execution if the generated prefix is + # within a world-writable directory. + # (e.g. /var/tmp/portage:${HOSTNAME}) + pushd "${ED}"/$(get_libdir) >/dev/null + + # first let's find the actual dynamic linker here + # symlinks may point to the wrong abi + local newldso=$(find . -maxdepth 1 -name 'ld*so.?' -type f -print -quit) + + einfo Last-minute run tests with ${newldso} in /$(get_libdir) ... + + local x striptest + for x in cal date env free ls true uname uptime ; do + x=$(type -p ${x}) + [[ -z ${x} || ${x} != ${EPREFIX}/* ]] && continue + striptest=$(LC_ALL="C" file -L ${x} 2>/dev/null) || continue + case ${striptest} in + *"statically linked"*) continue;; + *"ASCII text"*) continue;; + esac + # We need to clear the locale settings as the upgrade might want + # incompatible locale data. This test is not for verifying that. + LC_ALL=C \ + ${newldso} --library-path . ${x} > /dev/null \ + || die "simple run test (${x}) failed" + done + + popd >/dev/null +} + +pkg_preinst() { + # nothing to do if just installing headers + just_headers && return + + einfo "Checking general environment sanity." + sanity_prechecks + + # prepare /etc/ld.so.conf.d/ for files + mkdir -p "${EROOT}"/etc/ld.so.conf.d + + # Default /etc/hosts.conf:multi to on for systems with small dbs. + if [[ $(wc -l < "${EROOT}"/etc/hosts) -lt 1000 ]] ; then + sed -i '/^multi off/s:off:on:' "${ED}"/etc/host.conf + einfo "Defaulting /etc/host.conf:multi to on" + fi + + [[ -n ${ROOT} ]] && return 0 + [[ -d ${ED}/$(get_libdir) ]] || return 0 + [[ -z ${BOOTSTRAP_RAP} ]] && glibc_sanity_check + + if [[ -L ${EROOT}/usr/lib/locale ]]; then + # Help portage migrate this to a directory + # https://bugs.gentoo.org/753740 + rm "${EROOT}"/usr/lib/locale || die + fi + + # Keep around libcrypt so that Perl doesn't break when merging libxcrypt + # (libxcrypt is the new provider for now of libcrypt.so.{1,2}). + # bug #802207 + if has_version "${CATEGORY}/${PN}[crypt]" && ! has preserve-libs ${FEATURES}; then + PRESERVED_OLD_LIBCRYPT=1 + cp -p "${EROOT}/$(get_libdir)/libcrypt$(get_libname 1)" \ + "${T}/libcrypt$(get_libname 1)" || die + else + PRESERVED_OLD_LIBCRYPT=0 + fi +} + +glibc_refresh_ldconfig() { + if [[ ${MERGE_TYPE} == buildonly ]]; then + return + fi + + # Version check could be added to avoid unnecessary work, but ldconfig + # should finish quickly enough to not matter. + ebegin "Refreshing ld.so.cache" + ldconfig -i + if ! eend $?; then + ewarn "Failed to refresh the ld.so.cache for you. Some programs may be broken" + ewarn "before you manually do so (ldconfig -i)." + fi +} + +pkg_postinst() { + # nothing to do if just installing headers + just_headers && return + + if ! tc-is-cross-compiler && [[ -x ${EROOT}/usr/sbin/iconvconfig ]] ; then + # Generate fastloading iconv module configuration file. + "${EROOT}"/usr/sbin/iconvconfig --prefix="${ROOT}/" + fi + + if ! is_crosscompile && [[ -z ${ROOT} ]] ; then + # glibc-2.38+ on loong has ldconfig support added, but the ELF e_flags + # handling has changed as well, which means stale ldconfig auxiliary + # cache entries and failure to lookup libgcc_s / libstdc++ (breaking + # every C++ application) / libgomp etc., among other breakages. + # + # To fix this, simply refresh the ld.so.cache without using the + # auxiliary cache if we're natively installing on loong. This should + # be done relatively soon because we want to minimize the breakage + # window for the affected programs. + use loong && glibc_refresh_ldconfig + + if ! use compile-locales; then + run_locale_gen 0 "${EROOT}" + fi + + # If fixincludes was/is active for a particular GCC slot, we + # must refresh it. See bug #933282 and GCC's documentation: + # https://gcc.gnu.org/onlinedocs/gcc/Fixed-Headers.html + # + # TODO: Could this be done for cross? Some care would be needed + # to pass the right arguments. + while IFS= read -r -d $'\0' slot ; do + local mkheaders_path="${BROOT}"/usr/libexec/gcc/${CBUILD}/${slot##*/}/install-tools/mkheaders + local pthread_h="${BROOT}"/usr/lib/gcc/${CBUILD}/${slot##*/}/include-fixed/pthread.h + if [[ -x ${mkheaders_path} ]] ; then + ebegin "Refreshing fixincludes for ${CBUILD} with gcc-${slot##*/}" + ${mkheaders_path} -v + eend $? + elif [[ -f ${pthread_h} ]] ; then + # fixincludes might have been enabled in the past for this + # GCC slot but not since we fixed toolchain.eclass to install + # mkheaders, so we need to manually delete pthread.h at least. + ebegin "Deleting stale fixincludes'd pthread.h for ${CBUILD} with gcc-${slot##*/}" + mv -v "${pthread_h}" "${pthread_h}.bak" + eend $? + fi + done < <(find "${BROOT}"/usr/libexec/gcc/${CBUILD}/ -mindepth 1 -maxdepth 1 -type d -print0) + fi + + upgrade_warning + + # Check for sanity of /etc/nsswitch.conf, take 2 + if [[ -e ${EROOT}/etc/nsswitch.conf ]] && ! has_version sys-auth/libnss-nis ; then + local entry + for entry in passwd group shadow; do + if grep -E -q "^[ \t]*${entry}:.*nis" "${EROOT}"/etc/nsswitch.conf; then + ewarn "" + ewarn "Your ${EROOT}/etc/nsswitch.conf uses NIS. Support for that has been" + ewarn "removed from glibc and is now provided by the package" + ewarn " sys-auth/libnss-nis" + ewarn "Install it now to keep your NIS setup working." + ewarn "" + fi + done + fi + + if [[ ${PRESERVED_OLD_LIBCRYPT} -eq 1 ]] ; then + cp -p "${T}/libcrypt$(get_libname 1)" "${EROOT}/$(get_libdir)/libcrypt$(get_libname 1)" || die + preserve_old_lib_notify /$(get_libdir)/libcrypt$(get_libname 1) + + elog "Please ignore a possible later error message about a file collision involving" + elog "${EROOT}/$(get_libdir)/libcrypt$(get_libname 1). We need to preserve this file for the moment to keep" + elog "the upgrade working, but it also needs to be overwritten when" + elog "sys-libs/libxcrypt is installed. See bug 802210 for more details." + fi +} diff --git a/www-servers/puma/Manifest b/www-servers/puma/Manifest index f9f4946bafc3..f7e49b4daf19 100644 --- a/www-servers/puma/Manifest +++ b/www-servers/puma/Manifest @@ -1,4 +1,4 @@ DIST puma-6.6.0.tar.gz 408988 BLAKE2B 656a82b50ef0556ae78791ed268a081c868eda85f273d29003ac587691345f066e3c539a3799a364cd89e57791866dd27af2971c05b3e4a906651e99f6d2a296 SHA512 aa55a06f153c3572e68333c1608b2cf624d85eaad315a76fea886adae22ef00ea1d5f316ecad2e7f02b2e923090c0587a8d17666eda69c6526399b23cb83f289 DIST puma-6.6.1.tar.gz 412347 BLAKE2B 6d0146f9bc39b0eb82edcea78cceeccccf9dba69d8d39a4c7710ab1a073f4909d5d7f2ec470c3d9a9d51738639b4fd72b16c359ccfeb6573ecfbbdbbf5384897 SHA512 5838b5eabb1190ba7af5429c08f34428954fb3e9c23bc8b78850021fc628bcb888feefea6f76d24caf490b1a45d890289dfe9b5c90ee9891b6387f81b6c05626 -DIST puma-7.1.0.tar.gz 424242 BLAKE2B be800a0b7ae2850ddbaac3408331956278a13150e20383270f874b404992fe6c80c430658f96fcb29f741c09a966d716f2e80e5fa757943b0bb7f1b4069f5686 SHA512 f00140080664e9f44181b289fb98059d1da70d6f6e555d8506a8e971954187635e36444d5aec14b9a849fec53b4e41d72961ca5550e69043dab2f211494455a5 DIST puma-7.2.0.tar.gz 426885 BLAKE2B ed2849482d00731a7098627891690bc314c7048e64d352a481b432cede78ca310f01dcd5c0658475467804430b63b8cc67fd09245b5781571bcaeaae24913920 SHA512 4439f2f752eef8f2f9aa45ad879f9b5a4e40e27af66623f4b7c54b5c93b1648e4713ef5c00d9a77e874960a3d8ecdddf6e77f9c80d2319215fd5fc7b312d1c46 +DIST puma-7.2.1.tar.gz 427475 BLAKE2B 391897599643da5f92eaf6dcc9861900b65d1718893e5f131ef46f25f78d88ffc4e64a9dde3d8d9c86dd8d408d34ea03834a18602f030a5c6019fa2fba22cee2 SHA512 543a78a6648d0ce5283a110e0bfb987d4f4a0fc48a7e8d6eddb0036e475a46c4eae99b5ce654191ceea312e42600c33572764154f6b7d995262a79c13c1e1b4c diff --git a/www-servers/puma/puma-7.1.0.ebuild b/www-servers/puma/puma-7.2.1.ebuild index 55a315c44bad..654cd1620f72 100644 --- a/www-servers/puma/puma-7.1.0.ebuild +++ b/www-servers/puma/puma-7.2.1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby32 ruby33 ruby34" +USE_RUBY="ruby32 ruby33 ruby34 ruby40" RUBY_FAKEGEM_GEMSPEC="puma.gemspec" @@ -18,7 +18,7 @@ SRC_URI="https://github.com/puma/puma/archive/v${PV}.tar.gz -> ${P}.tar.gz" LICENSE="BSD" SLOT="3" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~riscv ~sparc ~x86" DEPEND="dev-libs/openssl:0 test? ( net-misc/curl )" RDEPEND="dev-libs/openssl:0=" @@ -27,7 +27,7 @@ ruby_add_bdepend "virtual/ruby-ssl test? ( dev-ruby/concurrent-ruby dev-ruby/localhost - || ( dev-ruby/rack:3.1 dev-ruby/rack:3.0 ) + || ( dev-ruby/rack:3.2 dev-ruby/rack:3.1 dev-ruby/rack:3.0 ) dev-ruby/rackup >=dev-ruby/minitest-5.9:5 >=dev-ruby/test-unit-3.0:2 @@ -83,5 +83,5 @@ each_ruby_test() { einfo "Running test suite" MT_NO_PLUGINS=true ${RUBY} -Ilib:.:test \ - -e "require 'minitest/autorun'; Dir['test/**/*test_*.rb'].each{require _1}" || die + -e "gem 'minitest', '~> 5.0'; require 'minitest/autorun'; Dir['test/**/*test_*.rb'].each{require _1}" || die } diff --git a/x11-wm/herbstluftwm/herbstluftwm-0.9.6.ebuild b/x11-wm/herbstluftwm/herbstluftwm-0.9.6-r1.ebuild index fcf95cbc7886..644c61ceeb58 100644 --- a/x11-wm/herbstluftwm/herbstluftwm-0.9.6.ebuild +++ b/x11-wm/herbstluftwm/herbstluftwm-0.9.6-r1.ebuild @@ -7,7 +7,7 @@ PYTHON_COMPAT=( python3_{13..14} ) DISTUTILS_USE_PEP517=setuptools DISTUTILS_OPTIONAL=1 -inherit cmake desktop distutils-r1 +inherit cmake desktop distutils-r1 systemd DESCRIPTION="A manual tiling window manager for X" HOMEPAGE="https://herbstluftwm.org/" @@ -149,6 +149,17 @@ src_install() { # also in applications/. This allows herbstluftwm to be used as # window manager of a Gnome flashback session. domenu "${ED}"/usr/share/xsessions/herbstluftwm.desktop + + systemd_newuserunit - herbstluftwm.service <<-EOF + [Unit] + Description=Herbstluftwm Window Manager + PartOf=graphical-session.target + After=graphical-session-pre.target + + [Service] + ExecStart=/usr/bin/herbstluftwm + Restart=on-failure + EOF } distutils_enable_tests pytest diff --git a/x11-wm/herbstluftwm/herbstluftwm-9999.ebuild b/x11-wm/herbstluftwm/herbstluftwm-9999.ebuild index fcf95cbc7886..644c61ceeb58 100644 --- a/x11-wm/herbstluftwm/herbstluftwm-9999.ebuild +++ b/x11-wm/herbstluftwm/herbstluftwm-9999.ebuild @@ -7,7 +7,7 @@ PYTHON_COMPAT=( python3_{13..14} ) DISTUTILS_USE_PEP517=setuptools DISTUTILS_OPTIONAL=1 -inherit cmake desktop distutils-r1 +inherit cmake desktop distutils-r1 systemd DESCRIPTION="A manual tiling window manager for X" HOMEPAGE="https://herbstluftwm.org/" @@ -149,6 +149,17 @@ src_install() { # also in applications/. This allows herbstluftwm to be used as # window manager of a Gnome flashback session. domenu "${ED}"/usr/share/xsessions/herbstluftwm.desktop + + systemd_newuserunit - herbstluftwm.service <<-EOF + [Unit] + Description=Herbstluftwm Window Manager + PartOf=graphical-session.target + After=graphical-session-pre.target + + [Service] + ExecStart=/usr/bin/herbstluftwm + Restart=on-failure + EOF } distutils_enable_tests pytest |
