1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-26 17:19:06 -05:00
Commit graph

603 commits

Author SHA1 Message Date
Luca Casonato
f9ff981daf
feat: MessageChannel and MessagePort (#11051)
This commit introduces support for MessageChannel and MessagePort.
MessagePorts can be transfered across other MessagePorts.
2021-06-21 19:53:52 +02:00
Bartek Iwańczuk
2c0e482221
v1.11.2 2021-06-21 17:47:25 +02:00
Leo K
afe89e8850
fix(websocket): spec conformance & WPT (#11010) 2021-06-21 12:15:08 +02:00
Yasser A.Idrissi
0cbaeca026
fix: fetch with method HEAD should not have body (#11003) 2021-06-18 11:14:14 +02:00
Luca Casonato
2a66d5de01
fix: align URL / URLSearchParams to spec (#11005) 2021-06-16 18:40:35 +02:00
Luca Casonato
77ab2bee9f
fix: some more console spec compliance (#10983) 2021-06-16 15:48:39 +02:00
Luca Casonato
ac431ca076
fix: closing / aborting WritableStream is racy (#10982) 2021-06-16 02:46:08 +02:00
Luca Casonato
b6fd39377e
fix: pass some more WHATWG streams WPT (#10970) 2021-06-15 17:48:25 +02:00
Luca Casonato
4cbc4a7eb3
fix: make WHATWG streams more compliant (#10967) 2021-06-15 13:46:02 +02:00
Luca Casonato
f48d66b2b0
tests: fix wpt epoch ci job (#10960) 2021-06-14 20:57:02 +02:00
Luca Casonato
d837445e44
build: add wpt epoch/daily run (#10937)
This adds a daily scheduled CI pipeline that runs WPT tests against
the most recent epochs/daily every night. Results are uploaded to
wpt.fyi.

WPTs are run on all supported platforms, on both stable and canary.
2021-06-14 13:48:57 +02:00
Luca Casonato
614dc1bce7
fix: propagate top level thrown errors in WPT (#10932)
Previously top level errors were swallowed.
2021-06-11 21:31:53 +02: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
Bartek Iwańczuk
b98293e21c
v1.11.0 2021-06-08 21:38:36 +02:00
Bartek Iwańczuk
3a96fe55a0
chore: release crates (#10896) 2021-06-08 20:34:18 +02:00
David Sherret
6ee983b127
chore(tools): Fix stdout buffer of launched process getting full causing tools/lint.js to hang on Windows (#10888)
Also fix Windows only clippy issues.
2021-06-07 22:29:47 -04:00
Luca Casonato
8e96961f0e
chore: update wpt (#10884)
This commit updates wpt. It tries to get us ever closer to eventually
stop floating patches, and being able to use wpt upstream.
2021-06-07 19:16:27 +02:00
Luca Casonato
7b9c59fd71
tests: upload WPT reports to wpt.fyi (#10883) 2021-06-07 17:41:33 +02:00
Luca Casonato
3a4a47799f
refactor: clean up webidl protype configuration (#10871) 2021-06-07 10:04:10 +02:00
Luca Casonato
a66f327250
tests: run wpt scripts with Deno.core.evalContext (#10852)
This means wpts are now run in script context, and there are better
stack traces.
2021-06-06 18:32:06 +02:00
Luca Casonato
f1deed41e7
tests: generate and upload wptreport.json (#10869)
These reports can be consumed by tools like `wptreport` or
https://wpt.fyi. The old style report could be removed in a future PR
when wpt.deno.land is updated.
2021-06-06 18:08:50 +02:00
Luca Casonato
1fb2e23a67
feat(fetch): implement abort (#10863)
This commit introduces fetch aborting via an AbortSignal.
2021-06-06 15:37:17 +02:00
Casper Beyer
3f9187c366
feat(extensions/crypto): implement subtle.digest (#10796)
Co-authored-by: Yacine Hmito yacinehmito@users.noreply.github.com
2021-06-06 12:57:10 +02:00
Andreu Botella
62bf403157
feat(web): Implement TextDecoderStream and TextEncoderStream (#10842) 2021-06-06 03:23:16 +02:00
Luca Casonato
c73ef5fa14
refactor(web): use encoding_rs for text encoding (#10844)
This commit removes all JS based text encoding / text decoding. Instead
encoding now happens in Rust via encoding_rs (already in tree). This
implementation retains stream support, but adds the last missing
encodings. We are incredibly close to 100% WPT on text encoding now.

This should reduce our baseline heap by quite a bit.
2021-06-05 23:10:07 +02:00
Leo K
bb0c90cadb
fix(crypto): change Crypto to interface (#10853)
Co-authored-by: Luca Casonato <hello@lcas.dev>
2021-06-05 22:56:59 +02:00
Luca Casonato
368c784d7f
tests: disable failing stream idl test (#10860)
Didn't catch failure in original PR due to #10856 and merge ordering.
2021-06-05 21:59:03 +02:00
Leo K
b748415baf
fix(streams): expose ReadableByteStreamController & TransformStreamDefaultController (#10855) 2021-06-05 19:32:05 +02:00
Luca Casonato
706b75d742
tests: fix wpt runner expected test file failures (#10856) 2021-06-05 19:29:41 +02:00
Leo K
5bed6d56ec
tests: remove non-applicable webstorage wpt (#10858) 2021-06-05 19:29:28 +02:00
Leo K
cf351f77c2
feat(extensions/crypto): implement randomUUID (#10848) 2021-06-05 14:46:24 +02:00
Luca Casonato
1abff0e333
chore: add web crypto to expectations (#10845)
This should make wpt.deno.land a lot more accurate about our current
implementation status.
2021-06-04 20:46:44 +02:00
Andreu Botella
03184aeabb
fix(fetch): implement newline normalization and escapes in the multipart/form-data serializer (#10832) 2021-06-03 20:48:09 +02:00
Luca Casonato
b2a4c2e4f6
build: collect wpt results as json (#10823) 2021-06-03 01:12:28 +02:00
Luca Casonato
9ae8dbf173
chore: update wpt (#10807) 2021-06-01 18:24:31 +02:00
Andreu Botella
e466a6fc9a
fix: Support the stream option to TextDecoder#decode (#10805) 2021-06-01 11:24:16 +02:00
Luca Casonato
1f83b56d43
fix: remove unimplemented Request attributes (#10784)
Not having them is better than throwing "unimplemented" errors on
access.
2021-05-31 11:03:17 +02:00
Luca Casonato
d5d59bb794
fix(fetch): make prototype properties writable (#10769) 2021-05-26 23:44:42 +02:00
Yoshiya Hinosawa
c8b3f85796
fix(extension/file): update File constructor following the spec (#10760) 2021-05-25 22:35:17 +09:00
Ben Noordhuis
af1546391c feat(extensions): BroadcastChannel WPT conformance
Replaces the file-backed provider by an in-memory one because proper
file locking is a hard problem that detracts from the proof of concept.

Teach the WPT runner how to extract tests from .html files because all
the relevant tests in test_util/wpt/webmessaging/broadcastchannel are
inside basics.html and interface.html.
2021-05-23 15:16:42 +02:00
Aaron O'Mullan
eb56186e44
fix(serde_v8): remove intentional deserialization error on non-utf8 strings (#10156)
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2021-05-19 20:45:48 +02:00
Yusuke Tanaka
cda09c166f
chore: update deno_lint binary used in CI to v0.5.0 (#10652) 2021-05-18 17:24:01 +02:00
crowlKats
dfe528198d
feat: add WebStorage API (#7819)
This commit introduces localStorage and sessionStorage.
2021-05-10 12:02:47 +02:00
Luca Casonato
d806dc0f16
chore: update wpt (#10509) 2021-05-09 16:32:30 +02:00
Thiago Padilha
18a684ab1c
fix: TextEncoder#encodeInto spec compliance + perf gains (#10129) 2021-05-08 23:31:40 +02:00
David Sherret
a9c58d5e51
chore: upgrade dprint 0.13.1 to fix CI. (#10513) 2021-05-06 13:22:24 +09:00
Anonymous
688557e226
fix(op_crates/fetch): check fetch() argument length (#10474) 2021-05-03 09:05:42 +02:00
Andy Hayden
684c357136
Rename crate_ops to extensions (#10431) 2021-04-30 15:51:48 -04:00
Satya Rohith
2bd087ab1b
chore: upgrade dprint plugins (#10397) 2021-04-28 10:08:51 -04:00
Casper Beyer
e4e7d957e8
feat(core): enable wasm threading support (#10116) 2021-04-26 17:54:07 +02:00
Aaron O'Mullan
801244027d
flamebench: streamline profiling benches (#10121) 2021-04-26 16:41:53 +02:00
Luca Casonato
cdd2355f0f
tests: enable idlharness wpt (#10371)
This enables more test cases that expose issues in our implementation.
2021-04-26 13:02:49 +02:00
Bartek Iwańczuk
e23cfcd577
chore: add readme for cutting release (#10070)
Co-authored-by: Luca Casonato <lucacasonato@yahoo.com>
Co-authored-by: Yoshiya Hinosawa <stibium121@gmail.com>
2021-04-20 17:00:14 +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
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
Casper Beyer
ec1fce58d9
fix(core): remove wasm-test-streaming flag (#10158) 2021-04-13 06:20:05 -04:00
Bert Belder
06b5959eed
ci: store last-modified timestamps in Github Actions cache (#10110) 2021-04-11 20:57:17 +00:00
Bert Belder
ae95da5d10
Revert "use incremental build in ci (#10053)" (#10110)
This reverts commit fd65e6de3d.
2021-04-11 20:57:16 +00: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
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
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
Yoshiya Hinosawa
fd65e6de3d
use incremental build in ci (#10053) 2021-04-07 10:17:55 -04: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
fec1b2a5a4
refactor: new optimized op-layer using serde_v8 (#9843)
- Improves op performance.
- Handle op-metadata (errors, promise IDs) explicitly in the op-layer vs
  per op-encoding (aka: out-of-payload).
- Remove shared queue & custom "asyncHandlers", all async values are
  returned in batches via js_recv_cb.
- The op-layer should be thought of as simple function calls with little
  indirection or translation besides the conceptually straightforward
  serde_v8 bijections.
- Preserve concepts of json/bin/min as semantic groups of their
  inputs/outputs instead of their op-encoding strategy, preserving these
  groups will also facilitate partial transitions over to v8 Fast API for the
  "min" and "bin" groups
2021-03-31 10:37:38 -04:00
crowlKats
b11249647f
fix: update wpt + align AbortController (#9907) 2021-03-27 15:49:57 +01:00
Bartek Iwańczuk
faf2e80272
chore: upgrade crates (#9632) 2021-03-02 13:39:56 +01:00
Nayeem Rahman
badc88b78a
refactor(op_crates/web): Move URL parsing to Rust (#9276) 2021-03-02 02:30:24 +01:00
Kitson Kelly
d26bef21a5
test(lsp): add benchmarking tests (#9586)
Co-authored-by: Ryan Dahl <ry@tinyclouds.org>
2021-02-25 16:14:17 +11:00
Luca Casonato
4f80587d26
chore: rename default branch to main (#9503) 2021-02-19 15:58:19 +01:00
Casper Beyer
3f5265b21e
fix: align btoa to spec (#9053) 2021-02-16 02:10:59 +01:00
Casper Beyer
a2adecbba6
tests: re-enable wpt/webappapis/timers (#9489) 2021-02-13 20:43:36 +01:00
Luca Casonato
af460fc464
fix: webidl utils and align Event to spec (#9470) 2021-02-13 15:58:12 +01:00
Casper Beyer
4c5631f85a
test(cli): enable microtask-queue tests (#9490) 2021-02-13 06:59:46 -05:00
Luca Casonato
25b35be50d
refactor: rewrite File implementation (#9334) 2021-02-04 15:05:36 +01:00
Dezső Mészáros
3f6483e501
typo (#9378) 2021-02-02 22:21:48 -05:00
Luca Casonato
fa975a9bae
refactor: rewrite Blob implementation (#9309)
Co-authored-by: Kitson Kelly <me@kitsonkelly.com>
2021-01-30 19:22:24 +01:00
Luca Casonato
6ecc86cf2a
chore: add jsdoc to 26_fetch.js and enable some fetch tests (#9305) 2021-01-28 21:37:21 +01:00
Dezső Mészáros
591ed6b3ad
fix(tools): fix typo in wpt cli output (#9303) 2021-01-28 18:10:16 +09:00
Luca Casonato
1698bc64c1
tests: enable url wpt (#9299) 2021-01-27 22:37:15 +01:00
Luca Casonato
2638aa03a5
tests: new typescript WPT runner (#9269) 2021-01-27 15:06:18 +01:00
Bartek Iwańczuk
b26dcbc69d
chore: Enforce ban-untagged-todo lint rule (#9135) 2021-01-17 00:32:59 +01:00
Ryan Dahl
2b75a11559
update copyright to 2021 (#9081) 2021-01-10 21:59:07 -05:00
Luca Casonato
a3099798c8
tests: add web platform test runner (#8990)
Co-authored-by: Kitson Kelly <me@kitsonkelly.com>
2021-01-05 12:07:27 +01:00
Yusuke Tanaka
9029003046
build: update dlint to v0.2.10 (#8284)
Update prebuilt "dlint" binary to v0.2.10 and fix diagnostics
for "require-await" rule.

Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2020-11-14 20:27:37 +01:00
Bartek Iwańczuk
6f48c526c6
chore: reference dprint config file in format script (#8318)
* chore: reference dprint config file in format script
* chore: ignore .git folder in dprint config
2020-11-09 20:56:43 +01:00
Casper Beyer
b244766f9d
docs(tools): add a little note about cargo run (#8297) 2020-11-08 20:56:36 +01:00
Bartek Iwańczuk
d96823b2ed
update third_party (#8253) 2020-11-05 16:49:03 +01:00
Bartek Iwańczuk
791119d4af
build: rewrite tools/ scripts to deno (#8247)
This commit rewrites scripts in "tools/" directory
to use Deno instead of Python. In return it allows 
to remove huge number of Python packages in "third_party/".
2020-11-05 15:53:21 +01:00
Bartek Iwańczuk
6dd7633261
chore: remove dead Python code (#8248) 2020-11-04 22:09:06 +01:00
Bartek Iwańczuk
ef641a07b8
build: remove eslint (#8232)
This commit updates "third_party" submodule 
to remove "eslint" and its dependencies.
In result "tools/package.json" has been removed.
2020-11-03 17:49:20 +01:00
Bartek Iwańczuk
8e914be742
build: migrate to dlint (#8176)
This commit migrates repository from using "eslint" 
to "dlint" for linting JavaScript code.
2020-11-03 16:19:29 +01:00
Bartek Iwańczuk
93deefcae2
chore: remove unused tools/ scripts (#8222) 2020-11-02 21:54:12 +01:00
Trivikram Kamat
d0eb179132
docs: end sentences with a period in markdown (#7813) 2020-10-04 07:19:11 +11:00
j4qfrost
d96e7226dd
refactor: use parentheses in print statements in python (#7779) 2020-10-02 09:59:53 +10:00
qlcom
1021dad5f6
mark shell code blocks as sh instead of bash (#7645) 2020-09-23 14:07:43 -04:00
Kitson Kelly
751bb45a0a
fix: ignore fileExists in tsc host (#7635)
Fixes #7630
2020-09-23 11:39:20 +10:00