Avoid creating range objects (take II)
Reduce object allocation
Reduce object allocation
instance_eval is evil
fixes circularity check in dependencies

The check for circular loading should depend on a stack of files being
loaded at the moment, rather than the collection of loaded files.

This showed up indirectly in #16468, where a misspelled helper would
incorrectly result in a circularity error message.

References #16468
give a better error message for misspelled helpers

See comment in this patch for the rationale.

References #16468
[ci skip] Add missing blank line to AR validation.
[ci skip] No need to indent here (AC overview).
[ci skip] Add highlight to code (form helper guide).
Fix description of OID in TypeMapInitializer

[ci skip]
Clarify comments about sanitized_allowed_tags

- Clarify that arguments are expected in array format.
- Extension of https://github.com/rails/rails/pull/17390.
- https://github.com/rails/rails/pull/17390 was targeted against
  4-1-stable branch. This commit updates master.
- [ci skip]
Merge pull request #17391 from prathamesh-sonpatki/fix-oid-description-ci-skip

Fix description of OID in TypeMapInitializer
Merge pull request #17392 from prathamesh-sonpatki/fix-docstring-for-sanitized-helpers-ci-skip

Clarify comments about sanitized_allowed_tags
Make `String#remove` and `String#remove!` accept multiple arguments
Merge pull request #17064 from frenkel/fix_select_tag_include_blank

Use include_blank value as option label
:scissors:
Use new hash syntax
Add CHANGELOG entry for #17064
Prefix internal method with _

This will avoid naming clash with user defined methods
Fix typo in error message when non-boolean value is assigned to boolean column