Releases: cool-japan/oxirs
Releases · cool-japan/oxirs
OxiRS 0.3.1 Release
[0.3.1] - 2026-06-06
Added
- oxirs-fuseki:
auth/policy_templates.rs—PolicyTemplateRegistrywith built-in DBA, ReadOnly, Auditor role templates;PolicyTemplate(serde-compatible);apply_to_user;ReadAuditpermission variant;DuplicateTemplate/UnknownTemplateauth errors (18 tests) - oxirs-fuseki: FIPS 140-2
fipsfeature gate for FIPS-validated cryptography viaring - oxirs-did: FIPS 140-2
fipsfeature gate docs/policies/fips-boundary.md— RFC-003 FIPS cryptographic boundary policy- oxirs-graphrag:
summarizer.rs—GraphSummarizer(Leiden community detection → in-degree centrality → predicate frequency →to_text()natural language output) (6 tests) - oxirs-graphrag:
feedback.rs—TripleRelevanceFeedback/Relevanceenum; seahash triple IDs; multiplicative weight adjustment (0.1–2.0 clamp);apply_to_scoressorted descending (7 tests) - oxirs-embed:
models/graph_sage.rs—GraphSageEmbedderinductive graph embeddings; k-hop mean aggregation with ReLU+L2-norm; Xavier init via scirs2-core; margin ranking loss; sign-SGD; LCG neighbor sampling; unseen-entity support (6 tests) - oxirs-shacl: SHACL Advanced Features (SHACL-AF) — recursive shapes and qualified value shapes completed (Round 32)
- oxirs-shacl: SHACL-AF reasoning engine — rule-based reasoning validator with dedicated reasoning types and validation rules (Round 33)
- oxirs-shacl-ai:
optimization/genetic.rs— genetic algorithm for SHACL shape constraint-order optimization (configurable population/generations/tournament/mutation viaGeneticParams, cost-estimate fitness scoring, tournament selection) - oxirs-ttl: HDT 1.0 (Header-Dictionary-Triples) binary RDF format reader — iterator-based read-only parser over Header, Dictionary, and Triples sections
- oxirs-ttl: streaming TriG parser —
TriGStreamingParserpull-parser implementingIterator<Item = Result<StreamedQuad, _>>for W3C TriG named graphs - oxirs-core: RDF-star quoted triples in pattern matching and query execution — quoted-triple support across query algebra, executor, JIT, planner, pattern unification, and SIMD triple matching
- oxirs:
rsettool now parses SPARQL Results XML (SRX) — booleans, bindings, typed/language literals, and blank nodes (viaparse_sparql_results_xml)
Changed
- Version bump to 0.3.1 across all workspace crates
- Refactor
oxirs-fuseki/src/config.rs(1999 lines) → split intoconfig.rs+config_server.rs+config_security.rs+config_runtime.rs; public API preserved via re-exports - Refactor
oxirs-arq/src/lateral_join.rs(1978 lines) → directory module; test block extracted tolateral_join/lateral_join_tests.rs; source down to 1138 lines - Refactor
oxirs-federate/src/query_decomposition/advanced_pattern_analysis.rs(1990 lines) → split into_consciousness.rs(252) +_analyzer.rs(1484) +_quantum.rs(298) + 16-line facade - Refactor
oxirs-cluster/src/storage/persistent.rs(1953 lines) →persistent.rs(710) +persistent_wal.rs(335) +persistent_integrity.rs(444) +persistent_tests.rs(287) - Refactor
oxirs-shacl/src/targets/selector.rs(1961 lines) →selector.rs(709) +selector_query.rs(548) +selector_eval.rs(641) - Refactor
oxirs-shacl-ai/src/performance_monitoring.rs(1949 lines) →performance_monitoring.rs(1575) +performance_monitoring_advanced.rs(514); fixed pre-existing Duration/field-name/Serialize bugs - Refactor
oxirs-shacl-ai/src/optimization/engine.rs(1987 lines) →engine.rs(1308) +optimization/engine_analysis.rs(718) - 21 TODO.md files updated: 47
[~]items flipped to[x]for RFC-001 (LTS) and RFC-002 (Enterprise) now that policies are published - Dependency: SciRS2 workspace crates bumped 0.4.3 → 0.5.0 (all 12
scirs2-*sub-crates) - Dependency:
oxiarc-*compression crates pinned to 0.3.3 and consumed directly from crates.io — the temporary[patch.crates-io]path overrides were removed, leaving onlypathfinder_simdpatched (an unrelated Rust-nightly intrinsic fix) - Refactor (Round 31 — facade recovery): 13 oversized files (1602–1909 lines) across oxirs-core, oxirs-vec, oxirs-fuseki, oxirs-embed, oxirs-shacl-ai, oxirs-samm, oxirs-rule, and oxirs converted to thin facades over pre-existing sibling modules (~20K lines net removed)
- Refactor (Round 32 — tier-2): oxirs-fuseki
auth/saml.rs+bind_values_enhanced.rs, oxirs-clustercluster_metrics.rs, oxirs-tdbadvanced_diagnostics.rs, oxirs-federateservice.rs, and oxirscommands/jena_parity.rssplit into focused submodules - Refactor (Round 33 — tier-3): oxirs-shacl
constraints/expression_constraint.rs, oxirs-vectree_indices.rs(ball/cover/kd/rp/vp-tree), oxirs-wasmquery/construct.rs, oxirs-gqlschema.rs, and oxirs-streambackend/kafka/backend.rssplit into submodules - Refactor (tools/oxirs):
commands/aspect.rs,commands/interactive.rs, andcommands/import_command.rssplit into focused modules;lib.rs→lib_commands.rs+lib_dispatch.rs - Refactor (additional): oxirs-gql
validation_spec.rs, oxirs-tdbmvcc/mod.rs, oxirs-streamlib_types.rs/neuromorphic_analytics.rs/wasm_edge_computing.rs, and oxirs-corestorage/tiered.rssplit into module directories - oxirs-vec:
build.rsCUDA-toolkit detection now emits informational build-script output instead ofcargo:warning=(no-warnings policy); GPU acceleration remains opt-in via thecudafeature with Pure-Rust CPU fallbacks - Error-handling hardening:
unwrap()calls in the benchmark runner and performance-benchmark modules replaced with context-carrying error handling
Changed — Pure-Rust (COOLJAPAN Policy)
- Compression:
brotli→oxiarc-brotli,snap→oxiarc-snappy,flate2→oxiarc-deflateacross all consuming crates (tdb, stream, federate, fuseki, cluster, arq, gql, star, embed, shacl-ai, chat, did, tools); directbrotli/snap/flate2deps removed - Crypto: 27 first-party
ring::call sites (tools/oxirs, oxirs-did, oxirs-fuseki, oxirs-cluster) migrated to oxicrypto leaf crates (hash/mac/aead/kdf/rand) + workspaceed25519-dalek+rsafor Ed25519/RSA signatures; all directringdeps removed - TLS: pure-Rust
oxitls::pure_provider()installed process-wide at every binary entry;rustlsno-provider,reqwestrustls-no-provider,tokio-rustlsdefault-features=false,metrics-exporter-prometheuspush-gateway-no-tls-provider; cluster cert-genrcgen→oxitls-rcgen;async-openaigated behind non-defaultopenaifeature - Fixed an
oxiarc-brotliincompressible-input compressor bug (it emitted streams its own decoder rejected); the fix shipped upstream as oxiarc 0.3.3 (2026-06-06) on crates.io, which OxiRS now consumes directly - Default
cargo buildis now free ofringandaws-lc-sys/aws-lc-rsC/asm crypto —cargo tree -i ringandcargo tree -i aws-lc-sys/aws-lc-rsare all empty for the default feature set
Fixed
- oxirs-stream: fixed undefined behavior in neuromorphic analytics —
NetworkTopologyandNeuralResponseremoved from the unsafeimpl_zeroed_default!macro (std::mem::zeroed()is UB forVec/Instant); replaced withderive(Default)and a manualDefaultimpl (Round 31) - oxirs-core: declared
indexmapandtomlas workspace dependencies, fixing a latent compile break injsonld::{compaction,flattening}(Round 31) - oxirs-vec: restored
JointEmbeddingSpace::zero_shot_retrieval, lost to earlier module drift (Round 31)
Policy Compliance
- All
.rsfiles under 2000 lines (proactive refactors applied) - Zero warnings, zero errors across workspace
- Total test count: ~43,511 (+19 graphrag, +6 embed from Round 18)
Full Changelog: v0.3.0...v0.3.1
OxiRS 0.3.0 Release
Full Changelog: v0.2.4...v0.3.0
OxiRS 0.2.4 Release
Full Changelog: v0.2.2...v0.2.4
OxiRS 0.2.2 Release
Full Changelog: v0.2.1...v0.2.2
OxiRS 0.2.1 Release
Full Changelog: v0.2.0...v0.2.1
OxiRS 0.2.0 Release
What's Changed
- fix(turtle): delegate parsing to oxttl for full Turtle syntax support by @temporaryfix in #57
- fix(shacl): fix language-tagged string handling in SHACL shapes by @temporaryfix in #58
- feat(rdfs): add configurable RDFS rules via builder pattern by @temporaryfix in #59
New Contributors
- @temporaryfix made their first contribution in #57
Full Changelog: v0.1.0...v0.2.0
OxiRS 0.1.0 Release
OxiRS 0.1.0 RC-2 Release
Full Changelog: v0.1.0-rc.1...v0.1.0-rc.2
OxiRS 0.1.0 RC-1 Release
Full Changelog: v0.1.0-beta.2...v0.1.0-rc.1