Cargo: codec cf3a040 (crate acadrust), kernel 2659c33, graph 800878a

The codec crate is named acadrust again (b6cb385); the `codec` key and
every `codec::` path stay as they are, only the package name changes in
each manifest, the plugin API build script finds it under that name, and
the recovery report reads the codec revision from the `codec` line it
had stopped matching. Codec: DWG dimension text-position flag polarity
(#117) and explode ByBlock resolution.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
Hakan SevenandClaude Opus 5.5 committed 2026-10-17 00:03:23 +03:00
1 parent fba1dfcd88
commit 68d9ebe265
9 files changed
+69 -69

No files matched your search

Generated
+32 -32
View File
@@ -6,6 +6,7 @@ version = 4
name = "OpenCADStudio"
version = "2026.41.0"
dependencies = [
"acadrust",
"allsorts",
"ashpd",
"base64",
@@ -47,7 +48,6 @@ dependencies = [
"ocs_plugin_api",
"ocs_save",
"open",
"opencadcodec",
"opencadgraph",
"opencadkernel",
"opencadkernel-constraints",
@@ -93,6 +93,30 @@ version = "0.1.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "366ffbaa4442f4684d91e2cd7c5ea7c4ed8add41959a31447066e279e432b618"
[[package]]
name = "acadrust"
version = "0.6.4"
source = "git+https://github.com/HakanSeven12/opencadcodec.git?rev=cf3a040#cf3a04051240cf88440f8aaf41c4841fcb01d0d1"
dependencies = [
"anyhow",
"bitflags 2.13.1",
"byteorder",
"encoding_rs",
"flate2",
"foldhash 0.2.0",
"indexmap",
"itoa",
"memmap2",
"nom 7.1.3",
"oem_cp",
"once_cell",
"rayon",
"ryu",
"serde",
"thiserror 2.0.18",
"web-time",
]
[[package]]
name = "adler2"
version = "2.0.1"
@@ -4309,13 +4333,13 @@ dependencies = [
name = "ocs_plugin_api"
version = "0.2.1"
dependencies = [
"acadrust",
"bincode",
"cargo-lock",
"getrandom 0.2.17",
"interprocess",
"libloading",
"memmap2",
"opencadcodec",
"rkyv",
"serde",
"serde-reflection",
@@ -4328,8 +4352,8 @@ dependencies = [
name = "ocs_save"
version = "0.1.0"
dependencies = [
"acadrust",
"bincode",
"opencadcodec",
"serde",
]
@@ -4337,12 +4361,12 @@ dependencies = [
name = "ocs_web_worker"
version = "0.1.0"
dependencies = [
"acadrust",
"bincode",
"console_error_panic_hook",
"getrandom 0.3.4",
"js-sys",
"ocs_save",
"opencadcodec",
"serde",
"sha2 0.10.9",
"wasm-bindgen",
@@ -4379,34 +4403,10 @@ dependencies = [
"libc",
]
[[package]]
name = "opencadcodec"
version = "0.6.0"
source = "git+https://github.com/HakanSeven12/opencadcodec.git?rev=d4ac66e#d4ac66ee5cf39d3a08282325d538d3bc55147e4a"
dependencies = [
"anyhow",
"bitflags 2.13.1",
"byteorder",
"encoding_rs",
"flate2",
"foldhash 0.2.0",
"indexmap",
"itoa",
"memmap2",
"nom 7.1.3",
"oem_cp",
"once_cell",
"rayon",
"ryu",
"serde",
"thiserror 2.0.18",
"web-time",
]
[[package]]
name = "opencadgraph"
version = "0.1.0"
source = "git+https://github.com/HakanSeven12/opencadgraph.git?rev=8b315ab#8b315ab4e6fbddd7cee0c3ec0b81ee66efd423ed"
source = "git+https://github.com/HakanSeven12/opencadgraph.git?rev=800878a#800878aa14be9789568544e2e552a044ac727cae"
dependencies = [
"opencadkernel",
"serde_json",
@@ -4415,10 +4415,10 @@ dependencies = [
[[package]]
name = "opencadkernel"
version = "0.1.0"
source = "git+https://github.com/HakanSeven12/opencadkernel.git?rev=85eb912#85eb91245f408646e75b9cc7189010d3fdfeba6f"
source = "git+https://github.com/HakanSeven12/opencadkernel.git?rev=2659c33#2659c339d0b57f7f858881174e3e04d5ef46af2f"
dependencies = [
"acadrust",
"cavalier_contours",
"opencadcodec",
"rustc-hash 2.1.3",
"spade",
]
@@ -4426,7 +4426,7 @@ dependencies = [
[[package]]
name = "opencadkernel-constraints"
version = "0.1.0"
source = "git+https://github.com/HakanSeven12/opencadkernel.git?rev=85eb912#85eb91245f408646e75b9cc7189010d3fdfeba6f"
source = "git+https://github.com/HakanSeven12/opencadkernel.git?rev=2659c33#2659c339d0b57f7f858881174e3e04d5ef46af2f"
dependencies = [
"nalgebra",
]
+4 -4
View File
@@ -37,10 +37,10 @@ rfd = "0.17"
clap = { version = "4", features = ["derive", "string"] }
env_logger = "0.11"
log = "0.4"
codec = { package = "opencadcodec", git = "https://github.com/HakanSeven12/opencadcodec.git", rev = "d4ac66e", features = ["serde"] }
kernel = { package = "opencadkernel", git = "https://github.com/HakanSeven12/opencadkernel.git", rev = "85eb912", features = ["acis", "offset"] }
kernel-constraints = { package = "opencadkernel-constraints", git = "https://github.com/HakanSeven12/opencadkernel.git", rev = "85eb912" }
graph = { package = "opencadgraph", git = "https://github.com/HakanSeven12/opencadgraph.git", rev = "8b315ab" }
codec = { package = "acadrust", git = "https://github.com/HakanSeven12/opencadcodec.git", rev = "cf3a040", features = ["serde"] }
kernel = { package = "opencadkernel", git = "https://github.com/HakanSeven12/opencadkernel.git", rev = "2659c33", features = ["acis", "offset"] }
kernel-constraints = { package = "opencadkernel-constraints", git = "https://github.com/HakanSeven12/opencadkernel.git", rev = "2659c33" }
graph = { package = "opencadgraph", git = "https://github.com/HakanSeven12/opencadgraph.git", rev = "800878a" }
dwg-thumbnailer = { path = "crates/dwg-thumbnailer" }
# Shared SAVE serialization dispatch + web-worker wire format: one
# implementation for the inline (fallback/native) path and the worker path.
+2 -2
View File
@@ -15,7 +15,7 @@ serde_json = { version = "1", optional = true }
# Pulled in only by the `host` feature, which adds the `opencadcodec`-typed
# `HostApi` runtime surface. The default crate stays dependency-free so engine
# crates and external tooling can depend on the manifest/ribbon contract cheaply.
codec = { package = "opencadcodec", git = "https://github.com/HakanSeven12/opencadcodec.git", rev = "d4ac66e", optional = true, features = ["serde"] }
codec = { package = "acadrust", git = "https://github.com/HakanSeven12/opencadcodec.git", rev = "cf3a040", optional = true, features = ["serde"] }
# Runtime IPC and serialization (host feature only).
interprocess = { version = "2", optional = true }
@@ -39,7 +39,7 @@ serde_json = "1"
serde = { version = "1", features = ["derive"] }
cargo-lock = "11"
# opencadcodec is scanned at build time to generate the embedded type registry.
codec = { package = "opencadcodec", git = "https://github.com/HakanSeven12/opencadcodec.git", rev = "d4ac66e", features = ["serde"] }
codec = { package = "acadrust", git = "https://github.com/HakanSeven12/opencadcodec.git", rev = "cf3a040", features = ["serde"] }
[dev-dependencies]
serde_json = "1"
+2 -2
View File
@@ -1240,8 +1240,8 @@ fn generate_version_info(out_dir: &Path) {
let opencadcodec = lockfile
.packages
.iter()
.find(|p| p.name.as_str() == "opencadcodec")
.expect("opencadcodec package in Cargo.lock");
.find(|p| p.name.as_str() == "acadrust")
.expect("codec package (acadrust) in Cargo.lock");
let rustc = env::var_os("RUSTC").unwrap_or_else(|| "rustc".into());
let rustc_version = Command::new(rustc)
+1 -1
View File
@@ -10,6 +10,6 @@ publish = false
# exactly one implementation. No UI/app dependencies — only the codec + serde.
[dependencies]
codec = { package = "opencadcodec", git = "https://github.com/HakanSeven12/opencadcodec.git", rev = "d4ac66e", features = ["serde"] }
codec = { package = "acadrust", git = "https://github.com/HakanSeven12/opencadcodec.git", rev = "cf3a040", features = ["serde"] }
bincode = "1.3"
serde = { version = "1", features = ["derive"] }
+1 -1
View File
@@ -8,7 +8,7 @@ publish = false
crate-type = ["cdylib"]
[dependencies]
codec = { package = "opencadcodec", git = "https://github.com/HakanSeven12/opencadcodec.git", rev = "d4ac66e", features = ["serde"] }
codec = { package = "acadrust", git = "https://github.com/HakanSeven12/opencadcodec.git", rev = "cf3a040", features = ["serde"] }
bincode = "1.3"
serde = { version = "1", features = ["derive"] }
console_error_panic_hook = "0.1"
+1 -1
View File
@@ -16,4 +16,4 @@ ocs_plugin_api = { path = "../../crates/ocs_plugin_api", features = ["host"] }
# entry): the plugin's entities and the host's re-exports are the same types
# only when both resolve the same revision. The registration `rustc` /
# `acadrust_source` gates enforce this at load time too.
acadrust = { package = "opencadcodec", git = "https://github.com/HakanSeven12/opencadcodec.git", rev = "d4ac66e" }
acadrust = { package = "acadrust", git = "https://github.com/HakanSeven12/opencadcodec.git", rev = "cf3a040" }
+25 -25
View File
@@ -2,6 +2,30 @@
# It is not intended for manual editing.
version = 4
[[package]]
name = "acadrust"
version = "0.6.4"
source = "git+https://github.com/HakanSeven12/opencadcodec.git?rev=cf3a040#cf3a04051240cf88440f8aaf41c4841fcb01d0d1"
dependencies = [
"anyhow",
"bitflags",
"byteorder",
"encoding_rs",
"flate2",
"foldhash",
"indexmap",
"itoa",
"memmap2",
"nom",
"oem_cp",
"once_cell",
"rayon",
"ryu",
"serde",
"thiserror 2.0.20",
"web-time",
]
[[package]]
name = "adler2"
version = "2.0.1"
@@ -1230,13 +1254,13 @@ dependencies = [
name = "ocs_plugin_api"
version = "0.2.1"
dependencies = [
"acadrust",
"bincode",
"cargo-lock",
"getrandom 0.2.17",
"interprocess",
"libloading 0.8.9",
"memmap2",
"opencadcodec",
"rkyv",
"serde",
"serde-reflection",
@@ -1270,30 +1294,6 @@ dependencies = [
"serde_json",
]
[[package]]
name = "opencadcodec"
version = "0.6.0"
source = "git+https://github.com/HakanSeven12/opencadcodec.git?rev=d4ac66e#d4ac66ee5cf39d3a08282325d538d3bc55147e4a"
dependencies = [
"anyhow",
"bitflags",
"byteorder",
"encoding_rs",
"flate2",
"foldhash",
"indexmap",
"itoa",
"memmap2",
"nom",
"oem_cp",
"once_cell",
"rayon",
"ryu",
"serde",
"thiserror 2.0.20",
"web-time",
]
[[package]]
name = "optional"
version = "0.5.0"
+1 -1
View File
@@ -561,7 +561,7 @@ fn structured_diagnostic_line(diagnostic: &codec::ReadDiagnostic) -> String {
fn reader_revision() -> String {
include_str!("../../Cargo.toml")
.lines()
.find(|line| line.trim_start().starts_with("opencadcodec = { git ="))
.find(|line| line.trim_start().starts_with("codec = ") && line.contains("opencadcodec.git"))
.and_then(|line| line.split("rev = \"").nth(1))
.and_then(|value| value.split('"').next())
.filter(|value| !value.is_empty())