DenoのNode.js互換モードについて
denoland/deno#12295のissueで、DenoにNode.jsの互換モードを提供することが提案されています。
Denoを実行する際に--compat
オプションを指定すると、Node.jsの組み込みモジュールの読み込みが有効化されるように提案されています。
$ deno run --compat main.mjs
こちらの機能の実装はdenoland/deno#12293のPRにて進行中です。
今のところ、Import mapsとdeno_std/nodeを併用することで、Node.jsの組み込みモジュールを読み込めるように実装されているようです。
Deno v1.14.2
Deno v1.14.2がリリースされました。
このリリースはバグ修正やパフォーマンスの最適化などがメインです。
主な変更点:
deno fmt
やdeno test
で.mkd
,.mkdn
,.mdwn
,.mdown
, 及び.markdown
の拡張子のファイルがサポートされました- 一度取り消しされたパーミッションが再び許可されないように修正されました
Deno.HttpConn
がすでに閉じられている場合にrespondWith
を呼ぶと、プロセスがパニックする問題が修正されました- 祖先のワーカーが閉じられたときまたは終了したときに、合わせて子孫のワーカーも閉じるまたは終了するように修正されました
- 祖先のワーカーが終了したもののその子孫に生きているワーカーが存在する場合、プロセスがパニックする問題が修正されました
- Windowsで
Deno.kill
がサポートされました Request
/Response
/Event
オブジェクトの生成、Headers
オブジェクトの内部実装、パーミッションチェックなどが最適化されました
https://github.com/denoland/deno/releases/tag/v1.14.2
deno_std v0.109.0
deno_std v0.109.0がリリースされました
変更点:
node
:stream/web
の部分的なサポートが追加されましたnode/events
:EventEmitter.call
を呼べない問題が修正されましたnode/module
:.mjs
ファイルをrequire
できないように修正されました
https://github.com/denoland/deno_std/releases/tag/0.109.0
lint.deno.landがDeno Deployへ移行
deno_lintの公式サイトであるlint.deno.landがDeno Deployへ移行されました。
それに合わせて、内部実装がdext.ts+Tailwind CSSからFresh+Twindへ移行されています。
DenoやDeno Deployなどでフロントエンド開発を行う際に参考になるかもしれないため、興味のある方はソースコードも見てみるとよいかもしれません。