[package]
edition = "2021"
rust-version = "1.88"
name = "rune"
version = "0.14.2"
authors = ["John-John Tedro <udoprog@tedro.se>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "The Rune Language, an embeddable dynamic programming language for Rust."
homepage = "https://github.com/rune-rs/rune"
documentation = "https://docs.rs/rune"
readme = "README.md"
keywords = [
"language",
"scripting",
"scripting-language",
]
categories = ["parser-implementations"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/rune-rs/rune"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"rune_docsrs",
]
[features]
alloc = [
"anyhow",
"rune-alloc/alloc",
"rune-core/alloc",
"once_cell/alloc",
"serde/alloc",
]
bench = []
byte-code = [
"alloc",
"musli/storage",
]
capture-io = [
"alloc",
"parking_lot",
]
cli = [
"std",
"emit",
"doc",
"bincode",
"tracing-subscriber",
"clap",
"webbrowser",
"capture-io",
"disable-io",
"languageserver",
"fmt",
"similar",
"rand",
]
default = [
"emit",
"std",
]
disable-io = ["alloc"]
doc = [
"std",
"rust-embed",
"handlebars",
"pulldown-cmark",
"pulldown-cmark-escape",
"syntect",
"sha2",
"base64",
"rune-core/doc",
"relative-path",
]
emit = [
"std",
"codespan-reporting",
]
fmt = ["alloc"]
languageserver = [
"std",
"lsp",
"ropey",
"percent-encoding",
"url",
"serde_json",
"tokio",
"workspace",
"doc",
"fmt",
]
std = [
"alloc",
"num/std",
"serde/std",
"rune-core/std",
"rune-alloc/std",
"musli/std",
"musli/std",
"once_cell/std",
"anyhow/std",
"syntree/std",
]
tracing = ["tracing/enabled"]
workspace = [
"std",
"toml",
"semver",
"relative-path",
"serde-hashkey",
"linked-hash-map",
]
[lib]
name = "rune"
path = "src/lib.rs"
[[test]]
name = "derive_from_value"
path = "tests/derive_from_value.rs"
[[test]]
name = "ui"
path = "tests/ui.rs"
[dependencies.anyhow]
version = "1.0.71"
optional = true
default-features = false
[dependencies.base64]
version = "0.22.0"
optional = true
[dependencies.bincode]
version = "1.3.3"
optional = true
[dependencies.clap]
version = "4.2.7"
features = ["derive"]
optional = true
[dependencies.codespan-reporting]
version = "0.11.1"
optional = true
[dependencies.futures-core]
version = "0.3.28"
default-features = false
[dependencies.futures-util]
version = "0.3.28"
features = ["alloc"]
default-features = false
[dependencies.handlebars]
version = "6.0.0"
optional = true
[dependencies.itoa]
version = "1.0.6"
[dependencies.linked-hash-map]
version = "0.5.6"
optional = true
[dependencies.lsp]
version = "0.95.0"
optional = true
package = "lsp-types"
[dependencies.memchr]
version = "2.7.4"
[dependencies.musli]
version = "0.0.124"
features = ["alloc"]
default-features = false
[dependencies.num]
version = "0.4.0"
features = ["alloc"]
default-features = false
[dependencies.once_cell]
version = "1.18.0"
features = ["critical-section"]
default-features = false
[dependencies.parking_lot]
version = "0.12.1"
optional = true
[dependencies.percent-encoding]
version = "2.2.0"
optional = true
[dependencies.pin-project]
version = "1.1.0"
[dependencies.pulldown-cmark]
version = "0.12.2"
optional = true
[dependencies.pulldown-cmark-escape]
version = "0.11.0"
optional = true
[dependencies.rand]
version = "0.8.5"
optional = true
[dependencies.relative-path]
version = "1.8.0"
features = ["serde"]
optional = true
[dependencies.ropey]
version = "1.6.0"
optional = true
[dependencies.rune-alloc]
version = "0.14.2"
features = ["serde"]
default-features = false
[dependencies.rune-core]
version = "=0.14.2"
features = ["musli"]
[dependencies.rune-macros]
version = "=0.14.2"
[dependencies.rust-embed]
version = "6.8.1"
optional = true
[dependencies.ryu]
version = "1.0.13"
[dependencies.semver]
version = "1.0.17"
features = ["serde"]
optional = true
[dependencies.serde]
version = "1.0.163"
features = [
"derive",
"rc",
]
default-features = false
[dependencies.serde-hashkey]
version = "0.4.5"
optional = true
[dependencies.serde_json]
version = "1.0.96"
optional = true
[dependencies.sha2]
version = "0.10.6"
optional = true
[dependencies.similar]
version = "2.2.1"
features = [
"inline",
"bytes",
]
optional = true
[dependencies.syntect]
version = "5.0.0"
optional = true
[dependencies.syntree]
version = "0.18.0"
features = ["alloc"]
default-features = false
[dependencies.tokio]
version = "1.28.1"
features = [
"rt-multi-thread",
"fs",
"macros",
"sync",
"io-std",
"io-util",
]
optional = true
[dependencies.toml]
version = "0.8.19"
features = ["parse"]
optional = true
[dependencies.tracing]
version = "0.14.2"
package = "rune-tracing"
[dependencies.tracing-subscriber]
version = "0.3.17"
features = ["env-filter"]
optional = true
[dependencies.unicode-ident]
version = "1.0.12"
[dependencies.url]
version = "2.3.1"
optional = true
[dependencies.webbrowser]
version = "1.0.2"
optional = true
[dev-dependencies.futures-executor]
version = "0.3.28"
[dev-dependencies.static_assertions]
version = "1.1.0"
[dev-dependencies.tokio]
version = "1.28.1"
features = ["full"]
[dev-dependencies.trybuild]
version = "1.0.80"
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(rune_nightly, rune_docsrs, rune_byte_code)"]