Deno v1.41.2
Deno v1.41.2がリリースされています。
jsr
deno add
でnpmパッケージがサポート
deno add
の引数にnpm:<パッケージ名>
の形式でパッケージを指定すると、対象のnpmパッケージがdeno.json
に追加されます。
$ deno add npm:chalk@5.3.0
deno add
でパッケージのバージョン指定がサポート
deno add
でパッケージを追加する際に、以下のような形式などでバージョンを指定できます。
$ deno add @std/ulid@0.219.1
$ deno add @oak/oak@14
deno publish
- include
/exclude
に関する挙動の改善
deno publish
がJSRにパッケージを公開する際に、パッケージに含めるまたは除外するファイルを決定する際の挙動が改善されています。
祖先のディレクトリの
.gitignore
も参照されるように挙動が変更されています.gitignore
やexclude
で除外されたファイルのunexcludeがサポートされています{ "publish": { "exclude": [ "!tmp/generated" ] }, "exclude": [ "tmp" ] }
deno publish --dry-run
- GitHub Actionsのパーミッションに関する改善
GitHub Actionsでdeno publish --dry-run
を実行する際に、GitHub Actionsのパーミッションなしで動作するように改善されました。
deno publish
- コミットされていないファイルがあった際に失敗するように
コミットされてないファイルがあったらdeno publish
によるパッケージの公開が失敗するように挙動が変更されました。
この挙動は--allow-dirty
オプションにより無効化できるようです。
deno lsp
jsr:
URLのhoverの改善
import
におけるjsr:
URLに対してhoverした際にJSRレジストリ上における該当パッケージのURLが表示されるように挙動が改善されました。
リモートモジュールのシンボルをリネームした際のバグの修正
リモートモジュールからnamed importされているシンボルをリネームしようとすると、リモートモジュール内のファイルのシンボルもリネームされてしまう問題が修正されています。
Node.js互換性の改善
node:util
:styleText
が実装されました (nodejs/node#51850)node:worker_threads
:Worker#ref
/unref
の基本的な実装が追加されましたnode:async_hooks
:AsyncLocalStorage#enterWith
が実装されました- これによりSvelteKitが動くようになったらしいです
unstable: ["temporal"]
のサポート
deno.json
でTemporal
の有効化がサポートされました。
今までTemporal
を使用するには--unstable-temporal
を指定する必要がありましたが、今後はdeno.json
でも有効化を制御できそうです。
{
"unstable": ["temporal"]
}
deno_std v0.219.0
deno_std v0.219.0がリリースされています。
std/semver
- 非推奨APIの削除
非推奨化されていた以下のAPIが削除されました。
削除対象 | 移行先 |
---|---|
std/semver/gtr.ts | std/semver/greater_than.ts & std/semver/range_min.ts |
std/semver/ltr.ts | std/semver/less_than.ts & std/semver/range_min.ts |
std/semver/reverse_sort.ts | std/semver/compare.ts & Array#sort |
Operator 型の"==" /"===" /"!==" /"" | "=" /"!=" ,undefined |
std/expect
- expect.extend
がサポート
expect.extend
が実装されました。
バグ修正
std/log/file_handler.ts
: 4096バイト以上のデータを書き込もうとすると例外が発生する問題が修正されていますstd/path/common.ts
:common()
の引数に指定されたパスの順番や要素数によっては、意図せぬ結果を返すことがある問題が修正されています