「Rails 5.2」が登場、ファイルアップロードフレームワークActive Storageを導入

 Ruby on Railsの作者David Heinemeier Hansson氏は4月9日、最新版「Rails 5.2.0」を公開した。ファイルアップロード機能「Active Storage」の導入などが特徴となる。

 Rails 5.2は、2017年4月に公開されたRails 5.1に続く最新版。400人以上がコードを貢献したという。

 ファイルのアップロードに関連した問題を解決する新機能としてActive Storageフレームワークを導入、コンテンツをクラウドストレージに直接アップロードできるようになった。Amazon S3、Google Cloud Storage、Microsoft Azure Cloud File Storageをサポートしている。

 Active StorageはRailsベースのプロジェクト管理ソフトウェア「Basecamp 3」によって開発された機能。イメージのサイズ変換、動画とPDFのプレビュー生成もサポートし、ファイルのサイズに関係なくアップロードしたファイルのメタデータの取得は非同期で行われる。

 ビルドインのRedisキャッシュストアも導入した。Redis::Distributedをサポートし、フォルトトーラレント、分散MGET(Copy Multiple Files from a Remote System to the Local System)などの機能もサポートする。5.2で新たにデフォルト導入したキャッシュキーの再利用と圧縮と合わせて利用することで、キャッシュのライフサイクルを大幅に改善できるとしている。

 HTTP/2サポートではearly hintsをサポート、Webサーバーに必要なスタイルシートとJavaScriptアセットを早期に送るよう自動で指示する。これにより、ページのフル表示を高速化できると言う。

 性能面では、デフォルトのGemfileでBootsnapを導入した。Railsアプリケーションの起動を最大50%高速化できるとしている。

 セキュリティではすでにクロスサイトリクエストフォージェリ(CSRF)とクロスサイトスクリプティング(XSS)に対する保護を組み込んでいるが、5.2では、5.1で導入したencrypted secretsに変わって、証明書の暗号化を導入した。

 JavaScriptモジュールを使うためのgemであるWebpackerはバージョン3.0となっている。

Ruby on Rails
http://rubyonrails.org/