概要
denoのv0.36.0がリリースされたため、変更点をまとめます。
破壊的変更
Deno.errors.Other
が削除された
使用されていなかったため、削除されました。
Deno.readDir
がDeno.readdir
にリネームされた
Node.js等に合わせてreadDir
がreaddir
にリネームされました
新機能
std/encoding/binaryモジュールが追加された
Goのencoding/binaryパッケージと同様の機能が提供されています。
(std/node/fs)appendFile
・appendFileSync
が実装された
import * as fs from "https://deno.land/std@v0.36.0/node/fs.ts"
fs.appendFile("./hello.txt", "world", (err: Error) => {
if (err) {
console.error(err);
}
});
(std/node/os) tmpdir
が実装された
import * as os from "https://deno.land/std@v0.36.0/node/os.ts";
console.log(os.tmpdir()); // /tmp
Deno.umask
が実装された
引数として数値を渡すと、プロセスのumask値を指定した値に変更できます。
引数を渡さずに呼ぶとプロセスのumask値を取得できます。
console.log(Deno.umask().toString(8)); // 22
--quiet
フラグが実装された
$ deno run --quiet ./mod.ts
のように実行すると、下記のメッセージ等が表示されなくなります。
Compile file:///home/uki00a/work/deno/sample/mod.ts
seek
がファイルの現在位置を返却するようになった
const file = await Deno.open("./hello.txt");
try {
const position = await Deno.seek(file.rid, 2, Deno.SeekMode.SEEK_START);
console.log(position); // 2
} finally {
file.close();
}
その他
window.addEventListener
にasync関数を渡せるようになった
window.addEventListener('load', async () => { // v0.35.0の時点ではコンパイルエラーが発生していた
...
});
(std/testing) assertThrows
のエラーメッセージが改善された
Windowsでdeno install
を実行すると、ファイル名に余分な.
が含まれてしまう問題が修正された
@yuta0801さんにより修正されました
dprintが0.8.0にアップデートされた
TypeScriptが3.8.3にアップデートされた