Denoの直近の変更について
先週に続けて、おそらく次のDeno v1.46でリリースされると思われる機能がいくつかマージされているため、気になったものについて紹介いたします。
⚠️正式にDeno v1.46がリリースされる際には、仕様などに変更が入る可能性もあります🙏
deno remove
コマンド
deno remove
という新しいコマンドが追加されています。引数で指定されたパッケージをdeno.json
のimports
やpackage.json
などから削除しつつ、deno.lock
を更新してくれます。
$ deno remove @std/testing
deno serve --parallel
deno serve
に--parallel
オプションが追加されています。このオプションが指定された場合、deno serve
はコア数またはDENO_JOBS
で指定された値に基づいて、リクエストを複数のワーカーへ分散してくれるようです。
Deno公式のYoutubeチャンネルで解説動画が公開されています。
HMRの安定化
DenoのHMR機能が安定化されるようです。
安定化に合わせて、コマンドラインオプションが--unstable-hmr
から--watch-hmr
にリネームされています。
deno publish
のLICENSEチェックについて
deno publish
コマンドの実行時にLICENSE
ファイルが存在しない場合は、警告ではなくエラーが発生するように挙動が変更されています。(articles/2024/07/28)
また、deno.json
にlicense
フィールドが追加されており、こちらによってライセンスを定義することもできるようです。
- feat(publish): error on missing license file (denoland/deno#25011)
- feat(config/jsr): add license field (denoland/deno#25056)
deno_stdのリリース
deno_stdがリリースされています。
@std/cache
新規パッケージとして@std/cacheが追加されています。
現時点では、指定された関数をメモ化するためのmemoize()
とそのキャッシュとして利用することができるLruCache
が実装されています。
@std/datetime@0.225.0
@std/datetime@0.225.0がリリースされています。
破壊的変更として、format()
のutc
オプションが削除され、代わりにtimeZone
オプションが追加されています (現在は"UTC"
のみがサポート)
@std/encoding@1.0.2
@std/encoding@1.0.2がリリースされています。
base32hexのサポートが追加されています。(@std/encoding/base32hex
)
@std/streams@1.0.2
@std/streams@1.0.2がリリースされています。
新規APIとしてtoLines
(@std/streams/to-lines
)が追加されています。
@std/text@1.0.3
@std/text@1.0.3がリリースされています。
新規APIとしてslugify
(@std/text/slugify
)が追加されています。
fresh v1.7.0
fresh v1.7.0がリリースされています。
新機能としてUNIXドメインソケットのサポート(startUnixServer
)が追加されています。