The codec declared nalgebra and never used it — its Vector2 and Vector3 are plain structs of its own. It was pulling eleven crates into every build here for nothing. Also picks up cadkernel's Vec2, which replaces the vector arithmetic the kernel had been writing out by hand. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
129 lines
4.7 KiB
TOML
129 lines
4.7 KiB
TOML
[package]
|
|
name = "OpenCADStudio"
|
|
version = "0.9.4"
|
|
edition = "2021"
|
|
build = "build.rs"
|
|
|
|
[workspace]
|
|
members = [
|
|
"crates/ocs_plugin_api",
|
|
"crates/ocs_web_worker",
|
|
"crates/dwg-thumbnailer",
|
|
"crates/dwg-thumbnailer-win",
|
|
]
|
|
|
|
[target.'cfg(windows)'.build-dependencies]
|
|
winresource = "0.1"
|
|
|
|
[features]
|
|
default = ["solid3d"]
|
|
solid3d = ["dep:truck-meshalgo", "dep:truck-shapeops", "dep:lzma-sys"]
|
|
|
|
[dependencies]
|
|
serde_json = "1"
|
|
serde = { version = "1", features = ["derive"] }
|
|
semver = "1"
|
|
lzma-sys = { version = "0.1", features = ["static"], optional = true }
|
|
iced = { git = "https://github.com/iced-rs/iced.git", rev = "23604ff22ab0aad9e00b9327cb7b8546ed84db39", features = ["image", "svg", "advanced", "canvas", "smol", "markdown"] }
|
|
iced_core = { git = "https://github.com/iced-rs/iced.git", rev = "23604ff22ab0aad9e00b9327cb7b8546ed84db39" }
|
|
iced_aw = { git = "https://github.com/HakanSeven12/iced_aw.git", branch = "agent/fix-iced-fonts", features = ["menu", "context_menu", "color_picker", "drop_down"] }
|
|
bytemuck = { version = "1.25", features = ["derive"] }
|
|
glam = { version = "0.33", features = ["bytemuck"] }
|
|
truck-modeling = "0.6"
|
|
truck-meshalgo = { version = "0.4", default-features = false, features = ["tessellation"], optional = true }
|
|
truck-polymesh = "0.6"
|
|
rfd = "0.17"
|
|
clap = { version = "4", features = ["derive"] }
|
|
env_logger = "0.11"
|
|
# The CAD stack is reached through acadifc, which re-exports the codec and
|
|
# the geometry kernel. Aliased to `acadrust` so existing `use acadrust::…`
|
|
# paths keep resolving.
|
|
acadrust = { package = "acadifc", git = "https://github.com/OpenAEC-Foundation/acadifc.git", rev = "c65d396", features = ["serde", "offset"] }
|
|
dwg-thumbnailer = { path = "crates/dwg-thumbnailer" }
|
|
flate2 = "1"
|
|
image = { version = "0.25", default-features = false, features = ["png", "jpeg", "bmp", "tiff"] }
|
|
# Rasterises assets/logo.svg into the window icon at startup, so the taskbar
|
|
# icon comes from the same file every other build target does. Already in the
|
|
# tree behind iced's svg feature; named here only to use it directly.
|
|
resvg = { version = "0.45", default-features = false }
|
|
i18n-embed = { version = "0.16", features = ["fluent-system"] }
|
|
i18n-embed-fl = "0.10"
|
|
rust-embed = "8"
|
|
inventory = "0.3"
|
|
truck-shapeops = { version = "0.4", optional = true }
|
|
rustc-hash = "2"
|
|
sha2 = "0.10"
|
|
fontdb = "0.23"
|
|
ttf-parser = "0.25"
|
|
cosmic-text = "0.15"
|
|
lyon_tessellation = "1.0.20"
|
|
|
|
[dev-dependencies]
|
|
naga = { version = "27", features = ["wgsl-in"] }
|
|
|
|
[target.'cfg(target_os = "windows")'.dependencies]
|
|
windows-sys = { version = "0.61", features = ["Win32_UI_Shell", "Win32_UI_WindowsAndMessaging", "Win32_System_Com", "Win32_System_Registry", "Win32_Storage_FileSystem", "Win32_Foundation"] }
|
|
|
|
[target.'cfg(target_os = "linux")'.dependencies]
|
|
ashpd = { version = "0.13.13", default-features = false, features = ["async-io", "wayland"] }
|
|
|
|
[patch.crates-io]
|
|
iced_core = { git = "https://github.com/iced-rs/iced.git", rev = "23604ff22ab0aad9e00b9327cb7b8546ed84db39" }
|
|
iced_widget = { git = "https://github.com/iced-rs/iced.git", rev = "23604ff22ab0aad9e00b9327cb7b8546ed84db39" }
|
|
|
|
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
|
|
ocs_plugin_api = { path = "crates/ocs_plugin_api", features = ["host"] }
|
|
i18n-embed = { version = "0.16", features = ["desktop-requester"] }
|
|
rayon = "1"
|
|
open = "5"
|
|
printpdf = { version = "0.9.1", default-features = false }
|
|
ureq = { version = "3", default-features = false, features = ["rustls", "platform-verifier", "win-system-proxy"] }
|
|
|
|
[target.'cfg(target_arch = "wasm32")'.dependencies]
|
|
ocs_plugin_api = { path = "crates/ocs_plugin_api" }
|
|
i18n-embed = { version = "0.16", features = ["web-sys-requester"] }
|
|
rust-embed = { version = "8", features = ["debug-embed"] }
|
|
console_error_panic_hook = "0.1"
|
|
log = "0.4"
|
|
getrandom = { version = "0.3", features = ["wasm_js"] }
|
|
wasm-bindgen = "0.2"
|
|
wasm-bindgen-futures = "0.4"
|
|
js-sys = "0.3"
|
|
bincode = "1.3"
|
|
web-sys = { version = "=0.3.85", features = [
|
|
"Window",
|
|
"Storage",
|
|
"StorageManager",
|
|
"Navigator",
|
|
"Document",
|
|
"Element",
|
|
"HtmlAnchorElement",
|
|
"Blob",
|
|
"File",
|
|
"FileSystemDirectoryHandle",
|
|
"FileSystemFileHandle",
|
|
"FileSystemGetDirectoryOptions",
|
|
"FileSystemGetFileOptions",
|
|
"FileSystemWritableFileStream",
|
|
"WritableStream",
|
|
"Url",
|
|
"Response",
|
|
"Worker",
|
|
"WorkerOptions",
|
|
"WorkerType",
|
|
"MessageEvent",
|
|
"ErrorEvent",
|
|
"Clipboard",
|
|
"KeyboardEvent",
|
|
"KeyboardEventInit",
|
|
"EventInit",
|
|
"EventTarget",
|
|
"BeforeUnloadEvent",
|
|
"console",
|
|
"Node",
|
|
"HtmlElement",
|
|
] }
|
|
iced = { git = "https://github.com/iced-rs/iced.git", rev = "23604ff22ab0aad9e00b9327cb7b8546ed84db39", features = ["webgl", "fira-sans"] }
|
|
|
|
[profile.release]
|
|
strip = true
|