「Babel 7」リリース、新たにTypeScriptをサポート
JavaScript向けトランスコンパイラBabel開発チームは8月27日、最新のメジャーリリース版となる「Babel 7」を公開した。TypeScriptの対応などの新機能が加わった。
BabelはJavaScriptの新しい機能を使ったコードを、それをサポートしないJavaScript実行環境で動作するように変換するツール。MIT Licenseで公開されている。
Babel 7は2015年に公開したバージョン6.0に続く最新のメジャーリリース。この間、4000件のコミットがあり、50回のプレリリースを重ねた。
TypeScriptのサポートを実現、@babel/preset-typescriptを使ってBabelで型のパーシング/変換ができるという。コードの変換とコンパイルを行うが、型チェックは行わない。ReactのJSX Fragmentも対応した。
また、コードの最適化、パッチなどを通じて速度を強化した。これによってビルドに要する時間を削減できるという。
アップグレードツールbabel-upgradeを導入した。自動的にアップグレードを試みるものでpackage.jsonとand .babelrc設定に依存する。Gitリポジトリ上で「npx babel-upgrade」コマンドを使って直接動かすか、「npm i babel-upgrade –g」コマンドで直接インストールすることを推奨している。
設定ファイルとしてbabel.config.jsを導入した。既存の.babelrcを置き換えるものではなく異なる解決を行うもので、これにより設定項目のオーバーライドが可能になった。
このほか、Webブラウザで実装されていない仕様を用いる機能を動かすpolyfillを自動で行うAuto polyfillingも実験導入した。Promise、symbolなどに必要になるという。Helper、シンタックスなども変更が加わっている。
Babel
https://babeljs.io/