summaryrefslogtreecommitdiff
path: root/op_crates/url
AgeCommit message (Collapse)Author
2021-04-30Rename crate_ops to extensions (#10431)Andy Hayden
2021-04-30refactor(core): initialize extensions in runtime constructor (#10421)Aaron O'Mullan
This ensures that provided extensions are all correctly setup and ready to use once the JsRuntime constructor returns Note: this will also initialize ops for to-be-snapshotted runtimes
2021-04-30refactor(core.js): provide window.__bootstrap (#10423)Aaron O'Mullan
2021-04-28refactor(extensions): reintroduce builder (#10412)Aaron O'Mullan
2021-04-28core: introduce extensions (#9800)Aaron O'Mullan
Extensions allow declarative extensions to "JsRuntime" (ops, state, JS or middleware). This allows for: - `op_crates` to be plug-and-play & self-contained, reducing complexity leaked to consumers - op middleware (like metrics_op) to be opt-in and for new middleware (unstable, tracing,...) - `MainWorker` and `WebWorker` to be composable, allowing users to extend workers with their ops whilst benefiting from the other infrastructure (inspector, etc...) In short extensions improve deno's modularity, reducing complexity and leaky abstractions for embedders and the internal codebase.
2021-04-28refactor(core): simplify module loading code (#10385)Bartek Iwańczuk
General cleanup of module loading code, tried to reduce indentation in various methods on "JsRuntime" to improve readability. Added "JsRuntime::handle_scope" helper function, which returns a "v8::HandleScope". This was done to reduce a code pattern that happens all over the "deno_core". Additionally if event loop hangs during loading of dynamic modules a list of currently pending dynamic imports is printed.
2021-04-28chore: upgrade dprint plugins (#10397)Satya Rohith
2021-04-25refactor(core): move op cache sync responsibility to rust space (#10340)Aaron O'Mullan
Even if bootstrapping the JS runtime is low level, it's an abstraction leak of core to require users to call `Deno.core.ops()` in JS space. So instead we're introducing a `JsRuntime::sync_ops_cache()` method, once we have runtime extensions a new runtime will ensure the ops cache is setup (for the provided extensions) and then loading/unloading plugins should be the only operations that require op cache syncs
2021-04-23chore: release crates (#10327)Luca Casonato
Release crates for the cli 1.9.2 release.
2021-04-21refactor(core): simplify error handling (#10297)Aaron O'Mullan
- 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-21chore: release crates (#10269)Bartek Iwańczuk
* Revert "tooling(bench_util): benching and profiling utilities (#10223)" This reverts commit 733a00030582375c43fa156e978f25df6ecc9e9a. * Upgrade notify
2021-04-20chore: align fetch to spec (#10203)Luca Casonato
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-20chore: update copyright headers (#10243)Yoshiya Hinosawa
2021-04-19op_crates/url: basic url_parse bench (#10245)Aaron O'Mullan
2021-04-13chore: release crates (#10164)Bartek Iwańczuk
2021-04-12refactor(deno): remove concept of bin & json ops (#10145)Aaron O'Mullan
2021-04-08chore: update deps (#10058)Luca Casonato
This commit updates crate dependencies.
2021-04-07feat: blob URL support (#10045)Luca Casonato
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-05refactor: convert ops to use serde_v8 (#10009)Aaron O'Mullan
This commit rewrites most of the ops to use "serde_v8" instead of "json" serialization.
2021-04-02refactor(ops): remove variadic buffers (#9944)Aaron O'Mullan
2021-04-02chore: bump dependent crates for cli (#9964)Kitson Kelly
2021-03-21chore: release crates (#9847)Bartek Iwańczuk
2021-03-17refactor: use serde ops more (#9817)crowlKats
2021-03-12chore: bump crates (#9769)Luca Casonato
2021-03-12chore: split web op crate (#9635)Luca Casonato
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.