Deno v1.40
Deno v1.40がリリースされました。
以下に内容をまとめたため、よろしければこちらを参照いただければと思います。
deno_std
でのワークスペースの導入について
deno_std
でワークスペースやdeno publish
、“fast check”などの導入に向けた準備が進んでいるようです。
もし今後、パッケージの公開やワークスペースの利用などを検討されている際は、参考になるかもしれません。
std/kv
について
deno_std/kv
モジュールの開発が行われているようです。
まだ入るかどうかは不明なのですが、今後、こちらからDeno KV関連のユーティリティが提供されていく可能性がありそうです。
Deno v1.40.1
Deno v1.40.1がリリースされています。
v1.40.0でdeno lsp
においてデフォルトでcompilerOptions.experimentalDecorators
が無効化されていなかったため、改めて無効化されています。
Deno v1.40.2
Deno v1.40.2がリリースされています。
Deno.FsFile
でinstanceof
が動作しなくなっていた問題が修正されています。
また、v1.40.0で導入された非推奨API使用時の警告メッセージが簡略化されています。
もし、v1.40.0時点での詳細な警告メッセージへ戻したい場合は、DENO_VERBOSE_WARNINGS
を設定する必要があります。
deno_std v0.213.0
deno_std v0.213.0がリリースされています。
破壊的変更
非推奨化されていたモジュールやAPIが削除されています。
std/http/cookie_map.ts
が削除されています。std/semver/format.ts
:function format(semver: SemVer, style?: FormatStyle): string
形式が削除されています。std/semver/compare_build.ts
が削除されています。std/semver/rsort.ts
が削除されています。(reverseSort
への移行が推奨されます)
非推奨化
std/path
std/path/constants.ts
が追加されています。
これに合わせてstd/path/separator.ts
が非推奨化されました。このファイルで公開されていたSEP
はSEPARATOR
に、SEP_PATTERN
はSEPARATOR_PATTERN
にリネームされており、それぞれconstants.ts
からの読み込みが推奨されます。
std/semver
std/semver/types.ts
:SemVerRange
が非推奨化されています。代わりにRange
が追加されているため、そちらのへの移行が推奨されます。std/semver/outside.ts
が非推奨化されています。以下への移行が推奨されます。- 以下のAPIがリネームされています。リネーム前の名称は非推奨化されています。
eq
→equals
neq
→notEquals
lt
→lessThan
lte
→lessOrEqual
gt
→greaterThan
gte
→greaterOrEqual
非推奨API使用時の警告について
一部非推奨APIの使用時に警告を表示する仕組みが導入されています。
std/collections/map_values.ts
mapValues
の引数であるtransformer
関数の第2引数としてキーが渡されるように改善されました。
std/io/buffer.ts
Deno v1.40でDeno.Buffer
が非推奨化された関係でstd/io/buffer.ts
の非推奨化が解除されています。
std/log
ハンドラーがusing
に対応されています。
Oak 13.0.0
Oak 13.0.0がリリースされています。
リクエストボディ(ctx.request.body
)の取り扱いがRequestをベースとするよう変更されています。
// v13
const body = context.request.body;
if (body.type() === "json") {
const json = await body.json();
// ...
}
// v12
const body = context.request.body();
if (body.type === "json") {
const json = await body.value;
// ...
}
また、Deno v1.40でのDeno.serveHttp
の非推奨化に合わせて、Deno.serve
を使用するよう実装が変更されているようです。その影響で、OakでもDeno.serve
の方で実装されるまではHTTP/2が利用できなくなるようです。
Denoの静的サイトジェネレータLume
の紹介
Lume v2に関する解説記事が公開されています。