blob: c4ed59675d6f1afed7df6d0a63d46db56741bbea [file] [log] [blame]
[workspace]
resolver = "2"
members = [
"crates/encoding",
"crates/shaders",
"crates/tests",
"examples/headless",
"examples/with_winit",
"examples/run_wasm",
"examples/scenes",
"examples/simple",
]
[workspace.package]
# Vello version, also used by other packages which want to mimic Vello's version.
# Right now those packages include vello_encoding and vello_shaders.
#
# NOTE: When bumping this, remember to also bump the aforementioned other packages'
# version in the dependencies section at the bottom of this file.
# Additionally, bump the Vello dependency version in the 'simple' example.
version = "0.1.0"
edition = "2021"
# Keep in sync with RUST_MIN_VER in .github/workflows/ci.yml and with the relevant README.md files.
rust-version = "1.75"
license = "Apache-2.0 OR MIT"
repository = "https://github.com/linebender/vello"
[package]
name = "vello"
version.workspace = true
description = "An experimental GPU compute-centric 2D renderer."
categories = ["rendering", "graphics"]
keywords = ["2d", "vector-graphics"]
exclude = ["/.github/", "/doc/", "/examples/", ".gitignore"]
edition.workspace = true
rust-version.workspace = true
license.workspace = true
repository.workspace = true
[features]
default = ["wgpu"]
# Enables GPU memory usage estimation. This performs additional computations
# in order to estimate the minimum required allocations for buffers backing
# bump-allocated GPU memory.
# TODO: Turn this into a runtime option used at resolve time and remove the feature.
bump_estimate = ["vello_encoding/bump_estimate"]
hot_reload = ["vello_shaders/compile"]
buffer_labels = []
[lints]
workspace = true
[dependencies]
vello_encoding = { workspace = true }
vello_shaders = { workspace = true }
bytemuck = { workspace = true }
skrifa = { workspace = true }
peniko = { workspace = true }
wgpu = { workspace = true, optional = true }
log = { workspace = true }
raw-window-handle = { workspace = true }
static_assertions = { workspace = true }
futures-intrusive = { workspace = true }
wgpu-profiler = { workspace = true, optional = true }
[workspace.lints]
clippy.doc_markdown = "warn"
clippy.semicolon_if_nothing_returned = "warn"
[workspace.dependencies]
vello_encoding = { version = "0.1.0", path = "crates/encoding" }
vello_shaders = { version = "0.1.0", path = "crates/shaders" }
bytemuck = { version = "1.15.0", features = ["derive"] }
skrifa = "0.19.0"
peniko = "0.1.0"
futures-intrusive = "0.5.0"
raw-window-handle = "0.6.0"
smallvec = "1.13.2"
static_assertions = "1.1.0"
# NOTE: Make sure to keep this in sync with the version badge in README.md
# as well as examples/simple/Cargo.toml
wgpu = { version = "0.19.4" }
log = "0.4.21"
# Used for examples
clap = "4.5.3"
anyhow = "1.0.81"
instant = { version = "0.1.12", features = ["wasm-bindgen"] }
pollster = "0.3.0"
wgpu-profiler = "0.16.1"