summaryrefslogtreecommitdiff
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* tests: tty-eof: fix various issuesPádraig Brady2023-04-141-4/+8
| | | | | | | * tests/misc/tty-eof.pl: Ensure we don't erroneously skip commands with parameters. Comment as to why cut(1) is treated differently. Adjust expect calls to not wait needlessly for cut output.
* tests: avoid dependence on file layout for cp sparse checkPádraig Brady2023-04-131-14/+4
| | | | | | * tests/cp/sparse-2.sh: Don't depend on the copy taking <= allocation of the source. Instead leverage --debug to check that zero detection is being enabled.
* tests: avoid non portable brace expansionPádraig Brady2023-04-101-2/+2
| | | | | * tests/cp/backup-dir.sh: Avoid non portable brace expansion which is not supported by FreeBSD or Solaris shells at least.
* wc: ensure we update file offsetPádraig Brady2023-04-081-0/+12
| | | | | | | | * src/wc.c (wc): Update the offset when not reading, and do read if we can't update the offset. * tests/misc/wc-proc.sh: Add a test case. * NEWS: Mention the bug fix. Fixes https://bugs.gnu.org/61300
* cp,mv: issue "skipped" messages when skipping filesPádraig Brady2023-04-082-8/+23
| | | | | | | | | * NEWS: Mention the change in behavior to issue a "not replaced" error diagnostic with -n, and the "skipped" message with -v. * src/copy.c (copy_internal): Adjust to output the "skipped" messages depending on -i, -n, -u. * tests/cp/cp-i.sh: Adjust accordingly. * tests/mv/mv-n.sh: Likewise.
* cp,mv: add --update=none to always skip existing filesPádraig Brady2023-04-081-16/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | Add --update=none which is equivalent to the --no-clobber behavior from before coreutils 9.2. I.e. existing files are unconditionally skipped, and them not being replaced does not affect the exit status. * src/copy.h [enum Update_type]: A new type to support parameters to the --update command line option. [enum Interactive]: Add I_ALWAYS_SKIP. * src/copy.c: Treat I_ALWAYS_SKIP like I_ALWAYS_NO (-n), except that we don't fail when skipping. * src/system.h (emit_update_parameters_note): A new function to output the description of the new --update parameters. * src/cp.c (main): Parse --update arguments, ensuring that -n takes precedence if specified. (usage): Describe the new option. Also allude that -u is related in the -n description. * src/mv.c: Accept the new --update parameters and update usage() accordingly. * doc/coreutils.texi (cp invocation): Describe the new --update parameters. Also reference --update from the --no-clobber description. (mv invocation): Likewise. * tests/mv/update.sh: Test the new parameters. * NEWS: Mention the new feature. Addresses https://bugs.gnu.org/62572
* cp: fix --backup with subdirectoriesPádraig Brady2023-04-041-1/+7
| | | | | | | | | * gnulib: Reference the latest gnulib including the fix to the backupfile module in commit 94496522. * tests/cp/backup-dir.sh: Add a test to ensure we rename appropriately when backing up through subdirs. * NEWS: Mention the bug fix. Fixes https://bugs.gnu.org/62607
* tests: tee: avoid false failure due to fifo usagePádraig Brady2023-03-311-1/+1
| | | | | | | | * tests/misc/tee.sh: Call cleanup_ in all cases to ensure there are no overlapping interactions on the fifo that might impact later parts of the test. This was seen to cause issue with dash on musl libc. Addresses https://bugs.gnu.org/62542
* tests: adjust csplit VM limitPádraig Brady2023-03-311-1/+1
| | | | | | | | * tests/misc/csplit-heap.sh: More memory is required to avoid a false failure on some systems. Noticed with musl libc with bash as the shell. This is confirmed to still easily trigger with the original memory leak being tested. Addresses https://bugs.gnu.org/62542
* wc: diagnose overflow of total countsPádraig Brady2023-03-311-0/+17
| | | | | | | | | * src/wc.c (wc): Use INT_ADD_WRAPV() to detect overflow. (main): Upon overflow, saturate the total, print a diagnostic, and set exit status. * tests/misc/wc-total.sh: Add a test case, which operates on BTRFS and 64 bit systems at least. Reported at https://bugs.debian.org/1027100
* dircolors: diagnose read errorsPádraig Brady2023-03-282-0/+29
| | | | | | | * NEWS: Mention the fix. * src/dircolors.c: Fail upon read error from getline(). * tests/misc/dircolors.sh: Add a new test. * tests/local.mk: Reference the new test.
* tests: add a test case for the previous date fixPádraig Brady2023-03-282-0/+30
| | | | | | * NEWS: Also mention this bug fix. * tests/misc/date-f.sh: Add a new test. * tests/local.mk: Reference the new test.
* cksum: fix reporting of failed checksPádraig Brady2023-03-231-0/+10
| | | | | | | | | | | | This applies to all checksumming utilities, where we incorrectly report all subsequent files as checking 'OK' once any file has passed a digest check. The exit status was not impacted, only the printed status. * src/digest.c (digest_check): Use the correct state variable to determine if the _current_ file has passed or not. * tests/misc/md5sum.pl: Add a test case. Fixes https://bugs.gnu.org/62403
* tests: skip some parts of tests/misc/tee.sh if run as rootNick Alcock2023-03-211-3/+5
| | | | | | | | | Similarly to the fix to tests/rmdir/ignore.sh in c0e5f8c59, tee should not be expected to fail when run with read-only outputs when run as root. * tests/misc/tee.sh: Add uid_is_privileged_ guard around test for read-only outputs.
* tests: avoid false failure on systems without statxPádraig Brady2023-03-192-4/+6
| | | | | | * tests/ls/stat-free-symlinks.sh: Filter out syscalls that return ENOSYS, as that was seen with statx() on Debian 10.13 on mips64, and resulted in overcounting of stat calls.
* tests: df: avoid false failure on systems with multiple rootsPádraig Brady2023-03-191-3/+6
| | | | | * tests/df/df-symlink.sh: Skip the test on systems with multiple file system roots.
* tests: aix: avoid unsupported functionalityPádraig Brady2023-03-182-2/+10
| | | | | | | * tests/misc/tee.sh: AIX doesn't support detecting closed outputs either with poll() or select() so avoid testing that functionality. * tests/tail-2/pipe-f.sh: Likewise.
* test: avoid a test hang on HurdPádraig Brady2023-03-151-1/+1
| | | | | | * tests/cp/sparse-to-pipe.sh: Protect the cp call seen to hang on Hurd/i686 with a timeout. Reported By: Bruno Haible
* ls: --color: honor separate sequences for extension casesPádraig Brady2023-03-131-1/+45
| | | | | | | | | | | | | | | | | | | Following on from commit v8.29-45-g24053fbd8 which unconditionally used case insensitive extension matching, support selective case sensitive matching when there are separate extension cases defined with different display sequences. * src/dircolors.hin: Document how file name suffixes are matched. Note this is displayed with `dircolors --print-database` which the texi info recommends to use for details. * src/ls.c (parse_ls_color): Postprocess the list to mark entries for case sensitive matching, and also adjust so that unmatchable entries are more quickly ignored. (get_color_indicator): Use exact matching rather than case insensitive matching if so marked. * tests/ls/color-ext.sh: Add test cases. * NEWS: Mention the change in behavior. Addresses https://bugs.gnu.org/33123
* tests: adjust du test for recent apparent size changePádraig Brady2023-03-131-102/+3
| | | | | | * tests/du/threshold.sh: Directories are assumed to be of size 0 with --apparent since commit v9.1-187-g110bcd283 so remove --apparent cases from this test.
* tee: support non blocking outputsPádraig Brady2023-03-081-1/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Non blocking outputs can be seen for example when piping telnet through tee to a terminal. In that case telnet sets its input to nonblocking mode, which results in tee's output being nonblocking, in which case in may receive an EAGAIN error upon write(). The same issue was seen with mpirun. The following can be used to reproduce this locally at a terminal (in most invocations): $ { dd iflag=nonblock count=0 status=none; dd bs=10K count=10 if=/dev/zero status=none; } | tee || echo fail >/dev/tty * src/iopoll.c (iopoll_internal): A new function refactored from iopoll(), to also support a mode where we check the output descriptor is writeable. (iopoll): Now refactored to just call iopoll_internal(). (fwait_for_nonblocking_write): A new internal function which uses iopoll_internal() to wait for writeable output if an EAGAIN or EWOULDBLOCK was received. (fwrite_nonblock): An fwrite() wrapper which uses fwait_for_nonblocking_write() to handle EAGAIN. (fclose_nonblock): Likewise. src/iopoll.h: Add fclose_nonblock, fwrite_nonblock. src/tee.c: Call fclose_nonblock() and fwrite_nonblock wrappers, instead of the standard functions. * tests/misc/tee.sh: Add a test case. * NEWS: Mention the improvement. The idea was suggested by Kamil Dudka in https://bugzilla.redhat.com/1615467
* split: support split -n on larger pipe inputPaul Eggert2023-03-071-6/+9
| | | | | | | | | * bootstrap.conf (gnulib_modules): Add free-posix, tmpfile. * src/split.c (copy_to_tmpfile): New function. (input_file_size): Use it to split larger files when sizes cannot easily be determined via fstat or lseek. See Bug#61386#235. * tests/split/l-chunk.sh: Mark tests of /dev/zero as very expensive since they exhaust /tmp.
* tee: fix a crash with unwriteable filesPádraig Brady2023-03-071-0/+5
| | | | | | | | This was introduced recently with commit v9.1-166-g6b12e62d9 * src/tee.c (tee_files): Check the return from fopen() before passing to fileno() etc. * tests/misc/tee.sh: Add a test case.
* maint: pacify ‘make syntax-check’Paul Eggert2023-03-061-1/+1
| | | | | | | | Problem reported by Pádraig Brady (Bug#61386#226). * src/split.c (parse_chunk): Use die instead of error. (main): Quote a string. * tests/local.mk (all_root_tests): Move du/apparent.sh from here ... (all_tests): ... to here.
* du: --apparent counts only symlinks and regularPaul Eggert2023-03-042-0/+34
| | | | | | | | Problem reported by Christoph Anton Mitterer (Bug#61884). * src/du.c (process_file): When counting apparent sizes, count only usable st_size members. * tests/du/apparent.sh: New file. * tests/local.mk (all_root_tests): Add it.
* split: handle large numbers betterPaul Eggert2023-03-041-18/+5
| | | | | | | | | | | | | | | | | | | | | | | Prefer signed types to uintmax_t, as this allows for better runtime checking with gcc -fsanitize=undefined. Also, when an integer overflows just use the maximal value when the code will do the right thing anyway. * src/split.c (set_suffix_length, bytes_split, lines_split) (line_bytes_split, lines_chunk_split, bytes_chunk_extract) (lines_rr, parse_chunk, main): Prefer a signed type (typically intmax_t) to uintmax_t. (strtoint_die): New function. (OVERFLOW_OK): New macro. Use it elsewhere, where we now allow LONGINT_OVERFLOW because the code then does the right thing on all practical platforms (they have int wide enough so that it cannot be practically exhausted). We can do this now that we can safely assume intmax_t has at least 64 bits. (parse_n_units): New function. (parse_chunk, main): Use it. (main): Do not worry about integer overflow when the code will do the right thing anyway with the extreme value. Just use the extreme value. * tests/split/fail.sh: Adjust to match new behavior.
* split: port ‘split -n N /dev/null’ better to macOSPaul Eggert2023-03-041-3/+4
| | | | | | | | | | | | | | | | | * src/split.c (input_file_size): Do not bother with lseek if the initial read probe reaches EOF, since the file size is known then. This works better on macOS, which doesn’t allow lseek on /dev/null. Do not special-case size-zero files, as the issue can occur with any size file (though /proc files are the most common). If the current position is past end of file, treat this as size zero regardless of whether the file has a usable st_size. Pass through lseek -1 return values rather than using ‘return -1’; this makes the code a bit easier to analyze (and a bit faster). Avoid undefined behavior if the size calculation overflows. (lines_chunk_split): Do not bother with lseek if it would have no effect if successful. This works better on macOS, which doesn’t allow lseek on /dev/null. * tests/split/l-chunk.sh: Adjust to match fixed behavior.
* split: split more evenly with -nPaul Eggert2023-03-042-17/+31
| | | | | | | | * src/split.c (bytes_split): New arg REM_BYTES. Use this to split more evenly. All callers changed. (lines_chunk_split, bytes_chunk_extract): Be consistent with new byte_split. * tests/split/b-chunk.sh, tests/split/l-chunk.sh: Test new behavior.
* tests: tee -p: add test for early exit with closed pipesPádraig Brady2023-02-281-0/+10
| | | | | | * tests/misc/tee.sh: Add a test for the new iopoll logic to detect closed outputs and exit early without needing further input.
* tests: avoid hang in new testPádraig Brady2023-02-261-8/+8
| | | | | | | * tests/rm/empty-inacc.sh: Ensure we're not reading from stdin when we're relying on no prompt to proceed. Also change the file being tested so that a failure in one test doesn't impact following tests causing a framework failure.
* tests: avoid gdb on macOSPádraig Brady2023-02-263-0/+11
| | | | | | | | | | | | gdb was seen to hang intermittently on macOS 12. Also gdb requires signing on newer macOS systems: https://sourceware.org/gdb/wiki/PermissionsDarwin So restrict its use on macOS systems for now. * tests/rm/r-root.sh: Skip on darwin systems. * tests/tail-2/inotify-race.sh: Restrict the test to inotify capable systems to avoid the hang with some gdbs. * tests/tail-2/inotify-race.sh: Likewise.
* tests: determine if SEEK_HOLE is enabledPádraig Brady2023-02-244-4/+4
| | | | | | | | | | | | | | Upcomming gnulib changes may disable SEEK_HOLE even if the system supports it, so dynamically check if we've SEEK_HOLE enabled. * init.cfg (seek_data_capable_): SEEK_DATA may be disabled in the build if the system support is deemed insufficient, so also use `cp --debug` to determine if it's enabled. * tests/cp/sparse-2.sh: Adjust to a more general diagnostic. * tests/cp/sparse-extents-2.sh: Likewise. * tests/cp/sparse-extents.sh: Likewise. * tests/cp/sparse-perf.sh: Likewise.
* cp,install,mv: add --debug to explain how a file is copiedPádraig Brady2023-02-242-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | How a file is copied is dependent on the sparseness of the file, what file system it is on, what file system the destination is on, the attributes of the file, and whether they're being copied or not. Also the --reflink and --sparse options directly impact the operation. Given it's hard to reason about the combination of all of the above, the --debug option is useful for users to directly identify if copy offloading, reflinking, or sparse detection are being used. It will also be useful for tests to directly query if these operations are supported. The new output looks as follows: $ src/cp --debug src/cp file.sparse 'src/cp' -> 'file.sparse' copy offload: yes, reflink: unsupported, sparse detection: no $ truncate -s+1M file.sparse $ src/cp --debug file.sparse file.sparse.cp 'file.sparse' -> 'file.sparse.cp' copy offload: yes, reflink: unsupported, sparse detection: SEEK_HOLE $ src/cp --reflink=never --debug file.sparse file.sparse.cp 'file.sparse' -> 'file.sparse.cp' copy offload: avoided, reflink: no, sparse detection: SEEK_HOLE * doc/coreutils.texi (cp invocation): Describe the --debug option. (mv invocation): Likewise. (install invocation): Likewise. * src/copy.h: Add a new DEBUG member to cp_options, to control whether to output debug info or not. * src/copy.c (copy_debug): A new global structure to unconditionally store debug into from the last copy_reg operations. (copy_debug_string, emit_debug): New functions to print debug info. * src/cp.c: if ("--debug") x->debug=true; * src/install.c: Likewise. * src/mv.c: Likewise. * tests/cp/debug.sh: Add a new test. * tests/local.mk: Reference the new test. * NEWS: Mention the new feature.
* doc: fix some spelling mistakesChuanGang Jiang2023-02-211-1/+1
| | | | | | | | | | * doc/coreutils.texi: s/functionalty/functionality/, s/sychronize/synchronize/, s/millsecond/millisecond/ s/paramter/parameters/ * init.cfg: s/parmeters/parameters/ * scripts/build-older-versions/README.older-versions: s/vesion/version/ * tests/misc/env-S-script.sh: s/paramaters/parameters/ Fixes https://bugs.gnu.org/61681
* tests: initialize a variableJim Meyering2023-02-211-0/+1
| | | | | * tests/rm/interactive-once.sh (write_prot_msg1): Initialize it, so an envvar setting cannot perturb the test.
* rm: --dir (-d): fix bugs in handling of empty, inaccessible directoriesJim Meyering2023-02-211-2/+25
| | | | | | | | | | | | | | | * src/remove.c (prompt, rm_fts): In the dir-handling code of both of these functions, relax a "get_dir_status (...) == DS_EMPTY" condition to instead test only "get_dir_status (...) != 0", enabling flow control to reach the prompt function also for unreadable directories. However, that function itself also needed special handling for this case: (prompt): Handle empty, inaccessible directories properly, deleting them with -d (--dir), and prompting about whether to delete with -i (--interactive). * tests/rm/empty-inacc.sh: Add tests for the new code. Reported by наб <nabijaczleweli@nabijaczleweli.xyz> in bugs.debian.org/1015273 * NEWS (Bug fixes): Mention this.
* tests: port chmod/setgid.sh to macOS 12Paul Eggert2023-02-181-8/+7
| | | | | | * tests/chmod/setgid.sh: Try all the groups you’re a member of, in case id -g returns 4294967295 (nogroup) which is special and does not let you chgrp a file to it.
* maint: fix some typos in commentsChuanGang Jiang2023-02-101-1/+1
| | | | | | | | | * NEWS: s/commmand/command/ * cfg.mk: Adjust old_NEWS_hash with `make update-NEWS-hash`. * src/expand-common.c: s/specifed/specified/ * src/pr.c: s/e.g/e.g./ * tests/misc/comm.pl: s/ouput/output/ Fixes https://bugs.gnu.org/61405
* cksum: add --raw option to output a binary digestPádraig Brady2023-02-062-0/+61
| | | | | | | | | | | | | | | | | | | | | | | | | --raw output is the most composable format, and also is a robust way to discard the file name without parsing (escaped) output. Examples: $ cksum --raw -a crc "$afile" | basenc --base16 4ACFC4F0 $ cksum --raw -a crc "$afile" | basenc --base2msbf 01001010110011111100010011110000 $ cksum --raw -a sha256 "$bfile" | basenc --base32 AAAAAAAADHLGRHAILLQWLAY6SNH7OY5OI2RKNQLSWPY3MCUM4JXQ==== * doc/coreutils.texi (cksum invocation): Describe the new feature. * src/digest.c (output_file): Inspect the new RAW_DIGEST global, and output the bytes directly if set. * src/cksum.c (output_crc): Likewise. * src/sum.c (output_bsd, output_sysv): Likewise. * tests/misc/cksum-raw.sh: A new test. * tests/local.mk: Reference the new test. * NEWS: Mention the new feature.
* tests: fix exit status check in cp -u testPádraig Brady2023-02-031-1/+1
| | | | | * tests/cp/preserve-link.sh: This should have been part of commit v9.1-134-g01503ce73.
* cksum: accept new option: --base64 (-b)Jim Meyering2023-01-312-0/+100
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/digest.c [HASH_ALGO_CKSUM]: Include "base64.h" [HASH_ALGO_CKSUM] (base64_digest): New global. [HASH_ALGO_CKSUM] (enum BASE64_DIGEST_OPTION): New enum. [HASH_ALGO_CKSUM] (long_options): Add "base64". (valid_digits): Rename from hex_digits, now taking an input length argument. Adjust callers. (bsd_split_3): Rename arg from hex_digits to digest. Add new *d_len parameter for length of extracted digest. Move "i" declaration down to first use. (split_3): Rename arg from hex_digits to digest. Add new *d_len parameter for length of extracted digest. Instead of relying on "known" length of digest to find the following must-be-whitespace byte, search for the first whitespace byte. [HASH_ALGO_CKSUM] (output_file): Handle base64_digest. [HASH_ALGO_CKSUM] (main): Set base64_digest. [HASH_ALGO_CKSUM] (b64_equal): New function. (hex_equal): New function, factored out of digest_check. (digest_check) Factored part into b64_equal and hex_equal. Rename local hex_digest to digest. * tests/misc/cksum-base64.pl: Add tests. * tests/local.mk (all_tests): Add to the list. * cfg.mk (_cksum): Define. (exclude_file_name_regexp--sc_prohibit_test_backticks): Exempt new test. (exclude_file_name_regexp--sc_long_lines): Likewise. * doc/coreutils.texi (cksum invocation): Document it. (md5sum invocation) [--check]: Mention digest encoding auto-detect. * NEWS (New Features): Mention this.
* cp,mv: skipping due to -u is success, not failurePaul Eggert2023-01-312-4/+3
| | | | | | | | | | This reverts the previous change, so that when a file is skipped due to -u, this is not considered a failure. * doc/coreutils.texi: Document this. * src/copy.c (copy_internal): If --update says to skip, treat this as success instead of failure. * tests/mv/update.sh, tests/cp/slink-2-slink.sh: Revert previous change, to match reverted behavior.
* cp,ln,mv: when skipping exit with nonzero statusPaul Eggert2023-01-317-15/+16
| | | | | | | | | | | * NEWS, doc/coreutils.texi: Document this. * src/copy.c (copy_internal): * src/ln.c (do_link): Return false when skipping action due to --interactive or --no-clobber. * tests/cp/cp-i.sh, tests/cp/preserve-link.sh: * tests/cp/slink-2-slink.sh, tests/mv/i-1.pl, tests/mv/i-5.sh: * tests/mv/mv-n.sh, tests/mv/update.sh: Adjust expectations of exit status to match revised behavior.
* tests: cksum: fix test to include more casesPádraig Brady2023-01-301-1/+1
| | | | | * tests/misc/cksum-c.sh: Fix typo which caused part of the test data to be ignored.
* tests: ensure we fail if mv --no-copy crashesPádraig Brady2023-01-271-2/+2
| | | | | * tests/mv/no-copy.sh: Honor `make syntax` check and use the `returns_ 1 ...` pattern.
* mv: new option --no-copyPaul Eggert2023-01-272-0/+34
| | | | | | | | | | | Wishlist item from Mike Frysinger (Bug#61050). * src/copy.c (copy_internal): Do not fall back on copying if x->no_copy. * src/copy.h (struct cp_options): New member no_copy. * src/mv.c (NO_COPY_OPTION): New constant. (long_options, usage, main): Support --no-copy. * tests/mv/no-copy.sh: New test. * tests/local.mk (all_tests): Add it.
* all: further adjustments for new Ronna, Quetta SI prefixesPádraig Brady2023-01-061-3/+3
| | | | | | | | | | | | | | * src/dd.c (parse_integer): Support Q,R suffixes. * src/od.c (main): Likewise. * src/split.c (main): Likewise. * src/stdbuf.c (parse_size): Likewise. * src/truncate.c (main): Likewise. * src/sort.c (specify_size_size): Likewise. Also line length syntax check fix. * tests/misc/numfmt.pl: Adust top end large number checks to the new largest values. * doc/coreutils.texi (numfmt invocation): Add a numfmt example. * NEWS: Tweak to aid searchability.
* numfmt: add support for new SI prefixesPaul Eggert2023-01-052-39/+45
| | | | | | | | | | | | | | | | | | | | | * src/dd, src/head.c, src/od.c, src/sort.c, src/stdbuf.c, src/tail.c: (usage): * src/system.h (emit_size_note): Mention new SI prefixes. * src/du.c (main): * src/head.c (head_file): * src/numfmt.c (suffix_power, suffix_power_char, prepare_padded_number): * src/shred.c (main): * src/sort.c (unit_order): * src/tail.c (parse_options): Support new SI prefixes. * src/numfmt.c (MAX_ACCEPTABLE_DIGITS): Increase to 33. (zero_and_valid_suffixes, valid_suffixes): New constants, with new SI prefixes. (valid_suffix, unit_to_umax): Use them. (prepare_padded_number): Diagnose "999Q" instead of "999Y". * tests/misc/numfmt.pl, tests/misc/sort.pl: Adjust tests to match new max.
* maint: update all copyright year number rangesPádraig Brady2023-01-01608-608/+608
| | | | | | | | | | Update to latest gnulib with new copyright year. Run "make update-copyright" and then... * tests/init.sh: Sync with gnulib to pick up copyright year. * bootstrap: Manually update copyright year, until we fully sync with gnulib at a later stage. * tests/sample-test: Adjust to use the single most recent year.
* build: update gnulib submodule to latestPádraig Brady2023-01-011-20/+25
| | | | | | mainly to get updated copyright year * tests/init.sh: Sync with gnulib