Cargo Features

ark-api has no features set by default.

ark-api = { version = "0.17.0-pre.43", features = ["applet", "audio", "behavior", "behavior_controller", "http_client", "content_moderation", "mixer", "ml", "ml-inference", "profiler", "render", "resource", "social", "storage", "telemetry", "time", "user", "world", "examples", "test", "with_serde", "with_speedy", "with_async", "unstable-servlet", "internal__unstable_apis"] }

NOTE: on any changes to the features here, also update list in .ci/scripts/

Affects module::applet

behavior = with_serde

Affects module::behavior

behavior_controller = with_serde
http_client = http, http-body, tower
file_ux http_request content_moderation
feature-toggle mixer
ml ml-inference?
ml-inference = ml

NOTE[TSolberg]: SnapshotFormat.

module_run profiler

Affects module::render

report resource
social = time, user
storage = user
time social?

Affects ml::ExperimentInfo.started_at, ml::ExperimentInfo.ended_at

user social? storage?
system_metrics world

Enable example APIs
These are APIs that illustrate internal API development, and are only enabled when validating the code

Enables examples of ark-api-ffi

Affects ark-api::api_examples

test = ark-api-macros

Enable testing macro

with_serde behavior? behavior_controller? = serde

Enable serialization support.
This enables serialization/deserialization support for most types

Enables with_serde of ark-api-ffi and macaw

with_speedy = speedy

Enable serialization support via the speedy crate.

Enables with_speedy of ark-api-ffi and macaw

with_async = futures

Enable async support.
This enables async functions in the APIs and the Wasm future runtime

Affects cmdlet::async_run

unstable-servlet = http, httparse, internal__unstable_apis

Unstable APIs and extension APIs.
These may have breaking changes in them at any time even for patch releases of this crate.
only intended for developer testing and users have to explicitly opt-in

Affects module::servlet

internal__unstable_apis unstable-servlet?

Internal features flags, do not use manually

Enables unstable of ark-api-ffi

Affects ark-api::unstable

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

ark-api-macros test?
http http_client? unstable-servlet?

Enables http ^0.2

http-body http_client?

Enables http-body ^0.4

httparse unstable-servlet?
serde with_serde?
speedy with_speedy?
tower http_client?
futures with_async?