1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-18 05:14:21 -05:00
Commit graph

1825 commits

Author SHA1 Message Date
David Sherret
eedf243b5e
perf(compile): pass module source data from binary directly to v8 (#26494)
This changes denort to pass a static reference of the moude source bytes found in the binary to v8 instead of copying it.
2024-10-24 19:48:48 +00:00
snek
79a3ad2b95
feat: support node-api in denort (#26389)
exposes node-api symbols in denort so that `deno compile` can run native
addons.
2024-10-24 09:13:54 +02:00
Divy Srivastava
fa49fd404b
fix(ext/ffi): return u64/i64 as bigints from nonblocking ffi calls (#26486)
Fixes https://github.com/denoland/deno/issues/25194
2024-10-24 09:41:38 +05:30
Divy Srivastava
be969cb532
fix: share inotify fd across watchers (#26200)
Fixes https://github.com/denoland/deno/issues/26104
Fixes https://github.com/denoland/deno/issues/26071
Fixes https://github.com/denoland/deno/issues/17757
2024-10-23 09:22:58 +05:30
Pig Fang
49d31fa4a2
fix(fmt): upgrade formatters (#26469)
Fixes #25926 
Fixes #26004
2024-10-22 12:15:59 +02:00
Leo Kettmeir
f26c8bcf31
refactor(runtime/ops): use concrete error types (#26409) 2024-10-22 01:41:08 -07:00
David Sherret
49d9c02bfa
fix(npm): support version ranges with && or comma (#26453) 2024-10-21 19:31:16 +00:00
David Sherret
39fb55096e
fix(install): better json editing (#26450)
1. Respects the formatting of the file (ex. keeps four space indents or
tabs).
2. Handles editing of comments.
3. Handles trailing commas.
4. Code is easier to maintain.
2024-10-21 14:17:08 -04:00
Leo Kettmeir
473e3069de
chore: update nix crate (#26422)
Dedupes nix dependency, since `rustyline` depends on a newer version
that what we currently use
2024-10-19 21:59:39 +00:00
Leo Kettmeir
615e6b7cc2
refactor(ext/webgpu): use concrete error type (#26198) 2024-10-18 18:53:04 -07:00
Leo Kettmeir
6c4ef11f04
refactor(ext/fetch): use concrete error types (#26220) 2024-10-19 01:20:58 +00:00
Leo Kettmeir
8ca8174c81
refactor(ext/crypto): use concrete error types (#26167) 2024-10-18 15:23:20 -07:00
Leo Kettmeir
d047cab14b
refactor(ext/websocket): use concrete error type (#26226) 2024-10-18 19:30:46 +00:00
Leo Kettmeir
85a99eb405
refactor(ext/fs): use concrete error types (#26317) 2024-10-18 06:38:17 -07:00
denobot
3ae10a01e0
chore: forward v2.0.2 release commit to main (#26376)
This is the release commit being forwarded back to main for 2.0.2

Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2024-10-18 03:12:49 +02:00
Leo Kettmeir
8cfd9968fa
refactor(ext/napi): use concrete error types (#26186) 2024-10-17 19:51:33 +00:00
Leo Kettmeir
eca83fc9b4
refactor(ext/web): use concrete error types (#26185) 2024-10-17 19:05:38 +00:00
Leo Kettmeir
7c790da826
refactor(ext/kv): use concrete error type (#26239) 2024-10-17 17:59:02 +00:00
Leo Kettmeir
ed13efc4ac
refactor(ext/net): use concrete error type (#26227) 2024-10-17 09:43:04 -07:00
denobot
3385d1252e
chore: forward v2.0.1 release commit to main (#26338)
This is the release commit being forwarded back to main for 2.0.1

Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2024-10-16 23:48:42 +00:00
Leo Kettmeir
f8417224eb
fix: use syntect for deno doc html generation (#26322) 2024-10-16 19:41:55 +00:00
David Sherret
f94cdd1723
chore: add dhat feature (#26285) 2024-10-16 14:03:42 +00:00
Bartek Iwańczuk
ee904ec06c
fix: add hint for missing document global in terminal error (#26218)
This came up on Discord as a question so I thought it's worth adding a
hint for this as it might be a common pitfall.

---------

Signed-off-by: Bartek Iwańczuk <biwanczuk@gmail.com>
Co-authored-by: David Sherret <dsherret@users.noreply.github.com>
2024-10-15 21:51:39 +00:00
David Sherret
403da30ceb
fix(install): handle pkg with dep on self when pkg part of peer dep resolution (#26277)
* https://github.com/denoland/deno_npm/pull/71

Closes #26271
2024-10-15 18:48:33 +00:00
Divy Srivastava
e4b52f5a76
fix: panic in prepare_stack_trace_callback when global interceptor throws (#26241)
Fixes https://github.com/denoland/deno/issues/26240
Fixes
https://github.com/denoland/deno/pull/24985#issuecomment-2365460210

Fix panic when a global interceptor is misconfigured or throws an
exception.

Updates deno_core to 0.313.0
2024-10-15 14:56:49 +02:00
Leo Kettmeir
ee7d450143
refactor(ext/ffi): use concrete error types (#26170) 2024-10-14 15:05:49 -07:00
Leo Kettmeir
48cbf85add
refactor(ext/url): use concrete error types (#26172) 2024-10-14 14:15:31 -07:00
Leo Kettmeir
cb385d9e4a
refactor(ext/webstorage): use concrete error types (#26173) 2024-10-14 13:53:17 -07:00
Divy Srivastava
dfbf03eee7
perf: use fast calls for microtask ops (#26236)
Updates deno_core to 0.312.0
2024-10-14 12:31:51 +00:00
Leo Kettmeir
64c304a452
refactor(ext/tls): use concrete error types (#26174) 2024-10-12 16:53:38 -07:00
Leo Kettmeir
2ac699fe6e
refactor(ext/cron): use concrete error type (#26135) 2024-10-12 14:23:49 -07:00
Leo Kettmeir
8b2c6fc2d2
refactor(ext/canvas): use concrete error type (#26111) 2024-10-12 10:00:35 -07:00
Leo Kettmeir
938a8ebe34
refactor(ext/cache): use concrete error type (#26109) 2024-10-12 09:15:10 -07:00
Leo Kettmeir
3df8f16500
refactor(ext/broadcastchannel): use concrete error type (#26105) 2024-10-12 08:20:17 -07:00
Leo Kettmeir
06aadcd22b
fix: do not panic when using methods on classes and interfaces in deno doc html output (#26100)
Fixes #26107
2024-10-10 03:35:22 -07:00
David Sherret
251840a60d
fix: do not panic on wsl share file paths on windows (#26081)
A test is going to fail on windows (I'm not on a windows machine atm, so
running the CI to see what fails)

Closes #26080
2024-10-09 18:49:56 +01:00
Bartek Iwańczuk
20ae8db50d
fix(repl): importing json files (#26053)
Closes https://github.com/denoland/deno/issues/26041
2024-10-09 10:04:44 +02:00
denobot
a62c7e036a
2.0.0 (#26063)
Bumped versions for 2.0.0

Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2024-10-08 07:37:28 -07:00
Leo Kettmeir
94adfeec78
fix: use tree-sitter for deno_doc (#26066) 2024-10-08 06:55:44 -07:00
David Sherret
3fc9e49613
refactor: remove usage of full_range (#26065)
For https://github.com/denoland/deno_graph/pull/538/files

This was removed because the deserialization was not backwards
compatible.
2024-10-08 11:48:29 +00:00
Divy Srivastava
39a2034967
feat(ext/crypto): X448 support (#26043)
Signed-off-by: Divy Srivastava <dj.srivastava23@gmail.com>
2024-10-07 12:04:40 +01:00
Divy Srivastava
e41df20ad9
fix(npm): root package has peer dependency on itself (#26022)
https://github.com/denoland/deno_npm/pull/70

Fixes https://github.com/denoland/deno/issues/26006
2024-10-03 14:18:36 +00:00
David Sherret
91860b34f5
fix(task): use current executable for deno even when not named deno (#26019)
Closes https://github.com/denoland/deno/issues/26005
2024-10-03 13:07:12 +00:00
Bartek Iwańczuk
c7cba4eda7
v2.0.0-rc.10 (#26002) 2024-10-03 03:24:18 +02:00
David Sherret
cac28b5262
feat(byonm): support deno run npm:<package> when package is not in package.json (#25981)
Closes https://github.com/denoland/deno/issues/25905
2024-10-02 21:17:39 +01:00
Nathan Whitaker
bbd4ae1bc1
fix(node): implement libuv APIs needed to support npm:sqlite3 (#25893)
Fixes #24740.

Implements the `uv_mutex_*` and `uv_async_*` APIs.

The mutex API is implemented exactly as libuv, a thin wrapper over the
OS's native mutex.

The async API is implemented in terms of napi_async_work. As documented
in the napi docs, you really shouldn't call `napi_queue_async_work`
multiple times (it is documented as undefined behavior). However, our
implementation doesn't have any issue with this, so I believe it suits
our purpose here.
2024-10-02 10:43:42 -07:00
David Sherret
18beb13f0e
fix(workspace): handle when config has members when specified via --config (#25988)
Closes #25847
2024-10-02 16:20:51 +01:00
David Sherret
ebc8a6169e
fix(no-slow-types): better override handling (#25989)
* https://github.com/denoland/deno_graph/pull/534

Closes https://github.com/denoland/deno/issues/25322
2024-10-02 16:10:49 +01:00
denobot
55c2a88099
chore: release deno_* crates (#25987)
Testing once again if the crates are being properly released.

---------

Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2024-10-02 14:27:34 +00:00
denobot
2d3e0284d9
chore: release deno_* crates (#25976)
Test run before Deno 2.0 release to make sure that the publishing
process passes correctly.

---------

Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2024-10-02 14:44:04 +02:00
Nayeem Rahman
3881b71734
feat(lsp): quick fix for @deno-types="npm:@types/*" (#25954) 2024-10-01 22:55:02 +01:00
David Sherret
4c8d57db03
BREAKING: rename "deps" remote cache folder to "remote" (#25969)
Closes https://github.com/denoland/deno/issues/25967
Closes #25968
2024-10-01 14:05:40 -04:00
Divy Srivastava
aafe771b55
v2.0.0-rc.9 (#25957) 2024-10-01 16:18:24 +05:30
Bartek Iwańczuk
218a9bf7eb
v2.0.0-rc.8 (#25950) 2024-10-01 01:19:37 +02:00
Marvin Hagemeister
c5c1869992
fix: precompile preserve SVG camelCase attributes (#25945)
See https://github.com/denoland/deno_ast/pull/278

Fixes https://github.com/denoland/deno/issues/25810
2024-09-30 21:25:30 +02:00
David Sherret
a7d0a5540f
fix: eagerly error for specifier with empty version constraint (#25944)
Eagerly errors for something like `export * from "jsr:@type/is@";`
(previously it would just fail elsewhere because it would consider this
as having an empty tag)
2024-09-30 13:34:20 +00:00
David Sherret
69ab720025
refactor: move ByonmNpmResolver to deno_resolver (#25937)
Some more slow progress on moving all the resolution code into
deno_resolver.
2024-09-30 13:33:32 +00:00
Divy Srivastava
efb413bdaa
fix: update sui to 0.4 (#25942)
Properly apply offset fixup to `LC_DYLD_EXPORTS_TRIE` load commands.
This should fix Node-API symbols not resolving in RC releases.

Fixes https://github.com/denoland/deno/issues/25879
Fixes https://github.com/denoland/deno/issues/25940

Ref
2b3a33bb6e
2024-09-30 17:10:51 +05:30
David Sherret
5faf769ac6
refactor: extract out sloppy imports resolution from CLI crate (#25920)
This is slow progress towards creating a `deno_resolver`  crate.

Waiting on:

* https://github.com/denoland/deno/pull/25918
* https://github.com/denoland/deno/pull/25916
2024-09-28 19:17:48 -04:00
David Sherret
1bb47805d6
refactor: move NpmCacheDir to deno_cache_dir (#25916)
Part of the ongoing work to move more of Deno's resolution out of the
CLI crate (for use in Wasm and other things)

Includes:

* https://github.com/denoland/deno_cache_dir/pull/60
2024-09-28 08:50:16 -04:00
David Sherret
fc739dc5eb
refactor: use deno_path_util (#25918) 2024-09-28 07:55:01 -04:00
Bartek Iwańczuk
b694efb384
v2.0.0-rc.7 (#25907) 2024-09-27 21:37:56 +02:00
Nathan Whitaker
fbddd5a2eb
fix(node): Pass NPM_PROCESS_STATE to subprocesses via temp file instead of env var (#25896)
Fixes https://github.com/denoland/deno/issues/25401. Fixes
https://github.com/denoland/deno/issues/25841. Fixes
https://github.com/denoland/deno/issues/25891.
2024-09-27 12:35:37 -07:00
Asher Gomez
88a4f8dd97
chore: update simd-json (#25897) 2024-09-27 14:57:27 +10:00
Bartek Iwańczuk
09a7cc4723
refactor(fmt): rewrite HTML syntax error handling (#25892) 2024-09-26 20:44:36 -04:00
Leo Kettmeir
9252969780
feat(tools/doc): display subitems in symbol overviews where applicable (#25885)
For https://github.com/denoland/deno_doc/pull/635
2024-09-26 13:08:03 +00:00
Bartek Iwańczuk
6be7d51398
v2.0.0-rc.6 (#25877) 2024-09-26 11:27:44 +02:00
Bartek Iwańczuk
5504acea67
feat: add --allow-import flag (#25469)
This replaces `--allow-net` for import permissions and makes the
security sandbox stricter by also checking permissions for statically
analyzable imports.

By default, this has a value of
`--allow-import=deno.land:443,jsr.io:443,esm.sh:443,raw.githubusercontent.com:443,gist.githubusercontent.com:443`,
but that can be overridden by providing a different set of hosts.

Additionally, when no value is provided, import permissions are inferred
from the CLI arguments so the following works because
`fresh.deno.dev:443` will be added to the list of allowed imports:

```ts
deno run -A -r https://fresh.deno.dev
```

---------

Co-authored-by: David Sherret <dsherret@gmail.com>
2024-09-26 01:50:54 +00:00
David Sherret
8cdb309ffd
fix(check): properly surface dependency errors in types file of js file (#25860)
We weren't surfacing dependency errors in types files of js files.
2024-09-25 09:04:57 -04:00
Bartek Iwańczuk
ba5b8d0213
v2.0.0-rc.5 (#25838) 2024-09-24 20:44:08 +02:00
Nathan Whitaker
1e261c9756
fix: Update deno_npm to fix deno install with crossws (#25837)
Partially addresses https://github.com/denoland/deno/issues/25648.

This allows packages that use `crossws` to be installed with `deno
install`. `crossws` specifies an optional peer dependency on
`uWebSockets`, but `uWebSockets` is not on npm (it is used with `git:`
or `github:` specifiers). Previously we would error on this, now we
don't error on non-existent optional peer dependencies.
2024-09-24 02:12:48 +00:00
Yusuke Tanaka
d8036ab20c
perf(ext/fetch): improve decompression throughput by upgrading tower_http (#25806)
This commit improves the throughput when a Deno process is running as a proxy
server that deals with compressed data from the upstream server.

We have seen a performance degradation since v1.45.3 when we run a HTTP server
with Deno with a particular setting, where it fetches _compressed_ data from the
upstream server and forwards it to the end client. After some investigation, it
turned out that [tower_http::decompression] causes this issue, which was fixed
by the new version of this crate, v0.6.1.

[tower_http::decompression]: https://docs.rs/tower-http/0.6.0/tower_http/decompression/index.html

Fixes #25798
2024-09-23 18:16:34 -07:00
David Sherret
e1c8d2755e
BREAKING: remove support for remote import maps in deno.json (#25836)
This is for security reasons for the time being for Deno 2. Details to
follow post Deno 2.0 release.

Remote import maps seem incredibly rare (only 2 usages on GitHub from
what I can tell), so we'll add this back with more permissions if
there's enough demand for it:
https://github.com/search?type=code&q=%2F%22importMap%22%3A+%22http%2F

In the meantime, use the `--import-map` flag and `"deno.importMap"`
config in the LSP for remote import maps.
2024-09-23 18:46:50 +00:00
Divy Srivastava
bfdca5bc7a
feat(ext/crypto): import and export p521 keys (#25789)
Towards https://github.com/denoland/deno/issues/13449
2024-09-23 19:40:36 +05:30
Bartek Iwańczuk
55c22ee1bd
fix: panic when require(esm) (#25769)
Upgrades `deno_core`.

Closes https://github.com/denoland/deno/issues/25761
Closes https://github.com/denoland/deno/issues/25738
2024-09-20 23:16:10 +02:00
Pig Fang
20ed4f5718
feat(fmt): upgrade markup_fmt (#25768)
Fixes #25259 
Fixes #25687
2024-09-20 21:11:34 +00:00
Divy Srivastava
1fb482863e
chore: update sui to 0.3.1 (#25758) 2024-09-20 14:32:15 +05:30
Bartek Iwańczuk
dad5678baa
v2.0.0-rc.4 (#25728) 2024-09-19 17:59:53 +02:00
Bartek Iwańczuk
c3bc692842
v2.0.0-rc.3 (#25704) 2024-09-18 23:21:45 +02:00
Luca Casonato
ab1e391e1d
feat(ext/node): add rootCertificates to node:tls (#25707)
Closes https://github.com/denoland/deno/issues/25604

Signed-off-by: Satya Rohith <me@satyarohith.com>
Co-authored-by: Satya Rohith <me@satyarohith.com>
2024-09-18 21:14:26 +02:00
Divy Srivastava
fd860260ad
feat(lint): add no-process-global lint rule (#25709)
Closes https://github.com/denoland/deno/issues/25679
2024-09-18 20:50:42 +02:00
David Sherret
3dd83fdbdb
Revert "feat(fmt): sort type-only named import/exports last" (#25705)
Reverts #25690

This was not an issue with the ts compiler anymore. Discussion here:
https://github.com/dprint/dprint-plugin-typescript/pull/664#issuecomment-2357000053
2024-09-18 13:54:52 +00:00
Yazan AbdAl-Rahman
bed46474b2
fix: do not panic running invalid file specifier (#25530)
Co-authored-by: Bedis Nbiba <bedisnbiba@gmail.com>
2024-09-18 14:51:39 +01:00
Bartek Iwańczuk
48ea4e3c92
feat(check): turn on noImplicitOverride (#25695)
Closes https://github.com/denoland/deno/issues/11836

Ref https://github.com/denoland/deno/issues/25162
2024-09-18 14:49:30 +01:00
Asher Gomez
3731591762
chore: bump deno_lint to 0.66.0 (#25697) 2024-09-18 01:48:37 +00:00
Divy Srivastava
b4faf60948
perf: fast path for cached dyn imports (#25636)
Ref https://github.com/denoland/deno_core/pull/906
2024-09-17 22:57:37 +05:30
David Sherret
a14e9f55b4
feat(fmt): sort type-only named import/exports last (#25690)
Closes #22583
2024-09-17 18:26:23 +01:00
Bartek Iwańczuk
aaf2bf4bfb
chore: upgrade deno_core (#25674)
No functional changes, just removes dead code.
2024-09-17 01:13:34 +00:00
David Sherret
8fe90d2861
fix(npm): better error handling for remote npm deps (#25670)
* https://github.com/denoland/deno_npm/pull/68
2024-09-16 21:23:40 +00:00
David Sherret
e47606a554
fix(lockfile): use loose deserialization for version constraints (#25660)
* https://github.com/denoland/deno_lockfile/pull/39

Closes https://github.com/denoland/deno/issues/25649
2024-09-16 15:29:21 +00:00
David Sherret
af2d992ecd
feat: TypeScript 5.6 and npm:@types/node@22 (#25614) 2024-09-14 11:58:47 +01:00
Bartek Iwańczuk
57556ade8c
v2.0.0-rc.2 (#25583) 2024-09-12 03:20:45 +02:00
Luca Casonato
7bfcb4dd10
feat(cli): use NotCapable error for permission errors (#25431)
Closes #7394

---------

Co-authored-by: snek <snek@deno.com>
2024-09-10 11:12:24 -07:00
HasanAlrimawi
3f6afd1947
fix: update malva in deno to support astro css comments (#25553)
This PR addresses issue #25534 

**Code Changes**
- Updated malva version to the latest in cli/Cargo.toml.
- Updated LanguageOptions to match new Malva config.
- Added test case same as the issue to assure changes success.
2024-09-10 12:54:43 +02:00
David Sherret
1e0ac609b5
BREAKING: remove deprecated files config (#25535)
The long form "files" config has been flattened into the parent.

Old:

```json
{
  "test": {
    "files": {
      "include": ["**/*.ts"],
      "exclude": ["ignore.ts"]
    }
  }
}
```

New:

```json
{
  "test": {
    "include": ["**/*.ts"],
    "exclude": ["ignore.ts"]
  }
}
```

This was deprecated some time ago, but we're removing it now in Deno
2.0.

Closes #25415
2024-09-09 16:33:09 +00:00
Pig Fang
3daab54612
fix(fmt): fix tabs in YAML (#25536)
Fixes #25176
2024-09-09 15:45:17 +00:00
Bartek Iwańczuk
30687c786c
feat: Update no-window lint rule (#25486)
Closes https://github.com/denoland/deno/issues/25323
2024-09-07 09:35:27 +00:00
Nathan Whitaker
51f5f5789b
feat(add): Add npm packages to package.json if present (#25477)
Closes https://github.com/denoland/deno/issues/25321

Ended up being a larger refactoring, since we're now juggling
(potentially) two config files in the same `add`, instead of choosing
one. I don't love the shape of the code, but I think it's good enough

Some smaller side improvements:
- `deno remove` supports `jsonc`
- `deno install --dev` will be a really simple change
- if `deno remove` removes the last import/dependency in the
`imports`/`dependencies`/`devDependencies` field, it removes the field
instead of leaving an empty object
2024-09-06 17:18:13 +00:00
Bartek Iwańczuk
6919f33216
2.0.0-rc.1 (#25467) 2024-09-05 18:34:42 +02:00
David Sherret
c678550a17
BREAKING: remove "emit" and "map" from deno info output (#25468)
The map field has been empty for years now and we don't want the emit
file to be exposed so it allows us to iterate on making the cache
faster. Additionally, it's racy/unreliable to rely on this information.
Instead, people should emit the TS files themselves using tools like
deno_emit, typescript, esbuild, etc.

Closes https://github.com/denoland/deno/issues/17703
2024-09-05 14:22:13 +00:00