Skip to content

numfmt: fix empty delimiter and whitespace handling#10350

Merged
sylvestre merged 3 commits intouutils:mainfrom
ChrisDryden:fix-numfmt-empty-delimiter
Feb 15, 2026
Merged

numfmt: fix empty delimiter and whitespace handling#10350
sylvestre merged 3 commits intouutils:mainfrom
ChrisDryden:fix-numfmt-empty-delimiter

Conversation

@ChrisDryden
Copy link
Copy Markdown
Collaborator

@ChrisDryden ChrisDryden commented Jan 19, 2026

Theres still around 61 failing tests in numfmt, around 14 of them relate to how empty delimiters and whitespace is handled. This PR adds a bunch of integration tests based on the GNU integration tests and adds the logic that decides whether the number of whitespaces is valid or invalid.

The high level gist is that the amount of whitespaces defaults to 1 but is should be equal to the length of the delimiter option if it is explicitly provided.

These are all of the gnu test cases fixed by this pr:

  - delim-2
  - unit-sep-6, unit-sep-7, unit-sep-8
  - unit-sep-11, unit-sep-12, unit-sep-15 
  - unit-sep-21
  - suf-19, suf-21, suf-22, suf-23, suf-24, suf-25
  - lcl-suf-1, lcl-suf-2, lcl-suf-8

@github-actions
Copy link
Copy Markdown

GNU testsuite comparison:

Skipping an intermittent issue tests/shuf/shuf-reservoir (passes in this run but fails in the 'main' branch)
Skipping an intermittent issue tests/sort/sort-stale-thread-mem (passes in this run but fails in the 'main' branch)

@github-actions
Copy link
Copy Markdown

GNU testsuite comparison:

Skip an intermittent issue tests/tail/overlay-headers (fails in this run but passes in the 'main' branch)

@codspeed-hq
Copy link
Copy Markdown

codspeed-hq bot commented Jan 19, 2026

Merging this PR will not alter performance

✅ 284 untouched benchmarks
⏩ 38 skipped benchmarks1


Comparing ChrisDryden:fix-numfmt-empty-delimiter (0ac6458) with main (ec7e81e)

Open in CodSpeed

Footnotes

  1. 38 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.

@ChrisDryden ChrisDryden marked this pull request as ready for review January 19, 2026 14:55
@sylvestre
Copy link
Copy Markdown
Contributor

needs a rebase, sorry

@ChrisDryden ChrisDryden force-pushed the fix-numfmt-empty-delimiter branch from 41bf68d to 948a2cd Compare February 10, 2026 03:18
@github-actions
Copy link
Copy Markdown

GNU testsuite comparison:

Congrats! The gnu test tests/pr/bounded-memory is no longer failing!

@ChrisDryden ChrisDryden force-pushed the fix-numfmt-empty-delimiter branch from 948a2cd to dc7943f Compare February 10, 2026 03:27
@github-actions
Copy link
Copy Markdown

GNU testsuite comparison:

Congrats! The gnu test tests/misc/sync is no longer failing!

@github-actions
Copy link
Copy Markdown

GNU testsuite comparison:

Note: The gnu test tests/unexpand/bounded-memory is now being skipped but was previously passing.

@sylvestre sylvestre merged commit 9922135 into uutils:main Feb 15, 2026
154 of 155 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants