|mediawiki/core||master||+51 -9||Upgrade doctrine/dbal from 2.10.4 to 3.0.0 for PHP 8.0 support|
|mediawiki/core||REL1_35||+9 -8||Upgrade doctrine/dbal from 2.10.2 to 3.0.0 for PHP 8.0 support|
|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|
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/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
Both in 3.0.0...
Going to need some more fudging :/
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