From d92152bb3d929fc5d2c529decfc56a8a56dba109 Mon Sep 17 00:00:00 2001 From: local Date: Fri, 22 Nov 2024 17:56:58 +0000 Subject: [PATCH 1/2] coreutils: update to 9.5 --- srcpkgs/coreutils/patches/split.patch | 32 --------------------------- srcpkgs/coreutils/template | 4 ++-- 2 files changed, 2 insertions(+), 34 deletions(-) delete mode 100644 srcpkgs/coreutils/patches/split.patch diff --git a/srcpkgs/coreutils/patches/split.patch b/srcpkgs/coreutils/patches/split.patch deleted file mode 100644 index cd1523607c59c0..00000000000000 --- a/srcpkgs/coreutils/patches/split.patch +++ /dev/null @@ -1,32 +0,0 @@ -From c4c5ed8f4e9cd55a12966d4f520e3a13101637d9 Mon Sep 17 00:00:00 2001 -From: Paul Eggert -Date: Tue, 16 Jan 2024 13:48:32 -0800 -Subject: [PATCH] split: do not shrink hold buffer -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -* src/split.c (line_bytes_split): Do not shrink hold buffer. -If it’s large for this batch it’s likely to be large for the next -batch, and for ‘split’ it’s not worth the complexity/CPU hassle to -shrink it. Do not assume hold_size can be bufsize. ---- - src/split.c | 3 --- - 1 file changed, 3 deletions(-) - -diff --git a/src/split.c b/src/split.c -index 64020c859..037960a59 100644 ---- a/src/split.c -+++ b/src/split.c -@@ -809,10 +809,7 @@ line_bytes_split (intmax_t n_bytes, char *buf, idx_t bufsize) - { - cwrite (n_out == 0, hold, n_hold); - n_out += n_hold; -- if (n_hold > bufsize) -- hold = xirealloc (hold, bufsize); - n_hold = 0; -- hold_size = bufsize; - } - - /* Output to eol if present. */ - diff --git a/srcpkgs/coreutils/template b/srcpkgs/coreutils/template index e83bd71f18a7b9..3f29c1b103c468 100644 --- a/srcpkgs/coreutils/template +++ b/srcpkgs/coreutils/template @@ -1,6 +1,6 @@ # Template file for 'coreutils' pkgname=coreutils -version=9.4 +version=9.5 revision=1 bootstrap=yes makedepends="gmp-devel acl-devel libcap-devel" @@ -10,7 +10,7 @@ license="GPL-3.0-or-later" homepage="https://www.gnu.org/software/coreutils" changelog="https://git.savannah.gnu.org/gitweb/?p=coreutils.git;a=blob_plain;f=NEWS;hb=HEAD" distfiles="${GNU_SITE}/coreutils/coreutils-${version}.tar.xz" -checksum=ea613a4cf44612326e917201bbbcdfbd301de21ffc3b59b6e5c07e040b275e52 +checksum=cd328edeac92f6a665de9f323c93b712af1858bc2e0d88f3f7100469470a1b8a alternatives=" hostname:hostname:/usr/bin/hostname-coreutils hostname:hostname.1:/usr/share/man/man1/hostname-coreutils.1" From f450ff2d1216924b2478c895176bf32465072b12 Mon Sep 17 00:00:00 2001 From: local Date: Fri, 22 Nov 2024 23:48:56 +0000 Subject: [PATCH 2/2] backport: cp: actually support --update=none-fail --- .../coreutils/patches/backport-cp-fixes.patch | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 srcpkgs/coreutils/patches/backport-cp-fixes.patch diff --git a/srcpkgs/coreutils/patches/backport-cp-fixes.patch b/srcpkgs/coreutils/patches/backport-cp-fixes.patch new file mode 100644 index 00000000000000..920269882b865a --- /dev/null +++ b/srcpkgs/coreutils/patches/backport-cp-fixes.patch @@ -0,0 +1,40 @@ +diff --git a/src/cp.c b/src/cp.c +index 28b0217db..06dbad155 100644 +--- a/src/cp.c ++++ b/src/cp.c +@@ -104,11 +104,11 @@ ARGMATCH_VERIFY (reflink_type_string, reflink_type); + + static char const *const update_type_string[] = + { +- "all", "none", "older", nullptr ++ "all", "none", "none-fail", "older", nullptr + }; + static enum Update_type const update_type[] = + { +- UPDATE_ALL, UPDATE_NONE, UPDATE_OLDER, ++ UPDATE_ALL, UPDATE_NONE, UPDATE_NONE_FAIL, UPDATE_OLDER, + }; + ARGMATCH_VERIFY (update_type_string, update_type); + +diff --git a/tests/mv/update.sh b/tests/mv/update.sh +index 164357803..39ff677b9 100755 +--- a/tests/mv/update.sh ++++ b/tests/mv/update.sh +@@ -38,6 +38,17 @@ for interactive in '' -i; do + done + done + ++# These should accept all options ++for update_option in '--update' '--update=older' '--update=all' \ ++ '--update=none' '--update=none-fail'; do ++ ++ touch file1 || framework_failure_ ++ mv $update_option file1 file2 || fail=1 ++ test -f file1 && fail=1 ++ cp $update_option file2 file1 || fail=1 ++ rm file1 file2 || framework_failure_ ++done ++ + # These should perform the rename / copy + for update_option in '--update' '--update=older' '--update=all' \ + '--update=none --update=all'; do