The dev configuration and CI configuration should not diverge this much.
I do not think the current situation was intended. A difference that
remains after my changes is the bootstrap file, which in dev seems aimed
at helping contributors setup their environment.
* 2.14.x:
Modernize documentation code
Add CI jobs for SQLite3 driver (#10141)
Fix type doc blocks in annotation classes (#10145)
Fix FieldMapping for generated key (#10144)
Stop triggering static analysis workflows on tests
Builds using the github actions phpunit.xml files were not properly
recognising driver-specific configuration values, so were all
falling back to use the in-memory sqlite database instead of the
expected driver. This also meant a number of tests were skipped
as they rely on functionality not available in sqlite.
This commit addresses that by:
* REMOVING the automatic fallback to the sqlite memory database -
phpunit.xml must now always specify explicit parameters for the
desired connection.
* Displaying the active driver in the build output for visibility
and debugging.
* Changing the way TestUtil loads the database config in line
with the equivalent logic in doctrine/dbal, and to support the
way that the config is/was specified in the phpunit.xml files
for CI.
Note that this means a couple of the expected config variable names
have changed. Developers that are using customised phpunit.xml files
locally will need to update them to provide:
* Database config variables if they want to use the sqlite/memory
driver - see phpunit.xml.dist for details.
* `db_driver` instead of `db_type`
* `db_user` instead of `db_username`
* `db_dbname` instead of `db_name`
* And, if in use, the equivalent changes to the `tmpdb_` values
The other change is that now if you provide any value for
`db_driver` we will attempt to create that connection type and
that will throw if other details (username / password / etc as
required by the driver) are not provided. Previously providing
partial configuration would cause TestUtil to silently fall back
to the in-memory sqlite driver.
* Update doctrine/dbal to 2.12 for PHP 8 support.
* Change Query\Parser::match to Query\Parser::matchToken including DQL functions.
* Fix phpunit constraint to 9.4, adjust @group usage to workaround PHPUnit bug.
* Fix PHPUnit API related changes.
* Add PHP 8 support for EntityGenerator namespace detection.
* Use new assertEqualsWithDetla for QueryDqlFunctionTest with date comparisons
* Replace ReflectionParameter::getClass usage with non-deprecated ::getType instead.
* Revert "Change Query\Parser::match to Query\Parser::matchToken including DQL functions."
This reverts commit 279070491d50deaa4d41e17b28bb5a68f5a22796.
* More matchToken => match reverts
* Housekeeping: phpcs
* Housekeeping: phpcs
* Housekeeping: phpcs
* Housekeeping: phpcs
* Add PHP 8 testrunner, update composer.json and small fix in OrmFunctionalTestCase for new PHPUnit behvaior
* Update doctrine/coding-standard to 8.x
* Update rule names for doctrine/coding-standard v8.0
* Update to Psalm 4.
* Not failOnWarning anymore.
* Fix phpcs
* fix phpcs
* remove 7.2 for now until we can support in DBAL.
* Relax doctrine/dbal requirement and add 7.2 CI support again.
* Revert to whitelist
coverage requires PHPunit 9, and we don't have that yet.
* Upgrade to PHPUnit 8
This unlocks PCOV usage for coverage
* Upload coverage files to Codecov
* Move PHPUnit runs from Travis to Github Actions
This removes all artifacts used for TravisCI testing and replaces them
with the existing infrastructure for Github Actions from DBAL component.
In addition some test changes were needed and triggered larger Coding
Style cleanups in 3 test files.
* Remove composer.lock and improve naming in CI workflow.