1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-28 16:20:57 -05:00
denoland-deno/cli
Bartek Iwańczuk ef20aedfa8
perf(ops): directly respond for eager ops (#18683)
This commit changes "eager ops" to directly return a response value
instead of calling "opresponse" callback in JavaScript. This saves
one boundary crossing and has a fantastic impact on the "async_ops.js"
benchmark:

```
v1.32.4
$ deno run cli/bench/async_ops.js
time 329 ms rate 3039513
time 322 ms rate 3105590
time 307 ms rate 3257328
time 301 ms rate 3322259
time 303 ms rate 3300330
time 306 ms rate 3267973
time 300 ms rate 3333333
time 301 ms rate 3322259
time 301 ms rate 3322259
time 301 ms rate 3322259
time 302 ms rate 3311258
time 301 ms rate 3322259
time 302 ms rate 3311258
time 302 ms rate 3311258
time 303 ms rate 3300330
```

```
this branch
$ ./target/release/deno run -A cli/bench/async_ops.js
time 257 ms rate 3891050
time 248 ms rate 4032258
time 251 ms rate 3984063
time 246 ms rate 4065040
time 238 ms rate 4201680
time 227 ms rate 4405286
time 228 ms rate 4385964
time 229 ms rate 4366812
time 228 ms rate 4385964
time 226 ms rate 4424778
time 226 ms rate 4424778
time 227 ms rate 4405286
time 228 ms rate 4385964
time 227 ms rate 4405286
time 228 ms rate 4385964
time 227 ms rate 4405286
time 229 ms rate 4366812
time 228 ms rate 4385964
```

Prerequisite for https://github.com/denoland/deno/pull/18652
2023-04-18 17:41:50 +02:00
..
args chore(docs): clarify what subcommands do not type-check by default (#18520) 2023-04-18 17:41:50 +02:00
bench perf(ops): directly respond for eager ops (#18683) 2023-04-18 17:41:50 +02:00
cache fix(lsp): include all diagnosable documents on initialize (#17979) 2023-03-31 11:43:20 -06:00
js fix(test): don't swallow sanitizer errors with permissions (#18550) 2023-04-01 17:34:09 -04:00
lsp refactor(cli,ext,ops): cleanup regex with lazy-regex (#17296) 2023-04-18 17:41:50 +02:00
napi 1.32.4 (#18668) 2023-04-12 17:17:55 +02:00
node refactor(cli,ext,ops): cleanup regex with lazy-regex (#17296) 2023-04-18 17:41:50 +02:00
npm fix(npm): eagerly reload package information when version from lockfile not found locally (#18673) 2023-04-18 17:41:50 +02:00
ops Reland "perf(core): preserve ops between snapshots (#18080)" (#18272) 2023-03-18 18:30:04 -04:00
schemas feat: embed import map in the config file (#17478) 2023-01-25 21:13:40 +01:00
tests fix(test): add process sigint handler for --watch (#18678) 2023-04-18 17:41:50 +02:00
tools refactor(cli,ext,ops): cleanup regex with lazy-regex (#17296) 2023-04-18 17:41:50 +02:00
tsc refactor(cli,ext,ops): cleanup regex with lazy-regex (#17296) 2023-04-18 17:41:50 +02:00
util test(runtime): support Windows in resolve_from_cwd_absolute (#18379) 2023-04-18 17:41:50 +02:00
auth_tokens.rs chore: upgrade to Rust 1.67 (#17548) 2023-01-27 10:43:16 -05:00
build.rs refactor(cli,ext,ops): cleanup regex with lazy-regex (#17296) 2023-04-18 17:41:50 +02:00
Cargo.toml refactor(cli,ext,ops): cleanup regex with lazy-regex (#17296) 2023-04-18 17:41:50 +02:00
deno.ico fix(cli): add icon and metadata to deno.exe on Windows (#6693) 2020-07-15 21:54:38 +02:00
deno_std.rs 1.32.4 (#18668) 2023-04-12 17:17:55 +02:00
emit.rs perf(core) Reduce script name and script code copies (#18298) 2023-03-21 22:33:12 +00:00
errors.rs feat: TypeScript 5.0.2 (except decorators) (#18294) 2023-03-21 15:46:40 +00:00
file_fetcher.rs Revert "fix(cli): don't store blob and data urls in the module cache (#18261)" (#18572) 2023-04-12 15:44:00 +02:00
graph_util.rs fix(npm): do not "npm install" when npm specifier happens to match package.json entry (#18660) 2023-04-12 15:52:08 +02:00
http_util.rs refactor: remove usages of map_or / map_or_else (#18212) 2023-03-15 17:46:36 -04:00
js.rs refactor(core): Improve ergonomics of managing ASCII strings (#18498) 2023-04-12 15:49:39 +02:00
main.rs refactor: ProcState::build -> ProcState::from_flags (#18672) 2023-04-18 17:41:49 +02:00
module_loader.rs refactor(core): Improve ergonomics of managing ASCII strings (#18498) 2023-04-12 15:49:39 +02:00
proc_state.rs refactor: ProcState::build -> ProcState::from_flags (#18672) 2023-04-18 17:41:49 +02:00
README.md docs(cli): do not need gen doc for cli (#17260) 2023-01-04 13:19:58 +01:00
resolver.rs fix(npm): eagerly reload package information when version from lockfile not found locally (#18673) 2023-04-18 17:41:50 +02:00
standalone.rs refactor: ProcState::build -> ProcState::from_flags (#18672) 2023-04-18 17:41:49 +02:00
version.rs refactor: make version and user_agent &'static str (#18400) 2023-03-31 11:43:18 -06:00
worker.rs refactor(npm): use deno_npm and deno_semver (#18602) 2023-04-12 15:52:03 +02:00

Deno CLI Crate

crates

This provides the actual deno executable and the user-facing APIs.

The deno crate uses the deno_core to provide the executable.