summaryrefslogtreecommitdiff
path: root/cli/ops/dispatch_json.rs
AgeCommit message (Collapse)Author
2020-02-23refactor: use OpError instead of ErrBox for errors in ops (#4058)Bartek Iwańczuk
To better reflect changes in error types in JS from #3662 this PR changes default error type used in ops from "ErrBox" to "OpError". "OpError" is a type that can be sent over to JSON; it has all information needed to construct error in JavaScript. That made "GetErrorKind" trait useless and so it was removed altogether. To provide compatibility with previous use of "ErrBox" an implementation of "From<ErrBox> for OpError" was added, however, it is an escape hatch and ops implementors should strive to use "OpError" directly.
2020-02-09No longer require aligned buffer for shared queue (#3935)Andy Finch
Fixes: #3925
2020-02-07Enable thread pool for blocking ops (#3912)Ryan Dahl
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-24s/PinnedBuf/ZeroCopyBuf (#3782)Ryan Dahl
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: don't create new runtime for fs ops (#3730)Bartek Iwańczuk
2020-01-05Rename crates: 'deno' to 'deno_core' and 'deno_cli' to 'deno' (#3600)Ry Dahl
2020-01-02Happy new year! (#3578)Ry Dahl
2019-11-16Use futures 0.3 API (#3358)Bartek Iwańczuk
2019-10-25fix: handle malformed control buffers (#3202)Bartek Iwańczuk
2019-10-01use Isolate::register_op in deno_cli (#3039)Bartek Iwańczuk
2019-08-26fix: shared queue requires aligned buffer (#2816)Bartek Iwańczuk
2019-08-22introduce JSON serialization for ops (#2799)Ryan Dahl
Converts env(), exit(), execPath(), utime() and utimeSync() to use JSON instead of flatbuffers.