deno.json(c)
でのImport Mapsの定義がサポート// deno.jsonc
{
"imports": {
"dax": "https://deno.land/x/dax@0.24.0/mod.ts"
}
}
deno.json(c)
の内容を元に、bare specifierを解釈してくれます。
import { $ } from "dax";
await $`echo foobar`;
deno fmt
でセミコロンの有無を制御できるようにdeno.json
のfmt.options.semiColons
オプションでdeno fmt
のセミコロンの有無を変更できます。
{
"fmt": {
"options": {
"semiColons": false
}
}
}
Deno.permissions
に同期バージョンのAPIが追加Deno.permissions
名前空間にquerySync()
/requestSync()
/revokeSync()
が追加されました。
const status = Deno.permissions.querySync({ name: "env", variable: "DENO_DIR" });
if (status.state === "granted") {
const denoDir = Deno.env.get("DENO_DIR");
console.info(denoDir);
}
Deno.spawn
/Deno.spawnSync
/Deno.spawnChild
の削除今後はDeno.Command
の使用が推奨されます。
const command = new Deno.Command("deno", {
args: ["info", "--json"],
});
const status = await command.output();
if (status.success) {
console.info(new TextDecoder().decode(status.stdout));
}
deno.json(c)
でのロックファイルの挙動の制御ロックファイルの無効化:
{
"lock": false
}
ロックファイルの名前のカスタマイズ:
{
"lock": "./lock.json"
}
deno check
コマンドで--all
オプションがサポート以下のコマンドで、リモートモジュールも含む全ファイルの型チェックが有効化されます。
$ deno check --all mod.ts
deno check --remote
でも同様の振る舞いを実現できますが、今後は上記の--all
を指定した形式が推奨されます。
deno:
URLのサポートimport $ from "deno:dax@24.0";
await $`echo foobar`;
上記のコードでは/x/dax@0.24.0/mod.tsがimport
されます。
package.json
のサポート{
"type": "module",
"scripts": {
"main": "deno run -A main.ts"
},
"dependencies": {
"chalk": "^5.0",
"deno-redis": "deno:redis@~0.29.0/mod.ts"
}
}
package.json
のサポートDenoはpackage.json
のdependencies
を元にbare specifierを解釈してくれます。
import { connect } from "deno-redis";
import chalk from "chalk";
const redis = await connect({
hostname: "127.0.0.1",
port: 6379,
});
const value = await redis.get("foo");
console.log(chalk.blue.bold(value));
package.json
のサポートpackage.json
のscripts
をdeno task
で実行できます。
$ deno task main
node:
URLのサポート (v1.30.0でサポートされました)deno.json(c)
でのImport mapsの定義 (v1.30.0でサポートされました)deno bundle
コマンドの非推奨化npmパッケージのサポートを導入した背景や、Denoの将来などに関する話が行われています。
ShadowRealm
などを活用したパッケージごとのパーミッション管理のサポートについて--allow-write
を指定した際は、ファイルシステム全体ではなく、カレントディレクトリ配下への書き込みのみを許可すべきでは?