Merge branch 'master' of github.com:lifo/docrails
fix typo and remove 'examples' noise [ci skip]
add example to ActiveSupport::JSON.encode [ci skip]
add ActiveSupport::JSON.decode documentation [ci skip]
Adds to Batch processing documentation [ci skip]
Updates Array conversions method documentations and clean ups
Fix handling of negative zero in number_to_currency
Merge pull request #6512 from jaredbeck/fix_number_to_currency_neg_format

Fix handling of negative zero in number_to_currency
Don't enable validations when passing false hash values to ActiveModel.validates

Passing a falsey option value for a validator currently causes that validator to
be enabled, just like "true":

    ActiveModel.validates :foo, :presence => false

This is rather counterintuitive, and makes it inconvenient to wrap `validates` in
methods which may conditionally enable different validators.

As an example, one is currently forced to write:

      def has_slug(source_field, options={:unique => true})
        slugger = Proc.new { |r| r[:slug] = self.class.sluggify(r[source_field]) if r[:slug].blank? }
        before_validation slugger
        validations = { :presence => true, :slug => true }
        if options[:unique]
          validations[:uniqueness] = true
        end
        validates :slug, validations
      end

because the following reasonable-looking alternative fails to work as expected:

      def has_slug(source_field, options={:unique => true})
        slugger = Proc.new { |r| r[:slug] = self.class.sluggify(r[source_field]) if r[:slug].blank? }
        before_validation slugger
        validates :slug, :presence => true, :slug => true, :uniqueness => options[:unique]
      end

(This commit includes a test, and all activemodel and activerecord tests pass as before.)
Merge pull request #6517 from purcell/validates-false-value

Don't enable validations when passing false hash values to ActiveModel.validates
change example on CollectionProxy#delete to accept multiple values
[AR querying guide] Add examples for take(limit), first(limit) and last(limit)
remove unnecessary require

AS::Multibyte are no longer required by access and filters string
core extensions.
make AS::Multibyte::Chars work w/o multibyte core ext

Use ActiveSupport::Multibyte::Chars.new instead of String#mb_chars.
It allows to use ActiveSupport::Multibyte::Chars without requiring
String multibyte core extension.
Merge pull request #6522 from lest/patch-1

ActiveSupport require and dependencies
[guides] get rid of any reference to the generator script since rake tasks are now the new interface
[guides] guides:generate:kindle is the new interface to generate .mobi file instead of using KINDLE=1
[guides] fix reference to railties directory, guides are no longer there
Exceptions like Interrupt should not be rescued.

Neither Test::Unit nor MiniTest rescue exceptions like Interrupt or
NoMemoryError, but ActiveSupport::Testing::SetupAndTeardown#run which
overrides MiniTest::Unit::TestCase#run rescues them.

Rescuing an Interrupt exception is annoying, because it means when you
are running a lot of tests e.g. when running one of the rake test tasks,
you cannot break out using ctrl-C.

Rescuing exceptions like NoMemoryError is foolish, because the most
sensible thing to happen is for the process to terminate as soon as
possible.

This solution probably needs some finessing e.g. I'm not clear whether
the assumption is that only MiniTest is supported. Also early versions
of MiniTest did not have this behaviour. However, hopefully it's a
start.

Integrating with Test::Unit & MiniTest has always been a pain. It would
be great if both of them provided sensible extension points for the kind
of things that both Rails and Mocha want to do.
Added information regarding the schema_migrations table in Active Record Migrations guide.