Skip to content

Oxiland 0.4.0 release checklist

Preflight for tagging v0.4.0 (same pattern as 0.3.0-release.md).

Includes post-feature durability and correctness fixes (transaction Drop guard, same-thread read lock reentry, create(false) / read-only init guards, BOM stripping, clear SyncAll compensation, docs alignment) that must ship in 0.4.0 because v0.4.0 has not been tagged yet.

Preflight

  • Cargo.toml version is 0.4.0
  • CHANGELOG.md has a dated 0.4.0 section (2026-07-30) including the Fixed items for transaction/open/BOM/clear/docs
  • docs/reports/0.4.md describes the compatibility claim
  • PARITY.md marks 0.4 complete and points at the 0.4 inventory
  • docs/ROADMAP.md / docs/milestones/0.4.md are complete
  • ADR-006 is accepted; ADR-007 notes 0.4 transactional load
  • Public API snapshot includes storage/transaction surface and io::BomStrippingReader
  • Example persistent_transaction runs in CI
  • README / getting-started / positioning list 0.4 storage as available
  • SECURITY.md supports 0.4.x
  • LICENSE-APACHE and LICENSE-MIT are present
  • repository / homepage point at eddiethedean/oxiland
  • Working tree clean on the release candidate tip after push
  • CI on main green (Check + Fjall + MSRV + RDF I/O conformance)
  • cargo publish --dry-run succeeded on 6a2e1e5 (included in this tip)
  • Pushed to main

Tag the current main tip once its CI is green (release workflow re-runs CI on the tag). Do not tag 7a4720e: it lacks the transaction/open/BOM fixes.

Publish

  • Annotated tag v0.4.0 pushed (git tag -a v0.4.0 -m "oxiland 0.4.0")
  • Release workflow completed successfully on the tag

After publish

  • Confirm https://crates.io/crates/oxiland (0.4.0 via Release workflow)
  • Confirm https://docs.rs/oxiland builds for the published crate
  • Create a GitHub Release from the v0.4.0 tag using CHANGELOG.md (optional product packaging; tag + crates.io publish already land via workflow)