Skip to content

chore(builtins): sync uutils/coreutils argument surfaces and vendored modules - #2759

Merged
chaliy merged 1 commit into
mainfrom
chore/coreutils-args-drift
Oct 20, 2026
Merged

chaliy merged 1 commit into
mainfrom
chore/coreutils-args-drift

Conversation

@chaliy

@chaliy chaliy commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

What changed

Regenerated argument surfaces and vendored modules against
uutils/coreutils@d2d96946b (was 8613dffab). Two upstream argument-surface
changes come through; everything else is the rev header bump.

  • od — the hidden FILENAME positional gains
    value_parser(OsStringValueParser::new()).
  • tac — -s/--separator gains allow_hyphen_values(true), so a
    hyphen-leading separator (tac -s -x) parses as a value rather than a flag,
    matching upstream.

No bashkit-side consumer changes are needed: #2754 landed helpers::string_value
/ string_values, which read od's arguments without naming the value type, so
the OsStringValueParser switch is absorbed.

Why

The weekly Coreutils Args Drift run (run 39234801977) regenerated this diff and
pushed it to chore/coreutils-args-drift, but could not open the PR — the job's
gh pr create is rejected with "GitHub Actions is not permitted to create or
approve pull requests", so the run goes red and the drift never surfaces for
review. This PR carries that pending drift; the workflow's token is fixed
separately in #2760.

Before / After

No observable behavior change for od. For tac, a hyphen-leading -s value
is now accepted instead of being parsed as a flag, which is upstream's behavior.

Verified locally on the drift branch with the pinned toolchain (1.95.0):

cargo build -p bashkit                  Finished dev profile
cargo test -p bashkit --lib od          163 passed; 0 failed
cargo test -p bashkit --lib tac          14 passed; 0 failed
cargo test -p bashkit --test integration -- spec_tests::bash_spec_tests
                                          1 passed; 0 failed (1748 filtered)

The spec-test gate is the same one the drift workflow runs before proposing a
diff, and it passed there too — the run only failed at the PR-creation step,
after regeneration and tests were green.

Risk

Checklist

  • Tests added or updated — covered by existing od/tac unit tests, the
    bash spec suite, and the coreutils differential harness; generated code
    carries no new test surface of its own
  • Backward compatibility considered — internal generated surface, no public
    API change

… modules

Regenerated by `bashkit-coreutils-port` against uutils/coreutils@d2d96946b.

Utilities: cat ls mktemp od readlink realpath shuf stat tac tee truncate

Vendored modules: format
@cloudflare-workers-and-pages

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
bashkit 439fd13 Commit Preview URL

Branch Preview URL
Oct 19 2026, 10:12 AM

@chaliy
chaliy merged commit 9a55172 into main Oct 20, 2026
50 checks passed
@chaliy
chaliy deleted the chore/coreutils-args-drift branch October 20, 2026 09:54
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.

1 participant