| [workspace] |
| resolver = "2" |
| members = [ |
| "vello", |
| "vello_encoding", |
| "vello_shaders", |
| "vello_tests", |
| |
| "examples/headless", |
| "examples/run_wasm", |
| "examples/scenes", |
| "examples/simple", |
| "examples/simple_sdl2", |
| "examples/with_winit", |
| |
| "sparse_strips/vello_api", |
| "sparse_strips/vello_common", |
| "sparse_strips/vello_cpu", |
| "sparse_strips/vello_hybrid", |
| ] |
| |
| [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' |
| # and `simple_sdl2` examples. |
| version = "0.4.0" |
| |
| edition = "2021" |
| # Keep in sync with RUST_MIN_VER in .github/workflows/ci.yml, with the relevant README.md files |
| # and with the MSRV in the `Unreleased` section of CHANGELOG.md. |
| rust-version = "1.82" |
| license = "Apache-2.0 OR MIT" |
| repository = "https://github.com/linebender/vello" |
| |
| [workspace.lints] |
| |
| # LINEBENDER LINT SET - Cargo.toml - v5 |
| # See https://linebender.org/wiki/canonical-lints/ |
| rust.keyword_idents_2024 = "forbid" |
| rust.non_ascii_idents = "forbid" |
| rust.non_local_definitions = "forbid" |
| rust.unsafe_op_in_unsafe_fn = "forbid" |
| |
| rust.elided_lifetimes_in_paths = "warn" |
| rust.missing_debug_implementations = "warn" |
| rust.missing_docs = "warn" |
| rust.trivial_numeric_casts = "warn" |
| rust.unexpected_cfgs = "warn" |
| rust.unnameable_types = "warn" |
| rust.unreachable_pub = "warn" |
| rust.unused_import_braces = "warn" |
| rust.unused_lifetimes = "warn" |
| rust.unused_macro_rules = "warn" |
| |
| clippy.too_many_arguments = "allow" |
| |
| clippy.allow_attributes_without_reason = "warn" |
| clippy.cast_possible_truncation = "warn" |
| clippy.collection_is_never_read = "warn" |
| clippy.dbg_macro = "warn" |
| clippy.debug_assert_with_mut_call = "warn" |
| clippy.doc_markdown = "warn" |
| clippy.fn_to_numeric_cast_any = "warn" |
| clippy.infinite_loop = "warn" |
| clippy.large_stack_arrays = "warn" |
| clippy.mismatching_type_param_order = "warn" |
| clippy.missing_assert_message = "warn" |
| clippy.missing_fields_in_debug = "warn" |
| clippy.same_functions_in_if_condition = "warn" |
| clippy.semicolon_if_nothing_returned = "warn" |
| clippy.shadow_unrelated = "warn" |
| clippy.should_panic_without_expect = "warn" |
| clippy.todo = "warn" |
| clippy.unseparated_literal_suffix = "warn" |
| clippy.use_self = "warn" |
| |
| clippy.cargo_common_metadata = "warn" |
| clippy.negative_feature_names = "warn" |
| clippy.redundant_feature_names = "warn" |
| clippy.wildcard_dependencies = "warn" |
| # END LINEBENDER LINT SET |
| |
| [workspace.dependencies] |
| vello = { version = "0.4.0", path = "vello" } |
| vello_encoding = { version = "0.4.0", path = "vello_encoding" } |
| vello_shaders = { version = "0.4.0", path = "vello_shaders" } |
| bytemuck = { version = "1.21.0", features = ["derive"] } |
| skrifa = "0.26.4" |
| # The version of kurbo used below should be kept in sync |
| # with the version of kurbo used by peniko. |
| peniko = "0.3.1" |
| # FIXME: This can be removed once peniko supports the schemars feature. |
| kurbo = "0.11.1" |
| futures-intrusive = "0.5.0" |
| smallvec = "1.13.2" |
| static_assertions = "1.1.0" |
| thiserror = "2.0.11" |
| oxipng = { version = "9.1.4", default-features = false } |
| |
| # The below crates are experimental! |
| vello_api = { path = "sparse_strips/vello_api" } |
| vello_common = { path = "sparse_strips/vello_common" } |
| vello_cpu = { path = "sparse_strips/vello_cpu" } |
| |
| # NOTE: Make sure to keep this in sync with the version badge in README.md and vello/README.md |
| wgpu = { version = "24.0.1" } |
| log = "0.4.22" |
| image = { version = "0.25.5", default-features = false } |
| |
| # Used for examples |
| clap = "4.5.26" |
| anyhow = "1.0.95" |
| pollster = "0.4.0" |
| web-time = "1.1.0" |
| wgpu-profiler = "0.21.0" |
| scenes = { path = "examples/scenes" } |