Deno v1.43.4

Deno v1.43.4がリリースされました。このリリースはバグ修正やパフォーマンス改善などがメインです。

deno publish

expandoプロパティのサポート

deno publish(fast check)やdeno docexpandoプロパティが認識されない問題が修正されています。

--dry-runの改善

deno publish --dry-runの実行時に、以下のケースでエラーが発生するように挙動が改善されています。

  • バージョン指定がないjsr:specifierが検出された場合
  • deno.jsonが存在しない場合

Node.js互換性の改善

node:worker_threads

メインスレッドとWorkerスレッドでモジュールキャッシュが分離されました。SvelteKitなどのパッケージがこの挙動に依存しているようです。(#23461)

node:os

homedirの互換性が改善されています。

node:fs

EISDIRが発生する状況下でReferenceErrorが発生してしまう問題が修正されています。

Deno API

"junction"に関する型定義の追加

Deno.SymlinkOptionstypeプロパティの型定義に"junction"が追加されています。

"junction"のサポートは以前に実装されていたものの、型定義が追加されていなかったようです。

ReadableStream

ReadableStreamSymbol.asyncIteratorメソッドが返却する非同期イテレーターに対して.return()の直後に.next()を呼ぶと、.next()が返却したPromise.return()が返却したものよりも先に解決される問題が修正されています。


その他

DenoがTypeScriptなどのファイルをトランスパイルする際に、トランスパイル後のソースからコメントが削除されてしまう問題が修正されています。

Deno v1.43.5

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

Deno v1.43.4でいくつかのnpmパッケージを使おうとするとエラーが発生していたため、その修正が行われています。(#23862)

deno_stdのリリース

deno_stdのリリースが行われています。主要な変更点だけ抜粋します。

@std/collections@0.224.2

invertinvertByが追加されています。オブジェクトのキーと値を入れ替えることができます。

const actual = invert({ "foo": 1, "bar": 2 });
const expected = { "1": "foo", "2": "bar" };
assertEquals(actual, expected);

freshのホームページの新デザイン

freshのホームページのデザインが更新されています。

www: refresh home page (#2418)

デザインの変更に加えて、Deco.cxの紹介やFormの取り扱い、Partialsなどに関するセクションが追加されているようです。

@cross - Cross-Runtime JavaScript Libraries

Deno, Node.js, Bunなどの様々なラインタイムから利用するためのライブラリがJSRの@crossというスコープで公開されています。

ファイルシステムや環境変数に関するものなど様々なライブラリが公開されており、開発は以下のOrganizationで行われているようです。

The Deno Standard Library is now available on JSR

deno_stdのJSRへの公開に関してDeno公式から記事が公開されています。

deno_std各モジュールごとにバージョン管理されるようになった背景やDenoのワークスペース機能などについても説明されています。

DenoでHonoやReactを使ったテンプレートを作ってみた

Deno/Hono/PostgreSQL/Kysely/Vite/ReactなどでWebアプリケーションを開発するためのテンプレートに関する記事が公開されています。

テンプレートは以下のリポジトリで公開されているようです。