Cargo Features

[dependencies]
craft_core = { version = "0.1.1", default-features = false, features = ["dynamic_linking", "vello_renderer", "vello_cpu_renderer", "vello_hybrid_renderer", "http_client"] }
default = http_client, vello_renderer

These default features are set whenever craft_core is added without default-features = false somewhere in the dependency tree.

dev_tools dynamic_linking
vello_renderer default

Enables vello, fragile-send-sync-non-atomic-wasm of wgpu ^24.0.3

vello_cpu_renderer

Enables softbuffer, vello_common, and vello_cpu

vello_hybrid_renderer

Enables vello_common and vello_hybrid_craft and fragile-send-sync-non-atomic-wasm of wgpu ^24.0.3

wgpu:

Implement Send and Sync on Wasm, but only if atomics are not enabled.

WebGL/WebGPU objects can not be shared between threads. However, it can be useful to artificially mark them as Send and Sync anyways to make it easier to write cross-platform code. This is technically very unsafe in a multithreaded environment, but on a wasm binary compiled without atomics is a definitionally single-threaded environment.

http_client default

Enables reqwest

craft_core has 6 features without comments.