add include_hidden option to collection_check_boxes helper
Only use BINARY for mysql case sensitive uniqueness check when column has a case insensitive collation.
Ensure LookupContext in Digestor selects correct variant

Related to: #14242 #14243 14293

Variants passed to LookupContext#find() seem to be ignored, so
I've used the setter instead: `finder.variants = [ variant ]`.

I've also added some more test cases for variants. Hopefully this
time passing tests will mean it actually works.
Fixes STI when 2+ levels deep.

PR #14052 Added a regression where it was only looking for methods in one
level up, So when the method was defined in a 2+ levels up the
inheritance chain, the method was not found as defined.
register OID for PostgreSQL citex datatype [Troy Kruthoff & Lachlan Sylvester]

citext makes it possible to use AR Hash finders for case-insensitive matching as sql UPPER/LOWER functions are not needed.
Merge pull request #12523 from lsylvester/pg_citext

Support for PostgreSQL citext data type.
`change_table` supports `citext`. Follow up to #12523.
comment why we are modifying global state. [ci skip]
Merge pull request #14345 from arthurnn/revert_14052

Fixes STI when 2+ levels deep.
Remove mocking on save, when not necessary
Merge pull request #14353 from arthurnn/remove_small_mock

Remove mocking on save, when not necessary
[ci skip] Add documentation for original_fullpath.
Merge pull request #14291 from laurocaetano/doc-for-original-fullpath

Add documentation for original_fullpath. [ci skip]
MySQL 5.6 and later supports microsecond precision in datetime.

You might want to branch it to include this only for 5.6, but
passing these values to < 5.6 doesn't cause issues either.
Test microsecond on mysql 5.6
Changelog entry for mysql56 microseconds
Merge pull request #14359 from arthurnn/mysql2_56_franc_sec

MySQL 5.6  Fractional Seconds
Merge pull request #13040 from kamipo/case_sensitive_comparison

Only use BINARY for mysql case sensitive uniqueness check when column has a case insensitive collation.

Conflicts:
	activerecord/CHANGELOG.md
Unit test for mysql quote time usec
Change usec to 0 on tests that compare seconds

Avoid rounding problems with `.usec` method rounding the seconds when the
field doesn't persist the `.usec` piece.