add include_hidden option to collection_check_boxes helper
Save has_one associations only if record has changes

Prevents save related callbacks such as `after_commit` being
triggered when `has_one` objects are already persisted and have no
changes.
Don't load test env by default
Only use BINARY for mysql case sensitive uniqueness check when column has a case insensitive collation.
Add tip about using RDoc's --pipe command to quickly test the output of
a piece of documentation.

This can be useful for trying out combinations of markup and code, as
discussed in rails/rails@225bcad
Fix coffeescript sample [ci skip]

Replace bind() with on() as suggested by the JQuery bind() documentation: https://api.jquery.com/bind/
Getting started guide fixes & Explain X-SendFile a little better, with links

Explain how form_for :article is able to pull in the properties of @article
Make it clear that article_id is generated due to the association set up

Add link to the rails function that uses X-Sendfile.
Add links to apache and nginx docs for the header
Correct prestreaming controller response status.

if the controller action has not yet streamed any data, actions should
process as normal, and errors should trigger the appropriate behavior
(500, or in the case of ActionController::BadRequest, a 400 Bad Request)
Merge pull request #13937 from ktaragorn/guides_fixes

Guides fixes
Resolve encoding issues with arrays of hstore (bug 11135).

We didn't have enough encoding for the wire protocol to store an array
of hstore types. So, further encode any hstore that is an array member.
Whilst we're here, ensure it's an HashWithIndifferentAccess being
returned, to be consistent with other serialized forms, and add testing
for arrays of hstore.

So now the following migration:

  enable_extension "hstore"
  create_table :servers do |t|
    t.string  :name
    t.hstore  :interfaces, array: true
  end

produces a model that can used like this, to store an array of hashes:

  server = Server.create(name: "server01", interfaces: [
    { name: "bge0", ipv4: "192.0.2.2", state: "up" },
    { name: "de0", state: "disabled", by: "misha" },
    { name: "fe0", state: "up" },
  ])

More at http://inopinatus.org/2013/07/12/using-arrays-of-hstore-with-rails-4/
Merge pull request #13512 from gsamokovarov/hstore_arrays_fix

Hstore arrays fix (follow up for #11444)
Fix typo [ci skip]
Don't skip tests if they are not broken. Just don't define they
No need to use symbols
Revert "Merge pull request #13344 from ccutrer/fix-from-default-select"

This reverts commit 3ea840355409dc205a9e0d027fc09f1452636969, reversing
changes made to e4cde5d58cbb09d1843796f96ba86225ff94fe05.

Conflicts:
	activerecord/CHANGELOG.md
	activerecord/lib/active_record/relation/query_methods.rb

Reason: using `from` without `select` should not change the select list
to SELECT * because it can lead different query results. If it is needed
to change the table to a subquery or a view you can pass a table alias
in the `from` call or use `select('subquery.*')`.

Fixes #14049.
Merge pull request #14087 from 10io/patch-1

Fix coffeescript sample [ci skip]
Merge pull request #14000 from Fortisque/kevin/stream_error_management

streaming should change status of response when exception is caught
time helpers honor the application time zone when passed a date

Rails applications are expected to be always aware of the application
time zone.

To be consistent with that contract, we have to assume that a bare
date passed to time helpers is a date in the application time zone,
not in the system time zone. The system time zone is irrelevant, we
should totally ignore it.

For example,

    travel_to user.birth_date + 40.years

should make that user be 40th years old regardless of the system
time zone. Without this patch that may not be true.
adds a missing travel back
travel_to travels back and re-raises if the block raises