<feed xmlns='http://www.w3.org/2005/Atom'>
<title>coreutils/tests/cut, branch master</title>
<subtitle>Mirror of https://https.git.savannah.gnu.org/git/coreutils.git/
</subtitle>
<id>https://git.shady.money/coreutils/atom?h=master</id>
<link rel='self' href='https://git.shady.money/coreutils/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/'/>
<updated>2026-04-15T14:08:27Z</updated>
<entry>
<title>tests: avoid $SHELL -c "ulimit ..." pattern</title>
<updated>2026-04-15T14:08:27Z</updated>
<author>
<name>Pádraig Brady</name>
<email>P@draigBrady.com</email>
</author>
<published>2026-04-15T14:08:27Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=d58ea74d01f649664e82499884206231b8a82f6e'/>
<id>urn:sha1:d58ea74d01f649664e82499884206231b8a82f6e</id>
<content type='text'>
As described in commit v9.10-283-g5cb0cca3b
avoid using ulimit with $SHELL -c, and explict
invocation of the shell like that can require lots of memory,
often due to loading the locale archive.
* tests/basenc/bounded-memory.sh: Avoid $SHELL -c with ulimit.
* tests/cut/bounded-memory.sh: Likewise.
* tests/expand/bounded-memory.sh Likewise.
* tests/pr/bounded-memory.sh Likewise.
* tests/unexpand/bounded-memory.sh Likewise.
* tests/fold/fold-zero-width.sh: Bring the ulimit bound
down to the standard 6M over the determined limit.
</content>
</entry>
<entry>
<title>tests: cut: add remaining tests to ensure 100% coverage</title>
<updated>2026-04-06T14:52:58Z</updated>
<author>
<name>Pádraig Brady</name>
<email>P@draigBrady.com</email>
</author>
<published>2026-04-06T13:36:28Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=65ee5e6d0ae8b15ecc4c3d366a40d7f9ec5c4c99'/>
<id>urn:sha1:65ee5e6d0ae8b15ecc4c3d366a40d7f9ec5c4c99</id>
<content type='text'>
* tests/cut/cut.pl: Add new tests to ensure
`make coverage` shows 100% coverage for cut.c.
</content>
</entry>
<entry>
<title>tests: cut: expand GB18030 tests</title>
<updated>2026-04-06T14:52:58Z</updated>
<author>
<name>Pádraig Brady</name>
<email>P@draigBrady.com</email>
</author>
<published>2026-04-06T12:44:30Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=e4258ef02f2aedcd471e00607575c5812970e490'/>
<id>urn:sha1:e4258ef02f2aedcd471e00607575c5812970e490</id>
<content type='text'>
* tests/cut/mb-non-utf8.sh: Add more test cases.
</content>
</entry>
<entry>
<title>cut: -f: fix handling of multi-byte delimiters that span buffers</title>
<updated>2026-04-06T14:52:58Z</updated>
<author>
<name>Pádraig Brady</name>
<email>P@draigBrady.com</email>
</author>
<published>2026-04-02T20:56:23Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=1a44a25808f9bda727ffbda753ff2eeab3bf79cc'/>
<id>urn:sha1:1a44a25808f9bda727ffbda753ff2eeab3bf79cc</id>
<content type='text'>
* src/cut.c (cut_fields_bytesearch): Ensure up to delim_bytes -1
is left for the next refill.
* tests/cut/cut.pl: Add a test case.
</content>
</entry>
<entry>
<title>cut: fix logic issue with field delim in last byte of buffer</title>
<updated>2026-04-05T12:15:56Z</updated>
<author>
<name>Pádraig Brady</name>
<email>P@draigBrady.com</email>
</author>
<published>2026-04-01T19:43:00Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=374ff00c36b46227a2522218ff75e906cef0ca0d'/>
<id>urn:sha1:374ff00c36b46227a2522218ff75e906cef0ca0d</id>
<content type='text'>
With field delimiter = line delimiter we need to know
if there is any more data to be read, as field delimiter
in the last byte of the file is treated differently.
So reiterate the loop to ensure enough read()s to make
the appropriate determination.
</content>
</entry>
<entry>
<title>tests: cut: add more multi-byte tests</title>
<updated>2026-04-05T12:15:56Z</updated>
<author>
<name>Pádraig Brady</name>
<email>P@draigBrady.com</email>
</author>
<published>2026-03-29T14:15:57Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=1c9e2232983394ee31e7809870f3265f1a503da4'/>
<id>urn:sha1:1c9e2232983394ee31e7809870f3265f1a503da4</id>
<content type='text'>
* tests/cut/cut.pl: Add more multi-byte combinations.
</content>
</entry>
<entry>
<title>cut: optimize UTF-8 input with 0xF5-0xFF delimiters</title>
<updated>2026-04-05T12:15:56Z</updated>
<author>
<name>Pádraig Brady</name>
<email>P@draigBrady.com</email>
</author>
<published>2026-03-27T18:59:01Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=24571c41f32cc76df996e063a2b5b82561fc9374'/>
<id>urn:sha1:24571c41f32cc76df996e063a2b5b82561fc9374</id>
<content type='text'>
* src/cut.c (bytesearch_field_delim_ok): Expand the range
of bytes that can be simply searched for. 0xF5-0xFF can't
appear in valid UTF-8 characters, and so may be used as
delimiters in UTF-8 input, so it's worth optimizing for.
* tests/cut/cut.pl: Add a test case (mainly as documentation).
</content>
</entry>
<entry>
<title>cut: optimize when no delimiter in input</title>
<updated>2026-04-05T12:15:56Z</updated>
<author>
<name>Pádraig Brady</name>
<email>P@draigBrady.com</email>
</author>
<published>2026-03-21T14:15:48Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=ea6a7ba547ea18302d255b5a4013d0ea2d5d2c88'/>
<id>urn:sha1:ea6a7ba547ea18302d255b5a4013d0ea2d5d2c88</id>
<content type='text'>
This is about 20x faster.
Note we only do the delimiter search once per chunk,
and it's usually quick as delimiters wouldn't be too far
into the a chunk if present, so we don't bother
to cache the found delimiter.
</content>
</entry>
<entry>
<title>tests: cut: ensure multi-byte delimiter is rejected in uni-byte locales</title>
<updated>2026-04-05T12:15:56Z</updated>
<author>
<name>Pádraig Brady</name>
<email>P@draigBrady.com</email>
</author>
<published>2026-03-20T19:25:59Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=7d017f83bc77ce14cae1f3ec10f07d6eb1857d81'/>
<id>urn:sha1:7d017f83bc77ce14cae1f3ec10f07d6eb1857d81</id>
<content type='text'>
tests/cut/cut.pl: Check the appropriate diagnostic is presented.
</content>
</entry>
<entry>
<title>cut: merge cut_fields and cut_fields_bytesearch</title>
<updated>2026-04-05T12:15:56Z</updated>
<author>
<name>Pádraig Brady</name>
<email>P@draigBrady.com</email>
</author>
<published>2026-03-17T13:30:36Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=f6b3055f74a91284c039d449d086a8df38183653'/>
<id>urn:sha1:f6b3055f74a91284c039d449d086a8df38183653</id>
<content type='text'>
TODO: See why this is much slower:
time LC_ALL=C.UTF-8 src/cut -f1 -dc as.in &gt; /dev/null
</content>
</entry>
</feed>
