Merge pull request #16722 from yui-knk/fix/guides_association_basics2

[ci skip] Fix typo of `collection_singular_ids=` method.
Merge pull request #16702 from sgrif/sg-binary-serialized

Correctly detect mutation on serialized columns mapping to binary
Merge pull request #16707 from katmutua/master

update 4_2_release_notes
Merge pull request #16717 from splattael/keygenerator

Use less iterations for KeyGenerator in tests
[ci skip] mention assert_select in release notes
Merge pull request #16723 from rubys/mention_assert_select_changes

[ci skip] mention assert_select in release notes
Refactor out Dir.glob from ActionDispatch::Static

Dir.glob can be a security concern. The original use was to provide logic of fallback files. Example a request to `/` should render the file from `/public/index.html`. We can replace the dir glob with the specific logic it represents. The glob {,index,index.html} will look for the current path, then in the directory of the path with index file and then in the directory of the path with index.html. This PR replaces the glob logic by manually checking each potential match. Best case scenario this results in one less file API request, worst case, this has one more file API request.

Related to #16464

Update: added a test for when a file of a given name (`public/bar.html` and a directory `public/bar` both exist in the same root directory. Changed logic to accommodate this scenario.
Merge pull request #16544 from schneems/schneems/death-to-dir-glob

Refactor out Dir.glob from ActionDispatch::Static
Add language directive to .travis.yml

Currently, Travis CI assumes that the project is in Ruby in the
absence of the `language` key.
This behavior may change in the future. (For example, switch to a "blank"
image which *may* be created.)
remove dead code

the ERB has already been compiled to Ruby code by the time we're calling
module_eval.  Nothing that module eval raises will be caught by a blank
`rescue`, so I think we can remove this
remove useless parameter
Merge pull request #16727 from BanzaiMan/travis-yml-fix

Add language directive to .travis.yml
Reset schema properly after schema changing test
Ignore SCHEMA queries when asserting no queries
AP test files does no more need to be alphabetically sorted here
Test everything

This actually was testing test everything, so why not do it simpler?
No need to sort tests

Dir.glob result must be already sorted anyway
Rails.root should be a Pathname
Reset RACK_ENV after modified in a test case
Expectations first