Skip to content

chore: bump to v0.18.1 - #523

Merged
tobert merged 1 commit into
mainfrom
release/v0.18.1
Oct 11, 2026
Merged

tobert merged 1 commit into
mainfrom
release/v0.18.1

Conversation

@tobert

@tobert tobert commented Oct 8, 2026

Copy link
Copy Markdown
Owner

Version bump and changelog stamp for 0.18.1: workspace version, the inter-crate pins, Cargo.lock, and Unreleased renamed to [0.18.1] - 2026-10-08.

A pre-release review of v0.18.0..HEAD found no data-loss bugs in the atomic replace, edit, overlay symlink, refused-flag, or grep -U work. It found changelog claims the code does not support, and these are corrected here: a duplicated grep lone-CR bullet, the directory sync (attempted, failure ignored), the edit guarantee (holds at the re-read before the write), how builtins reach the line hasher, and the --hashline refusal text for edit and find.

KernelConfig gained a public line_hasher field, so a struct literal that lists every field no longer compiles. The changelog says so. No embedder relies on that shape, so this stays a patch release.

LocalFs::replace now sets the old file's mode before writing the new bytes, so a 0600 file's replacement is never readable at the default mode.

cargo test -p kaish-vfs --all-features

🤖 Generated with Claude Code

Version bump and changelog stamp for 0.18.1. The pre-release review of
v0.18.0..HEAD found changelog claims the code does not support, and one
ordering problem in LocalFs::replace.

Changelog: removed a duplicated grep lone-CR bullet left by a conflict
merge; said the directory sync is attempted and its failure ignored;
qualified the edit guarantee as holding at the re-read before the write;
said every builtin hashes with the kernel's hasher; said edit and find
exit 2 without naming the four --hashline builtins; noted that
KernelConfig gained a public line_hasher field, so a struct literal that
lists every field no longer compiles. Amy's call: no embedder relies on
the old shape, so this stays a patch release.

LocalFs::replace now sets the old file's mode before writing the new
bytes, so a 0600 file's replacement is never readable at the default
mode.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@tobert
tobert merged commit 52d7915 into main Oct 11, 2026
3 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.

1 participant