mirror of
https://github.com/GraphiteEditor/Graphite.git
synced 2025-12-23 10:11:54 +00: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>
83 lines
2.4 KiB
TOML
83 lines
2.4 KiB
TOML
[package]
|
|
name = "graphite-editor"
|
|
publish = false
|
|
version = "0.0.0"
|
|
rust-version = "1.79"
|
|
authors = ["Graphite Authors <contact@graphite.rs>"]
|
|
edition = "2021"
|
|
readme = "../README.md"
|
|
homepage = "https://graphite.rs"
|
|
repository = "https://github.com/GraphiteEditor/Graphite"
|
|
license = "Apache-2.0"
|
|
|
|
[features]
|
|
default = ["wasm"]
|
|
wasm = ["wasm-bindgen", "graphene-std/wasm", "wasm-bindgen-futures"]
|
|
gpu = [
|
|
"interpreted-executor/gpu",
|
|
"graphene-std/gpu",
|
|
"graphene-core/gpu",
|
|
"wgpu-executor",
|
|
"gpu-executor",
|
|
]
|
|
resvg = ["graphene-std/resvg"]
|
|
vello = ["graphene-std/vello", "resvg", "graphene-core/vello"]
|
|
|
|
[dependencies]
|
|
# Local dependencies
|
|
graphite-proc-macros = { path = "../proc-macros" }
|
|
graph-craft = { path = "../node-graph/graph-craft" }
|
|
interpreted-executor = { path = "../node-graph/interpreted-executor" }
|
|
graphene-core = { path = "../node-graph/gcore" }
|
|
graphene-std = { path = "../node-graph/gstd", features = ["serde"] }
|
|
|
|
# Workspace dependencies
|
|
js-sys = { workspace = true }
|
|
log = { workspace = true }
|
|
bitflags = { workspace = true }
|
|
convert_case = { workspace = true }
|
|
thiserror = { workspace = true }
|
|
serde = { workspace = true }
|
|
serde_json = { workspace = true }
|
|
bezier-rs = { workspace = true }
|
|
futures = { workspace = true }
|
|
glam = { workspace = true, features = ["serde", "debug-glam-assert"] }
|
|
derivative = { workspace = true }
|
|
specta.workspace = true
|
|
image = { workspace = true, features = ["bmp", "png"] }
|
|
dyn-any = { workspace = true }
|
|
num_enum = { workspace = true }
|
|
usvg = { workspace = true }
|
|
once_cell = { workspace = true }
|
|
web-sys = { workspace = true, features = [
|
|
"Document",
|
|
"DomRect",
|
|
"Element",
|
|
"HtmlCanvasElement",
|
|
"CanvasRenderingContext2d",
|
|
"TextMetrics",
|
|
] }
|
|
|
|
# Required dependencies
|
|
async-mutex = "1.4.0"
|
|
spin = "0.9.8"
|
|
|
|
# Optional local dependencies
|
|
wgpu-executor = { path = "../node-graph/wgpu-executor", optional = true }
|
|
gpu-executor = { path = "../node-graph/gpu-executor", optional = true }
|
|
|
|
# Optional workspace dependencies
|
|
wasm-bindgen = { workspace = true, optional = true }
|
|
wasm-bindgen-futures = { workspace = true, optional = true }
|
|
|
|
[dev-dependencies]
|
|
# Workspace dependencies
|
|
env_logger = { workspace = true }
|
|
futures = { workspace = true }
|
|
tokio = { workspace = true, features = ["rt", "macros"] }
|
|
|
|
[lints.rust]
|
|
# TODO: figure out why we check these features when they do not exist
|
|
unexpected_cfgs = { level = "warn", check-cfg = [
|
|
'cfg(feature, values("resvg", "vello"))',
|
|
] }
|