summaryrefslogtreecommitdiff
path: root/core/isolate.rs
AgeCommit message (Collapse)Author
2020-05-28tidy up deno_core modules (#5923)Ryan Dahl
2020-05-17Miscellaneous documentation and spelling improvements (#5527)Bert Belder
* Extended/updated documentation on code editor setup and plugins. * Moved documentation to the right file. * Fixed spelling errors in documentation and code. * Updated broken links. Co-authored-by: 迷渡 <justjavac@gmail.com> Co-authored-by: AlfieriChou <alfierichou@gmail.com> Co-authored-by: Anil Seervi <anil13112000@gmail.com Co-authored-by: Bert Belder <bertbelder@gmail.com> Co-authored-by: Fernando Basso <fernandobasso.br@gmail.com> Co-authored-by: József Sallai <jozsef@sallai.me> Co-authored-by: S4ltyGo4t <mario.weidner@gmx.de> Co-authored-by: Tommy May <tommymay37@gmail.com> Co-authored-by: Turbinya <wownucleos@gmail.com> Co-authored-by: ᴜɴвʏтᴇ <i@shangyes.net>
2020-05-16fix some unwrap() in Rust (#5485)Yiyu Lin
2020-05-14Fix typos across the repo (#5295)Dante Calderón
Corrections made: * cli/js/tests/README.md:44:7: corrected "discoveres" to "discovers" * cli/js/tests/chown_test.ts:111:37: corrected "priviledge" to "privilege" * cli/worker.rs:231:56: corrected "decendants" to "descendants" * deno_typescript/lib.rs:136:50: corrected "emmited" to "emitted" * core/es_isolate.rs:492:67: corrected "registerd" to "registered" * core/isolate.rs:103:28: corrected "initalize" to "initialize" * docs/runtime.md:29:14: corrected "ect" to "etc" * docs/tools/debugger.md:122:16: corrected "implementes" to "implements" * std/encoding/_yaml/dumper/dumper_state.ts:57:63: corrected "everwhere" to "everywhere" * std/encoding/csv.ts:37:43: corrected "referal" to "referral" * std/fmt/sprintf.ts:209:20: corrected "unusuable" to "unusable" * std/fmt/README.md:21:40: corrected "Alternativly" to "Alternatively" * std/fmt/README.md:35:68: corrected "seperated" to "separated" * std/fmt/README.md:179:59: corrected "provded" to "provided" * std/mime/multipart.ts:581:46: corrected "writen" to "written" * std/path/_globrex.ts:19:52: corrected "equivelant" to "equivalent" * std/node/events_test.ts:447:9: corrected "asyncronous" to "asynchronous" * std/node/events_test.ts:475:9: corrected "asyncronous" to "asynchronous" * std/node/events_test.ts:500:29: corrected "asyncronous" to "asynchronous" * std/node/events_test.ts:530:40: corrected "asyncronous" to "asynchronous" * std/node/events_test.ts:555:9: corrected "asyncronous" to "asynchronous" * tools/deno_tcp_proxy.ts:1:42: corrected "perfromance" to "performance" * std/node/module.ts:1003:18: corrected "existend" to "existed"
2020-05-12Clean up core/shared_queue.js (#5237)Ryan Dahl
2020-05-10Allow starting isolate from snapshot bytes on the heap (#5187)Marcus Weiner
2020-04-23Rename deno_core::Isolate to deno_core::CoreIsolate (#4851)Ryan Dahl
2020-04-23Upgrade to rusty_v8 v0.4.0 (#4856)Bert Belder
2020-04-21Move resource_table from deno::State to deno_core::Isolate (#4834)Ryan Dahl
2020-04-19Modify op dispatcher to include &mut Isolate argument (#4821)Ryan Dahl
- Removes unnecessary RwLock and Rc around the op registry table - Preparation to move resource_table to deno_core::Isolate. - Towards #3453, #4222
2020-04-18Fix Op definitions (#4814)Ryan Dahl
2020-04-16Properly propagate error when deno_core::Isolate gets syntax error (#4770)Ryan Dahl
Co-authored-by: Filipe Schenkel de Souza <filipe.schenkel@azion.com> Co-authored-by: Douglas Caetano dos Santos <douglas.santos@azion.com> Co-authored-by: João Avelino Bellomo Filho <joao.avelino@azion.com>
2020-03-27feat: Support Inspector / Chrome Devtools (#4484)Ryan Dahl
This is a first pass implementation which is still missing several important features: - support for --inspect-brk (#4503) - support for source maps (#4501) - support for piping console.log to devtools console (#4502) Co-authored-by: Bert Belder <bertbelder@gmail.com> Co-authored-by: Matt Harrison <mt.harrison86@gmail.com> Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2020-03-19Simplify timer with macrotask callback (#4385)Kevin (Kun) "Kassimo" Qian
2020-03-15feat: Deno.core.{encode,decode}; standalone UTF-8 encoding/decoding (#4349)Bartek Iwańczuk
This commits add two new methods to "Deno.core" namespace: "encode" and "decode". Those methods are bound in Rust to provide a) fast b) generally available of encoding and decoding UTF-8 strings. Both methods are now used in "cli/js/dispatch_json.ts".
2020-03-02Do not convert exceptions to JSON and back (#4214)Bert Belder
2020-03-02Don't reset exception handle after calling ErrWithV8Handle::get_handle() (#4214)Bert Belder
2020-02-29Refactor exception handling, remove message listener callback (#4198)Bert Belder
2020-02-28Exit HandleScope before snapshotting (#4168)Bert Belder
The V8 documentation explicitly states that SnapshotCreator::CreateBlob() should not be called from within a HandleScope. Additionally, this patch removes some non-functional error handling code from the deno_core::Isolate::snapshot() method.
2020-02-27Fix typo in assert!() invocation (#4167)Bert Belder
2020-02-26Remove impl Send for Isolate and EsIsolate (#4151)Ryan Dahl
2020-02-26Upgrade to rusty_v8 v0.3.3 (#4119)Bert Belder
2020-02-15refactor: replace Arc<Box<..>> with Rc<..> (#3996)Bartek Iwańczuk
2020-02-09No longer require aligned buffer for shared queue (#3935)Andy Finch
Fixes: #3925
2020-02-03refactor: Use Tokio's single-threaded runtime (#3844)Ryan Dahl
This change simplifies how we execute V8. Previously V8 Isolates jumped around threads every time they were woken up. This was overly complex and potentially hurting performance in a myriad ways. Now isolates run on their own dedicated thread and never move. - blocking_json spawns a thread and does not use a thread pool - op_host_poll_worker and op_host_resume_worker are non-operational - removes Worker::get_message and Worker::post_message - ThreadSafeState::workers table contains WorkerChannel entries instead of actual Worker instances. - MainWorker and CompilerWorker are no longer Futures. - The multi-threaded version of deno_core_http_bench was removed. - AyncOps no longer need to be Send + Sync This PR is very large and several tests were disabled to speed integration: - installer_test_local_module_run - installer_test_remote_module_run - _015_duplicate_parallel_import - _026_workers
2020-01-25Refactor error tracking and scope juggling in deno_core (#3783)Bert Belder
2020-01-24s/PinnedBuf/ZeroCopyBuf (#3782)Ryan Dahl
2020-01-23Upgrade rusty_v8 to 0.2.0 (#3764)Ryan Dahl
2020-01-23refactor: remove Isolate.shared_response_buf optimization (#3759)Bartek Iwańczuk
Op return values are no zero copied from Rust to JS.
2020-01-22Reland "Create an old program to be used in snapshot." (#3747)Bartek Iwańczuk
* read CLI assets from disk during snapshotting
2020-01-21Upgrade to rusty_v8 v0.1.1 (#3741)Bert Belder
2020-01-21Revert "Create an old program to be used in snapshot. (#3644)"Ry Dahl
Ref #3712. This change allowed the deno_typescript crate to reference cli/js/lib.deno_runtime.d.ts which breaks "cargo package". We intend to reintroduce a revised version of this patch later once "cargo package" is working and tested. This reverts commit 737ab94ea1bdf65eeef323ea37e84bcf430fb92c.
2020-01-21feat: add AsyncUnref ops (#3721)Yoshiya Hinosawa
This is in order to support features like signal handlers, which shouldn't prevent the program from exiting.
2020-01-21refactor: split worker and worker host logic (#3722)Bartek Iwańczuk
* split ops/worker.rs into ops/worker_host.rs and ops/web_worker.rs * refactor js/workers.ts and factor out js/worker_main.ts - entry point for WebWorker runtime * BREAKING CHANGE: remove support for blob: URL in Worker * BREAKING CHANGE: remove Deno namespace support and noDenoNamespace option in Worker constructor * introduce WebWorker struct which is a stripped down version of cli::Worker
2020-01-17workers: minimal error handling and async module loading (#3665)Bartek Iwańczuk
2020-01-17feat: support individual async handler for each op (#3690)Andy Finch
2020-01-17Upgrade to rusty_v8 v0.1.0 (#3691)Bert Belder
2020-01-12Create an old program to be used in snapshot. (#3644)Kitson Kelly
2020-01-11refactor: remove Isolate.current_send_cb_info and DenoBuf, port ↵Bartek Iwańczuk
Isolate.shared_response_buf (#3643) * remove Isolate.current_send_cb_info * remove DenoBuf * remove Isolate.shared_ab * port Isolate.shared_response_buf (last bit not ported from libdeno) * add some docs for Isolate and EsIsolate
2020-01-07core: factor out EsIsolate from Isolate (#3613)Bartek Iwańczuk
2020-01-06refactor: remove core/libdeno.rs (#3611)Bartek Iwańczuk
2020-01-06error on warnings (#3612)Ry Dahl
2020-01-06merge libdeno::DenoIsolate into core::Isolate (#3605)Bartek Iwańczuk
2020-01-05libdeno: don't pass pointers between core::Isolate and libdeno (#3602)Bartek Iwańczuk
2020-01-05Replace libdeno with rusty_v8 (#3556)Ry Dahl
2020-01-02Add missing year ranges to copyright notices (#3582)Waldir Pimenta
2019-12-20repl: do not crash on async op reject (#3527)Kevin (Kun) "Kassimo" Qian
2019-12-08fix isolate tests (#3459)Bartek Iwańczuk
Some tests were silently failing after #3358 and #3434 because pool.spawn_ok was used which doesn't panic on errors. For reference, the failure looked like this: thread '<unnamed>' panicked at 'assertion failed: match isolate.poll_unpin(cx) { Poll::Ready(Ok(_)) => true, _ => false, }', core/isolate.rs:1408:7
2019-12-02disable eager polling for ops (#3434)Bartek Iwańczuk
2019-11-18feat: op registration during calls (#3375)Andy Finch