mirror of https://github.com/linebender/xilem
116 lines
3.7 KiB
TOML
116 lines
3.7 KiB
TOML
[workspace]
|
|
resolver = "2"
|
|
members = [
|
|
"xilem",
|
|
"xilem_core",
|
|
"masonry",
|
|
|
|
"xilem_web",
|
|
"xilem_web/web_examples/counter",
|
|
"xilem_web/web_examples/counter_custom_element",
|
|
"xilem_web/web_examples/elm",
|
|
"xilem_web/web_examples/fetch",
|
|
"xilem_web/web_examples/todomvc",
|
|
"xilem_web/web_examples/mathml_svg",
|
|
"xilem_web/web_examples/raw_dom_access",
|
|
"xilem_web/web_examples/spawn_tasks",
|
|
"xilem_web/web_examples/svgtoy",
|
|
"xilem_web/web_examples/svgdraw",
|
|
"tree_arena",
|
|
]
|
|
|
|
[workspace.package]
|
|
edition = "2024"
|
|
# Keep in sync with RUST_MIN_VER in .github/workflows/ci.yml, with the relevant README.md files.
|
|
rust-version = "1.85"
|
|
license = "Apache-2.0"
|
|
repository = "https://github.com/linebender/xilem"
|
|
homepage = "https://xilem.dev/"
|
|
|
|
[workspace.lints]
|
|
# unsafe code is not allowed in Xilem or Masonry
|
|
# We would like to set this to `forbid`, but we have to use `deny` because `android_activity`
|
|
# requires us to use the `#[unsafe(no_mangle)]` attribute
|
|
# (And cargo doesn't let us have platform specific lints here)
|
|
rust.unsafe_code = "deny"
|
|
|
|
# Intentional break from the lint set. Intended to be temporary
|
|
rust.unexpected_cfgs = { level = "warn", check-cfg = ['cfg(FALSE)'] }
|
|
|
|
# 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]
|
|
masonry = { version = "0.2.0", path = "masonry" }
|
|
xilem_core = { version = "0.1.0", path = "xilem_core" }
|
|
tree_arena = { version = "0.1.0", path = "tree_arena" }
|
|
vello = "0.4.0"
|
|
wgpu = "23.0.1"
|
|
kurbo = "0.11.1"
|
|
parley = { git = "https://github.com/linebender/parley", rev = "d4bb51b0e684681bd07be95fe0e5ad20068a10a3", features = [
|
|
"accesskit",
|
|
] }
|
|
peniko = "0.3.1"
|
|
winit = "0.30.4"
|
|
tracing = { version = "0.1.40", default-features = false }
|
|
smallvec = "1.13.2"
|
|
hashbrown = "0.15.2"
|
|
dpi = "0.1.1"
|
|
image = { version = "0.25.2", default-features = false }
|
|
web-time = "1.1.0"
|
|
bitflags = "2.6.0"
|
|
accesskit = "0.17.0"
|
|
accesskit_winit = "0.23.0"
|
|
nv-flip = "0.1.2"
|
|
time = "0.3.36"
|
|
|
|
[profile.ci]
|
|
inherits = "dev"
|
|
debug = 0 # Don't compile debug info to reduce compilation artifact size for cache benefits.
|
|
strip = "debuginfo" # Implied by debug = 0 since Rust 1.77, but still needed for an older MSRV.
|
|
[profile.ci.package."*"]
|
|
debug-assertions = true # Keep always on for dependencies for cache reuse.
|