Grails Webフレームワークの2.3 GAバージョンが先週リリースされた。発表されたのはSpringOne 2GXカンファレンスの最中だ。新バージョンの機能のいくつは,カンファレンス2日目の夜,GrailsのプロジェクトリーダであるGraeme Rocher氏によるデモが行われた。
デモのステージではRocher氏が,フレームワークの最新リリースを公式に発表した上で,ドメインクラスとエンティティ用のビルトインRESTサポートを実演してみせた。フレームワーク用のGORM Rest Clientプラグインについても最初のマイルストーンリリースが発表され,ライブコーディングによるデモンストレーションが行われた。さらにはGrailsの新バージョンとGORM Rest Clientプラグインを組み合わせて,新バージョンのREST URLパターンに従ったリモートRESTエンドポイントにドメインクラスをマップできることも示された。
さらに氏は,GORMの新たな非同期ネームスペースが,RESTfulにマップされたドメインクラスに利用可能な点についてもデモを行った。氏が3日目に行った "Restfully Async with Grails 2.3" という題の講演では,新バージョンのRESTおよび非同期機能について,より深い議論とともに,次のような機能のデモンストレーションを行っている:ドメインクラス用のビルトインRESTサポート; HATEOASのサポート; 新しいデータレンダリングとバインディング機構; コントローラ用の非同期サポート。
InfoQはカンファレンス中のRocher氏に連絡を取り,Grailsの新バージョンについて話を聞いた。まず最初に,Grails 2.3でもっとも重要だと思う機能は何かを質問すると,氏は"すべてですね。" と答えた後,"Grails 2.3の変更の多くには,Grails 3の機能に慣れてもらうという目的があるのです。"
ApacheのIvyからMavenのAetherレゾリューションエンジンへのスイッチについても話をした。氏によれば,"Mavenを使った(統合しようと試みた)人たちから,多数の問題が" フレームワークチームに報告されたたのだという。氏はAetherを採用することで,それらの問題の大部分に対処できると考えている。Aetherが "Mavenの依存性と同じセマンティックエンジンを持っている" ので,"結果的にはMavenが処理を行うのだから,[フレームワークの]一貫性も確保できるはず" という理由からだ。氏はさらに,フレームワークとAetherとのインテグレーションが "Grails 3への基礎として果たした多くの役目" について論じた上で,Grails 3ではフレームワークのビルドシステムをGradleに置き換えることに言及した。
Rocher氏は以前,Grails 3の作業の開始時期を2013年第3四半期のどこかだと語っていたが,フレームワークのCompileStaticサポートをさらに改良するという目標に向けて,バージョン3の前に2.4をリリースする見込みであることを認めた。Groovy 2.2も今後2ヶ月くらいだろう,と氏は述べている。
Grails 2.3のすべての新機能に付いては,フレームワーク資料の "What's new in Grails 2.3" の章で見ることができる。また,今回のリリースで対処されたすべてのバグと拡張要求の一覧が,Grails Changelogに記載されている。