Skip to content

Releases: denoland/deno

v1.38.5

05 Dec 23:49
172e5f0
Compare
Choose a tag to compare

1.38.5 / 2023.12.05

  • feat(unstable): kv.watch() (#21147)
  • perf(lsp): better op performance logging (#21423)
  • perf(lsp): check tsc request cancellation before execution (#21447)
  • perf(lsp): fix redundant clones for ts responses (#21445)
  • perf(lsp): fix redundant serialization of sources (#21435)

v1.38.4

30 Nov 22:05
8c07f52
Compare
Choose a tag to compare

1.38.4 / 2023.11.30

  • fix(node): spawnSync's status was incorrect (#21359)
  • perf(lsp): add performance marks for TSC requests (#21383)
  • perf(lsp): avoid redundant getNavigationTree() calls (#21396)
  • perf(lsp): cancel ts requests on future drop (#21387)
  • perf(lsp): remove throttling of cancellation token (#21395)

v1.38.3

24 Nov 04:56
3193e93
Compare
Choose a tag to compare

1.38.3 / 2023.11.24

  • feat(unstable): tar up directory with deno.json (#21228)
  • fix(ext,runtime): add missing custom inspections (#21219)
  • fix(ext/http): avoid lockup in graceful shutdown (#21253)
  • fix(ext/http): fix crash in dropped Deno.serve requests (#21252)
  • fix(ext/node): fix node:stream.Writable (#21297)
  • fix(ext/node): handle closing process.stdin more than once (#21267)
  • fix(ext/url): add deno_console dependency for bench (#21266)
  • fix(fmt): maintain parens for jsx in member expr (#21280)
  • fix(lsp): force shutdown after a timeout (#21251)
  • fix(runtime): fix for panic in classic workers (#21300)
  • fix(swc): support jsx pragma when hashbang present (#21317)
  • fix: 'Promise was collected' error in REPL/jupyter (#21272)
  • fix: Deno.noColor should not be true when NO_COLOR is empty string (#21275)

v1.38.2

17 Nov 07:02
118be11
Compare
Choose a tag to compare

1.38.2 / 2023.11.17

  • feat(ext/web): add AbortSignal.any() (#21087)
  • feat(lsp): upgrade check on init and notification (#21105)
  • fix(cli): Allow executable name start with digit (#21214)
  • fix(doc): issue discovering re-exports of re-exports sometimes (#21223)
  • fix(ext/node): Re-enable alloc max size test (#21059)
  • fix(ext/node): add APIs perf_hook.performance (#21192)
  • fix(ext/node): implement process.geteuid (#21151)
  • fix(ext/web): Prevent TextDecoderStream resource leak on stream cancellation
    (#21074)
  • fix(ext/web): webstorage has trap for symbol (#21090)
  • fix(install): should work with non-existent relative root (#21161)
  • fix(lsp): update tsconfig after refreshing settings on init (#21170)
  • fix(node/http): export globalAgent (#21081)
  • fix(npm): support cjs entrypoint in node_modules folder (#21224)
  • fix(runtime): fix Deno.noColor when stdout is not tty (#21208)
  • fix: improve deno doc --lint error messages (#21156)
  • fix: use short git hash for deno version (#21218)
  • perf(cli): strace mode for ops (undocumented) (#21131)
  • perf(ext/http): Object pooling for HttpRecord and HeaderMap (#20809)
  • perf: lazy bootstrap options - first pass (#21164)
  • perf: move jupyter esm out of main snapshot (#21163)
  • perf: snapshot runtime ops (#21127)
  • perf: static bootstrap options in snapshot (#21213)

v1.38.1

10 Nov 13:06
0e7ad03
Compare
Choose a tag to compare

1.38.1 / 2023.11.10

  • feat(ext/kv): increase checks limit (#21055)
  • fix small Deno.createHttpClient typo in lib.deno.unstable.d.ts (#21115)
  • fix(byonm): correct resolution for scoped packages (#21083)
  • fix(core/types): Promise.withResolvers: Unmark callback param as optional
    (#21085)
  • fix(cron): update Deno.cron doc example (#21078)
  • fix(doc): deno doc --lint mod.ts should output how many files checked
    (#21084)
  • fix(doc): require source files if --html or --lint used (#21072)
  • fix(ext): use String#toWellFormed in ext/webidl and ext/node (#21054)
  • fix(ext/fetch): re-align return type in op_fetch docstring (#21098)
  • fix(ext/http): Throwing Error if the return value of Deno.serve handler is not
    a Response class (#21099)
  • fix(node): cjs export analysis should probe for json files (#21113)
  • fix(node): implement createPrivateKey (#20981)
  • fix(node): inspect ancestor directories when resolving cjs re-exports during
    analysis (#21104)
  • fix(node): use closest package.json to resolve package.json imports (#21075)
  • fix(node/child_process): properly normalize stdio for 'spawnSync' (#21103)
  • fix(node/http): socket.setTimeout (#20930)
  • fix(test) reduce queue persistence test time from 60 secs to 6 secs (#21142)
  • perf: lazy atexit setup (#21053)
  • perf: remove knowledge of promise IDs from deno (#21132)

v1.38.0

02 Nov 02:59
41877a0
Compare
Choose a tag to compare

1.38.0 / 2023.11.01

  • feat(cron) implement Deno.cron() (#21019)
  • feat(doc): display non-exported types referenced in exported types (#20990)
  • feat(doc): improve non-exported diagnostic (#21033)
  • feat(doc): support multiple file entry (#21018)
  • feat(ext/kv): support key expiration in remote backend (#20688)
  • feat(ext/web): EventSource (#14730)
  • feat(ext/websocket): split websocket read/write halves (#20579)
  • feat(ext/websocket): use rustls-tokio-stream instead of tokio-rustls (#20518)
  • feat(ext/websocket): websockets over http2 (#21040)
  • feat(lsp): respect "typescript.preferences.quoteStyle" when deno.json is
    absent (#20891)
  • feat(task): add head command (#20998)
  • feat(unstable): deno run --env (#20300)
  • feat(unstable): ability to npm install then deno run main.ts (#20967)
  • feat(unstable): allow bare specifier for builtin node module (#20728)
  • feat: deno doc --lint (#21032)
  • feat: deno doc --html (#21015)
  • feat: deno run --unstable-hmr (#20876)
  • feat: disposable Deno resources (#20845)
  • feat: enable Array.fromAsync (#21048)
  • feat: granular --unstable-* flags (#20968)
  • feat: precompile JSX (#20962)
  • feat: rename Deno.Server to Deno.HttpServer (#20842)
  • fix(ext/ffi): use anybuffer for op_ffi_buf_copy_into (#21006)
  • fix(ext/http): patch regression in variadic args to serve handler (#20796)
  • fix(ext/node): adapt dynamic type checking to Node.js behavior (#21014)
  • fix(ext/node): process.argv0 (#20925)
  • fix(ext/node): tty streams extends net socket (#21026)
  • fix(lsp): don't commit registry completions on "/" (#20902)
  • fix(lsp): include mtime in tsc script version (#20911)
  • fix(lsp): show diagnostics for untitled files (#20916)
  • fix(node): resolve file.d specifiers in npm packages (#20918)
  • fix(polyfill): correctly handle flag when its equal 0 (#20953)
  • fix(repl): jsxImportSource was not working (#21049)
  • fix(repl): support transforming JSX/TSX (#20695)
  • fix(test): --junit-path should handle when the dir doesn't exist (#21044)
  • fix(unstable/byonm): improve error messages (#20987)
  • fix: add 'unstable' property to config json schema (#20984)
  • fix: add missing Object.groupBy() and Map.groupBy() types (#21050)
  • fix: implement node:tty (#20892)
  • fix: improved using declaration support (#20959)
  • perf(ext/streams): optimize streams (#20649)
  • perf(lsp): cleanup workspace settings scopes (#20937)
  • perf(lsp): fix redundant walk when collecting tsc code lenses (#20974)
  • perf: use deno_native_certs crate (#18072)

v1.37.2

13 Oct 01:41
7282994
Compare
Choose a tag to compare

1.37.2 / 2023.10.12

  • feat(ext/web): cancel support for TransformStream (#20815)
  • feat(lsp): jupyter notebook analysis (#20719)
  • feat(lsp): send "deno/didChangeDenoConfiguration" notifications (#20827)
  • feat(unstable): add Deno.jupyter.display API (#20819)
  • feat(unstable): add unix domain socket support to Deno.serve (#20759)
  • feat(unstable): Await return from Jupyter.display (#20807)
  • feat(unstable): send binary data with Deno.jupyter.broadcast (#20755)
  • feat(unstable): send Jupyter messaging metadata with Deno.jupyter.broadcast
    (#20714)
  • feat(unstable): support Deno.test() (#20778)
  • fix(bench): use total time when measuring wavg (#20862)
  • fix(cli): Support using both --watch and --inspect at the same time
    (#20660)
  • fix(cli): panic with __runtime_js_sources (#20704)
  • fix(ext/ffi): use anybuffer for op_ffi_ptr_of (#20820)
  • fix(ext/formdata): support multiple headers in FormData (#20801)
  • fix(ext/http): Deno.Server should not be thenable (#20723)
  • fix(ext/kv): send queue wake messages accross different kv instances (#20465)
  • fix(ext/node): don't call undefined nextTick fn (#20724)
  • fix(ext/node): fix TypeError in Buffer.from with base64url encoding. (#20705)
  • fix(ext/node): implement uv.errname (#20785)
  • fix(ext/web): writability of ReadableStream.from (#20836)
  • fix(jupyter): Rename logo assets so they are discoverable (#20806)
  • fix(jupyter): keep this around (#20789)
  • fix(jupyter): more robust Deno.jupyter namespace (#20710)
  • fix(lsp): allow formatting vendor files (#20844)
  • fix(lsp): normalize "deno:" urls statelessly (#20867)
  • fix(lsp): percent-encode host in deno: specifiers (#20811)
  • fix(lsp): show diagnostics for type imports from untyped deps (#20780)
  • fix(node/buffer): utf8ToBytes should return a Uint8Array (#20769)
  • fix(node/http2): fixes to support grpc (#20712)
  • fix(npm): upgrade to deno_npm 0.15.2 (#20772)
  • fix(upgrade): use tar.exe to extract on Windows (#20711)
  • fix: define window.name (#20804)
  • fix: upgrade dprint-plugin-markdown 0.16.2 and typescript 0.88.1 (#20879)
  • perf(ext/web): optimize DOMException (#20715)
  • perf(ext/web): optimize structuredClone without transferables (#20730)
  • perf(lsp): fix redundant file reads (#20802)
  • perf(lsp): optimize formatting minified files (#20829)
  • perf(node): use faster utf8 byte length in Buffer#from (#20746)

v1.37.1

27 Sep 07:50
72c276d
Compare
Choose a tag to compare

1.37.1 / 2023.09.27

  • feat(ext/web): use readableStreamDefaultReaderRead in
    resourceForReadableStream (#20622)
  • feat(kv_queues): increase max queue delay to 30 days (#20626)
  • feat(lsp): cache all dependencies quick fix (#20665)
  • feat(lsp): support more vscode built-in settings (#20679)
  • feat(unstable): add Deno.jupyter.broadcast API (#20656)
  • fix(cli/test): clear connection pool after tests (#20680)
  • fix(ext/http): ensure that resources are closed when request is cancelled
    (#20641)
  • fix(ext/node): Fix invalid length variable reference in blitBuffer (#20648)
  • fix(ext/node): simplified array.from + map (#20653)
  • fix(ext/web): Aggregate small packets for Resource implementation of
    ReadableStream (#20570)
  • fix(jupyter): await Jupyter.display evaluation (#20646)
  • fix(kv): unflake kv unit tests (#20640)
  • fix(kv_queues): graceful shutdown (#20627)
  • fix(lsp): allow query strings for "deno:/status.md" (#20697)
  • fix(lsp): resolve remote import maps (#20651)
  • fix(lsp): show related information for tsc diagnostics (#20654)
  • fix(node): point process.version to Node 18.18.0 LTS (#20597)
  • fix(node): supported arguments to randomFillSync (#20637)
  • fix(node/package_json): Avoid panic when "exports" field is null (#20588)
  • fix(upgrade): error instead of panic on unzip failure (#20691)
  • perf(ext/fetch): use new instead of createBranded (#20624)
  • perf(test): use core.currentUserCallSite (#20669)
  • perf(test): use fast ops for deno test register (#20670)

v1.37.0

19 Sep 23:57
997aa60
Compare
Choose a tag to compare

1.37.0 / 2023.09.19

  • feat: Add "deno jupyter" subcommand (#20337, #20552, #20530, #20537, #20546)
  • feat(test): add TAP test reporter (#14390, #20073)
  • feat(ext/node): http2.connect() API (#19671)
  • feat(ext/web): Add name to Deno.customInspect of File objects (#20415)
  • feat(lint): --rules print all rules (#20256)
  • feat(lockfile): add redirects to the lockfile (#20262)
  • feat(lsp): WorkspaceSettings::disablePaths (#20475)
  • feat(lsp): enable via config file detection (#20334, #20349)
  • feat(lsp): include source in auto import completion label (#20523)
  • feat(lsp): npm specifier completions (#20121)
  • feat(lsp): provide the deno.cache command server-side (#20111)
  • feat(lsp): update imports on file rename (#20245)
  • feat(test): Add Deno.test.ignore and Deno.test.only (#20365)
  • feat(unstable): package manager (#20517)
  • feat: TypeScript 5.2 (#20425)
  • feat: explicit resource management in TypeScript (#20506)
  • feat: lockfile v3 (#20424)
  • feat: support import attributes (#20342)
  • fix(cli): ensure that an exception in getOwnPropertyDescriptor('constructor')
    doesn't break Deno.inspect (#20568)
  • fix(cli): for main-module that exists in package.json, use the version defined
    in package.json directly (#20328)
  • fix(compile): support providing flags as args (#20422)
  • fix(evt/kv): Add serde feature to uuid (#20350)
  • fix(ext/crypto): remove EdDSA alg key checks and export (#20331)
  • fix(ext/http): create a graceful shutdown API (#20387)
  • fix(ext/http): ensure aborted bodies throw (#20503)
  • fix(ext/kv): add a warning for listenQueue if used with remote KV (#20341)
  • fix(ext/kv): same expireIn should generate same expireAt (#20396)
  • fix(ext/node): implement AES GCM cipher (#20368)
  • fix(ext/node): remove unnecessary and incorrect type priority_t (#20276)
  • fix(ext/node/ops/zlib/brotli): Allow decompressing more than 4096 bytes
    (#20301)
  • fix(fmt/markdown): improve ignore comment handling (#20421)
  • fix(init): skip existing files instead of erroring (#20434)
  • fix(lsp): always enable semantic tokens responses (#20440)
  • fix(lsp): force correct media type detection from tsc (#20562)
  • fix(lsp): include JSON modules in local import completions (#20536)
  • fix(lsp): match enable_paths by whole path components (#20470)
  • fix(lsp): pass quote preference to tsc (#20547)
  • fix(lsp): prefer local auto-import specifiers (#20539)
  • fix(lsp): properly handle disabled configuration requests (#20358)
  • fix(lsp): recreate npm search cache when cache path changes (#20327)
  • fix(lsp): refresh npm completions on each character (#20565)
  • fix(lsp): respect configured exclusions for testing APIs (#20427)
  • fix(lsp): restore tsc's quick fix ordering (#20545)
  • fix(lsp): sort quickfix actions (#17221)
  • fix(node): Bump hardcoded version to latest (#20366)
  • fix(node/child_process): don't crash on undefined/null value of an env var
    (#20378)
  • fix(node/http): correctly send Content-length header instead of
    Transfer-Encoding: chunked (#20127)
  • fix(npm): properly handle legacy shasum of package (#20557)
  • fix(runtime/permissions): Resolve executable specifiers in allowlists and
    queries (#14130)
  • fix(test): apply filter before checking for "only" (#20389)
  • fix(test): share fail fast tracker between threads (#20515)
  • fix: Deno.Command - improve error message when cwd is not a directory
    (#20460)
  • fix: don't show filtered test suites as running (#20385)
  • fix: empty include in config file excludes all (#20404)
  • fix: exclude internal JS files from coverage (#20448)
  • fix: init v8 platform once on main thread (#20495)
  • fix: output traces for op sanitizer in more cases (#20494)
  • perf(ext/http): optimize set_response for small responses (#20527)
  • perf(ext/node): Optimise Buffer string operations (#20158)
  • perf(ext/streams): optimize async iterator (#20541)
  • perf(node/net): optimize socket reads for 'npm:ws' package (#20449)
  • perf: improve async op santizer speed and accuracy (#20501)
  • perf: make deno test 10x faster (#20550)

v1.36.4

01 Sep 16:40
c0617d1
Compare
Choose a tag to compare

1.36.4 / 2023.09.01

  • feat(ext/kv): connect to remote database (#20178)
  • feat(node): use i32 for priority_t on MacOS and {Free,Open}BSD (#20286)
  • fix(bench): explicit timers don't force high precision measurements (#20272)
  • fix(ext/http): don't panic on stream responses in cancelled requests (#20316)
  • fix(ext/kv): don't panic if listening on queues and KV is not closed (#20317)
  • fix(ext/node): fix argv[1] in Worker (#20305)
  • fix(ext/node): shared global buffer unlock correctness fix (#20314)
  • fix(ext/tls): upgrade webpki version (#20285)
  • fix(fmt/markdown): ignore trailing words in code block info string for
    language detection (#20310)
  • fix(kv) increase number of allowed mutations in atomic (#20126)
  • fix(lsp): delete test modules with all tests deleted (#20321)
  • fix(lsp): implement deno.suggest.completeFunctionCalls (#20214)
  • fix(lsp): test explorer panic on step result (#20289)
  • fix(lsp/testing): don't queue modules without tests (#20277)
  • fix(lsp/testing): use full ancestry to compute static id of step (#20297)
  • fix(napi): ignore tsfn recv error (#20324)
  • fix(network): adjust Listener type params (#18642)
  • fix(node): propagate create cipher errors (#20280)
  • fix(node/http): don't leak resources on destroyed request (#20040)
  • fix: unexpected lsp function arg comma completion (#20311)