summaryrefslogtreecommitdiff
path: root/core
AgeCommit message (Collapse)Author
2021-05-31fix(cli): Don't statically error on dynamic unmapped bare specifiers (#10618)Nayeem Rahman
Fixes #10168 Fixes #10615 Fixes #10616
2021-05-31chore: upgrade Tokio to 1.6.1 (#10782)Yusuke Tanaka
2021-05-31fix(cli): Don't statically error on dynamic unmapped bare specifiers (#10618)Nayeem Rahman
Fixes #10168 Fixes #10615 Fixes #10616
2021-05-29core: don't include_str extension js code (#10786)Luca Casonato
This speeds up incremental rebuild when only touching JS files by 13-15% Rebuild time after `touch 01_broadcast_channel.js`: main: run 1 49.18s, run 2 50.34s this: run 1 43.12s, run 2 43.19s
2021-05-29chore: upgrade Tokio to 1.6.1 (#10782)Yusuke Tanaka
2021-05-26refactor: move JsRuntimeInspector to deno_core (#10763)Bartek Iwańczuk
This commit moves implementation of "JsRuntimeInspector" to "deno_core" crate. To achieve that following changes were made: * "Worker" and "WebWorker" no longer own instance of "JsRuntimeInspector", instead it is now owned by "deno_core::JsRuntime". * Consequently polling of inspector is no longer done in "Worker"/"WebWorker", instead it's done in "deno_core::JsRuntime::poll_event_loop". * "deno_core::JsRuntime::poll_event_loop" and "deno_core::JsRuntime::run_event_loop", now accept "wait_for_inspector" boolean that tells if event loop should still be "pending" if there are active inspector sessions - this change fixes the problem that inspector disconnects from the frontend and process exits once the code has stopped executing.
2021-05-19refactor(core): move ModuleMap to separate RefCell (#10656)Bartek Iwańczuk
This commit moves bulk of the logic related to module loading from "JsRuntime" to "ModuleMap". Next steps are to rewrite the actual loading logic (represented by "RecursiveModuleLoad") to be a part of "ModuleMap" as well -- that way we will be able to track multiple module loads from within the map which should help me solve the problem of concurrent loads (since all info about currently loading/loaded modules will be contained in the ModuleMap, so we'll be able to know if actually all required modules have been loaded).
2021-05-19tooling: re-enable bench_util (#10674)Aaron O'Mullan
2021-05-18cleanup(core.js): make op wrapper arg names generic (#10675)Aaron O'Mullan
These bits were missed in #10448.
2021-05-17chore: release crates (#10661)Luca Casonato
For the Deno 1.10.2 release.
2021-05-17chore: update dependencies (#10660)Luca Casonato
2021-05-15cleanup(core/example/hello_world): use Deno.core.print instead of new op ↵Aaron O'Mullan
(#10645)
2021-05-15cleanup(core): flatten print's op args (#10643)Aaron O'Mullan
2021-05-15chore: upgrade Tokio to 1.6.0 (#10637)Yusuke Tanaka
2021-05-11chore: release crates (#10596)Bartek Iwańczuk
2021-05-11feat(runtime/worker): Structured cloning worker message passing (#9323)Tim Ramlot
This commit upgrade "Worker.postMessage()" implementation to use structured clone algorithm instead of non-spec compliant JSON serialization.
2021-05-10upgrade: rusty_v8 0.22.2 (#10551)Bartek Iwańczuk
2021-05-09docs: fix a tiny typo (#10535)heddi.nabbisen
2021-05-08cleanup(ops): remove unused ZeroCopyBuf arg-types (#10530)Aaron O'Mullan
2021-05-07fix: align plugin api with Extension (#10427)Elias Sjögreen
2021-05-06refactor(ops): replace `ZeroCopyBuf` arg by 2nd generic deserializable arg ↵Aaron O'Mullan
(#10448)
2021-05-03fix(core): error registration could pollute constructors (#10422)Aaron O'Mullan
Co-authored-by: Luca Casonato <lucacasonato@yahoo.com>
2021-05-03fix(core/print): flush stderr (#10480)Aaron O'Mullan
2021-05-02refactor(core): convert core.print() to a builtin op (#10436)Aaron O'Mullan
2021-05-01fix(core): fix typo in error message of print function (#10456)Aditya Pandit
2021-04-30cleanup(core): use ZeroCopyBuf for serialize & encode bindings (#10435)Aaron O'Mullan
2021-04-30refactor(core): provide builtins as an Extension (#10449)Aaron O'Mullan
2021-04-30Rename crate_ops to extensions (#10431)Andy Hayden
2021-04-30cleanup(core): replace OpResponse with OpResult (#10434)Aaron O'Mullan
Drop the Value/Buffer enum since #10432 allows buffers to be serialized rust => v8
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-30feat(serde_v8): ZeroCopyBuf (#10432)Aaron O'Mullan
Bidirectional zero-copy serialization of buffers between v8 & rust that can be nested in structs/tuples/etc.
2021-04-30refactor(core.js): provide window.__bootstrap (#10423)Aaron O'Mullan
2021-04-28refactor(extensions): reintroduce builder (#10412)Aaron O'Mullan
2021-04-28enable error-on-warning (#10410)Ryan Dahl
Only on linux and osx. Fixes one warning.
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-26fix(tls): throw meaningful error when hostname is invalid (#10387)Bert Belder
`InvalidDNSNameError` is thrown when a string is not a valid hostname, e.g. it contains invalid characters, or starts with a numeric digit. It does not involve a (failed) DNS lookup.
2021-04-26feat(core): enable wasm threading support (#10116)Casper Beyer
2021-04-26remove #![deny(warnings)] (#10376)Ryan Dahl
Prefer RUSTFLAGS="-D warnings" to prevent warnings, but cannot enable yet due to #10378.
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-25refactor(core): move builtin ops to their own file (#10336)Aaron O'Mullan
2021-04-25feat(core): allow async opcalls in snapshots (#10308)Aaron O'Mullan
2021-04-24docs: updated link (#10345)Anssi Eteläniemi
2021-04-23refactor(core): rename send() to opcall() (#10307)Aaron O'Mullan
I think it's a better fit since recv() was killed and opcall <> syscall (send/recv was too reminiscent of request/response and custom payloads)
2021-04-23chore: release crates (#10327)Luca Casonato
Release crates for the cli 1.9.2 release.
2021-04-23chore: remove dead code (#10321)Ryan Dahl
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-21refactor(core): kill recv() and init() (#10299)Aaron O'Mullan
`init()` was previously needed to init the shared queue, but now that it's gone `init()` only registers the async msg handler which is snapshot safe and constant since the op layer refactor.
2021-04-21chore: release crates (#10269)Bartek Iwańczuk
* Revert "tooling(bench_util): benching and profiling utilities (#10223)" This reverts commit 733a00030582375c43fa156e978f25df6ecc9e9a. * Upgrade notify