This commit is contained in:
Gregory Colpart 2024-02-22 16:13:03 +01:00
parent 584c44316d
commit 4d0688a11a

View file

@ -216,25 +216,80 @@ Pour gérer du Drupal 10, il faut ajouter les fichiers suivants dans `/usr/share
* install_10.inc
* packages_10.inc
et potentiellement dans `/usr/share/drush/commands/core/dupal/` :
* batch_10.inc
* cache_10.inc
* environment_10.inc
* site_install_10.inc
* update_10.inc
(TODO: fournir la source de ces fichiers, voir notamment l'[issue Provision 3406925](https://www.drupal.org/project/provision/issues/3406925))
Il faut supprimer le Drush 12 inclus dans les sources (TODO: à confirmer, cf [ici](https://github.com/drush-ops/drush/issues/5741)) :
~~~
$ rm platforms/DRUPAL10/vendor/bin/drush
$ rm -rf platforms/DRUPAL10/vendor/drush
~~~
Il faut aussi appliquer ces patches [drush-8-symfony-console-compat.patch](https://www.drupal.org/files/issues/2023-11-28/drush-8-symfony-console-compat.patch) et [3353492-symfony-console-4-update_1.patch](https://www.drupal.org/files/issues/2023-12-11/3353492-symfony-console-4-update_1.patch) de l'[issue Provision 3353492](https://www.drupal.org/project/provision/issues/3353492) :
Il faut aussi appliquer ce patch [drush-8-symfony-console-compat.patch](https://www.drupal.org/files/issues/2023-11-28/drush-8-symfony-console-compat.patch) et en partie ce patch [3353492-symfony-console-4-update_1.patch](https://www.drupal.org/files/issues/2023-12-11/3353492-symfony-console-4-update_1.patch) sur tous les fichiers Symfony (TODO: à relister) de l'[issue Provision 3353492](https://www.drupal.org/project/provision/issues/3353492) :
~~~
# patch /var/aegir/.config/composer/vendor/drush/drush/lib/Drush/Command/DrushInputAdapter.php < drush-8-symfony-console-compat.patch
# cd /usr/share/drush/commands/provision/vendor/symfony/console
# patch -p1 < /root/3353492-symfony-console-4-update_1.patch
# patch -p1 < 3353492-symfony-console-4-update_1.patch
~~~
Le patch sur `Input/InputInterface.php` nécessite un coup de main ;)
(TO BE CONTINUED)
On crée le fichier `Sql10.php` :
~~~
$ cat /var/aegir/.config/composer/vendor/drush/drush/lib/Drush/Sql/Sql10.php
<?php
namespace Drush\Sql;
use Drupal\Core\Database\Database;
class Sql10 extends Sql9 {
}
~~~
À voir les autres fichiers similaires : DrupalBoot10.php, StatusInfoDrupal10.php, User10.php et UserSingle10.php
Il faut aussi patcher dans le code de Drupal 10 et supprimer "string|\Stringable " :
* 18 fois dans vendor/psr/log/src/LoggerTrait.php :
* 1 fois dans core/lib/Drupal/Core/Logger/LoggerChannel.php
* 9 fois dans core/lib/Drupal/Core/Logger/RfcLoggerTrait.php
* 1 fois dans core/modules/dblog/src/Logger/DbLog.php
core/lib/Drupal/Core/Logger/RfcLoggerTrait.php :
~~~
76c76
< abstract public function log($level, string|\Stringable $message, array $context = []): void;
---
> abstract public function log($level, $message, $context);
~~~
core/modules/dblog/src/Logger/DbLog.php :
~~~
public function log($level, $message, $context) {
~~~
vendor/psr/log/src/LoggerInterface.php :
~~~
public function log($level, string|\Stringable $message, $context): void;
~~~
./psr/log/src/LoggerTrait.php
core/lib/Drupal/Core/Logger/LoggerChannel.php
WIP
## Utilisation