Cargo Features

godot-bindings has no features set by default.

[dependencies]
godot-bindings = { version = "0.1.3", features = ["experimental-wasm-nothreads", "api-4-0", "api-4-0-4", "api-4-1-3", "api-4-2-2", "api-custom", "api-custom-extheader"] }

Since features are additive, and we want the user to user prebuilt by default, we need to have prebuilt-godot as the default feature. However, it's not possible to disable the prebuilt dependency when specifying api-custom (without requiring no-default-features), so we unfortunately still need to depend on prebuilt and just ignore it. The artifact generator explicitly excludes that though (to avoid a quasi-circular dependency back to its repo).

experimental-wasm-nothreads
api-4-0

[version-sync] [[
[line] api-$kebabVersion = []

api-4-0-1 api-4-0-2 api-4-0-3 api-4-0-4
api-4-1 api-4-1-1 api-4-1-2 api-4-1-3
api-4-1-4 api-4-2 api-4-2-1 api-4-2-2
default

]]

api-custom

Enables bindgen ^0.68

Do not use bindgen 0.69, it contains regression that forces recompilation of code.

and regex and which

regex:

regex >= 1.5.5 for security: https://blog.rust-lang.org/2022/03/08/cve-2022-24713.html 'unicode-gencat' needed for \d, see: https://docs.rs/regex/1.5.5/regex/#unicode-features

api-custom-extheader