Skip to content

Instantly share code, notes, and snippets.

@pacoguzman
Forked from ryanb/rails_3_beta2_changes
Created April 2, 2010 10:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pacoguzman/353010 to your computer and use it in GitHub Desktop.
Save pacoguzman/353010 to your computer and use it in GitHub Desktop.
Rails3 Beta 2 changes
Action Pack
* Remove metal from Rails3 [YK]
http://github.com/rails/rails/commit/45e60283e733a535d68d499aa20e095c905f43b0
* :only and :except options in the use of rack middlewares [JV]
http://github.com/rails/rails/commit/9a93844aba44319d3c8487a554124beb00ccc267
class PostsController < ApplicationController
use AutheMiddleware, :except => [:index, :show]
end
* #concat is now deprecated in favor of using <%= %> helpers [YK]
* Block helpers now return Strings, so you can use <%= form_for @foo do |f| %>.
<% form_for do |f| %> still works with deprecation notices [YK]
* Add a new #mount method on the router that does not anchor the PATH_INFO
at the end [YK & CL]
* Create a new LookupContext object that is responsible for performantly
finding a template for a given pattern [JV]
* Removed relative_url_for in favor of respecting SCRIPT_NAME [YK & CL]
* Changed file streaming to use Rack::Sendfile middleware [YK]
* ActionDispatch::Request#content_type returns a String to be compatible with
Rack::Request. Use #content_mime_type for the Mime::Type instance [YK]
* Updated Prototype to 1.6.1 and Scriptaculous to 1.8.3 [ML]
* Change the preferred way that URL helpers are included into a class[YK & CL]
# for all helpers including named routes
include Rails.application.router.url_helpers
# for just url_for
include Rails.application.router.url_for
Active Model
* #new_record? and #destroyed? were removed from ActiveModel::Lint. Use
persisted? instead. A model is persisted if it's not a new_record? and it was
not destroyed? [MG]
* Added validations reflection in ActiveModel::Validations [JV]
Model.validators
Model.validators_on(:field)
* #to_key was added to ActiveModel::Lint so we can generate DOM IDs for
AMo objects with composite keys [MG]
Active Record
* To prefix the table names of all models in a module, define self.table_name_prefix on the module. #4032 [Andrew White]
* Silenced "SHOW FIELDS" and "SET SQL_AUTO_IS_NULL=0" statements from the MySQL driver to improve log signal to noise ration in development [DHH]
Active Support
* Reduced load time by deferring configuration of classes using
ActiveSupport::on_load(:component_name) [YK]
* Rename #metaclass to #singleton_class now that ruby-core has decided [JK]
* New assertions assert_blank and assert_present. #4299 [Juanjo Bazan]
* Use Object#singleton_class instead of #metaclass. Prefer Ruby's choice. [Jeremy Kemper]
* JSON backend for YAJL. Preferred if available. #2666 [Brian Lopez]
Action Mailer
* Added interceptors and observers from Mail [ML]
ActionMailer::Base.register_interceptor calls Mail.register_interceptor
ActionMailer::Base.register_observer calls Mail.register_observer
* Whole new API added with tests. See base.rb for full details. Old API is deprecated.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment