2024-01-01 14:58:21 -05:00
# Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
2020-09-21 08:26:41 -04:00
2019-02-26 19:23:30 -05:00
[ workspace ]
2021-08-24 07:29:42 -04:00
resolver = "2"
2019-02-26 19:23:30 -05:00
members = [
2021-05-17 17:11:40 -04:00
"bench_util" ,
2019-03-30 14:45:36 -04:00
"cli" ,
2024-07-22 20:01:31 -04:00
"cli/napi/sym" ,
2021-08-11 06:27:05 -04:00
"ext/broadcast_channel" ,
2022-09-28 08:11:12 -04:00
"ext/cache" ,
2024-01-22 06:08:01 -05:00
"ext/canvas" ,
2021-08-11 06:27:05 -04:00
"ext/console" ,
2023-11-01 14:57:55 -04:00
"ext/cron" ,
2021-08-11 06:27:05 -04:00
"ext/crypto" ,
"ext/fetch" ,
"ext/ffi" ,
2023-03-07 04:13:44 -05:00
"ext/fs" ,
2021-08-11 06:27:05 -04:00
"ext/http" ,
2023-03-04 19:39:48 -05:00
"ext/io" ,
2023-03-22 00:13:24 -04:00
"ext/kv" ,
2024-01-25 12:31:21 -05:00
"ext/napi" ,
2021-08-11 06:27:05 -04:00
"ext/net" ,
2022-08-11 17:25:41 -04:00
"ext/node" ,
2021-08-11 06:27:05 -04:00
"ext/url" ,
"ext/web" ,
2023-12-08 19:19:16 -05:00
"ext/webgpu" ,
2021-08-11 06:27:05 -04:00
"ext/webidl" ,
"ext/websocket" ,
"ext/webstorage" ,
2024-09-28 19:17:48 -04:00
"resolvers/deno" ,
"resolvers/node" ,
2024-01-25 12:31:21 -05:00
"runtime" ,
2024-03-12 13:42:26 -04:00
"runtime/permissions" ,
chore: move cli/tests/ -> tests/ (#22369)
This looks like a massive PR, but it's only a move from cli/tests ->
tests, and updates of relative paths for files.
This is the first step towards aggregate all of the integration test
files under tests/, which will lead to a set of integration tests that
can run without the CLI binary being built.
While we could leave these tests under `cli`, it would require us to
keep a more complex directory structure for the various test runners. In
addition, we have a lot of complexity to ignore various test files in
the `cli` project itself (cargo publish exclusion rules, autotests =
false, etc).
And finally, the `tests/` folder will eventually house the `test_ffi`,
`test_napi` and other testing code, reducing the size of the root repo
directory.
For easier review, the extremely large and noisy "move" is in the first
commit (with no changes -- just a move), while the remainder of the
changes to actual files is in the second commit.
2024-02-10 15:22:13 -05:00
"tests" ,
2024-02-12 15:46:50 -05:00
"tests/ffi" ,
"tests/napi" ,
2024-02-19 08:34:24 -05:00
"tests/util/server" ,
2019-02-26 19:23:30 -05:00
]
2024-02-13 11:22:49 -05:00
exclude = [ "tests/util/std/hash/_wasm" ]
2021-04-09 14:03:32 -04:00
2022-11-22 15:07:35 -05:00
[ workspace . package ]
authors = [ "the Deno authors" ]
edition = "2021"
license = "MIT"
repository = "https://github.com/denoland/deno"
[ workspace . dependencies ]
2024-10-09 04:04:44 -04:00
deno_ast = { version = "=0.42.2" , features = [ "transpiling" ] }
2024-10-17 12:43:04 -04:00
deno_core = { version = "0.314.1" }
2023-07-01 20:00:14 -04:00
2024-10-17 21:12:49 -04:00
deno_bench_util = { version = "0.167.0" , path = "./bench_util" }
2024-09-16 11:29:21 -04:00
deno_lockfile = "=0.23.1"
2024-04-18 21:43:28 -04:00
deno_media_type = { version = "0.1.4" , features = [ "module_specifier" ] }
2024-10-15 14:48:33 -04:00
deno_npm = "=0.25.4"
2024-10-09 13:49:56 -04:00
deno_path_util = "=0.2.1"
2024-10-17 21:12:49 -04:00
deno_permissions = { version = "0.33.0" , path = "./runtime/permissions" }
deno_runtime = { version = "0.182.0" , path = "./runtime" }
2024-09-30 09:34:20 -04:00
deno_semver = "=0.5.14"
2024-07-19 06:39:05 -04:00
deno_terminal = "0.2.0"
2024-10-17 21:12:49 -04:00
napi_sym = { version = "0.103.0" , path = "./cli/napi/sym" }
2024-02-19 08:34:24 -05:00
test_util = { package = "test_server" , path = "./tests/util/server" }
2022-11-22 15:07:35 -05:00
2024-07-01 20:09:47 -04:00
denokv_proto = "0.8.1"
denokv_remote = "0.8.1"
2023-11-10 13:15:09 -05:00
# denokv_sqlite brings in bundled sqlite if we don't disable the default features
2024-08-29 05:39:25 -04:00
denokv_sqlite = { default-features = false , version = "0.8.2" }
2023-10-31 07:13:57 -04:00
2022-11-22 15:07:35 -05:00
# exts
2024-10-17 21:12:49 -04:00
deno_broadcast_channel = { version = "0.167.0" , path = "./ext/broadcast_channel" }
deno_cache = { version = "0.105.0" , path = "./ext/cache" }
deno_canvas = { version = "0.42.0" , path = "./ext/canvas" }
deno_console = { version = "0.173.0" , path = "./ext/console" }
deno_cron = { version = "0.53.0" , path = "./ext/cron" }
deno_crypto = { version = "0.187.0" , path = "./ext/crypto" }
deno_fetch = { version = "0.197.0" , path = "./ext/fetch" }
deno_ffi = { version = "0.160.0" , path = "./ext/ffi" }
deno_fs = { version = "0.83.0" , path = "./ext/fs" }
deno_http = { version = "0.171.0" , path = "./ext/http" }
deno_io = { version = "0.83.0" , path = "./ext/io" }
deno_kv = { version = "0.81.0" , path = "./ext/kv" }
deno_napi = { version = "0.104.0" , path = "./ext/napi" }
deno_net = { version = "0.165.0" , path = "./ext/net" }
deno_node = { version = "0.110.0" , path = "./ext/node" }
deno_tls = { version = "0.160.0" , path = "./ext/tls" }
deno_url = { version = "0.173.0" , path = "./ext/url" }
deno_web = { version = "0.204.0" , path = "./ext/web" }
deno_webgpu = { version = "0.140.0" , path = "./ext/webgpu" }
deno_webidl = { version = "0.173.0" , path = "./ext/webidl" }
deno_websocket = { version = "0.178.0" , path = "./ext/websocket" }
deno_webstorage = { version = "0.168.0" , path = "./ext/webstorage" }
2024-09-28 19:17:48 -04:00
# resolvers
2024-10-17 21:12:49 -04:00
deno_resolver = { version = "0.5.0" , path = "./resolvers/deno" }
node_resolver = { version = "0.12.0" , path = "./resolvers/node" }
2022-11-22 15:07:35 -05:00
2023-08-26 09:10:42 -04:00
aes = "=0.8.3"
2022-11-22 15:07:35 -05:00
anyhow = "1.0.57"
2023-08-26 09:10:42 -04:00
async-trait = "0.1.73"
2024-08-01 08:35:35 -04:00
base32 = "=0.5.1"
base64 = "0.21.7"
2022-11-22 15:07:35 -05:00
bencher = "0.1"
2024-06-20 11:14:24 -04:00
brotli = "6.0.0"
2023-03-13 08:26:46 -04:00
bytes = "1.4.0"
2022-11-22 15:07:35 -05:00
cache_control = "=0.2.0"
2023-03-14 02:59:23 -04:00
cbc = { version = "=0.1.2" , features = [ "alloc" ] }
2023-10-30 11:45:45 -04:00
# Note: Do not use the "clock" feature of chrono, as it links us to CoreFoundation on macOS.
# Instead use util::time::utc_now()
chrono = { version = "0.4" , default-features = false , features = [ "std" , "serde" ] }
2024-10-15 17:51:39 -04:00
color-print = "0.3.5"
2023-03-28 17:49:00 -04:00
console_static_text = "=0.8.1"
2024-09-28 19:17:48 -04:00
dashmap = "5.5.3"
2023-09-15 20:42:09 -04:00
data-encoding = "2.3.3"
2024-01-25 12:31:21 -05:00
data-url = "=0.3.0"
2024-10-01 14:05:40 -04:00
deno_cache_dir = "=0.13.0"
2024-10-02 11:20:51 -04:00
deno_package_json = { version = "0.1.2" , default-features = false }
2023-11-05 04:29:26 -05:00
dlopen2 = "0.6.1"
2023-08-26 09:10:42 -04:00
ecb = "=0.1.2"
2024-08-28 10:24:49 -04:00
elliptic-curve = { version = "0.13.4" , features = [ "alloc" , "arithmetic" , "ecdh" , "std" , "pem" , "jwk" ] }
2024-01-25 12:31:21 -05:00
encoding_rs = "=0.8.33"
2024-07-31 18:44:03 -04:00
fast-socks5 = "0.9.6"
2024-03-07 12:00:43 -05:00
faster-hex = "0.9"
2024-08-01 08:35:35 -04:00
fastwebsockets = { version = "0.8" , features = [ "upgrade" , "unstable-split" ] }
2023-05-04 14:28:42 -04:00
filetime = "0.2.16"
2024-08-08 03:19:05 -04:00
flate2 = { version = "1.0.30" , default-features = false }
2023-03-08 10:13:13 -05:00
fs3 = "0.5.0"
2022-11-22 15:07:35 -05:00
futures = "0.3.21"
2023-05-22 15:35:59 -04:00
glob = "0.3.1"
2024-04-08 18:42:10 -04:00
h2 = "0.4.4"
2023-12-27 11:59:57 -05:00
http = "1.0"
2024-07-17 19:37:31 -04:00
http-body = "1.0"
http-body-util = "0.1.2"
2024-01-25 12:31:21 -05:00
http_v02 = { package = "http" , version = "0.2.9" }
2023-04-02 17:27:12 -04:00
httparse = "1.8.0"
2024-07-17 19:37:31 -04:00
hyper = { version = "1.4.1" , features = [ "full" ] }
hyper-rustls = { version = "0.27.2" , default-features = false , features = [ "http1" , "http2" , "tls12" , "ring" ] }
2024-08-08 11:47:15 -04:00
hyper-util = { version = "=0.1.7" , features = [ "tokio" , "client" , "client-legacy" , "server" , "server-auto" ] }
2023-12-27 11:59:57 -05:00
hyper_v014 = { package = "hyper" , version = "0.14.26" , features = [ "runtime" , "http1" ] }
2023-08-26 09:10:42 -04:00
indexmap = { version = "2" , features = [ "serde" ] }
2024-07-17 19:37:31 -04:00
ipnet = "2.3"
2024-03-13 12:21:13 -04:00
jsonc-parser = { version = "=0.23.0" , features = [ "serde" ] }
2024-01-25 12:31:21 -05:00
lazy-regex = "3"
2022-12-08 21:29:10 -05:00
libc = "0.2.126"
2024-10-08 09:55:44 -04:00
libz-sys = { version = "1.1.20" , default-features = false }
2024-03-31 01:07:38 -04:00
log = "0.4.20"
2024-08-23 20:21:21 -04:00
lsp-types = "=0.97.0" # used by tower-lsp and "proposed" feature is unstable in patch releases
2023-04-02 17:27:12 -04:00
memmem = "0.1.1"
2024-01-21 17:19:10 -05:00
monch = "=0.5.0"
2024-08-01 08:35:35 -04:00
notify = "=6.1.1"
2023-03-28 06:56:38 -04:00
num-bigint = { version = "0.4" , features = [ "rand" ] }
2023-03-08 10:49:13 -05:00
once_cell = "1.17.1"
2024-02-21 20:00:57 -05:00
os_pipe = { version = "=1.1.5" , features = [ "io_safety" ] }
2024-01-25 12:31:21 -05:00
p224 = { version = "0.13.0" , features = [ "ecdh" ] }
2024-08-28 10:24:49 -04:00
p256 = { version = "0.13.2" , features = [ "ecdh" , "jwk" ] }
p384 = { version = "0.13.0" , features = [ "ecdh" , "jwk" ] }
2022-11-22 15:07:35 -05:00
parking_lot = "0.12.0"
2024-02-08 20:40:26 -05:00
percent-encoding = "2.3.0"
2024-02-05 15:26:59 -05:00
phf = { version = "0.11" , features = [ "macros" ] }
2022-11-22 15:07:35 -05:00
pin-project = "1.0.11" # don't pin because they yank crates from cargo
2023-08-24 05:21:34 -04:00
pretty_assertions = "=1.4.0"
2023-08-22 01:56:00 -04:00
prost = "0.11"
prost-build = "0.11"
2022-11-22 15:07:35 -05:00
rand = "=0.8.5"
2023-02-27 01:30:45 -05:00
regex = "^1.7.0"
2024-07-15 12:56:51 -04:00
reqwest = { version = "=0.12.5" , default-features = false , features = [ "rustls-tls" , "stream" , "gzip" , "brotli" , "socks" , "json" , "http2" ] } # pinned because of https://github.com/seanmonstar/reqwest/pull/1955
2023-10-27 17:15:09 -04:00
ring = "^0.17.0"
2024-08-29 05:39:25 -04:00
rusqlite = { version = "0.32.0" , features = [ "unlock_notify" , "bundled" ] }
2024-07-15 12:56:51 -04:00
rustls = { version = "0.23.11" , default-features = false , features = [ "logging" , "std" , "tls12" , "ring" ] }
2024-07-01 20:09:47 -04:00
rustls-pemfile = "2"
2024-07-15 12:56:51 -04:00
rustls-tokio-stream = "=0.3.0"
2024-07-01 20:09:47 -04:00
rustls-webpki = "0.102"
2024-01-11 16:05:55 -05:00
rustyline = "=13.0.0"
2023-11-01 14:57:55 -04:00
saffron = "=0.1.0"
2024-01-25 12:31:21 -05:00
scopeguard = "1.2.0"
2024-09-23 10:10:36 -04:00
sec1 = "0.7"
2023-02-01 09:40:35 -05:00
serde = { version = "1.0.149" , features = [ "derive" ] }
2022-11-22 15:07:35 -05:00
serde_bytes = "0.11"
2023-02-01 09:40:35 -05:00
serde_json = "1.0.85"
2023-08-26 09:10:42 -04:00
serde_repr = "=0.1.16"
2024-06-23 10:39:14 -04:00
sha1 = { version = "0.10.6" , features = [ "oid" ] }
2023-11-04 00:29:25 -04:00
sha2 = { version = "0.10.8" , features = [ "oid" ] }
2023-11-09 10:15:46 -05:00
signature = "2.1"
2023-04-22 13:48:21 -04:00
slab = "0.4"
2022-11-22 15:07:35 -05:00
smallvec = "1.8"
2023-08-26 09:10:42 -04:00
socket2 = { version = "0.5.3" , features = [ "all" ] }
2024-03-13 04:17:23 -04:00
spki = "0.7.2"
2023-08-26 09:10:42 -04:00
tar = "=0.4.40"
2023-03-22 14:55:19 -04:00
tempfile = "3.4.0"
2023-09-03 20:47:52 -04:00
termcolor = "1.1.3"
2024-06-26 17:24:10 -04:00
thiserror = "1.0.61"
2024-08-12 11:55:33 -04:00
tokio = { version = "=1.36.0" , features = [ "full" ] }
2023-08-26 09:10:42 -04:00
tokio-metrics = { version = "0.3.0" , features = [ "rt" ] }
2024-07-17 19:37:31 -04:00
tokio-rustls = { version = "0.26.0" , default-features = false , features = [ "ring" , "tls12" ] }
tokio-socks = "0.5.1"
2023-02-26 14:39:06 -05:00
tokio-util = "0.7.4"
2024-07-17 19:37:31 -04:00
tower = { version = "0.4.13" , default-features = false , features = [ "util" ] }
2024-09-23 21:16:34 -04:00
tower-http = { version = "0.6.1" , features = [ "decompression-br" , "decompression-gzip" ] }
2024-08-23 20:21:21 -04:00
tower-lsp = { package = "deno_tower_lsp" , version = "0.1.0" , features = [ "proposed" ] }
2024-07-17 19:37:31 -04:00
tower-service = "0.3.2"
2024-05-24 10:15:46 -04:00
twox-hash = "=1.6.3"
2024-04-12 11:10:07 -04:00
# Upgrading past 2.4.1 may cause WPT failures
url = { version = "< 2.5.0" , features = [ "serde" , "expose_internals" ] }
2023-02-26 14:53:52 -05:00
uuid = { version = "1.3.0" , features = [ "v4" ] }
2024-09-18 15:14:26 -04:00
webpki-root-certs = "0.26.5"
2024-07-01 20:09:47 -04:00
webpki-roots = "0.26"
2024-07-09 23:06:08 -04:00
which = "4.2.5"
2024-09-06 13:18:13 -04:00
yoke = { version = "0.7.4" , features = [ "derive" ] }
2024-07-27 04:39:08 -04:00
zeromq = { version = "=0.4.0" , default-features = false , features = [ "tcp-transport" , "tokio-runtime" ] }
2023-08-26 09:10:42 -04:00
zstd = "=0.12.4"
2022-11-22 15:07:35 -05:00
2023-02-20 11:52:28 -05:00
# crypto
2023-04-06 12:56:56 -04:00
hkdf = "0.12.3"
2024-01-25 12:31:21 -05:00
rsa = { version = "0.9.3" , default-features = false , features = [ "std" , "pem" , "hazmat" ] } # hazmat needed for PrehashSigner in ext/node
2023-02-20 11:52:28 -05:00
2023-12-08 19:19:16 -05:00
# webgpu
2024-05-05 10:22:18 -04:00
raw-window-handle = "0.6.0"
2024-07-10 20:03:08 -04:00
wgpu-core = "0.21.1"
2024-05-05 10:22:18 -04:00
wgpu-types = "0.20"
2023-12-08 19:19:16 -05:00
2022-11-22 15:07:35 -05:00
# macros
quote = "1"
2023-08-26 09:10:42 -04:00
syn = { version = "2" , features = [ "full" , "extra-traits" ] }
2022-11-22 15:07:35 -05:00
# unix
2023-08-26 09:10:42 -04:00
nix = "=0.26.2"
2022-11-22 15:07:35 -05:00
# windows deps
2024-03-08 22:37:29 -05:00
junction = "=0.2.0"
2022-11-22 15:07:35 -05:00
winapi = "=0.3.9"
2024-10-02 23:30:11 -04:00
windows-sys = { version = "0.52.0" , features = [ "Win32_Foundation" , "Win32_Media" , "Win32_Storage_FileSystem" , "Win32_System_IO" , "Win32_System_WindowsProgramming" , "Wdk" , "Wdk_System" , "Wdk_System_SystemInformation" , "Win32_Security" , "Win32_System_Pipes" , "Wdk_Storage_FileSystem" , "Win32_System_Registry" , "Win32_System_Kernel" ] }
2024-01-25 12:31:21 -05:00
winres = "=0.1.12"
2022-11-22 15:07:35 -05:00
2021-04-09 14:03:32 -04:00
[ profile . release ]
codegen-units = 1
2021-04-10 02:46:27 -04:00
incremental = true
2021-04-09 14:03:32 -04:00
lto = true
2022-09-27 08:55:02 -04:00
opt-level = 'z' # Optimize for size
2021-04-09 14:03:32 -04:00
2023-02-09 22:00:23 -05:00
# Build release with debug symbols: cargo build --profile=release-with-debug
[ profile . release-with-debug ]
inherits = "release"
debug = true
2024-08-14 18:26:21 -04:00
# Faster to compile than `release` but with similar performance.
[ profile . release-lite ]
inherits = "release"
codegen-units = 128
lto = "thin"
2021-08-13 04:08:13 -04:00
# Key generation is too slow on `debug`
[ profile . dev . package . num-bigint-dig ]
opt-level = 3
2024-04-12 11:10:07 -04:00
# rusty-v8 needs at least -O1 to not miscompile
[ profile . dev . package . v8 ]
opt-level = 1
2024-06-19 23:35:25 -04:00
[ profile . release . package . async-compression ]
2021-02-18 09:46:31 -05:00
opt-level = 3
2024-06-19 23:35:25 -04:00
[ profile . release . package . base64-simd ]
2021-02-18 09:46:31 -05:00
opt-level = 3
[ profile . release . package . brotli ]
opt-level = 3
[ profile . release . package . brotli-decompressor ]
2021-03-25 22:36:46 -04:00
opt-level = 3
2024-06-19 23:35:25 -04:00
[ profile . release . package . bytes ]
opt-level = 3
2022-03-13 19:19:53 -04:00
[ profile . release . package . deno_bench_util ]
opt-level = 3
2024-06-19 23:35:25 -04:00
[ profile . release . package . deno_broadcast_channel ]
opt-level = 3
2021-04-06 13:38:49 -04:00
[ profile . release . package . deno_core ]
opt-level = 3
2024-06-19 23:35:25 -04:00
[ profile . release . package . deno_crypto ]
2021-04-11 08:10:22 -04:00
opt-level = 3
2024-06-19 23:35:25 -04:00
[ profile . release . package . deno_fetch ]
2021-07-12 06:44:49 -04:00
opt-level = 3
2024-06-19 23:35:25 -04:00
[ profile . release . package . deno_ffi ]
2021-07-05 19:23:18 -04:00
opt-level = 3
2024-06-19 23:35:25 -04:00
[ profile . release . package . deno_http ]
2022-03-13 19:19:53 -04:00
opt-level = 3
2024-06-19 23:35:25 -04:00
[ profile . release . package . deno_napi ]
opt-level = 3
[ profile . release . package . deno_net ]
2022-03-13 19:19:53 -04:00
opt-level = 3
2023-03-05 09:53:42 -05:00
[ profile . release . package . deno_node ]
opt-level = 3
2024-06-19 23:35:25 -04:00
[ profile . release . package . deno_runtime ]
2022-03-13 19:19:53 -04:00
opt-level = 3
2024-06-19 23:35:25 -04:00
[ profile . release . package . deno_tls ]
2022-03-13 19:19:53 -04:00
opt-level = 3
2024-06-19 23:35:25 -04:00
[ profile . release . package . deno_url ]
2022-03-13 19:19:53 -04:00
opt-level = 3
2024-06-19 23:35:25 -04:00
[ profile . release . package . deno_web ]
2022-03-13 19:19:53 -04:00
opt-level = 3
[ profile . release . package . deno_websocket ]
opt-level = 3
2024-06-19 23:35:25 -04:00
[ profile . release . package . fastwebsockets ]
2022-10-07 06:54:01 -04:00
opt-level = 3
2024-06-19 23:35:25 -04:00
[ profile . release . package . flate2 ]
2021-08-13 04:08:13 -04:00
opt-level = 3
2024-06-19 23:35:25 -04:00
[ profile . release . package . futures-util ]
2021-04-06 13:38:49 -04:00
opt-level = 3
2024-06-19 23:35:25 -04:00
[ profile . release . package . hyper ]
2021-04-06 13:38:49 -04:00
opt-level = 3
2024-06-19 23:35:25 -04:00
[ profile . release . package . miniz_oxide ]
2021-04-06 13:38:49 -04:00
opt-level = 3
2024-06-19 23:35:25 -04:00
[ profile . release . package . num-bigint-dig ]
2021-08-19 13:11:27 -04:00
opt-level = 3
2024-06-19 23:35:25 -04:00
[ profile . release . package . rand ]
2021-08-19 13:11:27 -04:00
opt-level = 3
2024-06-19 23:35:25 -04:00
[ profile . release . package . serde ]
2021-11-04 10:44:57 -04:00
opt-level = 3
2024-06-19 23:35:25 -04:00
[ profile . release . package . serde_v8 ]
2021-11-04 10:44:57 -04:00
opt-level = 3
2024-10-03 00:03:00 -04:00
[ profile . release . package . libsui ]
opt-level = 3
2024-06-19 23:35:25 -04:00
[ profile . release . package . test_napi ]
2021-11-04 10:44:57 -04:00
opt-level = 3
[ profile . release . package . tokio ]
opt-level = 3
2024-06-19 23:35:25 -04:00
[ profile . release . package . url ]
opt-level = 3
[ profile . release . package . v8 ]
opt-level = 3
2023-03-21 15:11:22 -04:00
[ profile . release . package . zstd ]
opt-level = 3
[ profile . release . package . zstd-sys ]
opt-level = 3