Cleanup loaded features and constants after dependency tests.
Explicit route test class

shows the class that the test must extend in order to have the assert_routing method available
Fix that a collection proxy could be cached before the save of the owner, resulting in an invalid proxy lacking the owner’s id.

Absent this fix calls like: owner.association.update_all to behave unexpectedly because they try to act on association objects where
owner_id is null.

more evidence here: https://gist.github.com/Empact/5865555
```
Active Record 3.2.13
-- create_table(:firms, {:force=>true})
   -> 0.1371s
-- create_table(:clients, {:force=>true})
   -> 0.0005s
1 clients. 1 expected.
1 clients updated. 1 expected.
```

```
Active Record 4.0.0
-- create_table(:firms, {:force=>true})
   -> 0.1606s
-- create_table(:clients, {:force=>true})
   -> 0.0004s
1 clients. 1 expected.
0 clients updated. 1 expected.
```
Allow authentication header to not have to specify 'token=' key.

Fixes: https://github.com/rails/rails/issues/17108.
FileHandler should not be called for files outside the root

FileHandler#matches? should return false for files that are outside the
"root" path.
Use include_blank value as option label

Update select_tag to reflect documentation and behave the same as form builder select. If the value of include_blank is not boolean true, use that value as the option label.
Fix Relation.rewhere to work with Range values
- Inline AJ around_perform and  around_enqueue in CallbackJob used for tests.
If Rails is not defined, check ENV["RAILS_ENV"] and ENV["RACK_ENV"].

This fixes a regression introduced by 6cc03675d30b58e28f585720dad14e947a57ff5b.

ActiveRecord, if used without Rails, always checks the "default_env" environment. This would be OK, except that Sinatra also supports environments,
and it runs with {RACK|RAILS}_ENV=production. This patch adds a fallback to RAILS_ENV and RACK_ENV (and ultimately default_env) if Rails.env doesn't exist.
:nail_care: fix typos in activejob queuing test
Merge pull request #17353 from swapdisc/activejob-queue-test-typo

:nail_care: fix typos in activejob queuing test
- Fix error string raised from `enqueue_at`
copy reflection_scopes’s unscoped value when building scope for preloading, fixes #11036
Bring try! into parity with try.

Based on commit 5e51bdda.
Merge pull request #17361 from aripollak/try-bang-parity

Bring try! into parity with try.
Update CHANGELOG and release notes for e98f2a7
Merge pull request #17343 from vipulnsward/inline-aj-callbacks

Inline AJ around_perform and  around_enqueue in CallbackJob used for tests
Merge pull request #17355 from vipulnsward/aj-string-fixes

Fix error string raised from AJ enqueue_at for ClassQueueAdapter
Show the user’s application in the source window and select the correct trace list, closes #17312
Add AS::SecurityUtils.secure_compare for constant time string comparison