Deno v1.25.3
Deno v1.25.3がリリースされました。
npmパッケージサポートの改善
- esm形式のモジュールからcjs形式のモジュールを
importする際の挙動のNode.jsとの互換性が向上しています。 deno run --unstable npm:<package>@version/subpathで.js形式または拡張子なしのファイルを実行できるようになりました。typescript/tscを実行できない問題があったようです。
- パッケージのサブパスに
package.jsonがあれば、その定義内容を元にエントリポイントが解決されるようになりました。 --unstableが指定されたときは、NODE_DEBUGとNODE_OPTIONS環境変数に対して--allow-envのチェックがスキップされるように変更されました。
Flash(Deno.serve)の改善
同時に一つのリクエストしか処理できなかった問題が解消されています。
https://github.com/denoland/deno/releases/tag/v1.25.3
deno_std v0.156.0
deno_std v0.156.0がリリースされました。
std/node
Deno本体のnpmパッケージサポートの改善に合わせて、バグ修正などが実施されています。
今回のリリースによってcpy-cliなどが動かせるようになったようです。
変更点:
fs:ReadStreamとWriteStreamがnewなしで作成できるようになりました。process:"FOO" in process.envなどでprocess.envを利用した際に、全パーミッションが要求される問題が解消されています。(内部的にDeno.env.toObject()が使用されないように修正されています)process:process.execPathが書き込み可能なプロパティに変更されました。(pnpmなどの書き込みを行うパッケージが存在したため)
std/fs
すでにシンボリックリンクが存在する場合にensureSymlinkが失敗しないように改善されています。
std/http/file_server
serveFileにディレクトリのパスが指定された場合、404エラーが返却されるように修正されました。 (今までは200が返却されるものの、ボディを読もうとするとエラーが発生していたようです)
https://github.com/denoland/deno_std/releases/tag/0.156.0
Mongooseサポートに向けたunstable APIの安定化について
Mongooseのサポートに向けて、下記のAPIの安定化が検討されています。
Deno.consoleSize()とDeno.hostname()についてはすでにPRが作成されており、次のv1.26あたりで安定化される可能性がありそうです。
Ultra v2.0.0-beta.6
Island Architectureのサポートなどが追加されています。
https://github.com/exhibitionist-digital/ultra/releases/tag/v2.0.0-beta.6
deno-sqlite v3.5.0
PreparedQueryに.first()と.firstEntry()が追加されています。
その影響で既存の.one()と.oneEntry()は非推奨化されています。
const query = db.prepareQuery("SELECT * FROM users WHERE id = ?");
const found = query.first([123]);
if (!found) console.warn("Not found");
https://github.com/dyedgreen/deno-sqlite/releases/tag/v3.5.0
Showcase by deno-ja
Denoで作られたものを紹介するためのページが公開されました。
下記のいずれかから閲覧できます。