Skip to content

Releases: denoland/deno

v1.44.0

30 May 07:51
f3ffffc
Compare
Choose a tag to compare

1.44.0 / 2024.05.30

  • BREAKING(ffi/unstable): always return u64 as bigint (#23981)
  • BREAKING(ffi/unstable): use BigInt representation in turbocall (#23983)
  • FUTURE(ext/ffi,ext/webgpu): stabilize FFI and WebGPU APIs (#24011)
  • FUTURE(ext/fs): stabilize file system APIs (#23968)
  • FUTURE: initial support for .npmrc file (#23560)
  • feat(cli): Add slow test warning (#23874)
  • feat(cli/test): deno test --clean (#23519)
  • feat(ext/fetch): Request.bytes() and Response.bytes() (#23823)
  • feat(ext/fs): stabilize Deno.FsFile.syncData[Sync]() and
    Deno.FsFile.sync[Sync]() (#23733)
  • feat(ext/fs): stabilize Deno.FsFile.unlock[Sync]() and
    Deno.FsFile.lock[Sync]() (#23754)
  • feat(ext/webgpu): byow support for {Free,Open}BSD (#23832)
  • feat(lint): add no-boolean-literal-for-arguments rule and enable
    no-unused-vars for jsx files (#24034)
  • feat(lsp): support .npmrc (#24042)
  • feat(node): buffer isUtf8/isAscii (#23928)
  • feat(serve): support --port 0 to use an open port (#23846)
  • feat(task): run npm run commands with Deno more often (#23794)
  • feat(vendor): support modifying remote files in vendor folder without checksum
    errors (#23979)
  • feat: Add Deno.exitCode API (#23609)
  • feat: add lowercase -v version flag (#23750)
  • feat: do not require DENO_FUTURE=1 for npmrc support (#24043)
  • feat: enable pointer compression via deno_core bump (#23838)
  • fix(cli): Prefer npm bin entries provided by packages closer to the root
    (#24024)
  • fix(cli): Support deno.lock with only package.json present + fix DENO_FUTURE
    install interactions with lockfile (#23918)
  • fix(cli/test): decoding percent-encoding(non-ASCII) file path correctly
    (#23200)
  • fix(coverage): add tooltip to line count in html report (#23971)
  • fix(coverage): do not generate script coverage with empty url (#24007)
  • fix(coverage): handle ignore patterns (#23974)
  • fix(coverage): skip generating coverage json for http(s) scripts (#24008)
  • fix(deno_task): more descriptive error message (#24001)
  • fix(ext/fs): truncate files when a ReadableStream is passed to writeFile
    (#23330)
  • fix(ext/http): flush gzip streaming response (#23991)
  • fix(ext/node): add throwIfNoEntry option in fs.lstatSync (#24006)
  • fix(ext/node): add stubs for perf_hooks.PerformaceObserver (#23958)
  • fix(ext/node): don't encode buffer data as utf8 in http2 (#24016)
  • fix(ext/node): return cancelled flag in get_response_body_chunk op (#23962)
  • fix(ext/node): windows cancel stdin read in line mode (#23969)
  • fix(ext/node/fs): position argument not applied (#24009)
  • fix(ext/web): ReadableStream.from() allows Iterable instead of
    IterableIterator (#23903)
  • fix(ext/web): ReadableStream.from() ignores null Symbol.asyncIterator
    (#23910)
  • fix(ext/websocket): change default idleTimeout to 30s (#23985)
  • fix(lsp): don't discover deno.json in vendor dir (#24032)
  • fix(lsp): process Fenced Code Block in JSDoc on completion correctly
    (#23822)
  • fix(node): set default http server response code 200 (#23977)
  • fix(npm): set up node_modules/.bin/ entries for package that provide bin
    entrypoints (#23496)
  • fix(publish): raise diagnostics for triple-slash directives for --dry-run
    instead of just publish (#23811)
  • fix(runtime): use more null proto objects (#23921)
  • fix(task): always use npm for npm run with flags (#24028)
  • fix: --env flag confusing message on syntax error (#23915)
  • fix: bump cache sqlite dbs to v2 for WAL journal mode change (#24030)
  • fix: empty process.platform with __runtime_js_sources (#24005)
  • fix: use hash of in-memory bytes only for code cache (#23966)
  • perf(cli): Improve concurrency when setting up node_modules and loading
    cached npm package info (#24018)
  • perf(cli): Optimize setting up node_modules on macOS (#23980)
  • perf(lsp): lock out requests until init is complete (#23998)
  • perf(repl): don't walk workspace in repl language server (#24037)
  • perf(startup): use WAL journal for sqlite databases in DENO_DIR (#23955)
  • perf: avoid building module graph if dynamic specifier already in graph
    (#24035)
  • perf: parse source files in parallel (#23858)
  • perf: skip npm install if graph has no new packages (#24017)

v1.43.6

22 May 01:16
7df3d5a
Compare
Choose a tag to compare

1.43.6 / 2024.05.21

  • fix(cli): use CliNodeResolver::resolve() for managed node_modules (#23902)
  • fix(cli/coverage): invalid line id in html reporter (#23908)
  • fix(ext/web): fix potential leak of unread buffers (#23923)
  • fix(ext/webgpu): Allow depthClearValue to be undefined when depthLoadOp is
    not "clear" (#23850)
  • fix(lsp): Fix display of JSDoc named examples (#23927)
  • fix(lsp): apply import fix to missing declaration code action (#23924)
  • fix(node): instantiating process class without new (#23865)
  • fix(node): patch MessagePort in worker_thread message (#23871)
  • fix(node): stub findSourceMap for ava (#23899)
  • fix(node): track SIG* listeners in process.listeners (#23890)
  • fix(task): do not error if node_modules folder not exists (#23920)
  • fix: add missing URL.parse types (#23893)
  • fix: handle signal 0 in process.kill (#23473)
  • fix: serve handler error with 0 arguments (#23652)
  • perf(cache): compile ts to js in parallel for deno cache (#23892)
  • perf: analyze cjs exports and emit typescript in parallel (#23856)
  • perf: analyze cjs re-exports in parallel (#23894)
  • perf: resolver - skip cwd lookup if able (#23851)

v1.43.5

18 May 01:42
a13c453
Compare
Choose a tag to compare

1.43.5 / 2024.05.18

  • fix(npm): regression deserializing JSON for some npm packages (#23868)

v1.43.4

17 May 00:58
d64921c
Compare
Choose a tag to compare

1.43.4 / 2024.05.16

  • fix(cli): panic with deno coverage (#23353)
  • fix(doc): --lint - private ref diagnostic was displaying incorrect information
    (#23834)
  • fix(doc/publish): support expando properties (#23795)
  • fix(emit): regression - keep comments in emit (#23815)
  • fix(ext/node): export geteuid from node:process (#23840)
  • fix(ext/node): fix grpc error_handling example (#23755)
  • fix(ext/node): homedir() getpwuid/SHGetKnownFolderPath fallback (#23841)
  • fix(ext/node): process.uptime works without this (#23786)
  • fix(ext/web): update ongoing promise in async iterator return() method
    (#23642)
  • fix(lsp): respect types dependencies for tsc roots (#23825)
  • fix(lsp): show reference code lens on methods (#23804)
  • fix(node): error when throwing FS_EISDIR (#23829)
  • fix(node): seperate worker module cache (#23634)
  • fix(node): stub AsyncResource.emitDestroy() (#23802)
  • fix(node): wrong worker_threads.terminate() return value (#23803)
  • fix(npm): handle null fields in npm registry JSON (#23785)
  • fix(npm): make tarball extraction more reliable (#23759)
  • fix(publish): always include config file when publishing (#23797)
  • fix(publish): error for missing version constraints on dry-publish instead of
    just publish (#23798)
  • fix(runtime): output to stderr with colors if a tty and stdout is piped
    (#23813)
  • fix: Add missing "junction" type for SymlinkOptions.types (#23756)
  • fix: update swc_ecma_parser to 0.114.1 (#23816)
  • fix: widen aarch64 linux minimum GLIBC version by improving sysroot build
    (#23791)
  • perf(compile): Do not checksum eszip content (#23839)
  • perf(jsr): download metadata files as soon as possible and in parallel
    (#23836)
  • perf(lsp): Cache semantic tokens for open documents (#23799)

v1.43.3

10 May 23:18
Compare
Choose a tag to compare

1.43.3 / 2024.05.10

  • fix(ext/webgpu): invalidate GPUAdapter when a device is created (#23752)
  • fix(lsp): completions for using decl identifiers (#23748)
  • fix(lsp): move sloppy import resolution from loader to resolver (#23751)
  • fix(node): better cjs re-export handling (#23760)
  • fix(runtime): Allow opening /dev/fd/XXX for unix (#23743)
  • fix(task): regression where npx <command> sometimes couldn't find command
    (#23730)
  • fix: bump deno_core to fix unsoundness (#23768)

v1.43.2

09 May 00:03
acd75bb
Compare
Choose a tag to compare

1.43.2 / 2024.05.08

  • feat(runtime): allow adding custom extensions to snapshot (#23569)
  • fix(compile): relative permissions should be retained as relative (#23719)
  • fix(ext/node): check resource exists before close (#23655)
  • fix(ext/node): don't rely on Deno.env to read NODE_DEBUG (#23694)
  • fix(ext/node): napi_get_element and napi_set_element work with objects
    (#23713)
  • fix(ext/node): support delete process.env.var (#23647)
  • fix(ext/web): properly handle Blob case for createImageBitmap (#23518)
  • fix(ext/webgpu): correctly validate GPUExtent3D, GPUOrigin3D, GPUOrigin2D &
    GPUColor (#23413)
  • fix(fmt/js): else was moved to wrong if sometimes when formatting minified
    code (#23706)
  • fix(jsr): panic when importing jsr package with deps via https (#23728)
  • fix(lsp): Catch cancellation exceptions thrown by TSC, stop waiting for TS
    result upon cancellation (#23645)
  • fix(lsp): Pass diagnostic codes to TSC as numbers (#23720)
  • fix(lsp): always cache all npm packages (#23679)
  • fix(lsp): handle multiline semantic tokens (#23691)
  • fix(publish): public api - trace parent classes & interfaces when following a
    method (#23661)
  • fix(runtime): allow r/w access to /etc without --allow-all (#23718)
  • fix(test): proper type checking for files with doc tests (#23654)
  • fix(workers): importScripts concurrently and use a new reqwest::Client per
    importScripts (#23699)
  • fix: DOMException doesn't throw on __callSitesEvals (#23729)
  • fix: upgrade TypeScript from 5.4.3 to 5.4.5 (#23740)

v1.43.1

01 May 21:45
5ff881a
Compare
Choose a tag to compare

1.43.1 / 2024.05.01

See release notes for v1.43.0, due to tagging mishap, both versions are pointing to the same commit.

v1.43.0

01 May 08:19
5ff881a
Compare
Choose a tag to compare

1.43.0 / 2024.05.01

  • FUTURE(ext/net): remove
    Deno.ConnectTlsOptions.(certFile|certChain|privateKey) (#23270)
  • FUTURE(ext/net): remove Deno.ListenTlsOptions.(keyFile|certFile) (#23271)
  • FUTURE: remove Deno.customInspect (#23453)
  • FUTURE: remove import assertions support for JavaScript (#23541)
  • feat(check): allow using side effect imports with unknown module kinds (ex.
    css modules) (#23392)
  • feat(cli): add support for jsxImportSourceTypes (#23419)
  • feat(ext/http): Add addr to HttpServer (#23442)
  • feat(ext/http): Implement request.signal for Deno.serve (#23425)
  • feat(ext/net): extract TLS key and certificate from interfaces (#23327)
  • feat(ext/url): add URL.parse (#23318)
  • feat(ext/webgpu): support UnsafeWindowSurface on wayland (#23423)
  • feat(jsr): support importing from jsr via HTTPS specifiers (except for type
    checking) (#23513)
  • feat(runtime): Allow embedders to perform additional access checks on file
    open (#23208)
  • feat(task): support running npm binary commands in deno.json (#23478)
  • feat: Add deno serve subcommand (#23511)
  • feat: add jsx precompile skip element option (#23457)
  • feat: enable Float16Array support (#23490)
  • feat: upgrade V8 to 12.4 (#23435)
  • fix(cli): Don't panic on invalid emit options (#23463)
  • fix(cli): Identify and fix a test deadlock (#23411)
  • fix(cli): TestEventSender should be !Clone (#23405)
  • fix(cli): avoid deno add and deno vendor errors when deno.json is empty
    (#23439)
  • fix(compile): certain jsr specifiers sometimes can't load (#23567)
  • fix(config): move json schema unstable examples to item (#23506)
  • fix(ext/http): ensure signal is created iff requested (#23601)
  • fix(ext/net): check for TLS using undefined rather than using ReflectHas
    (#23538)
  • fix(ext/node): Correctly send ALPN on node TLS connections (#23434)
  • fix(ext/node): Support env option in worker_thread (#23462)
  • fix(ext/node): cp into non-existent parent directory (#23469)
  • fix(ext/node): add support for MessagePort.removeListener/off (#23598)
  • fix(ext/node): define http.maxHeaderSize (#23479)
  • fix(ext/node): dispatch beforeExit/exit events irrespective of listeners
    (#23382)
  • fix(ext/node): exporting rsa public keys (#23596)
  • fix(ext/node): implement process.kill in Rust (#23130)
  • fix(ext/node): read(0) before destroying http2stream (#23505)
  • fix(ext/node): remove unwraps from fallible conversions (#23447)
  • fix(ext/node): support NODE_DEBUG env (#23583)
  • fix(ext/node): support multiple message listeners on MessagePort (#23600)
  • fix(ext/node): support process.stdin.unref() (#22865)
  • fix(ext/node): worker_threads copies env object (#23536)
  • fix(ext/node): worker_threads.receiveMessageOnPort doesn't panic (#23406)
  • fix(fmt): error for more unterminated nodes (#23449)
  • fix(fmt/md): better handling of lists in block quotes (#23604)
  • fix(lsp): Fix logic for coalescing pending changes + clear script names cache
    when file is closed (#23517)
  • fix(lsp): inherit missing fmt and lint config from parent scopes (#23547)
  • fix(lsp): remove Document::open_data on close (#23483)
  • fix(node): require.resolve - fallback to global cache when bare specifier from
    paths not found (#23618)
  • fix(npm): do not panic hitting root dir while resolving npm package (#23556)
  • fix(publish): --dry-publish should error for gitignored excluded files
    (#23540)
  • fix(publish): handle variable declarations with a declare keyword (#23616)
  • fix(publish): support import equals (#23421)
  • fix(workspace): provide workspace members as 'imports' in import map (#23492)
  • fix: Fix some typos in comments (#23470)
  • fix: Float16Array support (#23512)
  • fix: add DENO_FUTURE to deno --help (#23368)
  • fix: allow WPT to successfully exit using --exit-zero (#23418)
  • fix: handle specifying an import map in an ancestor dir of deno.json (#23602)
  • fix: reenable syntax highlighting for doc html generator (#23570)
  • fix: unref stdin read (#23534)
  • fix: update CLI flags for WPT (#23501)
  • perf(ext/http): cache abort signal error (#23548)
  • perf(ext/http): recover memory for serve and optimize AbortController (#23559)
  • perf(lsp): Avoid passing struct into op_resolve (#23452)
  • perf(lsp): Batch "$projectChanged" notification in with the next JS request
    (#23451)
  • perf(lsp): Call serverRequest via V8 instead of via executeScript (#23409)
  • perf(lsp): Pass code action trigger kind to TSC (#23466)
  • perf(lsp): cleanup document dependencies (#23426)
  • perf(lsp): only store parsed sources for open documents (#23454)
  • perf(lsp): release unused documents (#23398)
  • perf: v8 code cache (#23081)

v1.42.4

16 Apr 01:46
7cb23c5
Compare
Choose a tag to compare

1.42.4 / 2024.04.15

  • fix(check): cache bust when changing nodeModulesDir setting (#23355)
  • fix(ext/io): Fix NUL termination error in windows named pipes (#23379)
  • fix(ext/node): add stub for AsyncResource#asyncId() (#23372)
  • fix(ext/node): panic on 'worker_threads.receiveMessageOnPort' (#23386)
  • fix(ext/node): promise rejection in VM contexts (#23305)
  • fix(ext/node): use ext/io stdio in WriteStream (#23354)
  • fix(lsp): ensure project version is incremented when config changes (#23366)
  • fix(lsp): improved cjs tracking (#23374)
  • fix(lsp): slice strings by byte index in code actions (#23387)
  • fix(publish): do not error for param with initializer before required
    parameter (#23356)
  • fix(publish): handle definite assignment on ts private properties (#23345)
  • perf(lsp): Only deserialize response from op_respond once (#23349)
  • perf: do not clone swc Program when transpiling (#23365)

v1.42.3

12 Apr 02:14
a64a257
Compare
Choose a tag to compare

1.42.3 / 2024.04.12

  • Revert "refactor(ext/net): extract TLS key and certificate from inter…
    (#23325)
  • fix(inspector): don't panic if port is not free (#22745)
  • fix(lsp): Denormalize specifiers before calling $projectChanged (#23322)
  • fix(npm): local nodeModulesDir was sometimes resolving duplicates of same
    package (#23320)
  • fix(publish): do not warn about excluded external modules in node_modules
    directory (#23173)
  • fix: upgrade deno_ast related crates (#23187)
  • perf(lsp): use a stub module in tsc for failed resolutions (#23313)