`collection_check_boxes` respects `:index` option for the hidden filed name.

closes #14147
Merge pull request #14736 from nashby/hidden-index

`collection_check_boxes` respects `:index` option for the hidden filed name
Use the index on hidden field
[ci skip] Added link to ruby-lang.org installation.
Merge pull request #14746 from zenati/master

Reference and link to install RVM in the Getting Started Guide. [ci skip]
Refine tests for assert_select failure messages
Fix subscriptions not being unsubscribed.
Merge pull request #14735 from byroot/idempotent-counter-caches

Idempotent counter caches, fix concurrency issues with counter caches
Remove wrapping div with inline styles for hidden form fields.

We are dropping HTML 4.01 and XHTML strict compliance since input
tags directly inside a form are valid HTML5, and the absense of
inline styles help in validating for Content Security Policy.
Use inheritance chain instead of callbacks to increment counter caches after create
Merge branch 'master' into adequaterecord

* master: (70 commits)
  [ci skip] Added link to ruby-lang.org installation.
  Use the index on hidden field
  `collection_check_boxes` respects `:index` option for the hidden filed name.
  docs, double meaning of `serialize` argument. Closes #14284.
  Just call read_attribute, no need to use `send`.
  - Fix lingering reference to `:text` instead of the newer `:plain` - Section references `form_tag` instead of the `form_for` used in the example
  again, read_attribute is public, so just call it
  read_attribute is public, so we should just call it
  Disable assest cache store in docs [ci skip]
  Make counter cache decrementation on destroy idempotent
  Write the failing test case for concurrent counter cache
  [ci skip] Use plain underscore instead of "\_".
  Update documentation to use Rails.application instead
  Add a changelog entry for #14546 [ci skip]
  Move tests for deep_dup and duplicable to object directory
  Missing 'are' in note - [ci skip]
  CollectionHelpers now accepts a readonly option
  Fix a few typos [ci skip]
  Bundle tzinfo-data on :x64_mingw (64-bit Ruby on Windows).
  don't bother with an offset if the offset is zero
  ...
Use inheritance chain instead of callbacks to increment counter caches after destroy
Merge pull request #14729 from akshay-vishnoi/doc_changes

[ci skip] Improve doc, fix grammatical issue
Remove outdated comment
Return null type format when format is not know

When requesting a controller with the following code with a unknown format:

    def my_action
      respond_to do |format|
        format.json { head :ok }
        format.any { render text: 'Default response' }
      end
    end

we should render the default response instead of raising ActionController::UnknownFormat

Fixes #14462

Conflicts:
	actionpack/CHANGELOG.md
	actionpack/test/controller/mime/respond_with_test.rb

Conflicts:
	actionpack/CHANGELOG.md
:scissors:
Make console and generators blocks works at Application instance level

Like rake tasks and runner blocks these blocks should also being shared
between applications since they are stored at the classes.

Fixes #14748
cache scope building on associations

SQL statements for querying associations are now cached
oops. should probably double check in the DCL
The Association Relation should use `empty?` and `size` from Relation.

968c581ea34b5236af14805e6a77913b1cb36238 have introduced this bug #14744
on Association Relation when the method `empty?` or `size` was called.

Example:
  # Given an author that does have 3 posts, but none of them with the
  # title 'Some Title'
  Author.last.posts.where(title: 'Some Title').size
  # => 3

It was occurring, because the Association Relation had implemented these
methods based on `@association`, this way giving wrong results.

To fix it, was necessary to remove the methods `empty?` and `size` from
Association Relation. It just have to use these methods from Relation.

Example:
  # Given an author that does have 3 posts, but none of them with the
  # title 'Some Title'
  Author.last.posts.where(title: 'Some Title').size
  # => 0
  # Now it will return the correct value.

Fixes #14744.