mirror of
https://github.com/GraphiteEditor/Graphite.git
synced 2026-09-15 22:28:10 +08:00
* Add support structure for new node macro to gcore * Fix compile issues and code generation * Implement new node_fn macro * Implement property translation * Fix NodeIO type generation * Start translating math nodes * Move node implementation to outer scope to allow usage of local imports * Add expose attribute to allow controlling the parameter exposure * Add rust analyzer support for #[implementations] attribute * Migrate logic nodes * Handle where clause properly * Implement argument ident pattern preservation * Implement adjustment layer mapping * Fix node registry types * Fix module paths * Improve demo artwork comptibility * Improve macro error reporting * Fix handling of impl node implementations * Fix nodeio type computation * Fix opacity node and graph type resolution * Fix loading of demo artworks * Fix eslint * Fix typo in macro test * Remove node definitions for Adjustment Nodes * Fix type alias property generation and make adjustments footprint aware * Convert vector nodes * Implement path overrides * Fix stroke node * Fix painted dreams * Implement experimental type level specialization * Fix poisson disk sampling -> all demo artworks should work again * Port text node + make node macro more robust by implementing lifetime substitution * Fix vector node tests * Fix red dress demo + ci * Fix clippy warnings * Code review * Fix primary input issues * Improve math nodes and audit others * Set no_properties when no automatic properties are derived * Port vector generator nodes (could not derive all definitions yet) * Various QA changes and add min/max/mode_range to number parameters * Add min and max for f64 and u32 * Convert gpu nodes and clean up unused nodes * Partially port transform node * Allow implementations on call arg * Port path modify node * Start porting graphic element nodes * Transform nodes in graphic_element.rs * Port brush node * Port nodes in wasm_executior * Rename node macro * Fix formatting * Fix Mandelbrot node * Formatting * Fix Load Image and Load Resource nodes, add scope input to node macro * Remove unnecessary underscores * Begin attemping to make nodes resolution-aware * Infer a generic manual compositon type on generic call arg * Various fixes and work towards merging * Final changes for merge! * Fix tests, probably * More free line removals! --------- Co-authored-by: Keavon Chambers <keavon@keavon.com>
123 lines
3.8 KiB
TOML
123 lines
3.8 KiB
TOML
[workspace]
|
|
members = [
|
|
"editor",
|
|
"proc-macros",
|
|
"frontend/wasm",
|
|
"frontend/src-tauri",
|
|
"node-graph/gcore",
|
|
"node-graph/gstd",
|
|
"node-graph/graph-craft",
|
|
"node-graph/graphene-cli",
|
|
"node-graph/interpreted-executor",
|
|
"node-graph/node-macro",
|
|
"node-graph/compilation-server",
|
|
"node-graph/compilation-client",
|
|
"node-graph/wgpu-executor",
|
|
"node-graph/gpu-executor",
|
|
"node-graph/gpu-compiler/gpu-compiler-bin-wrapper",
|
|
"libraries/dyn-any",
|
|
"libraries/bezier-rs",
|
|
"libraries/raw-rs",
|
|
"libraries/raw-rs/tag-derive",
|
|
"libraries/raw-rs/build-camera-data",
|
|
"website/other/bezier-rs-demos/wasm",
|
|
]
|
|
exclude = ["node-graph/gpu-compiler"]
|
|
resolver = "2"
|
|
|
|
[workspace.dependencies]
|
|
# Local dependencies
|
|
dyn-any = { path = "libraries/dyn-any", features = ["derive", "glam", "reqwest"] }
|
|
graphene-core = { path = "node-graph/gcore" }
|
|
graph-craft = { path = "node-graph/graph-craft", features = ["serde"] }
|
|
wgpu-executor = { path = "node-graph/wgpu-executor" }
|
|
bezier-rs = { path = "libraries/bezier-rs", features = ["dyn-any"] }
|
|
node-macro = { path = "node-graph/node-macro" }
|
|
|
|
# Workspace dependencies
|
|
rustc-hash = "2.0"
|
|
bytemuck = { version = "1.13", features = ["derive"] }
|
|
async-trait = "0.1"
|
|
serde = { version = "1.0", features = ["derive", "rc"] }
|
|
serde_json = "1.0"
|
|
serde-wasm-bindgen = "0.6"
|
|
reqwest = { version = "0.12", features = ["blocking", "rustls-tls", "json"] }
|
|
futures = "0.3"
|
|
env_logger = "0.11"
|
|
log = "0.4"
|
|
bitflags = { version = "2.4", features = ["serde"] }
|
|
ctor = "0.2"
|
|
convert_case = "0.6"
|
|
derivative = "2.2"
|
|
tempfile = "3.6"
|
|
thiserror = "1.0"
|
|
anyhow = "1.0"
|
|
proc-macro2 = "1"
|
|
quote = "1.0"
|
|
axum = "0.7"
|
|
chrono = "0.4"
|
|
ron = "0.8"
|
|
fastnoise-lite = "1.1"
|
|
spirv-std = { git = "https://github.com/GraphiteEditor/rust-gpu.git" }
|
|
wgpu-types = "22"
|
|
wgpu = { version = "22.1", features = ["strict_asserts"] }
|
|
once_cell = "1.13" # Remove when `core::cell::LazyCell` (<https://doc.rust-lang.org/core/cell/struct.LazyCell.html>) is stabilized in Rust 1.80 and we bump our MSRV
|
|
wasm-bindgen = "=0.2.92" # NOTICE: ensure this stays in sync with the `wasm-bindgen-cli` version in `website/content/volunteer/guide/getting-started/_index.md`. We pin this version because wasm-bindgen upgrades may break various things.
|
|
wasm-bindgen-futures = "0.4"
|
|
js-sys = "=0.3.69"
|
|
web-sys = "=0.3.69"
|
|
winit = "0.29"
|
|
url = "2.5"
|
|
tokio = { version = "1.29", features = ["fs", "io-std"] }
|
|
vello = { git = "https://github.com/linebender/vello" }
|
|
resvg = "0.42"
|
|
usvg = "0.42"
|
|
rand = { version = "0.8", default-features = false }
|
|
rand_chacha = "0.3"
|
|
glam = { version = "0.28", default-features = false, features = ["serde"] }
|
|
base64 = "0.22"
|
|
image = { version = "0.25", default-features = false, features = ["png"] }
|
|
rustybuzz = "0.17"
|
|
meval = "0.2"
|
|
spirv = "0.3"
|
|
fern = { version = "0.6", features = ["colored"] }
|
|
num_enum = "0.7"
|
|
num-derive = "0.4"
|
|
num-traits = { version = "0.2", default-features = false, features = ["i128"] }
|
|
specta = { git = "https://github.com/oscartbeaumont/specta.git", features = [
|
|
"glam",
|
|
"derive",
|
|
# "typescript",
|
|
] }
|
|
syn = { version = "2.0", default-features = false, features = [
|
|
"full",
|
|
"derive",
|
|
] }
|
|
kurbo = { version = "0.11.0", features = ["serde"] }
|
|
|
|
[patch.crates-io]
|
|
meval = { git = "https://github.com/Titaniumtown/meval-rs" }
|
|
|
|
[profile.dev]
|
|
opt-level = 1
|
|
|
|
[profile.dev.package]
|
|
graphite-editor = { opt-level = 1 }
|
|
graphene-core = { opt-level = 1 }
|
|
graphene-std = { opt-level = 1 }
|
|
interpreted-executor = { opt-level = 1 } # This is a mitigation for https://github.com/rustwasm/wasm-pack/issues/981 which is needed because the node_registry function is too large
|
|
graphite-proc-macros = { opt-level = 1 }
|
|
image = { opt-level = 2 }
|
|
rustc-hash = { opt-level = 3 }
|
|
serde_derive = { opt-level = 1 }
|
|
specta-macros = { opt-level = 1 }
|
|
syn = { opt-level = 1 }
|
|
|
|
[profile.release]
|
|
lto = "thin"
|
|
debug = true
|
|
|
|
[profile.profiling]
|
|
inherits = "release"
|
|
debug = true
|