Skip to content

chore(release): v0.6.0 - #124

Merged
slgoodrich merged 1 commit into
mainfrom
chore/release-v0.6.0
May 1, 2026
Merged

slgoodrich merged 1 commit into
mainfrom
chore/release-v0.6.0

Conversation

@slgoodrich

@slgoodrich slgoodrich commented May 1, 2026 •

Copy link
Copy Markdown
Owner

Release commit for v0.6.0. CHANGELOG entry was added in #112 and is already in place with today's date (2026-04-30).

What landed in v0.6 (per CHANGELOG.md `[0.6.0]`)

Added

  • `input: 'string'` and `inputFile` accepted on execa
  • `stdin: 'string'` stored in cassettes and matched on tinyexec
  • `node: true` and `execaNode` named export accepted on execa
  • `lines` object form (`{ stdout, stderr, all, fd1, fd2 }`) supported in execa synthesize
  • `BinaryInputError` class for non-UTF-8 `inputFile`
  • stdin included in `defaultCanonicalize` (with redaction round-trip)
  • stdin redaction via the same pipeline as args/stdout/stderr (`RedactSource` extended)
  • ReplayMissError hint when the failing call passed `node: true`
  • Compile-time exhaustiveness over `RedactSource` at every parallel-arm site
  • `useRecordingEnv()` test helper

Changed

  • `REVIEW_WARNING` text drops `stdin` from the not-redacted list
  • `defaultCanonicalize` includes stdin
  • `RunnerHooks.buildCall` is now async (internal API; users importing only the high-level entries are unaffected)
  • `wrapFsError` extracted in `src/io.ts`
  • "Tracked in backlog" phrases dropped from validator and runtime error messages

Notes

  • Cassette schema stays at version 2; v0.5 cassettes load with `stdin: null` and continue to match calls without an input option
  • Double-read of `inputFile` (us + real execa) is documented and tracked for v0.7 optimization

Test Plan

  • `npm run lint`
  • `npm run typecheck`
  • `npm test`
  • `npm run build`

Bump package.json + package-lock.json to 0.6.0. CHANGELOG entry for
[0.6.0] is already in place (added in PR #112) with today's date.

Highlights since v0.5.x:
- input: 'string' and inputFile accepted on execa
- stdin: 'string' now stored in cassettes and matched on tinyexec
- node: true and execaNode named export accepted
- lines object form supported in execa synthesize
- BinaryInputError class for non-UTF-8 inputFile
- stdin included in default canonicalize (with redaction round-trip)
- stdin redaction (RedactSource extended)
- Compile-time exhaustiveness over RedactSource at every parallel-arm site

Cassette schema stays at version 2; v0.5 cassettes load with stdin: null
and continue to match calls without an input option.
@slgoodrich
slgoodrich force-pushed the chore/release-v0.6.0 branch from b3e303f to 44ce5d3 Compare May 1, 2026 03:53
@slgoodrich slgoodrich closed this May 1, 2026
@slgoodrich slgoodrich reopened this May 1, 2026
@slgoodrich
slgoodrich merged commit f43264e into main May 1, 2026
5 checks passed
@slgoodrich
slgoodrich deleted the chore/release-v0.6.0 branch May 1, 2026 03:55
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