Allow habtm class_name option to be consistent with other associations
Support symbol foreign key to delete
Add space in :start_year description for date_select
Merge pull request #17672 from radar/date-select-space

Add space in :start_year description for date_select
Merge pull request #17662 from dtaniwaki/support-symbol-foreign-key-column-to-delete

Support symbol foreign key to delete
Introduce test to demonstrate regression caused by da99a2a2
Revert "PERF: optimise type lookup to avoid invoking procs"

This reverts commit da99a2a2982d35f670ad9647463e09bfe9032b70.
That last test was incorrect... ☕
Remove bullet point to unwritten/unreferenced section
Merge pull request #17677 from StevenNunez/patch-1

Remove bullet point to unwritten/unreferenced section
Add tests for `TypeMap#fetch` and push up to `TypeMap`

It doesn't make sense for the subclass to implement this method, and not
have it on the parent. We can also DRY up the implementation of
`#lookup` to be defined in terms of fetch, which will give us a single
point of entry
Reintroduce cache with tests
Fix shell quote on the release task
Merge pull request #17575 from shikshachauhan/make-habtm-consistent

Allow class_name option in habtm to be consistent with other association...
Some valid block calls in templates caused syntax errors

Now ActionView accepts <%= foo(){ %> and <%= foo()do %> :golf:
PERF: avoid string allocations
synchronize code and docs for `timestamps` and `add_timestamps`.

This makes the following changes:
  * warn if `:null` is not passed to `add_timestamps`
  * `timestamps` method docs link to `add_timestamps` docs
  * explain where additional options go
  * adjust examples to include `null: false` (to prevent deprecation warnings)
[CI SKIP] Improvements to Active Job guide.
Merge pull request #17669 from SamSaffron/optimise_memory

PERF: avoid string allocations
Merge pull request #17683 from tgxworld/improvements_to_active_job_guide

[CI SKIP] Improvements to Active Job guide.