use name specified by 'as' for automatic inverse association to avoid reflecting on wrong association
Add missing test cases for #assert_no_difference
Introduce an Attribute object to handle the type casting dance

There's a lot more that can be moved to these, but this felt like a good
place to introduce the object. Plans are:

- Remove all knowledge of type casting from the columns, beyond a
  reference to the cast_type
- Move type_cast_for_database to these objects
- Potentially make them mutable, introduce a state machine, and have
  dirty checking handled here as well
- Move `attribute`, `decorate_attribute`, and anything else that
  modifies types to mess with this object, not the columns hash
- Introduce a collection object to manage these, reduce allocations, and
  not require serializing the types
Ensure we always define attribute methods
ActionController::Parameters#require now accepts FalseClass values

Fixes #15685.
Copy edits from e0f3f1a [ci skip]
- image_tag is an instance method
- explain possible results when asset pipeline is used
Merge pull request #15593 from sgrif/sg-attribute

Introduce an Attribute object to handle the type casting dance
Create 4.2 release notes guide scaffold [ci skip]

Point to future 4-2-stable branch for detailed changes. [ci skip]

Sync Active Support changelogs with release notes [ci skip]

4.2 Release Notes is a work in progress [ci skip]

Assorted fixes for AS release notes [ci skip]

* `Hash#deep_transform_keys` has already been backported
* Mentioning `ActiveSupport::SafeBuffer#prepend` in the "Deprecations" section would be enough
* Fix syntax in `Kernel#concern` example

Sync AS release notes with the latest commits [ci skip]

Synced 4.2 release notes with commits in railties [ci skip]

Sync AP Deprecations and Notable changes from CHANGELOG [ci skip]

Removed 4.2 release notes from the index [ci skip]

This deprecation was reverted in 489a8f2 [ci skip]

Synced Active Record changelogs for 4.2 release notes [ci skip]

Synced Active Model changelog with the release notes [ci skip]

Added cc26b6b as a 'Removal' item in AP release notes [ci skip]

Use 'character' instead of 'symbol' to avoid confusion [ci skip]

Edit pass on 4.2 release notes [ci skip]

:memo: :lipstick: Use `.xyz` and `#xyz` appropiately [ci skip]
Merge pull request #15689 from sgrif/sg-attribute-methods

Ensure we always define attribute methods
First pass at Rails 4.2 release notes [ci skip]
Merge pull request #15306 from rails/4-2-release_notes

Rails 4.2 release notes [ci skip]
Remove unused column types override
Revert code changes at "Copy edits and code font wrap for Active Record [ci skip]"

This partially reverts commit 1a203d5e07f639332880099fab610b886b1742fc.

Reason: It was committed by accident
Reorder test which does not represent real world usage

We don't generally modify our classes at runtime like this. Let's create
the instance after the class is created. Original commit doesn't imply
that this was intentional behavior.
In actionview, eliminate calls to tag that use html_safe parameter values. This is generally unnecessary, since tag handles string quoting, except in one case (utf8_enforcer_tag) where we want to specify the encoding ourselves.
Reword PreparedStatementInvalid example, and use values instead of
variables [ci skip]
Thanks to @matthewd for the excellent feedback! :heart:
s/variable supplied/value supplied [ci skip]
Merge pull request #15696 from sgrif/sg-bad-test

Reorder test which does not represent real world usage
Remove unused `method_missing` definition

We always define attribute methods in the constructor or in `init_with`.
Merge pull request #15695 from sgrif/sg-rm-column-types-override

Remove unused column types override