Oxiland 0.4 compatibility report¶
Status: complete
Milestone: 0.4 — Storage and transactions
Oxiland version: 0.4.0
Oxigraph version: 0.5.9
Inventory:
compatibility/inventory/redland-1.0.17-oxiland-0.4.json
Claim¶
Oxiland 0.4 provides a supported Fjall durable store (format v1, ADR-006),
Model::transaction with commit/rollback, sync/clear/bulk helpers, capability
reporting, read-only opens, legacy-backend Unsupported disposition, and
N-Quads archival import/export. Compatibility is scoped to the curated 0.4
inventory slice and the tests linked from it.
Evidence¶
| Gate | Evidence |
|---|---|
| Format v1 reopen | tests/storage.rs::format_v1_round_trip_reopen |
| Legacy migrate | src/storage/fjall.rs::legacy_store_without_meta_requires_migrate |
| Transaction commit/rollback | tests/storage.rs transaction_* |
| Sync / clear | tests/storage.rs::clear_and_clear_graph, reopen+sync |
| Capabilities / legacy names | tests/storage.rs::legacy_backends_are_unsupported |
| Read-only | tests/storage.rs::read_only_rejects_writes |
| Atomic transactional load | tests/storage.rs::transactional_load_is_atomic_on_parse_failure |
| Archival N-Quads | tests/storage.rs::archival_export_import_round_trip |
| Concurrent readers | tests/storage.rs::find_under_concurrent_writers_stays_consistent |
| Transaction panic recovery | tests/storage.rs::transaction_panic_clears_in_transaction_flag |
| Same-thread txn reads | tests/storage.rs::same_thread_reads_during_transaction_do_not_deadlock |
| create(false) / read-only guards | tests/storage.rs::open_create_false_empty_dir_fails, read_only_empty_dir_fails_without_init |
| UTF-8 BOM import/parse | tests/storage.rs::import_merges_and_strips_utf8_bom, tests/io.rs BOM cases |
| Inventory / API | redland-1.0.17-oxiland-0.4.json, api/oxiland-public-api.txt |
| Design / ADR | docs/design/0.4-storage-api.md, ADR-006, 0.4-legacy-storage.md |
Not claimed¶
- Native Redland binary store importers
- Additional durable engines beyond Fjall
- Multi-tenant hardened database security
- Format compatibility across future Oxiland major versions without migration
- C ABI / Python storage bindings