Fresh v1.3

Fresh v1.3がリリースされました。

以下に内容をまとめたため、よろしければそちらを参照いただければと思います。

Deno v1.35.2

Deno v1.35.2がリリースされました。

Node.js互換性の改善

  • npm:経由で読み込まれたパッケージと通常のDenoコードで異なるglobalThisの実体が参照されるように変更されました。(#19307)
  • npmパッケージ内からDenoで書かれた.tsファイルをimport()で読もうとすると、エラーが発生する問題が修正されました。
  • node:process: dlopenが実装されています。(flags引数は未サポート)
  • node:stream/promises: finished/pipelineexportされていなかった問題が修正されています。

TypeScript

--unstableをつけずにunstable APIを使おうとした際のエラーメッセージが改善されています。

v1.35.2:

error: TS2551 [ERROR]: Property 'openKv' does not exist on type 'typeof Deno'. Did you mean 'open'? 'Deno.openKv' is an unstable API. Did you forget to run with the '--unstable' flag, or did you mean 'open'? If not, try changing the 'lib' compiler option to include 'deno.unstable' or add a triple-slash directive to your entrypoint: /// <reference lib="deno.unstable" />

v1.35.1:

error: TS2551 [ERROR]: Property 'openKv' does not exist on type 'typeof Deno'. Did you mean 'open'?

deno vendor

deno.jsoncompilerOptions.jsxImportSourceが指定されているもののjsxファイルが一つも存在しない場合に、deno vendorが失敗する問題が修正されています。

deno_std v0.195.0

deno_std v0.195.0がリリースされました。

std/testing/asserts.ts (破壊的変更)

std/testing/asserts.tsstd/assertへ移動されました。

// v0.194.0
import { assertEquals } from "https://deno.land/std@0.194.0/testing/asserts.ts";

// v0.195.0
import { assertEquals } from "https://deno.land/std@0.195.0/assert/mod.ts";

また、この移動に合わせて各APIごとにファイルの分割も行われており、以下のように必要なAPIのみを読み込むことも可能です。

import { assertEquals } from "https://deno.land/std@0.195.0/assert/assert_equals.ts";

std/testing/assertsは非推奨化されており、v1で削除される予定のようです。

std/streams/readable_stream_from_iterable.ts (破壊的変更)

Deno本体にReadableStream.fromが実装されたため、readableStreamFromIterableが非推奨化されました。

v0.196.0で削除される予定のようです。

std/async/delay.ts

abort済みのAbortSignalsignalオプションに渡した際に、DOMExceptionではなくAbortSignal.reasonプロパティに設定されたエラーが投げられるように挙動が修正されました。

Fresh v1.4について

Fresh v1.4の開発計画が公開されています。

July - August 2023 iteration plan #1485

以下の内容などが検討されているようです。