mirror of
https://github.com/bevyengine/bevy
synced 2025-02-16 22:18:33 +00:00
# Objective Right not bevy's task pool abstraction is kind of useless on wasm, since it returns a `FakeTask` which can't be interacted with. This is only good for fire-and-forget it tasks, and isn't even that useful since it's just a thin wrapper around `wasm-bindgen-futures::spawn_local` ## Solution Add a simple `Task<T>` handler type to wasm targets that allow waiting for a task's output or periodically checking for its completion. This PR aims to give the wasm version of these tasks feature parity with the native, multi-threaded version of the task ## Testing - Did you test these changes? *Not yet* --------- Co-authored-by: Periwink <charlesbour@gmail.com> Co-authored-by: Jan Hohenheim <jan@hohenheim.ch>
34 lines
861 B
TOML
34 lines
861 B
TOML
[package]
|
|
name = "bevy_tasks"
|
|
version = "0.15.0-dev"
|
|
edition = "2021"
|
|
description = "A task executor for Bevy Engine"
|
|
homepage = "https://bevyengine.org"
|
|
repository = "https://github.com/bevyengine/bevy"
|
|
license = "MIT OR Apache-2.0"
|
|
keywords = ["bevy"]
|
|
|
|
[features]
|
|
multi_threaded = ["dep:async-channel", "dep:concurrent-queue"]
|
|
|
|
[dependencies]
|
|
futures-lite = "2.0.1"
|
|
async-executor = "1.11"
|
|
async-channel = { version = "2.2.0", optional = true }
|
|
async-io = { version = "2.0.0", optional = true }
|
|
concurrent-queue = { version = "2.0.0", optional = true }
|
|
|
|
[target.'cfg(target_arch = "wasm32")'.dependencies]
|
|
wasm-bindgen-futures = "0.4"
|
|
pin-project = "1"
|
|
futures-channel = "0.3"
|
|
|
|
[dev-dependencies]
|
|
web-time = { version = "1.1" }
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[package.metadata.docs.rs]
|
|
rustdoc-args = ["-Zunstable-options", "--cfg", "docsrs"]
|
|
all-features = true
|