Aaron O'Mullan
4f322da07c
perf(url): build with opt-level 3 ( #11779 )
...
A ~25% improvement: `~1950ns/call` => `~1500ns/call`
2021-08-19 19:11:27 +02:00
Divy Srivastava
5d6d6836bb
perf(wpt/crypto): optimize num-bigint-dig for debug builds ( #11681 )
2021-08-13 10:08:13 +02:00
Ryan Dahl
a0285e2eb8
Rename extensions/ directory to ext/ ( #11643 )
2021-08-11 12:27:05 +02:00
Elias Sjögreen
33c8d790c3
feat: ffi to replace plugins ( #11152 )
...
This commit removes implementation of "native plugins" and replaces
it with FFI API.
Effectively "Deno.openPlugin" API was replaced with "Deno.dlopen" API.
2021-08-06 23:28:10 +02:00
David Sherret
d7d452efc1
chore: format toml files internally ( #11563 )
2021-08-02 10:19:27 -04:00
Luca Casonato
f649960f87
refactor: deno_http op crate ( #11335 )
2021-07-12 12:44:49 +02:00
Ryan Dahl
511c48a03a
Revert "Remove unstable native plugins ( #10908 )"
...
This reverts commit 7dd4090c2a
.
2021-07-11 18:12:26 -07:00
Luca Casonato
bdeb4f430b
perf: opt-level = 3 for deno_net ( #11283 )
2021-07-06 01:23:18 +02:00
Bartek Iwańczuk
7dd4090c2a
Remove unstable native plugins ( #10908 )
...
This commit removes implementation of native plugins
alongside the unstable "Deno.openPlugin()" API.
2021-07-02 16:11:23 +02:00
Bartek Iwańczuk
38a7128cdd
feat: Add "deno_net" extension ( #11150 )
...
This commits moves implementation of net related APIs available on "Deno"
namespace to "deno_net" extension.
Following APIs were moved:
- Deno.listen()
- Deno.connect()
- Deno.listenTls()
- Deno.serveHttp()
- Deno.shutdown()
- Deno.resolveDns()
- Deno.listenDatagram()
- Deno.startTls()
- Deno.Conn
- Deno.Listener
- Deno.DatagramConn
2021-06-29 01:43:03 +02:00
Bert Belder
e02403bb45
ci: run Linux release builds in sysroot with Ubuntu 18.04 and LLVM ( #10920 )
2021-06-23 19:36:05 +00:00
Bartek Iwańczuk
6091ea098a
refactor: merge deno_file crate into deno_web ( #10914 )
...
This refactor makes it so there's one less crate to publish on each release.
2021-06-10 15:26:10 +02:00
Bartek Iwańczuk
e75ffab0c8
chore: move serde_v8 to separate repo ( #10909 )
...
Now available at https://github.com/denoland/serde_v8
2021-06-09 20:37:43 +02:00
Ben Noordhuis
8cf7f966f2
feat(extensions): add BroadcastChannel
...
Co-Authored-By: Ben Noordhuis <info@bnoordhuis.nl>
Fixes: #10354
2021-05-23 15:16:42 +02:00
Bert Belder
afaac64737
chore: add/update crates listed in workspace ( #10673 )
2021-05-17 23:11:40 +02:00
Andy Hayden
684c357136
Rename crate_ops to extensions ( #10431 )
2021-04-30 15:51:48 -04:00
Bartek Iwańczuk
3432833574
chore: release crates ( #10269 )
...
* Revert "tooling(bench_util): benching and profiling utilities (#10223 )"
This reverts commit 733a000305
.
* Upgrade notify
2021-04-21 00:15:39 +02:00
Aaron O'Mullan
733a000305
tooling(bench_util): benching and profiling utilities ( #10223 )
2021-04-18 14:51:48 +02:00
Ben Noordhuis
5214acd3d9
refactor: move timers to deno_timers op crate ( #10179 )
...
Move timers out of runtime/ and into a standalone op crate.
2021-04-14 21:10:48 +02:00
Bert Belder
06b5959eed
ci: store last-modified timestamps in Github Actions cache ( #10110 )
2021-04-11 20:57:17 +00:00
Aaron O'Mullan
6519f232bd
perf: build runtime at opt-3 ( #10072 )
2021-04-11 14:10:22 +02:00
Ryan Dahl
01d8d70b10
Revert "Improve incremental build time ( #10039 )" ( #10086 )
...
This reverts commit a87da4b19a
.
2021-04-09 14:03:32 -04:00
Ryan Dahl
a87da4b19a
Improve incremental build time ( #10039 )
...
Unfortunately this increases the release build size by 8M
```
| | incremental build | full build | binary size |
|--------|-------------------|------------|-------------|
| main | 4m 21s | 6m 24s | 72M |
| #10039 | 1m 45s | 5m 28s | 80M |
```
2021-04-09 08:18:49 -04:00
Aaron O'Mullan
a5198184aa
perf: build core packages at opt-3 ( #10038 )
2021-04-06 13:38:49 -04:00
Aaron O'Mullan
3d2e05dc7b
Introduce serde_v8 ( #9722 )
2021-03-25 22:36:46 -04:00
Luca Casonato
e83ff62ccb
chore: split web op crate ( #9635 )
...
This commit starts splitting out the deno_web op crate into multiple
smaller crates. This commit splits out WebIDL and URL API, but in the
future I want to split out each spec into its own crate. That means we
will have (in rough order of loading): `webidl`, `dom`, `streams`,
`console`, `encoding`, `url`, `file`, `fetch`, `websocket`, and
`webgpu` crates.
2021-03-12 16:17:18 +01:00
evan
c0f10e72ee
Change release build flags to -O3 when favorable ( #9538 )
2021-02-18 09:46:31 -05:00
Ryan Dahl
2b75a11559
update copyright to 2021 ( #9081 )
2021-01-10 21:59:07 -05:00
Bartek Iwańczuk
2e74f164b6
refactor: deno_runtime crate ( #8640 )
...
This commit moves Deno JS runtime, ops, permissions and
inspector implementation to new "deno_runtime" crate located
in "runtime/" directory.
Details in "runtime/README.md".
Co-authored-by: Ryan Dahl <ry@tinyclouds.org>
2020-12-13 19:45:53 +01:00
Divy Srivastava
d5661f677e
refactor: deno_crypto op crate ( #7956 )
...
This commit factors out "deno_crypto" op crate.
"rand" crate dependency was consequently moved to
"deno_crypto" crate and reexported.
2020-11-13 22:01:57 +01:00
tokiedokie
c4ed3fb7e7
chore: add copyright ( #7593 )
2020-09-21 08:26:41 -04:00
Bartek Iwańczuk
7845740637
refactor: deno_fetch op crate ( #7524 )
2020-09-18 09:20:55 -04:00
Valentin Anger
31f32ed8c4
Move benchmarks to Rust ( #7134 )
...
All benchmarks are done in Rust and can be invoked with
`cargo bench`.
Currently this has it's own "harness" that behaves like
`./tools/benchmark.py` did.
Because of this tests inside `cli/bench` are currently not run.
This should be switched to the language provided harness
once the `#[bench]` attribute has been stabilized.
2020-08-28 09:03:50 -04:00
Bartek Iwańczuk
41215eb29c
Op crate for Web APIs ( #6906 )
...
Co-authored-by: Ryan Dahl <ry@tinyclouds.org>
2020-08-07 16:55:02 +02:00
Ryan Dahl
b7942bf0f6
Change release build flags to optimize for size ( #6907 )
2020-07-28 13:37:27 -04:00
Ryan Dahl
2460689b1a
Remove deno_typescript ( #6813 )
2020-07-20 19:49:57 -04:00
Ryan Dahl
75d9913b22
Remove tools/hyper_hello ( #6651 )
2020-07-06 13:00:08 -04:00
Bartek Iwańczuk
90c5dcfe79
chore(test): move testing utilities to test_util crate ( #6360 )
2020-06-18 11:54:55 -04:00
skdltmxn
b3c72d1e45
feat(std/hash): reimplement all hashes in WASM ( #6292 )
2020-06-16 17:12:50 -04:00
Andy Finch
7c3b9b4f4f
feat: first pass at native plugins ( #3372 )
2019-12-05 15:30:20 -05:00
Ryan Dahl
b81e5db17a
Merge deno_cli_snapshots into deno_cli ( #3064 )
2019-10-04 20:28:51 -04:00
Ryan Dahl
c9ef182886
Make deno_cli installable via crates.io ( #2946 )
...
- Fixes cargo publish on deno_typescript, deno_cli_snapshots, and
deno_cli.
- Combines cli_snapshots and js into one directory.
- Extracts TS version at compile time rather than runtime
- Bumps version awkwardly - it was necessary to test end-to-end
publishing. Sorry.
- Adds git submodule deno_typescript/typescript
2019-09-15 18:36:27 -04:00
Ryan Dahl
d43b43ca78
Refactor snapshot build ( #2825 )
...
Instead of using core/snapshot_creator.rs, instead two crates are
introduced which allow building the snapshot during build.rs.
Rollup is removed and replaced with our own bundler. This removes
the Node build dependency. Modules in //js now use Deno-style imports
with file extensions, rather than Node style extensionless imports.
This improves incremental build time when changes are made to //js files
by about 40 seconds.
2019-09-02 17:07:11 -04:00
Ryan Dahl
bd6ebb32df
hyper_hello should be in its own crate ( #2641 )
...
So that "cargo build" will build it when the gn frontend is eventually
removed.
2019-07-15 14:00:27 -04:00
Ryan Dahl
c9614d86c1
Move //libdeno to //core/libdeno ( #2015 )
...
Fixes some sed errors introduced in c43cfe.
Unfortunately moving libdeno required splitting build.rs into two parts,
one for cli and one for core.
I've also removed the arm64 build - it's complicating things at this
re-org and we're not even testing it. I need to swing back to it and get
tools/test.py running for it.
2019-03-30 14:45:36 -04:00
Bert Belder
3d6c033369
third_party: upgrade rust crates
2019-03-29 14:50:07 -04:00
Ryan Dahl
b965c7ab36
v0.3.5
2019-03-28 16:58:17 -04:00
Ryan Dahl
223a2adbb4
v0.3.4
2019-03-20 18:54:47 -04:00
Ryan Dahl
fa3c35301a
Rename //src/ to //cli/ ( #1962 )
...
To better distinguish the deno_core crate from the executable deno,
which will now be called "the cli" internally.
2019-03-19 12:18:05 -04:00
Ryan Dahl
3dbb06e699
v0.3.3
2019-03-13 13:31:23 -04:00
Ryan Dahl
535037b519
v0.3.2
2019-03-06 21:22:48 -05:00
Ryan Dahl
b3b989ffdc
Use deno_core::JSError in deno ( #1855 )
...
src/js_errors.rs takes care of source maps and color while
core/js_errors.rs is just the basic struct.
2019-02-28 16:19:04 -05:00
Ryan Dahl
b0c7b54f69
v0.3.1
2019-02-27 16:20:10 -05:00
Bert Belder
d4e3bf945d
third_party: upgrade rust crates
2019-02-27 10:24:22 -08:00
Bert Belder
15831272bb
core: add Cargo.toml
...
This aids development using Visual Studio Code. The http_bench can't be
built with cargo yet because it needs to link with libdeno.
2019-02-26 16:23:36 -08:00
Ryan Dahl
a5720d9e28
v0.3.0
2019-02-18 23:22:41 -05:00
Bert Belder
9240f9b57f
third_party: upgrade rust crates
2019-02-12 09:30:36 -08:00
Ryan Dahl
b2fb8261e7
v0.2.11
...
- Add deps to --info output (#1720 )
- Add --allow-read (#1689 )
- Add deno.isTTY() (#1622 )
- Add emojis to permission prompts (#1684 )
- Add basic WebAssembly support (#1677 )
- Add `NO_COLOR` support https://no-color.org/ (#1716 )
- Add color exceptions (#1698 )
- Fix: do not load cache files when recompile flag is set (#1695 )
- Upgrade V8 to 7.4.98 (#1640 )
2019-02-08 23:34:05 -05:00
Bert Belder
f22e0d72c5
third_party: add the 'regex' crate
2019-02-07 14:46:52 -08:00
Dmitry Sharshakov
5c50d2819b
Add emojis to permission prompts ( #1684 )
2019-02-07 16:19:50 -05:00
Ryan Dahl
c324182252
v0.2.10
2019-02-02 18:26:31 -05:00
Ryan Dahl
1681bda14d
v0.2.9
2019-01-29 22:57:11 -05:00
Bert Belder
c03ff8556b
third_party: add the 'integer-atomics' crate
2019-01-26 16:32:03 +01:00
Bert Belder
6ad2e001b4
third_party: upgrade rust crates
2019-01-26 16:32:02 +01:00
Yoshiya Hinosawa
77114fbda4
chore: update license lines ( #1557 )
2019-01-21 13:03:30 -06:00
Ryan Dahl
a47d545e4d
v0.2.8
2019-01-19 11:54:45 -05:00
Ryan Dahl
eb4a19ef6e
v0.2.7
2019-01-14 20:25:57 -05:00
Andy Hayden
526fdac053
Update to rust 2018 edition
2019-01-14 22:30:04 +01:00
Bert Belder
8039e2a55a
third_party: upgrade rust crates, now with --edition 2018
support
2019-01-14 05:03:14 +01:00
Bert Belder
9e9550ceea
third_party: upgrade rust crates
2019-01-14 02:18:19 +01:00
Bert Belder
4f63aa4634
build: winapi is a windows-only dep
2019-01-14 02:18:18 +01:00
Bert Belder
69c370c5cc
src: remove dependency on the 'kernel32' crate
2019-01-14 02:18:18 +01:00
Ryan Dahl
404e6f8634
v0.2.6
2019-01-07 17:33:06 -05:00
Ryan Dahl
bc2c808da1
Upgrade crates ( #1471 )
2019-01-07 10:36:08 -05:00
Ryan Dahl
320577c131
v0.2.5
2019-01-01 14:30:23 -05:00
Ryan Dahl
c6e2fffc13
v0.2.4
...
- "cargo build" support (#1369 #1296 #1377 #1379 )
- Remove support for extensionless import (#1396 )
- Upgrade V8 to 7.2.502.16 (#1403 )
- make stdout unbuffered (#1355 )
- Implement `Body.formData` for fetch (#1393 )
- Improve handling of non-coercable objects in assertEqual (#1385 )
- Avoid fetch segfault on empty Uri (#1394 )
- Expose deno.inspect (#1378 )
- Add illegal header name and value guards (#1375 )
- Fix URLSearchParams set() and constructor() (#1368 )
- Remove prebuilt v8 support (#1369 )
- Enable jumbo build in release. (#1362 )
- Add URL implementation (#1359 )
- Add console.count and console.time (#1358 )
- runtime arg check `URLSearchParams` (#1390 )
2018-12-23 23:39:11 -05:00
Ryan Dahl
63d558da0c
Use flatbuffers from crates.io ( #1400 )
2018-12-23 12:39:40 -05:00
Yoshiya Hinosawa
bee55fcd20
make stdout unbuffered ( #1355 )
2018-12-22 23:53:29 -05:00
Ryan Dahl
c69d2f554d
v0.2.3
...
- console.assert should not throw error (#1335 )
- Support more modes in deno.open (#1282 , #1336 )
- Simplify code fetch logic (#1322 )
- readDir entry mode (#1326 )
- Use stderr for exceptions (#1303 )
- console.log formatting improvements (#1327 , #1299 )
- Expose TooLarge error code for buffers (#1298 )
2018-12-14 15:11:44 -05:00
Ryan Dahl
e6121762f8
v0.2.2
...
- Don't crash when .mime file not exist in cache (#1291 )
- Process source maps in Rust instead of JS (#1280 )
- Use alternate TextEncoder/TextDecoder implementation (#1281 )
- Upgrade flatbuffers to 80d148
- Fix memory leaks (#1265 , #1275 )
2018-12-07 17:44:49 -05:00
Ryan Dahl
c113df1bb8
Process source maps in Rust instead of JS ( #1280 )
...
- Improves speed and binary size significantly.
- Makes deno_last_exception() output a JSON structure.
- Isolate::execute and Isolate::event_loop now return
structured, mapped JSError objects on errors.
- Removes libdeno functions:
libdeno.setGlobalErrorHandler()
libdeno.setPromiseRejectHandler()
libdeno.setPromiseErrorExaminer()
In collaboration with Ryan Dahl.
2018-12-06 23:05:36 -05:00
Ryan Dahl
b5c6bfa0c8
v0.2.1
...
- Allow async functions in REPL (#1233 )
- Handle Location header relative URI (#1240 )
- Add deno.readAll() (#1234 )
- Add Process.output (#1235 )
- Upgrade to TypeScript 3.2.1
- Upgrade crates: tokio 0.1.13, hyper 0.12.16, ring 0.13.5
2018-11-30 16:28:27 -08:00
Ryan Dahl
3846384888
Upgrade Rust crates
2018-11-30 15:07:13 -08:00
Ryan Dahl
d083f7271b
v0.2.0
...
Changes since v0.1.12:
- First pass at running subprocesses (#1156 )
- Improve flag parsing (#1200 )
- Improve fetch() (#1194 #1188 #1102 )
- Support shebang (#1197 )
2018-11-16 13:23:50 +08:00
Ryan Dahl
975f75d81e
Specify exact versions in Cargo.toml
...
To fix "cargo check" on travis, where they have silently upgraded us
from Ring 0.13.2 to 0.13.4, which has some errors.
2018-11-16 11:20:35 +08:00
Ryan Dahl
3c8d2bde68
Support request method and headers in fetch() ( #1188 )
...
Adds a general HttpHeader flatbuffer message for serializing requests
and responses.
2018-11-14 17:36:34 -08:00
Ryan Dahl
0c740ff85d
v0.1.12
...
- Update to TypeScript 3.1.6 (#1177 )
- Fixes Headers type not available. (#1175 )
- Reader/Writer to use Uint8Array not ArrayBufferView (#1171 )
- Fixes importing modules starting with 'http'. (#1167 )
- build: Use target/ instead of out/ (#1153 )
- Support repl multiline input (#1165 )
2018-11-12 09:16:00 -08:00
Ryan Dahl
e1d5f82d36
v0.1.11
...
- Performance and stability improvements on all platforms.
- Add repl (#998 )
- Add deno.Buffer (#1121 )
- Support cargo check (#1128 )
- Upgrade Rust crates and Flatbuffers. (#1145 , #1127 )
- Add helper to turn deno.Reader into async iterator (#1130 )
- Add ability to load JSON as modules (#1065 )
- Add deno.resources() (#1119 )
- Add application/x-typescript mime type support (#1111 )
2018-11-05 14:51:29 -08:00
Andy Hayden
27ecfc1617
Add repl ( #998 )
...
- Running repl from js side.
- Add tests for repl behavior.
- Handle ctrl-C and ctrl-D.
2018-11-05 09:55:59 -08:00
Bert Belder
b9914c3113
third_party: add tokio-process Rust crate and its dependencies
2018-11-03 07:42:24 +01:00
Bert Belder
a244c16270
third_party: upgrade Rust crates
2018-11-03 07:22:04 +01:00
Ryan Dahl
198e396ead
Support cargo check ( #1128 )
...
- Based on code from @qti3e and @piscisaureus in #724 and #1125
respectively.
- TODO The DENO_BUILD_PATH env var must be supplied and must be an
absolute path, this restriction should be removed in future work.
2018-10-31 11:11:10 -07:00
Ryan Dahl
6adc87e3eb
Ergonomics: Prompt TTY for permission escalation ( #1081 )
2018-10-27 06:11:39 -07:00
Kevin (Kun) "Kassimo" Qian
a99aaf5def
Add chmod/chmodSync on unix (and fix Cargo.toml) ( #1088 )
...
Initial implementation by Srijan Reddy (@srijanreddy98, #672 ).
2018-10-26 13:01:45 -07:00
Ryan Dahl
6e6deed12d
Upgrade crates
2018-10-19 21:42:23 -04:00
ztplz
b809a82fd9
Add missing copyrights ( #1024 )
2018-10-19 15:25:29 -04:00
Ryan Dahl
930df1848a
Upgrade hyper-rustls
...
This removes tokio-core, which was deprecated.
2018-10-10 12:19:08 -04:00
Bert Belder
82d0638139
Add missing deps to cargo.toml
...
We're using ring and futures directly, so they should be listed in
cargo.toml.
2018-09-17 12:09:20 -07:00
Ryan Dahl
24ebd80ae7
Upgrade rust crates.
2018-09-17 12:09:20 -07:00
Kevin (Kun) "Kassimo" Qian
0185f9f9de
Add the 'dirs' crate, enable the required 'winapi' features
2018-09-16 18:38:41 -07:00
Ryan Dahl
4ccae957fb
Upgrade flatbuffers
2018-09-03 10:45:58 -04:00
Ryan Dahl
d8d5c421c3
Support https imports.
...
Adds hyper-rustls to the build.
Use ring for sha1 instead of "ssh1" crate.
Fixes #528 .
2018-08-30 08:29:28 -04:00
Ryan Dahl
11896647e6
Downgrading tokio to registry version.
...
Prep for rustls.
2018-08-30 08:29:28 -04:00
Bert Belder
ceaf822682
Implement makeTempDirSync()
2018-08-29 22:40:05 +02:00
Thomas Ghysels
7b0618c20b
Add hyper dependencies
2018-08-20 16:53:39 -04:00
Robby Madruga
58b2362a24
Add 'tokio' and dependencies
...
Use tokio from git.
2018-08-09 01:13:11 +02:00
Ryan Dahl
229e3b80c5
Improve rust build docs
2018-08-03 10:04:12 -04:00
Ryan Dahl
1f093c12f8
Add sha1 and tempfile crates.
2018-07-29 00:22:39 -04:00
Ryan Dahl
0875411267
Add tools/build.py ( #398 )
...
To allow better tab completion for ./tools/build.py
mv build_third_party.py sync_third_party.py
2018-07-24 13:42:23 -04:00
robbym
d93bd4b127
Use Cargo to install rust deps into //third_party/rust_crates ( #383 )
2018-07-18 20:00:53 -04:00