f891368057
- feat(lsp): diagnostics for deno types and triple-slash refs (#10699) - feat(lsp): provide X-Deno-Warning as a diagnostic (#10680) - feat(lsp): show hints from `deno_lint` in addition to messages (#10739) - feat(lsp): support formatting json and markdown files (#10180) - fix(cli): always allow documentation modules to be checked (#10581) - fix(cli): canonicalize coverage dir (#10364) - fix(cli): don't statically error on dynamic unmapped bare specifiers (#10618) - fix(cli): empty tsconfig.json file does not cause error (#10734) - fix(cli): support source maps with Deno.emit() and bundle (#10510) - fix(cli/dts): fix missing error class (NotSupported) in types (#10713) - fix(cli/install): support `file:` scheme URLs (#10562) - fix(cli/test): don't use reserved symbol `:` in specifier (#10751) - fix(cli/test): ensure coverage dir exists (#10717) - fix(cli/upgrade): modify download size paddings (#10639) - fix(runtime/http): expose nextRequest() errors in respondWith() (#10384) - fix(runtime/http): fix empty blob response (#10689) - fix(serde_v8): remove intentional deserialization error on non-utf8 strings (#10156) - fix(ext/fetch): fix error message of Request constructor (#10772) - fix(ext/fetch): make prototype properties writable (#10769) - fix(ext/fetch): remove unimplemented Request attributes (#10784) - fix(ext/file): update File constructor following the spec (#10760) - fix(ext/webstorage): use opstate for sqlite connection (#10692) - fix(lsp): deps diagnostics include data property (#10696) - fix(lsp): ignore type definition not found diagnostic (#10610) - fix(lsp): local module import added by code action now includes the file extension (#10778) - fix(lsp): make failed to load config error descriptive (#10685) - fix(lsp): memoize script versions per tsc request (#10601) - fix(lsp): re-enable the per resource configuration without a deadlock (#10625) - docs(cli): update getting started for clarity (#10694) - docs(cli/dts) replace `read()` with `readSync()` (#10732) - docs(cli/dts): fix plugin example (#10647) - docs(cli/dts): fix typo in `TestDefinition.only` description (#10697) - docs(cli/dts): fix unix socket examples (#10705) - docs(cli/dts): make worker example pass (#10703) - docs(cli/dts): tag test permission example as typescript (#10753) - docs(permissions): fix grammatical error in permissions docs (#10755) - docs(runtime): fix fetch API usage of HTTP server (#10777) - docs(testing): fix misspelling (#10683) - docs(typescript): fix typo in faqs (#10682) -----BEGIN PGP SIGNATURE----- iQFJBAABCgAzFiEERCcr7u+ib5W/fkyWeneIey4u1GEFAmC1RbwVHGJlcnRiZWxk ZXJAZ21haWwuY29tAAoJEHp3iHsuLtRhXJsH/RETkMkLj1rZSdQWaOdVnRmP02pb QmbmtfPVtM0Xvh+zL23Jk2fU2cJPRsf71U260QMyzxE8LVDZ58k9KFID24MdB3b/ J6Y5zLxyhkzc1EutN+D09y2nwrvJv3UKOls2ZLXtZ/HEmqQVOmqlGIaPIGxiQOPO yAWXKXid/hZ41xDygJpL6FEmemnVlOzPHX/AeccKcyQos7CUUqcNocReUklZcje6 1IEEe6NcAi7x7hRB6lfjtXIZRcEjMD21ZmLsyKEH6YOJfoPzlR0uKYJR0i0ZO5Hr H4erWA9R3OJDwvx5DhCGxyqW6IuD4A3HGChHtcANdH+RWTyHquqgDSzpeHA= =Hhjk -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQFJBAABCgAzFiEERCcr7u+ib5W/fkyWeneIey4u1GEFAmC1TdsVHGJlcnRiZWxk ZXJAZ21haWwuY29tAAoJEHp3iHsuLtRhYVEH/iHbk8AXA5xF8kV+q2R0IhRrtZjV 8VjDiC1nTGfIJcjXxoUVa1VaYQlfxNxcKPc/PSoW/oUwSoS0I9QvAxPY81dPYNUe TtiJjf7fNWssu04TK/5rillRuag3e+AGrR605uK2A1b0Y/qlOumtaGN48TXcbyFt p/p4zXT9TSC+/cOxZFNjnh+UVwpqOJxWxXBBtzrsDcsBfdvOCy/fo7qwjmqbe/q4 BDXNAG4AYHtg5X94b8bEgPDutUjk5HY08KA0EvVffGD0c3czvaF3lO7p8FHt95/3 rG+hS02OxUWRe8rltZk6s1mItypig4EyWWoiUJMaPt8zTz1t9rdy+M0oEpY= =bAil -----END PGP SIGNATURE----- Merge v1.10.3 into main (#10801) |
||
---|---|---|
.. | ||
examples | ||
async_cancel.rs | ||
async_cell.rs | ||
bindings.rs | ||
Cargo.toml | ||
core.js | ||
encode_decode_test.js | ||
error.js | ||
error.rs | ||
error_builder_test.js | ||
extensions.rs | ||
flags.rs | ||
gotham_state.rs | ||
icudtl.dat | ||
inspector.rs | ||
lib.deno_core.d.ts | ||
lib.rs | ||
module_specifier.rs | ||
modules.rs | ||
normalize_path.rs | ||
ops.rs | ||
ops_builtin.rs | ||
ops_json.rs | ||
README.md | ||
resources.rs | ||
runtime.rs | ||
serialize_deserialize_test.js |
Deno Core Crate
The main dependency of this crate is rusty_v8, which provides the V8-Rust bindings.
This Rust crate contains the essential V8 bindings for Deno's command-line interface (Deno CLI). The main abstraction here is the JsRuntime which provides a way to execute JavaScript.
The JsRuntime implements an event loop abstraction for the executed code that
keeps track of all pending tasks (async ops, dynamic module loads). It is user's
responsibility to drive that loop by using JsRuntime::run_event_loop
method -
it must be executed in the context of Rust's future executor (eg. tokio, smol).
In order to bind Rust functions into JavaScript, use the Deno.core.dispatch()
function to trigger the "dispatch" callback in Rust. The user is responsible for
encoding both the request and response into a Uint8Array.
Documentation for this crate is thin at the moment. Please see http_bench_json_ops.rs as a simple example of usage.
TypeScript support and lots of other functionality are not available at this layer. See the CLI for that.