Use NameError#name to assert raised error.

This makes the test compatible with other Ruby implementations, which
may implement error messages differently.
[ci skip] Add return values to examples
[ci skip] Consolidate docs for `first`

Add docs for `first` when provided a numerical argument. 

Since `first!` behaves exactly the same way but can raise an argument we can consolidate it in the `first` section.
[ci skip] Consolidate docs for `find_by`

Since `find_by!` behaves exactly the same way but can raise an argument we can consolidate it in the `find_by` section.
[ci skip] Consolidate docs for `take`

Add docs on what happens when a numerical argument is provided to take.

Since `take!` behaves exactly the same way but can raise an argument we can consolidate it in the `take` section.
[ci skip] Consolidate docs for `last`

Add docs on what happens when a numerical argument is provided to last.

Since `last!` behaves exactly the same way but can raise an argument we can consolidate it in the `last` section.
[ci skip] Consolidate docs for `find`

Put all options for overloading `find` in one section
[ci skip] Doc ability to chain in `find_each`

Also use appropriate mailer syntax in the `find_each` block.
[ci skip] Fix doc for except

The example showed is `except`, however the method "documented" is `unstop`. Fix to align the docs to the example.
[ci skip] remove invalid code from docs
Prefer find_by over where.first for record
Fix incorrect unsubscription.
Synced 4.2 release notes with the latest commits.

Also reordered some of the items to put newer ones on top (same order as
CHANGELOGs), which makes it easier to diff while we are still working on it.
Use `#bytesize` instead of `#size` when checking for cookie overflow

Although the cookie values happens to be ASCII strings because they are
Base64 encoded, it is semantically incorrect to check for the number of the
characters in the cookie, when we actually want to check for the number of the
bytes it consists of.

Furthermore it is unecessary coupling with the current implementation that
uses Base64 for encoding the values.
Merge pull request #16133 from Agis-/cookie_overflow_check

Use `#bytesize` instead of `#size` when checking for cookie overflow
Merge pull request #16132 from tgxworld/fix_test_not_unsubscribing

Fix incorrect unsubscription.
[Guides] Sentence break for clarity [ci-skip]
Merge pull request #16135 from mgoldWork/validator-guide-sentence-break

[Guides] Sentence break for clarity [ci-skip]
Use a type object for type casting behavior on SQLite3
Don't rely on the column SQL type for bit string quoting