npm互換が強化されたDeno 1.29リリース。独自npmレジストリのサポート、REPLでのnpmサポートなど

2022年12月23日

オープンソースのJavaScript/TyeScriptランタイム「Deno」の最新版となる「Deno 1.29」がリリースされました

Deno 1.29では、前バージョンの1.28から対応を開始したnpm モジュールに対する互換性の向上、独自npmレジストリのサポート、REPLでのnpmサポートなど、多くのアップデートが行われています。

npm対応へと方針変更をしたDeno

DenoはNode.jsよりも優れたサーバサイドのJavaScript/TypeScript環境を新たに作るというコンセプトで開発を開始したため、開発当初からあえてNode.jsとの互換性を考慮していませんでした。そのためにNode.js用のソフトウェアパッケージ機能であるnpm(Node Package Manager)にも対応しませんでした。

しかしDenoよりも後発のJavaScript/TypeScriptランタイムのBunがnpmに対応し注目されたことで、Denoも今年(2022年)8月に方針を変更し、npmに対応することを発表します。

参考:Denoが大幅な方針変更を発表。3カ月以内にnpmへの対応を実現、最速のJavaScriptランタイムを目指しHTTPサーバを刷新

そして発表から3カ月後の11月にリリースされたDeno 1.28でnpmに正式対応しました。

参考:Deno 1.28登場、npm対応が安定版に到達。130万種以上のnpmモジュールを利用可能に

Deno 1.29ではnpmへの対応強化など

今回リリースされたDeno 1.29では、npm対応における30以上のバグを解消してnpmの互換性をさらに改善しています。

また、環境変数「NPM_CONFIG_REGISTRY」を設定することで、標準のnpmレジストリ以外の独自npmレジストリを利用することも可能になりました。

Denoをインストールする「deno install」コマンドの引数としてnpmモジュールを指定することが可能になり、Denoインストール時にnpmモジュールも同時にインストールできるようになっています。

Denoを対話的に操作するREPLでもnpmを組み込んで実行できるようになりました。

$ deno
> import cowsay from "npm:cowsay"
undefined
> console.log(cowsay.say({ text: "hello world" }))
 _____________
< hello world >
 -------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||
undefined
>

その他多くの強化や改善が行われています。詳細は「Deno 1.29: Custom npm registry support」をご覧ください。

あわせて読みたい

JavaScript プログラミング言語 Deno TypeScript




タグクラウド

クラウド
AWS / Azure / Google Cloud
クラウドネイティブ / サーバレス
クラウドのシェア / クラウドの障害

コンテナ型仮想化

プログラミング言語
JavaScript / Java / .NET
WebAssembly / Web標準
開発ツール / テスト・品質

アジャイル開発 / スクラム / DevOps

データベース / 機械学習・AI
RDB / NoSQL

ネットワーク / セキュリティ
HTTP / QUIC

OS / Windows / Linux / 仮想化
サーバ / ストレージ / ハードウェア

ITエンジニアの給与・年収 / 働き方

殿堂入り / おもしろ / 編集後記

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本


<!- script for simple analytics events -->