Commit Graph

196 Commits

Author SHA1 Message Date
Luca Casonato 52d316f143
chore: release crates (#10327)
Release crates for the cli 1.9.2 release.
2021-04-23 15:05:12 +02:00
crowlKats 6824ffb999
fix(op_crates/webgpu): move non-null op buffer arg check when needed (#10319) 2021-04-23 11:18:32 +02:00
Luca Casonato 2b5cc6b498
fix: parse websocket messages correctly (#10318) 2021-04-23 01:31:34 +02:00
Aaron O'Mullan ff9ff4a377
refactor(core): simplify error handling (#10297)
- register builtin v8 errors in core.js so consumers don't have to
- remove complexity of error args handling (consumers must provide a 
  constructor with custom args, core simply provides msg arg)
2021-04-21 20:50:50 -04:00
Aaron O'Mullan 8d0e0ead51
fix(fetch): Response inspect regression (#10295) 2021-04-21 23:03:04 +02: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
Luca Casonato 9e6cd91014
chore: align fetch to spec (#10203)
This commit aligns the `fetch` API and the `Request` / `Response`
classes belonging to it to the spec. This commit enables all the
relevant `fetch` WPT tests. Spec compliance is now at around 90%.

Performance is essentially identical now (within 1% of 1.9.0).
2021-04-20 14:47:22 +02:00
Yoshiya Hinosawa 8424647d22
chore: update copyright headers (#10243) 2021-04-20 14:27:36 +09:00
crowlKats d6233100bd
refactor(op_crates/websocket): use Serialize for return values (#10220) 2021-04-19 17:54:56 +02:00
Aaron O'Mullan 776a999eab
op_crates/url: basic url_parse bench (#10245) 2021-04-19 15:42:59 +02:00
Luca Casonato 0552eaf569
chore: align `Headers` to spec (#10199)
This commit aligns `Headers` to spec. It also removes the now unused
03_dom_iterable.js file. We now pass all relevant `Headers` WPT. We do
not implement any sort of header filtering, as we are a server side
runtime.

This is likely not the most efficient implementation of `Headers` yet.
It is however spec compliant. Once all the APIs in the `HTTP` hot loop
are correct we can start optimizing them. It is likely that this commit
reduces bench throughput temporarily.
2021-04-19 01:00:13 +02:00
Luca Casonato 353e79c796
chore: align FormData to spec (#10169)
This PR aligns `FormData` to spec. All WPT tests are passing.
2021-04-14 22:49:16 +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
Bartek Iwańczuk 1be65bbe4f
chore: release crates (#10164) 2021-04-13 18:22:48 +02:00
Luca Casonato dabce813e0
perf: lazy header instantiation for HTTP requests (#10150)
This commit introduces a performance optimization for the native HTTP
server. From my testing it is about 2-6% faster than `main`. Request
headers in the HTTP servers are now lazilly instatated when they are
accessed, rather than being preemptively wrapped in the `Headers` class.
2021-04-13 02:46:33 +02:00
Aaron O'Mullan 9f26e639dd
perf(fetch): optimize normalizeMethod() (#10154) 2021-04-13 02:45:57 +02:00
Aaron O'Mullan 46b1c653c0
refactor(deno): remove concept of bin & json ops (#10145) 2021-04-12 15:55:05 -04:00
crowlKats fefe93c91b
feat(runtime/permissions): prompt fallback (#9376)
Co-authored-by: Yoshiya Hinosawa <stibium121@gmail.com>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2021-04-12 11:15:43 +09:00
Liam Murphy 3c645457a4
fix(op_crates/console): console.table value misalignment with varying keys (#10127) 2021-04-11 14:19:50 +02:00
Luca Casonato e7f18d6468
feat: blob URL support in fetch (#10120)
This commit adds blob URL support in `fetch`. Tested via WPT. This is
the first op_crate to have a rust dependency on a different op_crate.
2021-04-11 14:09:10 +02:00
Thiago de Arruda Padilha c0b6e09172
refactor(op_crates/web): remove unused code path in TextEncoder (#10104)
According to
https://developer.mozilla.org/en-US/docs/Web/API/TextEncoder,
TextEncoder should ignore the "encoding" parameter and always use
"utf-8".
2021-04-11 20:47:06 +09:00
Luca Casonato 3ab94983b4
feat: data URL support in fetch (#10054)
This commit adds data URL support in `fetch`. Tested via wpt.
2021-04-10 23:38:15 +02:00
Kitson Kelly d9d4a5d73c
feat(lsp): add registry import auto-complete (#9934) 2021-04-09 11:27:27 +10:00
Luca Casonato 4e70ff80c2
chore: update deps (#10058)
This commit updates crate dependencies.
2021-04-08 18:46:14 +02:00
Luca Casonato c867c1aa47
fix: enable FileReader wpt and align to spec (#10063)
This adds some algorithms from the whatwg mimesniff, whatwg infra, and
whatwg encoding specs that FileReader needs to use internally.
2021-04-08 15:05:08 +02:00
Luca Casonato ee07ef2962
chore: update deno_file to use deno_webidl (#10042)
This changes the custom input converters in deno_file to use deno_webidl
converters.
2021-04-08 01:23:26 +02:00
Luca Casonato 966ce7de8a
feat: blob URL support (#10045)
This commit adds blob URL support. Blob URLs are stored in a process
global storage, that can be accessed from all workers, and the module
loader. Blob URLs can be created using `URL.createObjectURL` and revoked
using `URL.revokeObjectURL`.

This commit does not add support for `fetch`ing blob URLs. This will be
added in a follow up commit.
2021-04-07 15:22:14 +02:00
crowlKats 704e1e5330
fix(webgpu): correct GPUFeatureName webidl to match typings (#10023) 2021-04-06 22:06:55 +02:00
Luca Casonato 00e63306cb
refactor: add deno_file op crate (#10019)
Also enables WPT for FileReader.
2021-04-06 12:55:05 +02:00
Aaron O'Mullan 2aed322dd5
refactor: convert ops to use serde_v8 (#10009)
This commit rewrites most of the ops to use "serde_v8" instead
of "json" serialization.
2021-04-05 18:40:24 +02:00
Aaron O'Mullan 058579da56
refactor(ops): remove variadic buffers (#9944) 2021-04-02 09:47:57 -04:00
Kitson Kelly df1d36a759 chore: bump dependent crates for cli (#9964) 2021-04-02 22:22:08 +11:00
Kitson Kelly f50385b2a5
Revert "fix(cli): align type definitions to spec (#9782)" (#9961)
This reverts commit f8aff8edcd.
2021-04-02 12:12:07 +11:00
Luca Casonato 0e72129da2
fix(websocket): ignore resource close error (#9755)
It is possible that the WebSocket is already closed when we try to
close it with `WebSocket#close` or in the `error` or `close` events.
Currently this leads to an uncatchable promise rejection. This changes
this so that closing an already closed WebSocket is a noop.
2021-04-02 00:55:22 +02:00
Casper Beyer f8aff8edcd
fix(cli): align type definitions to spec (#9782)
Fixes #5666
2021-04-01 20:23:16 +11:00
crowlKats b11249647f
fix: update wpt + align AbortController (#9907) 2021-03-27 15:49:57 +01:00
Aaron O'Mullan 940b3a26bd
chore: Add missing copyright headers (#9910) 2021-03-27 01:33:06 +01:00
Yusuke Tanaka e7954413e1
upgrade: Rust 1.51.0 (#9895) 2021-03-25 19:17:37 +01:00
Bartek Iwańczuk c08284ab9d
chore: release crates (#9847) 2021-03-21 16:10:08 +01:00
Ryan Dahl 0d26a82ea9
upgrade: tokio 1.4.0 (#9842) 2021-03-20 11:51:27 -04:00
crowlKats 0f9c929b3a
fix(op_crates/webgpu): create instance only when required (#9771)
Co-authored-by: Luca Casonato <lucacasonato@yahoo.com>
2021-03-20 00:43:54 +01:00
Divy Srivastava 91ca58fb26
chores: enforce type ResourceId across codebase (#9837) 2021-03-19 13:25:37 -04:00
crowlKats 197305908b
normalize rids (#9832) 2021-03-18 20:55:31 -04:00
Aaron O'Mullan 7d12dd1899
fix: fallback to default UA and CA data for Deno.createHttpClient() (#9830) 2021-03-18 23:54:26 +01:00
Luca Casonato 62716422b9
chore(console): distinguish between log levels (#9824)
Change `Console.#printFunc` to pass a log level as the second argument
(0 = debug, 3 = error), instead of a boolean for `isErr`. This does not
change the Deno runtime behaviour at all.
2021-03-18 19:25:25 +01:00
crowlKats b3fe85163f
refactor: use serde ops more (#9817) 2021-03-17 17:33:29 -04:00
Yusuke Tanaka c8fbf6d38a
chore: upgrade to tokio 1.3.0 (#9778) 2021-03-14 10:03:24 -04:00
Luca Casonato fbec6e39c7
chore: bump crates (#9769) 2021-03-12 22:29:07 +01:00
Luca Casonato 0770449c93
refactor: move Console to op_crates/console (#9770) 2021-03-12 21:23:59 +01: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