Merge pull request #14494 from laurocaetano/test_case_for_fk_with_validate_false

Add a test case for save(validate: false) with invalid foreign key.
only run citext_test if the connection supports_extensions?.

This will keep the test suite passing with older PG installations.
require dependency to execute a single test from xml_serialization_test

When the tests are executed in order, the dependency is loaded at the right time.
However this makes it impossible to execute a single test later down the line.
Let's require the dependecy at the beginning to get them working independent of the order.

This resolves the following error:

```
$ ARCONN=postgresql ruby -Itest /Users/senny/Projects/rails/activerecord/test/cases/xml_serialization_test.rb -n test_to_xml
Using postgresql
Run options: -n test_to_xml --seed 51819

E

Finished in 0.081320s, 12.2971 runs/s, 0.0000 assertions/s.

  1) Error:
DatabaseConnectedXmlSerializationTest#test_to_xml:
NameError: uninitialized constant DatabaseConnectedXmlSerializationTest::REXML
    /Users/senny/Projects/rails/activerecord/test/cases/xml_serialization_test.rb:226:in `test_to_xml'
```

/cc @tgxworld fyi
Clarify environment_name for logs

[ci skip]
ActiveRecord/ActiveModel '#validate' alias for 'valid?'

It's unintuitive to call '#valid?' when you want to run validations but
don't care about the return value.

The alias in ActiveRecord isn't strictly necessary (the ActiveModel
alias is still in effect), but it clarifies.
Merge pull request #14456 from henrik/add-validate-method

ActiveRecord/ActiveModel '#validate' alias for 'valid?'
Add CHANGELOG to Active Model too [ci skip]
AR .persisted? throws SystemStackError for an unsaved model with a
custom primary_key that didn't save due to validation error
Merge pull request #14393 from chrisfinne/persisted_exception

AR .persisted? throws SystemStackError for an unsaved model with a
custom primary_key that didn't save due to validation error
Adds explanation of :base attribute to errors.add

[ci skip]
Merge pull request #14505 from davefp/patch-1

Adds explanation of :base attribute to errors.add [ci skip]
Merge pull request #14469 from tiegz/timestamp_inheritance_fix

Swap Timestamp/Callbacks order in ActiveRecord::Base
Merge pull request #14154 from al2o3cr/issue12770

Pass a base relation to build_default_scope when joining
PostgreSQL, test cases to lock the current column types.
Fix warning for overshadowing XML variable
Merge pull request #14515 from mzahir/fix_xml_warning

Fix warning for overshadowing XML variable
HashWithIndifferentAccess better respects #to_hash

In particular, `.new`, `#update`, `#merge`, `#replace` all accept
objects which respond to `#to_hash`, even if those objects are not
Hashes directly.
PostgreSQL, test-cases to lock down column default values.
PostgreSQL, use `PostgreSQLColumn` in PG specific tests.
Merge pull request #12778 from etehtsea/rake-default-fix

Don't load test env by default.

Closes #13241