You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
pgRDF still consumes reasonable via a [patch.crates-io] fork pin
(styk-tv/reasonable@rdf12-passthrough, commit 8974c110). The reason that fork
exists has been resolved upstream for ~5 weeks, so the patch can now be dropped
in favour of the released crate. Tracked internally as ERRATA.v0.4 E-011
(see Cargo.toml).
Current state (v0.6.17, latest)
Cargo.toml:
reasonable = { version = "0.4", features = ["rdf-12"] }
reasonable 0.4.1 from git+…rdf12-passthrough#8974c110…
The fork commit (8974c110, 2026-05-15) adds a feature-gated TermRef::Triple(_)
arm so reasonable compiles when shacl 0.3.x (via rudof_rdf) hard-enables oxrdf/rdf-12 workspace-wide.
crates.io has shipped reasonable 0.4.3 (2026-05-27) and 0.4.4 (2026-05-28) —
both post-merge.
So the fork is now functionally identical to a released crate, and the git
dependency is pure supply-chain debt (hurts reproducibility / SLSA cleanliness for
no functional gain).
Summary
pgRDF still consumes
reasonablevia a[patch.crates-io]fork pin(
styk-tv/reasonable@rdf12-passthrough, commit8974c110). The reason that forkexists has been resolved upstream for ~5 weeks, so the patch can now be dropped
in favour of the released crate. Tracked internally as ERRATA.v0.4 E-011
(see
Cargo.toml).Current state (v0.6.17, latest)
Cargo.toml:reasonable = { version = "0.4", features = ["rdf-12"] }[patch.crates-io] reasonable = { git = "https://github.com/styk-tv/reasonable", branch = "rdf12-passthrough" }Cargo.lock:reasonable 0.4.1fromgit+…rdf12-passthrough#8974c110…The fork commit (
8974c110, 2026-05-15) adds a feature-gatedTermRef::Triple(_)arm so
reasonablecompiles whenshacl 0.3.x(viarudof_rdf) hard-enablesoxrdf/rdf-12workspace-wide.Why it can be dropped now
for downstream coexistence" — merged 2026-05-22, touching
lib/Cargo.toml+lib/src/common.rs(the same change the fork carries).both post-merge.
So the fork is now functionally identical to a released crate, and the git
dependency is pure supply-chain debt (hurts reproducibility / SLSA cleanliness for
no functional gain).
Proposed change
to
lib/Cargo.toml; verify the published feature name matchesfeatures = ["rdf-12"]).[patch.crates-io] reasonable = …block.reasonable = { version = "0.4.4", features = ["rdf-12"] }(or current).Verification
cargo build/cargo checkclean with no[patch.crates-io]for reasonable.cargo tree -i reasonableshows the crates.io source (notgit+…).Cargo.lockreasonablesourceisregistry+…, notgit+….Notes
expected — this is build-hygiene / supply-chain.