Deno v1.44.2

Deno v1.44.2がリリースされています。

CLI

deno lsp

textDocument/formattingDocumentFormattingParamsoptionsが考慮されるように挙動が改善されています。(LSP: Formatting ignores passed formatting options (#23257))

また、auto importにおいて.d.tsなどが提案されるべき場面で、誤って.jsが提案されてしまうことがある問題が修正されています。(lsp: import suggestion imports .d.ts file as .js (#23017))

deno lint

BOM付きのUTF-8形式のファイルでdeno lintがパニックする問題が修正されています。

バグ修正

複数のDenoプロセスが並列で同時にリモートモジュールのダウンロードを行っていると、処理が失敗することがある問題が修正されています。

また、dynamic importをするとプロセスがハングすることがある問題が修正されています。(Investigating hung/paused process while dynamically importing async module (#24098))

Node.js互換性の改善

Node-API

Node-APIの実装がリライトされています。これにより、Prismaがハングしてしまう問題が解消されるようです。(Prisma library using N-API hangs often (#24010))

node:child_process

stdioオプションで'ipc'とファイルディスクリプタ(整数)の指定がサポートされました。

node:http

ServerResponse#setHeadervalue引数に配列が指定された場合の挙動が修正されています。

  • 今までの挙動: 配列の各値をカンマ区切りで結合し、単一のヘッダーとして追加されていました。
  • Deno v1.44.2: 配列の各要素ごとにヘッダーが追加されます。

node:vm

Scriptにおける以下の問題が修正されています。

  • node:processがimportできない問題 (#22441)
  • globalが未定義になる問題 (#23852)
  • メモリリーク (#23913)

WebSocket

WebSocketBlobを送信する際に、順番通りにメッセージが送られない問題が修正されています。(websocket.send() does not respect the order of messages (#24074))

deno_stdの安定化に関する予定

Deno公式ブログでdeno_stdの今後の安定化に関する予定が公開されています。

上記によると@std/archiveについては再デザイン中とのことです。

また、@std/datetimeについてもTemporal APIに合わせて再デザインが検討されているようです。

Deno for Enterprise

Deno for Enterpriseというサービスが発表されています。

上記リンク先の内容によると、主に大企業向けにDenoランタイムに関するSlackでのサポートなどが提供されるようです。

deno_stdのリリース

deno_stdのリリースが行われています。

@std/assert@1.0.0-rc.2

@std/assert@1.0.0-rc.2がリリースされています。

assertAlmostEqualsで負数同士を比較しようとすると、エラーが発生する問題が修正されています。(assertAlmostEquals failed when comparing 2 negative numbers (#4994))

1.0.0-rc.1

以下のパッケージで1.0.0-rc.1がリリースされています。

@hongminhee/deno-task-hooks

deno.jsonをベースにしたGitフックのセットアップ用ツールが公開されています。