beamr 0.6.4

A Rust runtime with the BEAM's execution model, targeting Gleam
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
name = "beamr"
version = "0.6.4"
authors = [
    "Tom Whiting <tom@ablative.com.au>",
    "Josh Bearup <Joshuabearup1@gmail.com>",
]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A Rust runtime with the BEAM's execution model, targeting Gleam"
readme = "README.md"
license = "Apache-2.0"
repository = "https://github.com/tomWhiting/beamr"
resolver = "2"

[features]
default = [
    "std",
    "threads",
    "net",
    "fs",
    "jit",
    "embedded",
]
embedded = [
    "std",
    "dep:zstd",
]
fs = [
    "std",
    "dep:libc",
    "dep:rustix",
]
jit = [
    "std",
    "threads",
    "dep:cranelift-codegen",
    "dep:cranelift-frontend",
    "dep:cranelift-jit",
    "dep:cranelift-module",
    "dep:cranelift-native",
]
json = [
    "dep:base64",
    "dep:serde_json",
]
net = [
    "std",
    "dep:libc",
    "dep:rustix",
    "dep:tokio",
]
std = []
telemetry = [
    "std",
    "dep:opentelemetry",
]
test-support = []
threads = [
    "std",
    "dep:crossbeam-channel",
    "dep:crossbeam-deque",
    "dep:crossbeam-queue",
    "dep:io-uring",
    "dep:num_cpus",
    "dep:tokio",
]

[lib]
name = "beamr"
path = "src/lib.rs"

[[test]]
name = "bignum_edges"
path = "tests/bignum_edges.rs"

[[test]]
name = "bs_create_bin"
path = "tests/bs_create_bin.rs"

[[test]]
name = "capability_policy"
path = "tests/capability_policy.rs"

[[test]]
name = "caught_exception_exit"
path = "tests/caught_exception_exit.rs"

[[test]]
name = "differential"
path = "tests/differential.rs"

[[test]]
name = "dirty_scheduler"
path = "tests/dirty_scheduler.rs"

[[test]]
name = "distribution_e2e"
path = "tests/distribution_e2e.rs"

[[test]]
name = "embedded_loading"
path = "tests/embedded_loading.rs"

[[test]]
name = "gc_integration"
path = "tests/gc_integration.rs"

[[test]]
name = "gleam_gate_e2e"
path = "tests/gleam_gate_e2e.rs"

[[test]]
name = "hot_code_loading"
path = "tests/hot_code_loading.rs"

[[test]]
name = "is_function2_guard"
path = "tests/is_function2_guard.rs"

[[test]]
name = "is_function_bif"
path = "tests/is_function_bif.rs"

[[test]]
name = "memory_stability"
path = "tests/memory_stability.rs"

[[test]]
name = "namespace_isolation"
path = "tests/namespace_isolation.rs"

[[test]]
name = "nif_private_data"
path = "tests/nif_private_data.rs"

[[test]]
name = "no_box_leak"
path = "tests/no_box_leak.rs"

[[test]]
name = "otp_integration"
path = "tests/otp_integration.rs"

[[test]]
name = "otp_loading"
path = "tests/otp_loading.rs"

[[test]]
name = "otp_zero_unresolved"
path = "tests/otp_zero_unresolved.rs"

[[test]]
name = "proof_of_life"
path = "tests/proof_of_life.rs"

[[test]]
name = "recv_after_timeout"
path = "tests/recv_after_timeout.rs"

[[test]]
name = "recv_marker"
path = "tests/recv_marker.rs"

[[test]]
name = "sample_workflow_e2e"
path = "tests/sample_workflow_e2e.rs"

[[test]]
name = "stdlib_loading"
path = "tests/stdlib_loading.rs"

[[test]]
name = "supervision_integration"
path = "tests/supervision_integration.rs"

[[test]]
name = "suspend_reexec"
path = "tests/suspend_reexec.rs"

[[test]]
name = "suspend_result_binary"
path = "tests/suspend_result_binary.rs"

[[test]]
name = "suspend_wakeup"
path = "tests/suspend_wakeup.rs"

[[test]]
name = "tagged_tuple_patterns"
path = "tests/tagged_tuple_patterns.rs"

[[bench]]
name = "jit_comparison"
path = "benches/jit_comparison.rs"
harness = false
required-features = [
    "jit",
    "threads",
]

[[bench]]
name = "jit_comparison_extended"
path = "benches/jit_comparison_extended.rs"
harness = false
required-features = [
    "jit",
    "threads",
]

[dependencies.base64]
version = "0.22.1"
optional = true

[dependencies.cranelift-codegen]
version = "0.131.2"
optional = true

[dependencies.cranelift-frontend]
version = "0.131.2"
optional = true

[dependencies.cranelift-jit]
version = "0.131.2"
optional = true

[dependencies.cranelift-module]
version = "0.131.2"
optional = true

[dependencies.cranelift-native]
version = "0.131.2"
optional = true

[dependencies.crossbeam-channel]
version = "0.5.15"
optional = true

[dependencies.crossbeam-deque]
version = "0.8.6"
optional = true

[dependencies.crossbeam-queue]
version = "0.3.12"
optional = true

[dependencies.dashmap]
version = "6.1.0"

[dependencies.flate2]
version = "1.1.9"

[dependencies.gleam-types]
version = "0.4.3"

[dependencies.libc]
version = "0.2.186"
optional = true

[dependencies.md5]
version = "0.8.0"

[dependencies.num_cpus]
version = "1.17.0"
optional = true

[dependencies.opentelemetry]
version = "0.32.0"
optional = true

[dependencies.rand]
version = "0.10.1"

[dependencies.rustix]
version = "1.1.4"
features = [
    "fs",
    "net",
]
optional = true

[dependencies.serde_json]
version = "1.0.150"
optional = true

[dependencies.tokio]
version = "1.52.3"
features = [
    "net",
    "io-util",
    "time",
    "rt",
    "rt-multi-thread",
    "macros",
    "sync",
]
optional = true

[dependencies.unicode-segmentation]
version = "1.12"

[dependencies.zstd]
version = "0.13.3"
optional = true

[dev-dependencies.criterion]
version = "0.8.2"

[dev-dependencies.opentelemetry_sdk]
version = "0.32.1"

[dev-dependencies.proptest]
version = "1.11.0"

[build-dependencies.zstd]
version = "0.13.3"

[target.'cfg(target_os = "linux")'.dependencies.io-uring]
version = "0.7"
optional = true