1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-11 01:58:05 -05:00
Commit graph

9650 commits

Author SHA1 Message Date
denobot
60fe8aa532
1.35.2 (#19885)
Bumped versions for 1.35.2

---------

Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2023-07-20 03:29:23 +02:00
Bartek Iwańczuk
c00556b9d7
fix(napi): update env_test.js (#19876) 2023-07-20 01:53:37 +02:00
Luca Casonato
b8021744b3
feat(ext/node): properly segregate node globals (#19307)
Code run within Deno-mode and Node-mode should have access to a
slightly different set of globals. Previously this was done through a
compile time code-transform for Node-mode, but this is not ideal and has
many edge cases, for example Node's globalThis having a different
identity than Deno's globalThis.

This commit makes the `globalThis` of the entire runtime a semi-proxy.
This proxy returns a different set of globals depending on the caller's
mode. This is not a full proxy, because it is shadowed by "real"
properties on globalThis. This is done to avoid the overhead of a full
proxy for all globalThis operations.

The globals between Deno-mode and Node-mode are now properly segregated.
This means that code running in Deno-mode will not have access to Node's
globals, and vice versa. Deleting a managed global in Deno-mode will
NOT delete the corresponding global in Node-mode, and vice versa.

---------

Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
Co-authored-by: Aapo Alasuutari <aapo.alasuutari@gmail.com>
2023-07-20 01:53:37 +02:00
Leo Kettmeir
30feee81e1
fix(node/http): call callback after request is sent (#19871)
Fixes #19762
2023-07-20 01:53:36 +02:00
sigmaSd
624526ae85
fix(runtime): print process name in case of spawn error (#19855)
Fix https://github.com/denoland/deno/issues/19400

Co-authored-by: David Sherret <dsherret@users.noreply.github.com>
2023-07-20 01:53:36 +02:00
Leo Kettmeir
7892655d61
fix(node/net): Server connection callback include socket value (#19779) 2023-07-20 01:53:36 +02:00
Divy Srivastava
176a0c7161
fix(ext/node): check if resource can be used with write_vectored (#19868)
Fixes https://github.com/denoland/deno/issues/19766 
Fixes https://github.com/denoland/deno/issues/19846
2023-07-20 01:53:36 +02:00
Bartek Iwańczuk
0154a12bc4
fix(node): add process.dlopen API (#19860)
Fixes https://github.com/denoland/deno/issues/19830
2023-07-20 01:53:36 +02:00
Bartek Iwańczuk
bda38c10a7
chore: disable rustls logging (#19859)
This commit disables internal logging coming from `rustls` crate.

So messages like:
```
TLS alert received: AlertMessagePayload {
    level: Fatal,
    description: UnknownCA,
}
```
will no longer appear unconditionally.
2023-07-20 01:53:36 +02:00
David Sherret
e771bff44b
fix(npm): support dynamic import of Deno TS from npm package (#19858)
Closes #19843
2023-07-20 01:53:36 +02:00
Bartek Iwańczuk
d267eaa3b9
fix(bench): run warmup benchmark to break JIT bias (#19844)
Closes https://github.com/denoland/deno/issues/15277

This commit adds a single "warmup" run of empty function when running
`deno bench`.
This change will break so-called "JIT bias" which makes V8 optimize the
first function
and then bail out of optimization on second function. In essence the
"warmup" function
is getting optimized and then all user benches are bailed out of
optimization.
2023-07-20 01:53:35 +02:00
David Sherret
bbaab3b21c
fix(node): improve error message requiring non-npm es module (#19856)
Closes #19842
Closes #16913
2023-07-20 01:53:35 +02:00
David Sherret
3f523f07b1
fix(node): improve require esm error messages (#19853)
Part of #19842.

Closes #19583
Closes #16913
2023-07-20 01:53:35 +02:00
await-ovo
efda7fa5eb
fix(ext/node): fix stream/promises export (#19820) 2023-07-20 01:53:35 +02:00
David Sherret
690e02268d
fix(vendor): do not panic vendoring with jsxImportSource and no jsx files (#19837)
Closes #19833
2023-07-20 01:53:35 +02:00
David Sherret
33ba31b390
fix(npm): improve error message importing non-existent file in a node_modules npm package (#19835) 2023-07-20 01:53:35 +02:00
Elian Cordoba
2bf2438f38
fix(npm): improve error message on directory import in npm package (#19538)
Co-authored-by: David Sherret <dsherret@users.noreply.github.com>
2023-07-20 01:53:34 +02:00
puffyCid
2799e9d5ac
chore: update log, percent-encoding, and rusqlite (#19815) 2023-07-20 01:53:34 +02:00
David Sherret
533ee83fde
fix(tsc): more informative diagnostic when Deno does not exist (#19825)
Also improved the diagnostic when using something like `Deno.openKv` and
it doesn't exist.
2023-07-20 01:53:34 +02:00
Matt Mastracci
ae2fecf45d
chore: update to Rust 1.71 (#19822) 2023-07-20 01:53:34 +02:00
idanran
be9576ccc6
docs: use Deno.serve in README (#19805) 2023-07-20 01:53:34 +02:00
Bartek Iwańczuk
ef06ed28d8
chore: pin hyper dependency (#19813) 2023-07-13 00:46:34 +02:00
denobot
b4824bf45f
1.35.1 (#19812)
Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com>
2023-07-12 23:49:48 +02:00
Bartek Iwańczuk
5bc24c8a20
chore: disable failing node compat test (#19811) 2023-07-12 19:30:37 +00:00
David Sherret
80331d1fe5
fix(lsp): stop diagnostics flickering (#19803)
Closes https://github.com/denoland/vscode_deno/issues/835
2023-07-11 17:10:43 -04:00
David Sherret
830d10b171
refactor(lsp): update diagnostics.rs to use structs instead of records (#19799)
Part of https://github.com/denoland/vscode_deno/issues/835
2023-07-11 22:36:39 +02:00
Leo Kettmeir
9d5f6f67d6
fix(node/http): add destroy to FakeSocket (#19796)
Closes #19782
2023-07-11 15:08:35 +02:00
Leo Kettmeir
4cfc54931d
fix(node/http): allow callback in first argument of end call (#19778)
Closes #19762
2023-07-11 14:49:19 +02:00
David Sherret
be9e73d340
fix(lsp): remove quotes and period surrounding specifier in uncached messages (#19794) 2023-07-11 02:27:22 +00:00
David Sherret
0d8af65621
fix(lsp): exclude files in deno.json "exclude" (#19791)
Closes #19788
2023-07-10 21:03:19 -04:00
Cooper Benson
96efe3c176
refactor(cli): Creating a TestReporter trait (#19786)
This PR breaks the addition of the `TestReporter` trait and refactoring
of `PrettyTestReporter` out of #19747. The goal is to enable the
addition of test reporters, including machine readable output.
2023-07-10 18:12:33 -04:00
David Sherret
8dd9d5f523
refactor(lsp): move config file related code to config.rs (#19790)
Will make #19788 easier.
2023-07-10 21:45:09 +00:00
David Sherret
629d09b149
perf: add setup cache for node_modules folder (#19787)
Part of #19774. This makes it twice as fast on my machine.

Stores a file at `node_modules/.deno/setup-cache.bin`, which contains
information about how the node_modules folder is currently setup.
Obviously there is a risk that this information will get out of date
with the current folder structure.
2023-07-10 13:42:47 -04:00
David Sherret
fe91cd5b84
chore(tests): update info_with_compiled_source to use TestContextBuilder (#19783) 2023-07-10 14:01:01 +00:00
Leo Kettmeir
5cda141f2d
fix(node/http): server use FakeSocket and add end method (#19660)
Fixes #19324
2023-07-10 13:48:35 +02:00
Bartek Iwańczuk
1edc8693bf
chore: upgrade deno_core and rusty_v8 (#19773) 2023-07-09 22:48:47 +00:00
David Sherret
21cc279481
refactor: abstract away file system to be buried inside HttpCache (#19760)
This improves the HttpCache to make it being stored on the file system
an implementation detail.
2023-07-08 16:06:45 -04:00
David Sherret
f3095b8d31
chore: upgrade to dprint 0.39 (#19768) 2023-07-08 18:34:08 +00:00
Divy Srivastava
e4870d84be
perf(ext/node): native vectored write for server streams (#19752)
```
# main
$ ./load_test 10 0.0.0.0 8080 0 0
Using message size of 20 bytes
Running benchmark now...
Msg/sec: 106182.250000
Msg/sec: 110279.750000
^C

# this PR
$ ./load_test 10 0.0.0.0 8080 0 0
Using message size of 20 bytes
Running benchmark now...
Msg/sec: 131632.250000
Msg/sec: 134754.250000
^C
```
2023-07-07 22:17:08 +05:30
Matt Mastracci
7d022ad11a
fix(ext/http): Use brotli compression params (#19758)
Fixes #19737 by adding brotli compression parameters.

Time after:

`Accept-Encoding: gzip`:

```
real    0m0.214s
user    0m0.005s
sys     0m0.013s
```

`Accept-Encoding: br`:

Before:

```
real    0m10.303s
user    0m0.005s
sys     0m0.010s
```

After:

```
real    0m0.127s
user    0m0.006s
sys     0m0.014s
```
2023-07-07 10:46:56 -06:00
Divy Srivastava
75d2c045f7
perf(ext/websocket): optimize server websocket js (#19719)
Split from https://github.com/denoland/deno/pull/19686

- timestamp set to 0 for server websocket events.
- take fast call path with op_ws_send_binary.
2023-07-07 09:09:25 +05:30
Luca Casonato
679a0c428c
tests: add more jsxImportSource regression tests (#15592)
This commit adds some regression tests for using `jsxImportSource` in
the config file in combination with an import map.

These underlying issues were fixed by #15561.

Closes #13389
Closes #14723

---------

Co-authored-by: Aapo Alasuutari <aapo.alasuutari@gmail.com>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2023-07-07 01:22:22 +02:00
Bartek Iwańczuk
106e1bd90e
fix: remove unstable check for Deno.listenTls#alpnProtocols (#19732) 2023-07-06 13:45:15 +00:00
Bartek Iwańczuk
de630b9b78
perf(node/async_hooks): optimize AsyncLocalStorage (#19729)
This makes the implementation of "AsyncLocalStorage" from
"node:async_hooks" 3.5x faster than before for noop benchmark
(measuring baseline overhead). It's still 3.5x slower than not
using `AsyncLocalStorage` and 1.64x slower than using
noop promise hooks.
2023-07-06 13:05:10 +02:00
Divy Srivastava
57fae55d82
perf(ext/node): optimize net streams (#19678)
~4.5x improvement in `npm:ws` echo benchmark:

```
$ ./load_test 10 0.0.0.0 8080 0 0
Using message size of 20 bytes
Running benchmark now...
Msg/sec: 101083.750000
Msg/sec: 103606.000000
^C

$ ./load_test 10 0.0.0.0 8080 0 0
Using message size of 20 bytes
Running benchmark now...
Msg/sec: 24906.750000
Msg/sec: 28478.000000
^C
```
2023-07-05 22:45:10 +05:30
David Sherret
2e7bcb422d
fix(vendor): support import mapped jsxImportSource (#19724)
Closes #16108
2023-07-05 12:43:22 -04:00
Yoshiya Hinosawa
cd2525d4cf
test(ext/node): clean up node:path test cases (#19610) 2023-07-05 16:13:34 +09:00
denobot
1ac5fddf54
1.35.0 (#19717)
Bumped versions for 1.35.0

Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2023-07-05 01:58:01 +02:00
Bartek Iwańczuk
6d0c658023
fix: move Deno.serve to stable namespace (#19718)
This was missed in #19141
2023-07-04 23:04:26 +00:00
await-ovo
686ec85f52
fix(ext/node): Define performance.timeOrigin as getter property (#19714) 2023-07-04 20:19:18 +03:00