Details
Status | Subtype | Assigned | Task | ||
---|---|---|---|---|---|
Resolved | Reedy | T270749 Bump required PG version in MW to 9.4 | |||
Resolved | Reedy | T270732 Upgrade doctrine/dbal from 2.10.4 to 3.0.x for PHP 8.0 support |
Event Timeline
Change 651606 had a related patch set uploaded (by Jforrester; owner: Jforrester):
[mediawiki/core@master] Upgrade doctrine/dbal from 2.10.4 to 3.0.0 for PHP 8.0 support
We don't use much of doctrine, so the breaking changes aren't likely to be as bad for us... Easy enough to confirm
But we're on 2.10.4 currently, so a few releases behind
https://github.com/doctrine/dbal/releases/tag/2.11.0
https://github.com/doctrine/dbal/releases/tag/2.11.1
https://github.com/doctrine/dbal/releases/tag/2.11.2
https://github.com/doctrine/dbal/releases/tag/2.11.3
https://github.com/doctrine/dbal/releases/tag/2.12.0
https://github.com/doctrine/dbal/releases/tag/2.12.1
https://github.com/doctrine/dbal/releases/tag/3.0.0
https://github.com/doctrine/dbal/compare/2.10.4...3.0.0 (GitHub says no)
Targets Occurrences of 'doctrine' in Directory /Users/reedy/PhpstormProjects/mediawiki/core/maintenance with mask '*.php' Found Occurrences (11 usages found) Unclassified (8 usages found) mediawiki (8 usages found) core (8 usages found) maintenance (8 usages found) generateSchemaChangeSql.php (4 usages found) 25 use Doctrine\SqlFormatter\NullHighlighter; 26 use Doctrine\SqlFormatter\SqlFormatter; 27 use Wikimedia\Rdbms\DoctrineSchemaBuilderFactory; 72 $schemaChangeBuilder = ( new DoctrineSchemaBuilderFactory() )->getSchemaChangeBuilder( generateSchemaSql.php (4 usages found) 25 use Doctrine\SqlFormatter\NullHighlighter; 26 use Doctrine\SqlFormatter\SqlFormatter; 27 use Wikimedia\Rdbms\DoctrineSchemaBuilderFactory; 72 $schemaBuilder = ( new DoctrineSchemaBuilderFactory() )->getSchemaBuilder( $platform ); Usage in comments (3 usages found) mediawiki (3 usages found) core (3 usages found) maintenance (3 usages found) generateSchemaChangeSql.php (2 usages found) 102 // https://github.com/doctrine/sql-formatter/issues/53 109 // Doctrine prepends __temp__ to the table name and we set the table with the schema prefix causing invalid generateSchemaSql.php (1 usage found) 121 // https://github.com/doctrine/sql-formatter/issues/53
I'll try it locally tonight
MySQL class renamed: https://github.com/doctrine/dbal/commit/885bf615a5820c56ddee60a8fbd3d7ce973587ed
PG class renamed: https://github.com/doctrine/dbal/commit/bd87aa64dbb3a7b2aed4159df1856351393b4953
Both in 3.0.0...
Going to need some more fudging :/
Change 651653 had a related patch set uploaded (by Reedy; owner: Jforrester):
[mediawiki/core@REL1_35] Upgrade doctrine/dbal from 2.10.2 to 3.0.0 for PHP 8.0 support
Ah. Another issue... 3.0.0 drops support for PG < 9.4
https://www.postgresql.org/support/versioning/ - 9.4 was first released December 18, 2014, and final release is February 13, 2020.
So I don't think that's a problem to do in MW 1.36...
I don't think this is probably necessarily a problem for backporting to 1.35 either... If when we regenerate the SQL schema for REL1_35 on PG, the files are the same...
It might be more of an issue if we were doing SQL transformations on the fly via doctrine, but we're not
But more poking
Change 651653 merged by jenkins-bot:
[mediawiki/core@REL1_35] Upgrade doctrine/dbal from 2.10.2 to 3.0.0 for PHP 8.0 support
Change 651606 merged by jenkins-bot:
[mediawiki/core@master] Upgrade doctrine/dbal from 2.10.4 to 3.0.0 for PHP 8.0 support