Skip to content
This repository
  • 459 commits
  • 303 files changed
  • 64 contributors
This comparison is big! We're only showing the most recent 250 commits
Apr 24, 2010
David Chelimsky allow unsubscribe by name or subscription [#4433 state:resolved]
Signed-off-by: Jeremy Kemper <>
Apr 25, 2010
Mikel Lindsaar Merge branch 'master' of e1b255a
Mikel Lindsaar Fixing typo in guide, updating ActionMailer description and making th…
…e contributors list alphabetical
Rodrigo Navarro Fix validates_numericaly_of only integer error message [#4406 state:r…

Signed-off-by: José Valim <>
Andrew White Support fixtures for namespaced models [#2965 state:resolved]
Signed-off-by: José Valim <>
Xavier Noria the names of Rails components have a space, eg "Active Record" 7b15629
Cezary Baginski Action Pack: fix tests with -K*, work around Ruby 1.9.1 constant lookup.
[#4473 state:committed]

Signed-off-by: Jeremy Kemper <>
Jeremy Kemper Revert "create option to include_root_in_json for ActiveResource [#2584
… state:committed]"

This reverts commits 72f89b5, 137d8e0.

Should reuse Active Model.

[#2584 state:incomplete]
Apr 26, 2010
José Valim Refactor tests by moving all middleware tests to the same place. c9132c1
José Valim Ensure application rake tasks and generators are loaded after the one…
…s specified in railties/engines/rails. [#4471 state:resolved]
José Valim No need to require test and rdoc tasks. 9b5a1f7
David Chelimsky extract ActionController::TestCase::Behavior
- this makes it possible for other test frameworks
  to hook into testing facilities provided by Rails
  without having to subclass AC::TestCase.

[#4474 state:resolved]

Signed-off-by: José Valim <>
Make db console work for all versions of ruby on Windows.
[#3999 state:committed]

Signed-off-by: Jeremy Kemper <>
Anil Wadghule Use Config::CONFIG['host_os'] instead of RUBY_PLATFORM [#4477 state:r…

Signed-off-by: Jeremy Kemper <>
Emili Parreño fix font formats and code examples indentation a571314
Santiago Pastorino Use explicit source encoding rather than forced UTF-8 from US-ASCII.
Signed-off-by: Jeremy Kemper <>
Santiago Pastorino Reuse Active Model serialization in Active Resource. [#2584 state:com…

Signed-off-by: Jeremy Kemper <>
Jeremy Kemper Update CHANGELOG for include_root_in_json. 43e2fd9
Jeremy Kemper JSON: encode objects that don't have a native JSON representation usi…
…ng to_hash, if available, instead of instance_values (the old fallback) or to_s (other encoders' default). Encode BigDecimal and Regexp encode as strings to conform with other encoders. Try to transcode non-UTF-8 strings.
Yehuda Katz Merge branch 'master' of 91963e9
Apr 27, 2010
Xavier Noria use ordinary syntax for options to be well-formed in 1.8 1d63129
ActiveSupport::Cache refactoring
All Caches

* Add default options to initializer that will be sent to all read, write, fetch, exist?, increment, and decrement
* Add support for the :expires_in option to fetch and write for all caches. Cache entries are stored with the create timestamp and a ttl so that expiration can be handled independently of the implementation.
* Add support for a :namespace option. This can be used to set a global prefix for cache entries.
* Deprecate expand_cache_key on ActiveSupport::Cache and move it to ActionController::Caching and ActionDispatch::Http::Cache since the logic in the method used some Rails specific environment variables and was only used by ActionPack classes. Not very DRY but there didn't seem to be a good shared spot and ActiveSupport really shouldn't be Rails specific.
* Add support for :race_condition_ttl to fetch. This setting can prevent race conditions on fetch calls where several processes try to regenerate a recently expired entry at once.
* Add support for :compress option to fetch and write which will compress any data over a configurable threshold.
* Nil values can now be stored in the cache and are distinct from cache misses for fetch.
* Easier API to create new implementations. Just need to implement the methods read_entry, write_entry, and delete_entry instead of overwriting existing methods.
* Since all cache implementations support storing objects, update the docs to state that ActiveCache::Cache::Store implementations should store objects. Keys, however, must be strings since some implementations require that.
* Increase test coverage.
* Document methods which are provided as convenience but which may not be universally available.


* MemoryStore can now safely be used as the cache for single server sites.
* Make thread safe so that the default cache implementation used by Rails is thread safe. The overhead is minimal and it is still the fastest store available.
* Provide :size initialization option indicating the maximum size of the cache in memory (defaults to 32Mb).
* Add prune logic that removes the least recently used cache entries to keep the cache size from exceeding the max.
* Deprecated SynchronizedMemoryStore since it isn't needed anymore.


* Escape key values so they will work as file names on all file systems, be consistent, and case sensitive
* Use a hash algorithm to segment the cache into sub directories so that a large cache doesn't exceed file system limits.
* FileStore can be slow so implement the LocalCache strategy to cache reads for the duration of a request.
* Add cleanup method to keep the disk from filling up with expired entries.
* Fix increment and decrement to use file system locks so they are consistent between processes.


* Support all keys. Previously keys with spaces in them would fail
* Deprecate CompressedMemCacheStore since it isn't needed anymore (use :compress => true)

[#4452 state:committed]

Signed-off-by: Jeremy Kemper <>
Xavier Noria release notes: updates path to the rails command in the Rails repo 97b3936
Jeremy Kemper Switch driver to pg. [#3635 state:resolved] 7100c9d
Nathan Weizenbaum Only run load hooks once a file has been fully loaded.
Signed-off-by: Jeremy Kemper <>
Curtis Hawthorne Destroy respects optimistic locking.
Now works with :dependent => :destroy and includes unit tests for that
case.  Also includes better error messages when updating/deleting stale

[#1966 state:committed]

Signed-off-by: Jeremy Kemper <>
Jeremy Kemper Fix prototype grep depending on JSON encoding regexp as JavaScript re…
Apr 28, 2010
Rohit Arondekar added views dir to list of created things 033b1e6
Rohit Arondekar added notice to all samples of show.html.erb of posts controller c6a8337
Rohit Arondekar Fixed incomplete para 56c48f8
Rohit Arondekar fixed para for better readability 9dea2f4
Rohit Arondekar replaced <b> tag with <strong> tag in samples edcbd33
Rohit Arondekar readability fixes to two paras in Refactorization 8f1a5bf
Cezary Baginski Fix BigDecimal JSON encoding test. [#4495 state:resolved]
Signed-off-by: Jeremy Kemper <>
Jeremy Kemper Bundle json and yajl-ruby gems for AS::JSON testing 2218493
Xavier Noria Merge commit 'rails/master' b9ab4c7
Santiago Pastorino Makes validates_acceptance_of to not override database fields [#4460

Signed-off-by: José Valim <>
Santiago Pastorino failing test for: validates_acceptance_of overrides database fields
Signed-off-by: José Valim <>
José Valim Fix failing test. 209ab7e
Jeremy Kemper object_id may be negative, producing an invalid symbol. h/t Markus Sc…
Ernie Miller Fix eager loading of associations causing table name collisions
[#4463 state:committed]

Signed-off-by: Jeremy Kemper <>
Apr 29, 2010
José Valim The rake task :environment now loads config/environment.rb instead of…
… initializing the application on its own. This fixes [#4492 state:resolved] and also avoids the application being initialized twice in some rake tasks.
Rohit Arondekar revert back to <b> tags instead of <strong> tags in the getting start…
…ed guide
Neeraj Singh array.to_xml should be able to handle all types of data elements [#4490
… state:resolved]

Signed-off-by: José Valim <>
José Valim Ops. Rename performance to profiler. 1bea5c7
José Valim Move several configuration values from Hash to ActiveSupport::XmlMini…
…, which both Hash and Array depends on.

Also, refactored ActiveModel serializers to just use ActiveSupport::XmlMini.to_tag. As consequence, if a serialized attribute is an array or a hash, it's not encoded as yaml, but as a hash or array.
Neeraj Singh ActionCachingTestController rescues from all exceptions. Making sure …
…that all the tests check for valid response. [#4468 state:resolved]

Signed-off-by: José Valim <>
Ravinder Rana warn user if options are given before application name [#3435 state:r…

Signed-off-by: José Valim <>
José Valim ActiveRecord middlewares should be inserted before AD::Cascade [#4493
Neeraj Singh Fix form builder and form helpers inconsistencies [#4432 state:resolved]
* datetime_select and select_datetime should be consistent as much as possible
* date_select and select_date should be consistent as much as possible
* time_select and select_time should be consistent as much as possible

Signed-off-by: José Valim <>
Neeraj Singh making rake:migrate VERSION=0 a noop called in succession. [#2137 sta…

Signed-off-by: José Valim <>
Tore Darell Replace send_data with send_file in "Sending files" example c68ff4b
Tore Darell Change %5b ([) to %5d (]) in escaped URL 8d0bdbf
Santiago Pastorino as changes named routes, path is the appropriate option in this case 199cb0f
Ben Orenstein Fix sentence fragment and improve wording in generated README. 90ef772
Ben Orenstein Make output match code. f632df2
Ben Orenstein Small grammatical fix. 7c7e00b
Jeremy Kemper Add missing deprecation requires fef31be
Jeremy Kemper Fix docs typo: app.middlewares -> app.middleware 20f0e9f
Brian Durand Add after_commit and after_rollback callbacks to ActiveRecord that ar…
…e called after transactions either commit or rollback on all records saved or destroyed in the transaction.

[#2991 state:committed]

Signed-off-by: Jeremy Kemper <>
José Valim Update thor dependency to 0.13.5 b0a53c8
Move ActionMailer generator to AM c54c84b
Brian Durand Update after_commit and after_rollback docs and tests to use new styl…
…e API with an :on options instead of on_* suffix.


Signed-off-by: Jeremy Kemper <>
Rohit Arondekar Rewrote para for clarity and better reading 0bd6314
Apr 30, 2010
Rohit Arondekar Rewrote Security para and a minor fix 7d00275
Rohit Arondekar fixes to tags section 0b41aa9
Rohit Arondekar more fixes and updated the changelog 2c7f773
José Valim Reorganize the mailer generator a bit. 7b98d2a
José Valim Update generators to use thor 0.13.6 with simpler source_root handling. cde168e
José Valim Updated the generators guide. 34908e4
Neeraj Singh test cases for record.to_xml [#458 state:resolved]
Signed-off-by: José Valim <>
Neeraj Singh removing the extra assignment statement [#4432 state:resolved]
Signed-off-by: José Valim <>
Lawrence Pit to_xml with :include should skip_instruct on the included records [#4506

Signed-off-by: José Valim <>
Norman Clarke Delegate Inflector.transliterate to i18n. [#4508 state:resolved]
Ancillary changes: Moved Chars#normalize into a class method; removed
unused UTF_PAT constant.

Signed-off-by: José Valim <>
José Valim Depend on the I18n 0.4.0.beta. 6b55947
risk danger olson add HTTP Token Authorization support to complement Basic and Digest A…
Yehuda Katz Merge branch 'master' of 0fe8827
Yehuda Katz Add generators to the guides and break out an extensions section 21c1fbb
Yehuda Katz Add generators to the guides and break out an extensions section e975f6f
Xavier Noria guides index: punctuation f5fa13c
Xavier Noria after_(commit|rollback) rdoc, edit pass 1ff954a
Jeremy Kemper Merge remote branch 'technoweenie/http_token_authentication'
Signed-off-by: Jeremy Kemper <>
Set up app generator class to make it easier to for alt-stacks to ove…
…rride targeted areas
Provide a mechanism for overriding the entire generator via a class t…
…hat handles the individual elements of generating a new Rails application
Emili Parreño fix format 81807e0
It would be nice to actually commit test fixtures dedb842
Fix a bug in the generators from the previous commit 95c9879
RouteSet does not raise ActionController::RoutingError when no routes…
… match anymore. Instead, it follows the X-Cascade convention. ShowExceptions checks for X-Cascade so that the routing error page can still be displayed.
May 01, 2010
Xavier Noria Merge commit 'rails/master'
José Valim Use %{} syntax in I18n (faster) instead of {{}}. 13867a3
Marius Nuennerich repair the activesupport message encryptor tests for me, do so in the…
… same way as jeremy did with message verifier

[#4517 state:committed]

Signed-off-by: Jeremy Kemper <>
José Valim Speed up I18n helpers in views and add entry to CHANGELOG. a61a6d2
Cezary Baginski AR: fixed postgres transaction tests [#4519 state:commited]
Signed-off-by: Jeremy Kemper <>
Cezary Baginski AR: fixed postgres fixture tests [#4519 state:resolved]
Signed-off-by: Jeremy Kemper <>
May 02, 2010
Xavier Noria edit pass in the transactions preamble rdoc 6433c93
Xavier Noria say something about after_(commit|rollback) in callbacks.rb, the fact…
… that their implementation is elsewhere is not important for rdoc purposes
Xavier Noria let Date.yesterday and Date.tomorrow be based on Date.current rather …
Xavier Noria revises tests for Date.yesterday and Date.tomorrow 1b33a15
Mikel Lindsaar Adding ability to pass proc's to the ActionMailer class default method
Signed-off-by: José Valim <>
Mikel Lindsaar Adding ability for the procs to be called within the instance, allows…
… you to pass results from instance methods to the mail header

Signed-off-by: José Valim <>
Mikel Lindsaar Adding more docs to ActionMailer 3e33294
Mikel Lindsaar Cleaning up Action Mailer spelling with and without the space 07a5fde
Santiago Pastorino Missing require added make pass activesupport/test/json/encoding_test…
….rb in isolation

Signed-off-by: Xavier Noria <>
Justin George Make notifications go off even when an error is raised, so that we ca…
…pture the underlying performance data [#4505 state:resolved]

This is important when trying to keep track of many layers of interrelated calls


ActiveRecord::Base.transaction do
  MyModel.find(1) #ActiveRecord::NotFound
end # should capture the full time until the error propagation

Signed-off-by: José Valim <>
Justin George Change event namespace ordering to most-significant first [#4504 stat…

More work still needs to be done on some of these names
(render_template.action_view and render_template!.action_view particularly)
but this allows (for example) /^sql/ to subscribe to all
the various ORMs without further modification

Signed-off-by: José Valim <>
José Valim Event should be aware if yielded block failed or not. a76c7e6
David Chelimsky move FixtureResolver to a file that is accessible outside Rails' own …

[#4522 state:resolved]

Signed-off-by: José Valim <>
David Chelimsky add tests for FixtureResolver
Signed-off-by: José Valim <>
David Chelimsky add NullResolver
[#4523 state:resolved]

Signed-off-by: José Valim <>
Joe Hannon grammatical error 'uses' -> 'use' 2a09b8e
May 03, 2010
Xavier Noria adds test coverage for Date.current vs in Date.(yesterday|…
…tomorrow) implementation
José Valim Make backtrace_cleaner work as expected. Prior to this patch, the Ful…
…l Trace rarely showed the full trace. Also, increase performance considerably.
Lawrence Pit Favor %{} in all code instead of (deprecated) {{}} as interpolation s…
…yntax for I18n

Signed-off-by: José Valim <>
José Valim Update I18n gem to 0.4.0.beta1 [#4525 state:resolved]. 36fc489
David Chelimsky Eliminate false positives when passing symbols to assert_template
Signed-off-by: José Valim <>
David Chelimsky move assert_template tests to their own test case [#4501 state:resolved]
Signed-off-by: José Valim <>
Norman Clarke Fix transliteration rule example in docs. [#4526 state:resolved]
Signed-off-by: Xavier Noria <>
Xavier Noria fixes colon in previous YAML example 34d5725
Xavier Noria adds a comment explaining why BigDecimal#as_json returns a JSON string 9e085a9
Xavier Noria BigDecimal#as_json does not really specify the F format, it delegates…
… that to whatever BigDecimal#to_s default format is, do the same in its test
Xavier Noria date/conversions needs time/calculations for (utc|local)_time 6704d8c
May 04, 2010
typo 'main.cs' -> 'main.css' 6658c95
textile typo 'h6(:has_many-group)' -> 'h6(#has_many-group)' 387e16a
typo. missing 'if' 8770b8c
mica eked typo "<image />" -> "<img />" 1357b65
mica eked typo 'follow' -> 'following' 3190fcb
Josiah Ivey image_tag should be audio_tag 015114c
Josiah Ivey Change typo 'image' to 'audio file' 44a9896
Pratik Use class_inheritable_accessor for connection_handler 841c01f
Mikel Lindsaar Adding more docs to ActionMailer fb30feb
Mikel Lindsaar Cleaning up Action Mailer spelling with and without the space 058f7fe
Joe Hannon grammatical error 'uses' -> 'use' c8d03fb
typo 'main.cs' -> 'main.css', and textile typo 'h6(:has_many-group)' …
…-> 'h6(#has_many-group)', and typo. missing 'if'
mica eked typo "<image />" -> "<img />", and typo 'follow' -> 'following' d5e3c49
Josiah Ivey image_tag should be audio_tag, and change typo 'image' to 'audio file' 0dd3b46
Xavier Noria Merge remote branch 'rails/master' 583b60d
Brian Lopez Allow pre-casted values (other than nil) to pass through from calcula…
…tions un-touched

[#4514 state:committed]

Signed-off-by: Jeremy Kemper <>
Jatinder Singh Active Model JSON serializer now supports custom root option
[#4515 state:committed]

Signed-off-by: Jeremy Kemper <>
Mathieu Arnold Use primary key in conditions, not 'id' [#4395 state:resolved]
Signed-off-by: Pratik Naik <>
Brian Lopez add support for mysql2 adapter to dbconsole
[#4532 state:committed]

Signed-off-by: Jeremy Kemper <>
May 05, 2010
Xavier Noria let Time.time_with_datetime_fallback handle properly years in the ran…
…ge 0..138
Xavier Noria adds Date#to_time refinement from previous commit to the CHANGELOG f2072a3
Santiago Pastorino typo 'Provivdes' -> 'Provides' b38639a
Yehuda Katz Update hidden namespace mechanism to work better with alternate choic…
…es and to support full namespaces (not just entire groups)
Ernie Miller Prevent calling regexp on symbol in Ruby 1.9 in association_proxy
Signed-off-by: Pratik Naik <>
May 06, 2010
Anil Wadghule Updated guide to inform issues with unsupported Ruby versions. 6071b47
Expand paths to app builders relative to the working directory 6d7f279
Ernie Miller Fix unintuitive behavior with multiple order and group clauses
[#4545 state:committed]

Signed-off-by: Jeremy Kemper <>
Rohit Arondekar Migrations, rewrote a sentence for clarity. d3e405c
Lawrence Pit Fix parsing xml input by ActionDispatch::ParamsParser
[#4437 state:committed]

Signed-off-by: Jeremy Kemper <>
May 07, 2010
Rohit Arondekar migration, correct file and created a code sample out of it. 2cc1686
Santiago Pastorino Make find_or_create and find_or_initialize work mixing explicit param…
…eters and a hash [#4457 state:committed]

Signed-off-by: Jeremy Kemper <>
May 08, 2010
Emili Parreño Add index length support for MySQL [#1852 state:resolved]

  add_index(:accounts, :name, :name => 'by_name', :length => 10)
  => CREATE INDEX by_name ON accounts(name(10))

  add_index(:accounts, [:name, :surname], :name => 'by_name_surname', :length => {:name => 10, :surname => 15})
  => CREATE INDEX by_name_surname ON accounts(name(10), surname(15))

Signed-off-by: Pratik Naik <>
José Valim Revert "Add index length support for MySQL [#1852 state:open]"
This commit breaks dumping a few tables, as the sessions table.
To reproduce, just create a new application and:

  rake db:sessions:create
  rake db:migrate
  rake db:test:prepare

And then look at the db/schema.rb file (ht: Sam Ruby).

This reverts commit 5b95730.
Sam Ruby get the rescue error page back [#4536 state:resolved] 788684d
Xavier Noria add test coverage for (last|next)_year on leap years 7184a9e
Santiago Pastorino Here the intention was to assign to different objects 0b4211c
Josh Kalderimis updated AMo validations to use a context for valid? and invalid?, rem…
…oving the dependency on AR
Josh Kalderimis removed use of AR in AMo tests and removed testing of scopes (:on) in…
… individual validation tests and moved them to their own test file
Josh Kalderimis updated AR to work with the AMo model validation changes e17ff6d
Santiago Pastorino Updates bundler information, now bundler has a homepage c31b386
May 09, 2010
Josh Kalderimis removed an old unused model in the AMo tests which also removes anoth…
…er AR dependency
Josh Kalderimis removed AR from all AMo tests, including any unneeded files (schema, …
…fixtures and test helper)
Xavier Noria Backports Date#>> from 1.9 so that calculations do the right thing ar…
…ound the calendar reform

Our next_month gives November for some late dates in September of 1582.
Related methods, last_*, and in general advance have the same issues.
This commit fixes those, see the test suite for expected behavior, which
we still run in 1.9 to ensure it matches as we do with other methods
defined in Date in 1.9.
Xavier Noria AS guide: documents some Date calculations (calendar reform details p…
Yehuda Katz eliminate alias_method_chain from ActiveRecord d916c62
Xavier Noria adds calendar reform test coverage for more relevant date calculations 2969543
Xavier Noria AS guide: adds a catchall note about date calculations around the cal…
…endar reform
Xavier Noria AS guide: you know, the 10th is not November 08d991a
Xavier Noria aliases Date#sunday to Date#end_of_week, for symmetry with existing a…
…lias Date#monday -> Date#beginning_of_week
Xavier Noria AS guide: more date calculation utilities 1ff3d95
Xavier Noria Merge remote branch 'rails/master' e1a0d86
José Valim Use annoted source code in Template:Error to avoid special cases in t…
…he show exceptions middleware.
José Valim Merge branch 'master' of 06eaf27
Josh Kalderimis corrected AR find_each and find_in_batches to raise when the user use…
…s select but does not specify the primary key

Signed-off-by: José Valim <>
Pratik Improve code from 231d767 f75a6fe
Pratik Revert "Revert "Add index length support for MySQL [#1852 state:open]""
This reverts commit 6626833.
Pratik Make sure schema dumper doesnt throw up when there are no index lengths ce5827e
May 10, 2010
José Valim Make sure valid? preceives the context as in ActiveModel API (ht: Car…
…los Antonio)
Josh Kalderimis corrected error message in session/cookie_store [#4546 state:resolved]
Signed-off-by: José Valim <>
May 11, 2010
Pratik Succint save definition 1f675ea
Pratik Use arel instead of sql strings 475d1d1
Pratik Remove undocumented save_without_validation! 88b4a8f
Blake Smith Make sure timestamp is properly referenced
Signed-off-by: José Valim <>
Santiago Pastorino type_cast_calculated_value refactor: value is never a Fixnum here. Fi…
…x test since SQLite returns Float.

[#4514 state:committed]

Signed-off-by: Jeremy Kemper <>
May 12, 2010
Xavier Noria Gemfile requires sqlite3-ruby 1.3.0.beta.1 75ddbfe
Xavier Noria revises the rdoc of #average according to 5f3bd55, and realigns when …
Santiago Pastorino Make use of to_xml and to_json in tests
Signed-off-by: Jeremy Kemper <>
Santiago Pastorino Refactor of active_model/naming.rb and allow collection and element t…
…o be writable

Signed-off-by: Jeremy Kemper <>
Santiago Pastorino Make ActiveResource serialize XML correctly when element_name is set.

Signed-off-by: Jeremy Kemper <>
Santiago Pastorino Revert "Refactor of active_model/naming.rb and allow collection and e…
…lement to be writable"

This reverts commit f7862b2.

Signed-off-by: José Valim <>
Santiago Pastorino Fixes to_json and to_xml for ActiveResource
Signed-off-by: José Valim <>
Xavier Noria defines prev_(month|year) in Date and Time to ease transition to 1.9,…
… and deprecates last_(month|year)
May 13, 2010
Josh Kalderimis validation macros can now be used within an instance 9131a88
Josh Kalderimis minor changes to instance level validations implementation based on f…
…eedback from José Valim
May 14, 2010
Mikel Lindsaar Changed encoding behaviour of mail, so updated tests in actionmailer …
…and bumped mail version to 2.2.1

Signed-off-by: José Valim <>
Santiago Pastorino To allow proper fisting of stack trace
Signed-off-by: Jeremy Kemper <>
Neeraj Singh Better code formatting and proper line numbers for stack traces
[#4596 state:resolved]

Signed-off-by: Jeremy Kemper <>
May 15, 2010
David Chelimsky Modified default_scope to merge with any pre-existing default_scope
and added AR::Base::clear_default_scope

- clear_default_scope provides users who rely on the old behaviour
  of each call to default_scope overwriting any previous default
  scopes an opportunity to maintain that behaviour.

[#4583 state:resolved]

Signed-off-by: José Valim <>
Stephen Celis Let label helpers accept blocks.
Signed-off-by: José Valim <>
José Valim Improve previous patch a bit [#3645 state:resolved] d18a274
Santiago Pastorino ActiveResource shouldn't consider modules in the path
[#4529 state:committed]

Signed-off-by: José Valim <>
Marc-André Lafortune Accept :alt => nil on image_tag [#4558 state:resolved]
Signed-off-by: José Valim <>
Adrian Sanchez Bundler deprecated options in Gemfile with application template using…
… method "gem" [#4534 state:resolved]

Signed-off-by: José Valim <>
Neeraj Singh STI should not ignore type condition while applying scopes from paren…
…t class scopes

[#4507 state:resolved]

Signed-off-by: José Valim <>
Carlos Antonio da Silva Add missing require to with_options [#4601 state:resolved]
Signed-off-by: José Valim <>
Jeroen van Dijk Added Rake task rails:templates:copy to copy templates for customizat…
…ion [#4574 state:resolved]

Signed-off-by: José Valim <>
Yehuda Katz Remove the need for a special action_mailer.url_for initializer that …
…loads before anything else
Yehuda Katz Reorganized initializers a bit to enable better hooks for common case…
…s without the need for Railtie. Specifically, the following hooks were added:

* before_configuration: this hook is run immediately after the Application class 
  comes into existence, but before the user has added any configuration. This is
  the appropriate place to set configuration for your plugin
* before_initialize: This is run after all of the user's configuration has completed,
  but before any initializers have begun (in other words, it runs right after
* after_initialize: This is run after all of the initializers have run. It is an
  appropriate place for forking in a preforking setup

Each of these hooks may be used via ActiveSupport.on_load(name) { }. In all these cases, the context inside the block will be the Application object. This means that for simple cases, you can use these hooks without needing to create a Railtie.
José Valim Update generators test. 6f0ed7a
Paco Guzmán fix assert_select messages to its declaration behaviour
Signed-off-by: José Valim <>
added convenience methods #notice and #alert to
Signed-off-by: José Valim <>
Anil Wadghule Add tests for convenience methods #notice and #alert to [#4369

Signed-off-by: José Valim <>
Diego Algorta Fix for get_ids when including a belongs_to association on a has_many…
… association [#2896 state:resolved]

Signed-off-by: Pratik Naik <>
Jeff Kreeftmeijer partial counters with :as [#2804 state:resolved]
Signed-off-by: Jeremy Kemper <>
Santiago Pastorino Reset quoted_table_name after set_table_name [#4568 state:resolved]
Signed-off-by: Pratik Naik <>
Jeroen van Dijk Make ActiveModel::Errors#add_on_blank and #add_on_empty accept an opt…
…ions hash and make various Validators pass their (filtered) options.

This makes it possible to pass additional options through Validators to message
generation. E.g. plugin authors want to add validates_presence_of :foo, :format
=> "some format".

Also, cleanup the :default vs :message options confusion in ActiveModel
validation message generation.

Also, deprecate ActiveModel::Errors#add_on_blank(attributes, custom_message) in
favor of ActiveModel::Errors#add_on_blank(attributes, options).

Original patch by Sven Fuchs, some minor changes and has been changed to be applicable to master again

[#4057 state:committed]

Signed-off-by: Jeremy Kemper <>
Jeff Kreeftmeijer make sure `as` is set before trying to build an #{as}_counter. [#2804

Signed-off-by: Jeremy Kemper <>
Jeremy Kemper Ruby 1.9: fix invalid rack response in test c5537c1
José Valim Optimize the code added in fa99de0 f055bc0
José Valim Revert "Make ActiveModel::Errors#add_on_blank and #add_on_empty accep…
…t an options hash and make various Validators pass their (filtered) options."

Having a huge array to whitelist options is not the proper way to handle this case. This means that the ActiveModel::Errors object should know about the options given in *all* validators and break the extensibility added by the validators itself. If the intent is to whitelist options before sending them to I18n, each validator should clean its respective options instead of throwing the responsibility to the Errors object.

This reverts commit bc1c8d5.
Jeff Dean Sending :id => nil to form helpers now properly omits the "id" html e…
…lement [#4559 state:resolved]

Signed-off-by: José Valim <>
José Valim Ensure that eager_load actually takes place just after the middleware…
… stack is built by using another pattern.

Also create a engine_blank_point initializer to ensure any :before or :after hooks defined inside engines won't move the configuration initializers to other places.
May 16, 2010
José Valim Expose remaining hooks to minimize the need for a Railtie based on fe…
…edback from plugin developers.
Don't carry default value when changing column for a binary type on M…
…ySQL [#3234 state:resolved]

Signed-off-by: José Valim <>
Rohit Arondekar Fixed two failing tests in railties on 1.9.2-head [#4609 state:commited]
Signed-off-by: José Valim <>
Jeff Kreeftmeijer using :time_select when the attribute type is :time in the scaffold g…
…enerator. [#2377 state:resolved]

Signed-off-by: José Valim <>
José Valim Move AD::Cascade to the bottom of the middleware stack. 99b38f3
Jeff Kreeftmeijer Added assert_attribute_type to clean up GeneratedAttributeTest [#2377

Signed-off-by: José Valim <>
José Valim Rename assert_attribute_type to asser_field_type. 1a2d556
Sasha Koss Fix Hash#index deprecated warning in 1.9.x [#4600 state:resolved]
Signed-off-by: José Valim <>
Rohit Arondekar Fixed 1 failure and 2 errors in ActionPack testsuite [#4613 state:com…

Signed-off-by: José Valim <>
Dmitry Lipovoi added support for html attributes in options_for_select [#2165]
Signed-off-by: José Valim <>
José Valim Add some comments related to Hash method check. 6cabc9a
Hussein Morsy Fixed 1 failure in ActionPack testsuite [#4613 state:resolved]
Signed-off-by: José Valim <>
Simon Jefford Check blocks are not incorrectly detected when compiling erubis templ…
…ates [#4575 state:resolved]

Signed-off-by: José Valim <>
Wijnand Wiersma Postgresql doesn't allow to change a string type column to a binary t…
…ype. Skip this test for postgresql for now. [#4616 state:resolved]

Signed-off-by: José Valim <>
Santiago Pastorino Make use of assert_equal to test equallity between object assert expe…
…cts and object and a message of error

[#4611 state:committed]

Signed-off-by: José Valim <>
Santiago Pastorino Added missing require, we are using bind method defined on active_sup…

[#4610 state:committed]

Signed-off-by: José Valim <>
Rizwan Reza Takes out stale methods relating to edge_rails_version
Signed-off-by: José Valim <>
Rizwan Reza Take out stale tasks from Actionpack's Rakefile [#4619 state:resolved]
Signed-off-by: José Valim <>
Franck Verrot I have updated the documentation according to ticket #4263 about fixt…
…ures and set_fixture_class

Signed-off-by: José Valim <>
Sasha Koss Added rails command aliases (s g c db) to reserved words in app gener…
…ator [#4602 state:resolved]

Signed-off-by: José Valim <>
Simon Jefford Tests for new reserved words [#4602 state:resolved]
Signed-off-by: José Valim <>
Santiago Pastorino Gemfile requires sqlite3-ruby = 1.3.0.beta.2
Signed-off-by: Xavier Noria <>
Nobuhiro IMAI prevent to run fixture accessor (e.g. test_foos for TestFoo model) as…
… a test case [#2992 state:resolved]

Signed-off-by: Wijnand Wiersma <>
Signed-off-by: José Valim <>
Priit Tamboom Added nokogiri dependency to Gemfile [#4617 state:resolved]
Signed-off-by: José Valim <>
Yehuda Katz Initial work to improve the state of encodings for templates af0d1a8
Yehuda Katz Significantly improved internal encoding heuristics and support.
* Default Encoding.default_internal to UTF-8
* Eliminated the use of file-wide magic comments to coerce code evaluated inside the file
* Read templates as BINARY, use default_external or template-wide magic comments
  inside the Template to set the initial encoding
  * This means that template handlers in Ruby 1.9 will receive Strings encoded
    in default_internal (UTF-8 by default)
* Create a better Exception for encoding issues, and use it when the template
  source has bytes that are not compatible with the specified encoding
* Allow template handlers to opt-into handling BINARY. If they do so, they
  need to do some of their own manual encoding work
* Added a "Configuration Gotchas" section to the intro Rails Guide instructing
  users to use UTF-8 for everything
* Use config.encoding= in Ruby 1.8, and raise if a value that is an invalid
  $KCODE value is used

* Fixed a few tests that were assert() rather than assert_equal() and
  were caught by Minitest requiring a String for the message
* Fixed a test where an assert_select was misformed, also caught by
  Minitest being more restrictive
* Fixed a test where a Rack response was returning a String rather
  than an Enumerable
Santiago Pastorino Change on Array extension from rand => random_element [#4555 state:co…

Signed-off-by: Xavier Noria <>