Rails2.0Preview登場

Rails2.0のPreviewが出たようです。
Rails本家のBlogに色々機能について書いてあったので読んでみた。下のようなことが書いてあった気がします。
たぶん間違いだらけなので、信用しないで元の文章読んでください。
http://feeds.feedburner.com/~r/RidingRails/~3/163455924/rails-2-0-0-preview-release

機能強化系

  • ActiveResourceの強化(namespaceの導入、rake routesで動的生成されるroutesの確認など)
  • respond_toの強化(show.html.erb , index.atom.builder , edit.iphone.hamlみたいな)
  • XSS対策の新方式(ブラックリストでなくホワイトリスト方式へ。TextHelper#sanitize)
  • アクション毎の細かな例外ハンドリング設定(rescue_action_in_publicの代わりにrescue_fromを宣言的に使用)
  • ActiveRecordシリアライズに加えてデシリアライズにも対応(Person.new.from_xml(“David“)みたいな。XMLJSONなどに対応)
  • プラグインの読み込み順序を指定できるようになる(config.plugins)
  • ActionMailerでテストメソッドの提供(assert_emails)。別のテンプレートエンジンが使えるようにもなる。
  • マイグレーション記法の洗練化(型毎にまとめられるように)
  • デバッガの強化(irbベースからruby-debugベースに。ステップバックや現在地表示が可能らしい。)
  • asset_hostの強化(ActionController::Base.asset_host = "assets%d.example.com"で%dが1〜4の数値に自動的に書き換わる)

新規機能系

  • HTTPのBASIC認証に対応
  • production時にJSを1ファイルに固めてくれる機能の追加(javascript_include_tag(:all, :cache => true)
  • CSRF対策の提供(AjaxRequestとFormにトークンを入れる)
  • HTTP only cookiesのサポート
  • Atom生成ライブラリの提供
  • Array#rand、Hash#exceptなどの細かいメソッドの追加

性能向上系

  • assetタグの性能向上、簡単なroutesのキャッシュ
  • Queryのキャッシュ(同一リクエスト内でのクエリキャッシュ)
  • fixtureの高速化(50-100%)

整理、分離系

  • インプレイスエディタ、オートコンプリートをプラグインにして外だし
  • 標準で付属していたacts_as_*をプラグイン
  • MySQLSQLitePostgreSQL以外(≒商用DB)のアダプタをgem化外だし(リリースサイクルも個別に)
  • ActionWebServiceの外だしgem化(かつあまり更新に乗り気でない雰囲気)
  • その他、pagination使うにも従来型がよければpluginを入れる必要がでたりとか

制限系

  • ActiveRecord::Base.with_scopeが非publicになる(玄人は.send(:with_scope)で)


(Shouta)