bevy_async_task 0.13.0

Ergonomic abstractions to async programming in Bevy
Documentation
[workspace]
resolver = "2"
members = ["examples/run_wasm"]

[package]
name = "bevy_async_task"
description = "Ergonomic abstractions to async programming in Bevy"
license = "Apache-2.0 OR MIT"
repository = "https://github.com/nuzzles/bevy_async_task"
authors = ["Spencer C. Imbleau"]
keywords = ["gamedev", "async"]
categories = ["game-development", "asynchronous"]
version = "0.13.0"
edition = "2024"

[lints]
# LINEBENDER LINT SET - Cargo.toml - v6.1
# 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.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.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

[lib]

[dependencies]
bevy_ecs = { version = "0.19", default-features = false, features = [
  "multi_threaded",
  "async_executor",
] }
bevy_tasks = { version = "0.19", default-features = false, features = [
  "async_executor",
] }
bevy_platform = { version = "0.19", default-features = false }

thiserror = "2.0.17"
futures = "0.3.31"
web-time = "1.1.0"

[dev-dependencies]
bevy = { version = "0.19", default-features = false, features = [
  "multi_threaded",
  "bevy_log",
] }

[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
futures-timer = "3.0.3"
async-compat = "0.2.5"

[target.'cfg(target_arch = "wasm32")'.dependencies]
futures-timer = { version = "3.0.3", features = ["wasm-bindgen"] }
gloo-timers = { version = "0.3.0", features = ["futures"] }
getrandom = { version = "0.3.4", features = ["wasm_js"] }

[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies]
tokio = { version = "1.48.0", features = ["full"] }

[target.'cfg(target_arch = "wasm32")'.dev-dependencies]
wasm-bindgen-futures = "0.4.56"
wasm-bindgen-test = "0.3.56"
js-sys = "0.3.83"
wasm-bindgen = "0.2.106"