Meteor 1.2 RC 版が公開されていたので早速試してみた

Qiita にも書きましたが、個人的なログとしてこちらにも書いておきます。

はじめに

Meteor 次期バージョン1.2の RC 版が Meteor Forums で公開されていました。

以前から Meteor 1.2 の RC 版の存在は知っていましたが、公式にアナウンスされたのは今回の RC version7(v1.2-rc.7)が初めてです。この RC 版はある程度安定して利用できるようになっている模様です。ただし、まだ正式リリースではないため、本番環境で使用するのはまだ控えた方が良いと思います。

Meteor 1.2 の主な変更点

Meteor 1.2 の主な変更点は以下の通りです。

  • 新しいプラグインアーキテクチャによるビルドの高速化
  • ECMAScript 2015(別名ES6)の機能を標準サポート
  • LESS と Stylus のクロスパッケージインポート機能
  • Cordova を最新版の 5.2.0 にアップグレード
  • ビューレイヤーで React と Angular を公式サポート
    • Blazeもこれまで通り使えます

個人的には ES2015 と React/Angular の公式対応が嬉しいですね。 それから Cordova Android で Crosswalk が使用できるようになったところですかね。

Meteor 1.2 では 80 以上もの変更・改良が行われています。 上記変更点含む、Meteor 1.2 の変更点を詳しく知りたい方は Meteor リポジトリHistory.md をご覧ください。

Meteor 1.2 RC 版を試す

1. Meteor 1.2 RC 版の新規プロジェクト作成

すでに Meteor をインストール済みの環境であれば、すぐに Meteor 1.2 RC 版を試すことができます 。

meteor create example-app --release METEOR@1.2-rc.7

--release オプションで、リリースバージョンを指定すると現在の環境を汚さずに Meteor プロジェクトを新規作成できます。

既存の Meteor プロジェクトを 1.2 RC版にアップグレード

既存のプロジェクトを 1.2 RC版にアップグレードする際は、Meteor 1.2 Upgrade Guideを参考にしてください。

meteor update --release METEOR@1.2-rc.7

なお、アップグレードすると前のバージョンに戻すのは難しくなる模様です。 既存の Meteor プロジェクトを 1.2 にアップグレードする際は、バックアップをお忘れなく。

2. Meteor アプリ起動

Meteor アプリの起動方法はこれまでと同じです。

cd example-app
meteor

その後ブラウザで http://localhost:3000/ にアクセスして、Meteor アプリの画面が表示されればOKです。

あとはいつも通り開発を行うだけです!

Meteor 1.2 で標準インストールされるパッケージ一覧

Meteor 1.2 ではパッケージが整理されました。また新規機能に関連するパッケージも追加されています。確認してみましょう。

cat .meteor/packages
# Meteor 1.2-rc.7 default packages

meteor-base             # Packages every Meteor app needs to have
mobile-experience       # Packages for a great mobile UX
mongo                   # The database Meteor supports right now
blaze-html-templates    # Compile .html files into Meteor Blaze views
session                 # Client-side reactive dictionary for your app
jquery                  # Helpful client-side library
tracker                 # Meteor's client-side reactive programming library

standard-minifiers      # JS/CSS minifiers run for production mode
es5-shim                # ECMAScript 5 compatibility for older browsers.
ecmascript              # Enable ECMAScript2015+ syntax in app code

autopublish             # Publish all data to the clients (for prototyping)
insecure                # Allow all DB writes from clients (for prototyping)

ちなみに、v1.1.0.3 の場合はこんな感じでした。

# Meteor 1.1.0.3 default packages

meteor-platform
autopublish
insecure

ずいぶんとパッケージが増えていますね。

v1.1.0.3 と v1.2-rc.7 のデフォルトパッケージを比較すると、meteor-platfrom から各種パッケージが分離し、パッケージの入れ替えが簡単にできるようになっています。また、ECMAScript 2015 に関する ecmascript パッケージ等が新しく追加されています。

個人的に興味深いのは、blaze-html-templatesmongo パッケージです。

React と Angular 公式サポートにより、ビューレイヤーのテンプレートエンジンをこれまでの Blaze、それから React、Angular の中から選べるようになりました。それに伴ってテンプレートを簡単に入れ替えできるように blaze-html-templates パッケージとして分離されたのだと思われます。

また、mongo のパッケージが分離されているのは、将来 MongoDB 以外のデータベースを利用できるようにするためだと思われます。Meteor のロードマップでは将来 SQL をサポートする予定となっており、Meteor のデータベースに PostgreSQL を使用する試みがすでに始まっています。楽しみですね。

まとめ

この記事ではもうすぐ登場する Meteor 1.2 の RC 版について紹介しました。

Meteor 1.2 では80箇所以上もの変更や改良が行われています。 また ECMAScript 2015 や React/Angular が公式にサポートされるようになりました。 (なお、Angular 2 も将来公式サポートする予定とのことです)

Meteor は今年の5月に2000万ドルの資金調達をしたり、先日 GitHub のスター数でWeb Frameworkカテゴリで1位を取ったりと、いま勢いに乗っている JavaScript Platform となってます。これからも引き続き Meteor に注目していきたいですね!

それでは良い Meteor ライフを!

参考ページ