* chore(markdown): simple canonicalisation changes
* core(support files): .gitattributes .gitignore .vscode/settings.json
* chore(cargo): align Cargo.toml with Synesis Rust manifest conventions
Bring the manifest in line with the shared Synesis Cargo.toml form:
banded Package/Targets/Features/Dependencies layout, lexicographic
package keys, canonical exclude, general/crate-specific feature
boilerplate, Policy A dependency specs where applicable, docs.rs
comment/form when metadata is present, and library/tool description
endings. Conventions are documented in freelibs rust-standards
(CARGO_TOML).
* chore(rust): declare versions example in Cargo.toml manifests
Add an explicit [[example]] for examples/versions/main.rs across the
fifteen Synesis Rust crates so the shared versions smoke target is
configured consistently with other declared examples.
* docs(rust): skeleton empty CHANGES/EXAMPLES/NEWS/TODO/LICENSE files
Fill only zero-byte stubs across the Rust projects:
- EXAMPLES.md for bt-rs, libpath, Pantheios, recls, woad;
- CHANGES/EXAMPLES/NEWS/TODO for libCLImate.Rust;
- CHANGES/EXAMPLES/NEWS/TODO/LICENSE for sistools.Rust;
Leave all non-empty files, including stub READMEs, untouched.
* docs(rust): add NEWS.md Details column from release history
Add a third **Details** column to every Rust-project **NEWS.md**, with a
short phrase per row taken from git tags and **CHANGES.md** highlights
(scaffold notes where no tags exist); keep libCLImate/sistools as
header-only tables until first releases.
* docs(rust): normalise TODO.md TOC, Packaging, and item forms
Align all Rust-project **TODO.md** files to one spine: TOC plus
Functional, Performance, and Packaging sections; use `* \<none>` and
canonical `~~~…~~~ - ✅;` completed items; retain shwild’s historical
and deferred sections ahead of the shared rails.
* chore(rust): adopt gold rustfmt.toml and scripts/fmt across crates
Copy the Synesis gold rustfmt.toml and scripts/fmt (nightly-2026-09-10 via
RUSTFMT + RUSTUP_TOOLCHAIN) into all 15 Rust projects; remove
rust-toolchain.toml; align CI and related pin docs/scripts to the same
dated nightly.
* chore(rust): align CI and editor fmt to nightly-2026-09-10
Point CI rustfmt (and related pin docs/scripts) at nightly-2026-09-10 and
set rust-analyzer.rustfmt.overrideCommand to the same pin with
--unstable-features so format-on-save matches scripts/fmt; include any
gold-config source reformat fallout.
* Cargo.lock
* docs(readme): add MSRV section to all Rust crate READMEs
Add a dedicated Minimum Supported Rust Version (MSRV) section to the
README.md of all 15 Rust projects in freelibs, clarifying MSRV scope:
- MSRV guarantee applies to library code, [dependencies], and
[build-dependencies];
- [dev-dependencies] (e.g. benchmarking frameworks like criterion) are
never fetched or compiled by downstream library consumers and do not
invalidate the MSRV claim;
- Standardise declared MSRV values (1.79 for shwild.Rust and 1.74 for all
other 14 crates);
- Expand stub READMEs for libCLImate.Rust and sistools.Rust into full
standard Synesis README structures with TOC, badges, and project info.
* chore(rust): add canonical project checker templates
Add the derive, documentation-width, and test-naming checker exemplars
to the shared Rust template and propagate executable byte-identical copies
to every Rust project;
* dependencies
* chore(recls-rust): prepare unpublished 0.0.1 scaffold release
Record the 12th September 2026 release:
- update crate and lockfile versions;
- retain the unpublished recursive-search scaffold;
- document the release in CHANGES.md and NEWS.md;
- verify tests, clippy, documentation, examples, and package contents;
* fix