# Copyright 2018-2026 the Deno authors. MIT license.

[package]
name = "deno_runtime"
version = "0.265.0"
authors.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true
description = "Provides the deno runtime library"

[features]
# "fake" feature that allows to generate docs on docs.rs
docsrs = []
# A feature that allows excluding `./js/99_main.js` from the exported extension.
exclude_runtime_main_js = []
# A dev feature to disable creation and loading of snapshots in favor of
# loading JS sources at runtime. Extensions' `lazy_loaded_*` files are read
# from disk via their `LoadedFromFsDuringSnapshot` paths.
hmr = ["transpile"]
snapshot = ["transpile"]
transpile = ["deno_ast"]

[lints.rust]
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tokio_unstable)'] }

[lib]
name = "deno_runtime"
path = "lib.rs"

[dependencies]
async-trait.workspace = true
base64.workspace = true
boxed_error.workspace = true
color-print.workspace = true
deno_ast = { workspace = true, optional = true }
deno_bundle_runtime.workspace = true
deno_cache.workspace = true
deno_canvas.workspace = true
deno_core.workspace = true
deno_cron.workspace = true
deno_crypto.workspace = true
deno_error.workspace = true
deno_features.workspace = true
deno_fetch.workspace = true
deno_ffi.workspace = true
deno_fs = { workspace = true, features = ["sync_fs"] }
deno_http.workspace = true
deno_image.workspace = true
deno_inspector_server.workspace = true
deno_io.workspace = true
deno_kv.workspace = true
deno_napi.workspace = true
deno_net.workspace = true
deno_node.workspace = true
deno_node_crypto.workspace = true
deno_node_sqlite.workspace = true
deno_os.workspace = true
deno_path_util.workspace = true
deno_permissions.workspace = true
deno_process.workspace = true
deno_resolver = { workspace = true, features = ["sync"] }
deno_signals.workspace = true
deno_telemetry.workspace = true
deno_terminal.workspace = true
deno_tls.workspace = true
deno_web.workspace = true
deno_webgpu.workspace = true
deno_webidl.workspace = true
deno_websocket.workspace = true
deno_webstorage.workspace = true
ed25519-dalek.workspace = true
encoding_rs.workspace = true
faster-hex.workspace = true
fastwebsockets.workspace = true
http.workspace = true
http-body-util.workspace = true
hyper.workspace = true
libc.workspace = true
log.workspace = true
node_resolver = { workspace = true, features = ["sync"] }
notify.workspace = true
once_cell.workspace = true
qbsdiff.workspace = true
raw-window-handle.workspace = true
regex.workspace = true
rustyline = { workspace = true, features = ["custom-bindings"] }
same-file.workspace = true
serde.workspace = true
sha2.workspace = true
sys_traits.workspace = true
thiserror.workspace = true
tokio.workspace = true
tokio-metrics.workspace = true
twox-hash.workspace = true
uuid.workspace = true

[target.'cfg(target_os = "macos")'.dependencies]
unicode-normalization.workspace = true

[target.'cfg(windows)'.dependencies]
windows-sys = { workspace = true, features = ["Win32_System_Console", "Win32_System_Diagnostics_ToolHelp", "Win32_UI_Input_KeyboardAndMouse"] }

[target.'cfg(unix)'.dependencies]
nix.workspace = true

[dev-dependencies]
# Used in benchmark
test_util.workspace = true

[package.metadata.docs.rs]
features = ["docsrs"]
