allow 'all' for :domain option in addition to :all
Don't remove mailer layouts files
Remove custom errors page section from the guides

This pattern is too problematic and introduces a lot of edge cases:

  * On 4.2, the issue https://github.com/rails/rails/issues/15124 is
    back again.
  * needs to define each action for each http status otherwise the
    router raises ActionController::RoutingError (No route matches).
  * If the router has `match "/*username",...` and some action is
    missing, Rails will pick up the "match" and try to do its job.
  * encourages people to copy & paste programming. Not DRY.

[ci skip]
Fix Sidekiq ActiveJob integration setup

* .connect on a Redis connection wasn't valid
* Reset logger after we're done testing for redis connection to avoid
  "closed stream" error when starting server for real from a fork
Hide potentially sensitive ActiveJob params from logs

* Show GlobalID instead of full object .inspect output
Only filter GIDable objects; remove cosmetic changes
Removed use of mocha in the info_controller tests
fixing mailer previews for apps with globbing route
document that `.delete` does work on `#readonly?` records. Closes #11860

[ci skip]

This is due to the fact that `.delete` is directly translated to SQL.
It tries to follow the same rules as `.delete_all` which is not able
to verify that records are `#readonly?`.
Failure to rollback t.timestamps when within a change_table migration

When running the following migration:

    change_table(:table_name) { |t| t/timestamps }

The following error was produced:

    wrong number of arguments (2 for 1) .... /connection_adapters/abstract/schema_statements.rb:851:in `remove_timestamps'

This is due to `arguments` containing an empty hash as its second
argument.
Move PredicateBuilder instantiation to constructor

In order to maintain thread safety and prevent race condition from memoization.
Merge pull request #17651 from CLUSTERfoo/fix/adding_timestamps_migration_not_reversible

Failure to rollback t.timestamps when within a change_table migration
docs, add new changelog entries at the top :sweat: [ci skip] #17651
Active Record changelog needs to keep pointing at 4-2-stable. #17651

[ci skp]
Merge pull request #17898 from mrgilman/move-predicate-builder-to-constructor

Move PredicateBuilder instantiation to constructor
Merge pull request #17891 from prathamesh-sonpatki/remove-mocha-from-info-controller-tests

Removed use of mocha in the info_controller tests
Clarify that batching methods can be used with any orderable type primary key, not just integer ones, as per @a58cafeb3a86be46849de57481b6644094fb8165
Prevent Symbol GC
Add documentation to MessageVerifier

[ci skip]

Complements #17727 and closes ee73d9ff8.

@lleger How do you feel about this?
Remove "rescue" clause around "require 'openssl'"

Some `require 'openssl'` statements were surrounded by `rescue` blocks to deal with Ruby versions that did not support `OpenSSL::Digest::SHA1` or `OpenSSL::PKCS5`.

[As @jeremy explains](https://github.com/rails/rails/commit/a6a0904fcb12b876469c48b1c885aadafe9188cf#commitcomment-8826666) in the original commit:

> If jruby didn't have jruby-openssl gem, the require wouldn't work. Not sure whether either of these are still relevant today.

According to the [release notes for JRuby 1.7.13](http://www.jruby.org/2014/06/24/jruby-1-7-13.html):

> jruby-openssl 0.9.5 bundled

which means the above `rescue` block is not needed anymore.

All the Ruby versions supported by the current version of Rails provide those OpenSSL libraries, so Travis CI should also be happy by removing the `rescue` blocks.

---

Just to confirm, with JRuby:

    $ ruby --version #=> jruby 1.7.16.1 (1.9.3p392) 2014-10-28 4e93f31 on Java HotSpot(TM) 64-Bit Server VM 1.8.0_20-b26 +jit [darwin-x86_64]
    $ irb
    irb(main):001:0> require 'openssl' #=> true
    irb(main):002:0> OpenSSL::Digest::SHA1 #=> OpenSSL::Digest::SHA1
    irb(main):003:0> OpenSSL::PKCS5 # => OpenSSL::PKCS5

And with Ruby 2.1:

    $ ruby --version #=> ruby 2.1.2p95 (2014-05-08 revision 45877) [x86_64-darwin13.0]
    $ irb
    irb(main):001:0> require 'openssl' #=> true
    irb(main):002:0> OpenSSL::Digest::SHA1 #=> OpenSSL::Digest::SHA1
    irb(main):003:0> OpenSSL::PKCS5 #=> OpenSSL::PKCS5