Skip to content

Releases: denoland/deno

02afbe2
Compare
Choose a tag to compare

1.25.4 / 2022.09.22

  • feat(unstable/npm): add flag for creating and resolving npm packages to a
    local node_modules folder (#15971)
  • feat(unstable/npm): add support for --reload=npm: and --reload=npm:
    (#15972)
  • feat(internal/ops): Automatic fast ops creation (#15527)
  • fix(compile): keep non-exe extension in output name on Windows (#15994)
  • fix(doc): deno doc should parse modules if they haven't been parsed before
    (#15941)
  • fix(ext/node): fix builtin module module (#15904)
  • fix(ext/webgpu): make GPUDevice.features SetLike (#15853)
  • fix(flash): panic if response if undefined (#15964)
  • fix(runtime): better error message with Deno.env.get/set (#15966)
  • fix(runtime): fix permission status cache keys (#15899)
  • perf(cli): avoid canonicalize_path if config file does not exist (#15957)
  • perf(cli): avoid clap::App::clone (#15951)
  • perf(cli): use -O3 instead of -Oz (#15952)
  • perf(core): use single ObjectTemplate for ops in initialize_ops (#15959)
  • perf(ext/console): avoid wrapConsole when not inspecting (#15931)
  • perf(web): optimize encodeInto() (#15922)
  • perf: fs optimizations - part 1 (#15873)
f561e76
Compare
Choose a tag to compare

1.25.3 / 2022.09.15

  • doc(unstable): mention that signal input isn't supported in spawnSync
    (#15889)
  • fix(ext/flash): don't block requests (#15852)
  • fix(npm): align Deno importing Node cjs with Node esm importing cjs (#15879)
  • fix(npm): align Node esm code importing cjs with Node (#15838)
  • fix(npm): binary entrypoint for .js or no extension (#15900)
  • fix(npm): remove export binding to match node (#15837)
  • fix(npm): support cjs resolution of package subpath with package.json (#15855)
  • fix(npm): use shim from deno_node crate for 'module' built-in module (#15881)
  • fix(ops): add node.js env variable allowlist (#15893)
  • perf(ext/flash): remove string->buffer cache (#15850)
  • perf(serde_v8): remove Mutex from ZeroCopyBuf (#15888)
  • perf(url): return early if url has no query string (#15856)
  • perf: optimize URL serialization (#15663)
3c5af2b
Compare
Choose a tag to compare

1.25.2 / 2022.09.09

  • BREAKING(unstable): remove --compat mode (#15678)
  • feat(ext/ffi): Implement FFI fast-call trampoline with Dynasmrt (#15305)
  • feat(ext/ffi): Support bool FFI type (#15754)
  • feat(serde_v8): Support StringObject as unit enum variant (#15715)
  • fix(bench): make sure bytes/response is equal (#15763)
  • fix(cli): Fix panic when providing invalid urls to --reload (#15784)
  • fix(cli): allow using file resource synchronously while being used async
    (#15747)
  • fix(cli/repl): await Promise.any([])... (#15623)
  • fix(core): Register external references for imports to the SnapshotCreator
    (#15621)
  • fix(core): make errors more resistant to tampering (#15789)
  • fix(core): opAsync leaks a promise on type error (#15795)
  • fix(docs): add missing categories for unstable (#15807)
  • fix(docs): change category for Deno.Process to "Sub Process" (#15812)
  • fix(ext/flash): use utf8 length as Content-Length (#15793)
  • fix(ext/timers): create primordial eval (#15110)
  • fix(init): suppress info logs when using quiet mode (#15741)
  • fix(npm): add more context to errors when file doesn't exist (#15749)
  • fix(npm): conditional exports in npm: specifiers (#15778)
  • fix(npm): correct exact matching of pre-release versions (#15745)
  • fix(npm): recursive translation of reexports, remove window global in node
    code (#15806)
  • fix(npm): respect latest dist tag for getting current version (#15746)
  • fix(ops): use qualified borrow in op macro (#15769)
  • fix(repl): don't terminate on unhandled error events (#15548)
  • fix(test): unflake wasm_unreachable test (#15794)
  • fix(watch): ignore unload errors on drop (#15782)
  • fix: upgrade deno_ast to 0.19 (#15808)
  • perf(ops): inline &[u8] arguments and enable fast API (#15731)
  • perf(runtime): flatten arguments for write_file ops (#15776)
  • perf(runtime): short-circuit queue_async_op for Poll::Ready (#15773)
1e78804
Compare
Choose a tag to compare

1.25.1 / 2022.09.01

  • feat(ops): support v8::FastApiCallbackOptions (#15721)
  • feat(serde_v8): Serialize integers as BigInt (#15692)
  • fix(check): --remote and --no-remote should be mutually exclusive (#14964)
  • fix(cli): deno upgrade --canary always downloaded latest version even if it
    was already latest (#15639)
  • fix(compile): panic when running with a populated dep analysis cache (#15672)
  • fix(docs): add missing categories (#15684)
  • fix(ext/ffi): Fix pointer types (#15730)
  • fix(ext/flash): add missing backticks in server docs (#15644)
  • fix(ext/flash): panic on AddrInUse (#15607)
  • fix(ext/flash): retry write failures (#15591)
  • fix(ext/node): add missing primordial (#15595)
  • fix(ext/node): better error for importing ES module via require() call
    (#15671)
  • fix(ext/node): fix global in node env (#15622)
  • fix(ext/websocket): fix closing of WebSocketStream with unread messages
    (#15632)
  • fix(fmt): add the file path to the panic messages when formatting is unstable
    (#15693)
  • fix(npm): better node version and version requirement compatibility (#15714)
  • fix(npm): conditional exports with wildcards (#15652)
  • fix(npm): handle cjs re-exports with the same name as an export (#15626)
  • fix(npm): ignore npm cache directory creation errors (#15728)
  • fix(npm): ignore the unstable error in the lsp (#15727)
  • fix(npm): prefer importing esm from esm (#15676)
  • fix(npm): skip extracting pax_global_header from tarballs (#15677)
  • fix(npm): translate CJS to ESM with name clashes for files and dirs (#15697)
  • fix(serde_v8): no panic on reading large text file (#15494)
  • fix(serde_v8): update bytes::Bytes layout assumptions (#15718)
  • fix: avoid global declaration collisions in cjs (#15608)
  • fix: config file errors should not print specifier with debug formatting
    (#15648)
  • fix: typo in deno_ops README (#15606)
  • perf(ext/web): flatten op arguments for text_encoding (#15723)
  • perf(ops): inline String args (#15681)
  • perf(runtime): optimize allocations in read/write checks (#15631)
  • perf: use fast api for core.isProxy (#15682)
  • perf: use fast api for op_now (#15643)
  • serde_v8: fix pointer size assumptions (#15613)
8986e2c
Compare
Choose a tag to compare

1.25.0 / 2022.08.24

  • BREAKING(ext/ffi): specialized buffer type (#15518)
  • feat(ext/crypto): deriveBits P-384 (#15138)
  • feat(ext/flash): An optimized http/1.1 server (#15405)
  • feat(ext/flash): split upgradeHttp into two APIs (#15557)
  • feat(ops): V8 Fast Calls (#15291)
  • feat(repl): add color to functions for syntax highlighting (#15434)
  • feat(runtime): add pre_execute_module_cb (#15485)
  • feat(unstable): initial support for npm specifiers (#15484)
  • feat: queueMicrotask() error handling (#15522)
  • feat: add "deno init" subcommand (#15469)
  • fix(cache): do not attempt to emit non-emitable files (#15562)
  • fix(core/runtime): always cancel termination in exception handling (#15514)
  • fix(coverage): ensure coverage is only collected in certain situations
    (#15467)
  • fix(ext/fetch): ignore user content-length header (#15555)
  • fix(ext/flash): concurrent response streams (#15493)
  • fix(ext/flash): fix default onListen callback (#15533)
  • fix(ext/flash): fix listening port (#15519)
  • fix: Free up JsRuntime state global handles before snapshot (#15491)
  • fix: resolve jsxImportSource relative to module (#15561)
  • perf(runtime): optimize Deno.file open & stream (#15496)
  • perf: cache swc dependency analysis and don't hold onto ParsedSources in
    memory (#15502)
  • perf: improve performance.now (#15481)
c791270
Compare
Choose a tag to compare

1.24.3 / 2022.08.11

  • fix(ext/fetch): add socks proxy support (#15372)
  • feat(unstable/ext/ffi): add static method variants to Deno.UnsafePointerView
    (#15146)
  • fix(cli): allow configurations files to also be json modules (#15444)
  • fix(ext/ffi): check CStr for UTF-8 validity on read (#15318)
  • fix(ext/ffi): unstable op_ffi_unsafe_callback_ref (#15439)
  • fix(permissions): ignore empty values (#15447)
  • fix(task): subcommand parser skips global args (#15297)
  • fix: allow setting globalThis.location when no --location is provided
    (#15448)
  • fix: update deno_graph to fix importing config as JSON module (#15388)
  • fix: various formatting fixes (#15412)
  • perf(ops): monomorphic sync op calls (#15337)
44ade24
Compare
Choose a tag to compare

1.24.2 / 2022.08.04

  • feat(ext/ffi): Add support to get ArrayBuffers from UnsafePointerView (#15143)
  • feat(ext/ffi): Safe number pointers (#15173)
  • fix(compat): use mjs extension for stream/promises (#15341)
  • fix(core): BorrowMutError in nested error (#15352)
  • fix(ext/webgpu): use correct IDL key name (#15278)
  • fix(lsp): remove excessive line breaks in status page (#15364)
  • fix(lsp): use correct commit chars for completions (#15366)
  • fix(test): output parallel test results independently (#15399)
  • fix(test): race condition for cancelled tests (#15233)
  • fix(vendor): error on dynamic imports that fail to load instead of panicking
    (#15391)
  • fix(vendor): existing import map with bare specifier in remote (#15390)
  • fix: increase websocket message size (#15406)
  • perf(ext/ffi): support Uint8Array in fast calls (#15319)
  • perf(ext/ffi): use fast api calls for 64bit return types (#15313)
fa9698f
Compare
Choose a tag to compare

1.24.1 / 2022.07.28

  • fix(cli): unset jsxFragmentFactory & jsxFactory options (#15264)
  • fix(ext/fetch): resolve TODOs about WebIDL conversions in body init (#15312)
  • fix(lsp): remove CompletionInfo.flags (#15288)
  • fix(tools): upgrade to new Deno.spawn api (#15265)
  • fix: Child.unref() unrefs stdio streams properly (#15275)
  • fix: proper typings for unhandledrejection event (#15271)
  • fix: unhandledrejection handling for sync throw in top level (#15279)
  • perf(ext/ffi): Optimise common pointer related APIs (#15144)
  • serde_v8: improvements to avoid hitting unimplemented codepaths (#13915)
f0e0168
Compare
Choose a tag to compare

1.24.0 / 2022.07.20

  • BREAKING(unstable): Improve Deno.spawn() stdio API (#14919)
  • feat(cli): support configuring the test tool in the config file (#15079)
  • feat(cli/lsp): Sort repl completions (#15171)
  • feat(cli/test): add DENO_JOBS env variable for test subcommand (#14929)
  • feat(ext/ffi): Support 64 bit parameters in Fast API calls (#15140)
  • feat(fmt): do not add a newline between a template and its tag (#15195)
  • feat(lsp): provide import map remapping diags and fixes (#15165)
  • feat(test): add --parallel flag, soft deprecate --jobs (#15259)
  • feat(unstable): Ability to ref/unref "Child" in "Deno.spawnChild()" API
    (#15151)
  • feat(web): add beforeunload event (#14830)
  • feat: add "unhandledrejection" event support (#12994, #15211)
  • feat: import.meta.resolve() (#15074)
  • fix(cli): Improve error message in watch mode (#15184)
  • fix(cli): expand tsc roots when using checkJs (#15164)
  • fix(cli): synchronize async stdio/file reads and writes (#15092)
  • fix(cli/dts): allow passing arguments to WebAssembly error constructors
    (#15149)
  • fix(core): unhandled rejection in top-level scope (#15204)
  • fix(coverage): do not verify emit source hash for coverage (#15260)
  • fix(ext/ffi): allow setting a custom lib path for libtcc.a (#15208)
  • fix(ext/ffi): i64 arg to C mapping was wrong (#15162)
  • fix(ext/web): align DOMException better with spec (#15097)
  • fix(fmt): improve curried arrow functions (#15251)
  • fix(repl): do not panic for import completions when the import specifier is
    empty (#15177)
  • fix(task): do not overflow attempting to parse large number as redirect
    (#15249)
  • fix(task): resolve deno configuration file first from specified --cwd arg
    (#15257)
  • fix: WebSocketStream ping event causes pending promises (#15235)
  • fix: fallback to no type checking cache when db file can't be created (#15180)
  • fix: revert changes to test output for uncaught errors (#15231)
  • perf: emit files on demand and fix racy emit (#15220)
  • perf: use emit from swc instead of tsc (#15118)
b0de303
Compare
Choose a tag to compare

1.23.4 / 2022.07.12

  • feat(core): Re-export v8 use_custom_libcxx feature (#14475)
  • fix(core): deflake WASM termination test (#15103)
  • fix(coverage): better handling of multi-byte characters (#15159)
  • fix(ext/console): Fix a typo in a warning when .timeEnd is called on an
    unknown timer (#15135)
  • fix(ext/crypto): Adjust typings for Crypto.getRandomValues() (#15130)
  • fix(ext/ffi): Avoid keeping JsRuntimeState RefCell borrowed for event loop
    middleware calls (#15116)
  • fix(ext/ffi): allow opting out of fast ffi calls (#15131)
  • fix(ext/ffi): trampoline for fast calls (#15139)
  • fix(ext/http) nextRequest return type annotation from ResponseEvent to
    RequestEvent (#15100)
  • fix(ext/http): reading headers with ongoing body reader (#15161)
  • fix(ext/url): missing primordial (#15096)
  • fix(lsp): enable auto imports (#15145)
  • fix(net): don't panic on failed UDS removal (#15157)
  • fix: upgrade deno_ast to 0.17 (#15152)
  • perf(cli/proc_state): Get error source lines from memory (#15031)
  • perf(ext/ffi): leverage V8 Fast Calls (#15125)
  • perf(ext/http): skip core.isProxy check for default ResponseInit (#15077)