mirror of
https://github.com/denoland/deno.git
synced 2024-12-22 23:34:47 -05:00
890780a9e9
Adds an `--unstable-sloppy-imports` flag which supports the following for `file:` specifiers: * Allows writing `./mod` in a specifier to do extension probing. - ex. `import { Example } from "./example"` instead of `import { Example } from "./example.ts"` * Allows writing `./routes` to do directory extension probing for files like `./routes/index.ts` * Allows writing `./mod.js` for *mod.ts* files. This functionality is **NOT RECOMMENDED** for general use with Deno: 1. It's not as optimal for perf: https://marvinh.dev/blog/speeding-up-javascript-ecosystem-part-2/ 1. It makes tooling in the ecosystem more complex in order to have to understand this. 1. The "Deno way" is to be explicit about what you're doing. It's better in the long run. 1. It doesn't work if published to the Deno registry because doing stuff like extension probing with remote specifiers would be incredibly slow. This is instead only recommended to help with migrating existing projects to Deno. For example, it's very useful for getting CJS projects written with import/export declaration working in Deno without modifying module specifiers and for supporting TS ESM projects written with `./mod.js` specifiers. This feature will output warnings to guide the user towards correcting their specifiers. Additionally, quick fixes are provided in the LSP to update these specifiers:
168 lines
5.3 KiB
TOML
168 lines
5.3 KiB
TOML
# Copyright 2018-2023 the Deno authors. All rights reserved. MIT license.
|
|
|
|
[package]
|
|
name = "deno"
|
|
version = "1.38.5"
|
|
authors.workspace = true
|
|
default-run = "deno"
|
|
edition.workspace = true
|
|
exclude = ["tests/testdata/npm/registry/*"]
|
|
license.workspace = true
|
|
repository.workspace = true
|
|
description = "Provides the deno executable"
|
|
|
|
[[bin]]
|
|
name = "deno"
|
|
path = "main.rs"
|
|
doc = false
|
|
|
|
[[bench]]
|
|
name = "deno_bench"
|
|
harness = false
|
|
path = "./bench/main.rs"
|
|
|
|
[[bench]]
|
|
name = "lsp_bench_standalone"
|
|
harness = false
|
|
path = "./bench/lsp_bench_standalone.rs"
|
|
|
|
[features]
|
|
default = ["upgrade", "__vendored_zlib_ng"]
|
|
# A feature that enables the upgrade subcommand and the background check for
|
|
# available updates (of deno binary). This is typically disabled for (Linux)
|
|
# distribution packages.
|
|
upgrade = []
|
|
# A dev feature to disable creations and loading of snapshots in favor of
|
|
# loading JS sources at runtime.
|
|
__runtime_js_sources = ["deno_runtime/__runtime_js_sources"]
|
|
# Vendor zlib as zlib-ng
|
|
__vendored_zlib_ng = ["flate2/zlib-ng-compat", "libz-sys/zlib-ng"]
|
|
|
|
[build-dependencies]
|
|
# TODO(bartlomieju): should we not include `dont_create_runtime_snapshot`
|
|
# feature here and actually create the snapshot in `deno_runtime` build script?
|
|
# How do we pass options?
|
|
deno_runtime = { workspace = true, features = ["dont_create_runtime_snapshot", "include_js_files_for_snapshotting"] }
|
|
deno_core = { workspace = true, features = ["include_js_files_for_snapshotting"] }
|
|
lazy-regex.workspace = true
|
|
serde.workspace = true
|
|
serde_json.workspace = true
|
|
zstd.workspace = true
|
|
glibc_version = "0.1.2"
|
|
flate2 = { workspace = true, features = ["default"] }
|
|
|
|
[target.'cfg(windows)'.build-dependencies]
|
|
winapi.workspace = true
|
|
winres.workspace = true
|
|
|
|
[dependencies]
|
|
deno_ast = { workspace = true, features = ["bundler", "cjs", "codegen", "dep_graph", "module_specifier", "proposal", "react", "sourcemap", "transforms", "typescript", "view", "visit"] }
|
|
deno_cache_dir = "=0.6.1"
|
|
deno_config = "=0.6.5"
|
|
deno_core = { workspace = true, features = ["include_js_files_for_snapshotting"] }
|
|
deno_doc = { version = "=0.74.0", features = ["html"] }
|
|
deno_emit = "=0.32.0"
|
|
deno_graph = "=0.62.0"
|
|
deno_lint = { version = "=0.52.2", features = ["docs"] }
|
|
deno_lockfile.workspace = true
|
|
deno_npm = "0.15.3"
|
|
deno_runtime = { workspace = true, features = ["dont_create_runtime_snapshot", "include_js_files_for_snapshotting"] }
|
|
deno_semver = "0.5.1"
|
|
deno_task_shell = "=0.14.0"
|
|
eszip = "=0.56.0"
|
|
napi_sym.workspace = true
|
|
|
|
async-trait.workspace = true
|
|
base32 = "=0.4.0"
|
|
base64.workspace = true
|
|
bincode = "=1.3.3"
|
|
bytes.workspace = true
|
|
cache_control.workspace = true
|
|
chrono.workspace = true
|
|
clap = { version = "=4.3.3", features = ["env", "string"] }
|
|
clap_complete = "=4.3.1"
|
|
clap_complete_fig = "=4.3.1"
|
|
console_static_text.workspace = true
|
|
dashmap = "5.5.3"
|
|
data-encoding.workspace = true
|
|
data-url.workspace = true
|
|
dissimilar = "=1.0.4"
|
|
dotenvy = "0.15.7"
|
|
dprint-plugin-json = "=0.19.1"
|
|
dprint-plugin-jupyter = "=0.1.2"
|
|
dprint-plugin-markdown = "=0.16.3"
|
|
dprint-plugin-typescript = "=0.88.7"
|
|
encoding_rs.workspace = true
|
|
env_logger = "=0.10.0"
|
|
fancy-regex = "=0.10.0"
|
|
fastwebsockets.workspace = true
|
|
# If you disable the default __vendored_zlib_ng feature above, you _must_ be able to link against `-lz`.
|
|
flate2.workspace = true
|
|
fs3.workspace = true
|
|
glob = "0.3.1"
|
|
hex.workspace = true
|
|
http.workspace = true
|
|
hyper.workspace = true
|
|
import_map = { version = "=0.18.0", features = ["ext"] }
|
|
indexmap.workspace = true
|
|
jsonc-parser = { version = "=0.23.0", features = ["serde"] }
|
|
lazy-regex.workspace = true
|
|
libc.workspace = true
|
|
libz-sys.workspace = true
|
|
log = { workspace = true, features = ["serde"] }
|
|
lsp-types.workspace = true
|
|
monch.workspace = true
|
|
notify.workspace = true
|
|
once_cell.workspace = true
|
|
os_pipe.workspace = true
|
|
percent-encoding.workspace = true
|
|
pin-project.workspace = true
|
|
quick-junit = "^0.3.5"
|
|
rand = { workspace = true, features = ["small_rng"] }
|
|
regex.workspace = true
|
|
ring.workspace = true
|
|
rustyline = { version = "=13.0.0", default-features = false, features = ["custom-bindings", "with-file-history"] }
|
|
rustyline-derive = "=0.7.0"
|
|
serde.workspace = true
|
|
serde_repr.workspace = true
|
|
sha2.workspace = true
|
|
shell-escape = "=0.1.5"
|
|
tar.workspace = true
|
|
tempfile.workspace = true
|
|
text-size = "=1.1.0"
|
|
text_lines = "=0.6.0"
|
|
thiserror.workspace = true
|
|
tokio.workspace = true
|
|
tokio-util.workspace = true
|
|
tower-lsp.workspace = true
|
|
twox-hash = "=1.6.3"
|
|
typed-arena = "=2.0.1"
|
|
uuid = { workspace = true, features = ["serde"] }
|
|
walkdir = "=2.3.2"
|
|
zeromq = { version = "=0.3.4", default-features = false, features = ["tcp-transport", "tokio-runtime"] }
|
|
zstd.workspace = true
|
|
|
|
[target.'cfg(windows)'.dependencies]
|
|
fwdansi.workspace = true
|
|
junction = "=0.2.0"
|
|
winapi = { workspace = true, features = ["knownfolders", "mswsock", "objbase", "shlobj", "tlhelp32", "winbase", "winerror", "winsock2"] }
|
|
|
|
[target.'cfg(unix)'.dependencies]
|
|
nix.workspace = true
|
|
|
|
[dev-dependencies]
|
|
deno_bench_util.workspace = true
|
|
flaky_test = "=0.1.0"
|
|
once_cell.workspace = true
|
|
os_pipe.workspace = true
|
|
pretty_assertions.workspace = true
|
|
test_util.workspace = true
|
|
trust-dns-client = "=0.22.0"
|
|
trust-dns-server = "=0.22.1"
|
|
|
|
[package.metadata.winres]
|
|
# This section defines the metadata that appears in the deno.exe PE header.
|
|
OriginalFilename = "deno.exe"
|
|
LegalCopyright = "© Deno contributors & Deno Land Inc. MIT licensed."
|
|
ProductName = "Deno"
|
|
FileDescription = "Deno: A secure runtime for JavaScript and TypeScript"
|