- Issue created by @evac9
- heddn Nicaragua
To get committed, this will need to be rolled into an MR so tests can execute.
- First commit to issue fork.
- ๐ท๐ดRomania bogdan.dinu
In PHP 8.2+ there is still a deprecation warning:
Deprecated function: Creation of dynamic property Drupal\migrate_plus\Plugin\migrate_plus\data_parser\Xml::$fileSystem is deprecated in Drupal\migrate_plus\Plugin\migrate_plus\data_parser\Xml->__construct() (line 108 of modules/contrib/migrate_plus/src/Plugin/migrate_plus/data_parser/Xml.php).
I updated the patch to include the $fileSystem property definition.
- heddn Nicaragua
Can we add a test or something to confirm the problem and fix please?
- ๐บ๐ธUnited States diamondsea
Tested #7 on Drupal 10.5.1 and Migrate Plus 6.0.7, works as expected.
- ๐ณ๐ฟNew Zealand xurizaemon ลtepoti, Aotearoa ๐
Ran into this myself, for me it reproduces when executing any migration that has data_parser=xml.
@heddn I think there is existing coverage for this, eg tests/src/Kernel/Plugin/migrate_plus/data_parser/XmlTest.php?
Testing locally, 6.0.x @ 46d05c256
www-data@da85fa35e6fa:/app$ phpunit -c /app/phpunit.xml web/modules/contrib/migrate_plus/tests/src/Kernel/Plugin/migrate_plus/data_parser/XmlTest.php PHPUnit 9.6.23 by Sebastian Bergmann and contributors. Testing Drupal\Tests\migrate_plus\Kernel\Plugin\migrate_plus\data_parser\XmlTest SEEEEEEE 8 / 8 (100%) Time: 00:09.863, Memory: 10.00 MB There were 7 errors: 1) Drupal\Tests\migrate_plus\Kernel\Plugin\migrate_plus\data_parser\XmlTest::testCurrentUrl TypeError: Drupal\migrate_plus\Plugin\migrate_plus\data_parser\Xml::__construct(): Argument #4 ($file_system) must be of type Drupal\Core\File\FileSystemInterface, Drupal\migrate_plus\DataFetcherPluginManager given, called in /app/web/modules/contrib/migrate_plus/src/Plugin/migrate_plus/data_parser/Xml.php on line 147 /app/web/modules/contrib/migrate_plus/src/Plugin/migrate_plus/data_parser/Xml.php:105 /app/web/modules/contrib/migrate_plus/src/Plugin/migrate_plus/data_parser/Xml.php:147 /app/web/core/lib/Drupal/Core/Plugin/Factory/ContainerFactory.php:21 /app/web/core/lib/Drupal/Component/Plugin/PluginManagerBase.php:83 /app/web/modules/contrib/migrate_plus/tests/src/Kernel/Plugin/migrate_plus/data_parser/BaseXml.php:272 /app/web/modules/contrib/migrate_plus/tests/src/Kernel/Plugin/migrate_plus/data_parser/BaseXml.php:93 /app/vendor/phpunit/phpunit/src/Framework/TestResult.php:729 2) Drupal\Tests\migrate_plus\Kernel\Plugin\migrate_plus\data_parser\XmlTest::testReduceSingleValue TypeError: Drupal\migrate_plus\Plugin\migrate_plus\data_parser\Xml::__construct(): Argument #4 ($file_system) must be of type Drupal\Core\File\FileSystemInterface, Drupal\migrate_plus\DataFetcherPluginManager given, called in /app/web/modules/contrib/migrate_plus/src/Plugin/migrate_plus/data_parser/Xml.php on line 147 /app/web/modules/contrib/migrate_plus/src/Plugin/migrate_plus/data_parser/Xml.php:105 /app/web/modules/contrib/migrate_plus/src/Plugin/migrate_plus/data_parser/Xml.php:147 /app/web/core/lib/Drupal/Core/Plugin/Factory/ContainerFactory.php:21 /app/web/core/lib/Drupal/Component/Plugin/PluginManagerBase.php:83 /app/web/modules/contrib/migrate_plus/tests/src/Kernel/Plugin/migrate_plus/data_parser/BaseXml.php:272 /app/web/modules/contrib/migrate_plus/tests/src/Kernel/Plugin/migrate_plus/data_parser/BaseXml.php:112 /app/vendor/phpunit/phpunit/src/Framework/TestResult.php:729 3) Drupal\Tests\migrate_plus\Kernel\Plugin\migrate_plus\data_parser\XmlTest::testSingleValueWithAttributes TypeError: Drupal\migrate_plus\Plugin\migrate_plus\data_parser\Xml::__construct(): Argument #4 ($file_system) must be of type Drupal\Core\File\FileSystemInterface, Drupal\migrate_plus\DataFetcherPluginManager given, called in /app/web/modules/contrib/migrate_plus/src/Plugin/migrate_plus/data_parser/Xml.php on line 147 /app/web/modules/contrib/migrate_plus/src/Plugin/migrate_plus/data_parser/Xml.php:105 /app/web/modules/contrib/migrate_plus/src/Plugin/migrate_plus/data_parser/Xml.php:147 /app/web/core/lib/Drupal/Core/Plugin/Factory/ContainerFactory.php:21 /app/web/core/lib/Drupal/Component/Plugin/PluginManagerBase.php:83 /app/web/modules/contrib/migrate_plus/tests/src/Kernel/Plugin/migrate_plus/data_parser/BaseXml.php:272 /app/web/modules/contrib/migrate_plus/tests/src/Kernel/Plugin/migrate_plus/data_parser/BaseXml.php:138 /app/vendor/phpunit/phpunit/src/Framework/TestResult.php:729 4) Drupal\Tests\migrate_plus\Kernel\Plugin\migrate_plus\data_parser\XmlTest::testMultipleItems TypeError: Drupal\migrate_plus\Plugin\migrate_plus\data_parser\Xml::__construct(): Argument #4 ($file_system) must be of type Drupal\Core\File\FileSystemInterface, Drupal\migrate_plus\DataFetcherPluginManager given, called in /app/web/modules/contrib/migrate_plus/src/Plugin/migrate_plus/data_parser/Xml.php on line 147 /app/web/modules/contrib/migrate_plus/src/Plugin/migrate_plus/data_parser/Xml.php:105 /app/web/modules/contrib/migrate_plus/src/Plugin/migrate_plus/data_parser/Xml.php:147 /app/web/core/lib/Drupal/Core/Plugin/Factory/ContainerFactory.php:21 /app/web/core/lib/Drupal/Component/Plugin/PluginManagerBase.php:83 /app/web/modules/contrib/migrate_plus/tests/src/Kernel/Plugin/migrate_plus/data_parser/BaseXml.php:272 /app/web/modules/contrib/migrate_plus/tests/src/Kernel/Plugin/migrate_plus/data_parser/BaseXml.php:171 /app/vendor/phpunit/phpunit/src/Framework/TestResult.php:729 5) Drupal\Tests\migrate_plus\Kernel\Plugin\migrate_plus\data_parser\XmlTest::testPredicateMatch with data set "odd parity" ('/items/item[@parity="odd"]', array(array('Value 1'), array('Value 3'))) TypeError: Drupal\migrate_plus\Plugin\migrate_plus\data_parser\Xml::__construct(): Argument #4 ($file_system) must be of type Drupal\Core\File\FileSystemInterface, Drupal\migrate_plus\DataFetcherPluginManager given, called in /app/web/modules/contrib/migrate_plus/src/Plugin/migrate_plus/data_parser/Xml.php on line 147 /app/web/modules/contrib/migrate_plus/src/Plugin/migrate_plus/data_parser/Xml.php:105 /app/web/modules/contrib/migrate_plus/src/Plugin/migrate_plus/data_parser/Xml.php:147 /app/web/core/lib/Drupal/Core/Plugin/Factory/ContainerFactory.php:21 /app/web/core/lib/Drupal/Component/Plugin/PluginManagerBase.php:83 /app/web/modules/contrib/migrate_plus/tests/src/Kernel/Plugin/migrate_plus/data_parser/BaseXml.php:272 /app/web/modules/contrib/migrate_plus/tests/src/Kernel/Plugin/migrate_plus/data_parser/BaseXml.php:206 /app/vendor/phpunit/phpunit/src/Framework/TestResult.php:729 6) Drupal\Tests\migrate_plus\Kernel\Plugin\migrate_plus\data_parser\XmlTest::testPredicateMatch with data set "even parity" ('/items/item[@parity="even"]', array(array('Value 2'))) TypeError: Drupal\migrate_plus\Plugin\migrate_plus\data_parser\Xml::__construct(): Argument #4 ($file_system) must be of type Drupal\Core\File\FileSystemInterface, Drupal\migrate_plus\DataFetcherPluginManager given, called in /app/web/modules/contrib/migrate_plus/src/Plugin/migrate_plus/data_parser/Xml.php on line 147 /app/web/modules/contrib/migrate_plus/src/Plugin/migrate_plus/data_parser/Xml.php:105 /app/web/modules/contrib/migrate_plus/src/Plugin/migrate_plus/data_parser/Xml.php:147 /app/web/core/lib/Drupal/Core/Plugin/Factory/ContainerFactory.php:21 /app/web/core/lib/Drupal/Component/Plugin/PluginManagerBase.php:83 /app/web/modules/contrib/migrate_plus/tests/src/Kernel/Plugin/migrate_plus/data_parser/BaseXml.php:272 /app/web/modules/contrib/migrate_plus/tests/src/Kernel/Plugin/migrate_plus/data_parser/BaseXml.php:206 /app/vendor/phpunit/phpunit/src/Framework/TestResult.php:729 7) Drupal\Tests\migrate_plus\Kernel\Plugin\migrate_plus\data_parser\XmlTest::testPredicateMatch with data set "special attribute" ('/items/item[condition[@specia...rue"]]', array(array('Special value'))) TypeError: Drupal\migrate_plus\Plugin\migrate_plus\data_parser\Xml::__construct(): Argument #4 ($file_system) must be of type Drupal\Core\File\FileSystemInterface, Drupal\migrate_plus\DataFetcherPluginManager given, called in /app/web/modules/contrib/migrate_plus/src/Plugin/migrate_plus/data_parser/Xml.php on line 147 /app/web/modules/contrib/migrate_plus/src/Plugin/migrate_plus/data_parser/Xml.php:105 /app/web/modules/contrib/migrate_plus/src/Plugin/migrate_plus/data_parser/Xml.php:147 /app/web/core/lib/Drupal/Core/Plugin/Factory/ContainerFactory.php:21 /app/web/core/lib/Drupal/Component/Plugin/PluginManagerBase.php:83 /app/web/modules/contrib/migrate_plus/tests/src/Kernel/Plugin/migrate_plus/data_parser/BaseXml.php:272 /app/web/modules/contrib/migrate_plus/tests/src/Kernel/Plugin/migrate_plus/data_parser/BaseXml.php:206 /app/vendor/phpunit/phpunit/src/Framework/TestResult.php:729 ERRORS! Tests: 8, Assertions: 0, Errors: 7, Skipped: 1.
With !133 @ a9f469bf
www-data@da85fa35e6fa:/app$ phpunit -c /app/phpunit.xml web/modules/contrib/migrate_plus/tests/src/Kernel/Plugin/migrate_plus/data_parser/XmlTest.php PHPUnit 9.6.23 by Sebastian Bergmann and contributors. Testing Drupal\Tests\migrate_plus\Kernel\Plugin\migrate_plus\data_parser\XmlTest S....... 8 / 8 (100%) Time: 00:09.940, Memory: 10.00 MB OK, but incomplete, skipped, or risky tests! Tests: 8, Assertions: 10, Skipped: 1. Unsilenced deprecation notices (7) 7x: Creation of dynamic property Drupal\migrate_plus\Plugin\migrate_plus\data_parser\Xml::$fileSystem is deprecated 3x in XmlTest::testPredicateMatch from Drupal\Tests\migrate_plus\Kernel\Plugin\migrate_plus\data_parser 1x in XmlTest::testCurrentUrl from Drupal\Tests\migrate_plus\Kernel\Plugin\migrate_plus\data_parser 1x in XmlTest::testReduceSingleValue from Drupal\Tests\migrate_plus\Kernel\Plugin\migrate_plus\data_parser 1x in XmlTest::testSingleValueWithAttributes from Drupal\Tests\migrate_plus\Kernel\Plugin\migrate_plus\data_parser 1x in XmlTest::testMultipleItems from Drupal\Tests\migrate_plus\Kernel\Plugin\migrate_plus\data_parser
-
heddn โ
committed d9436eff on 6.0.x authored by
mrinalini9 โ
Issue #3535862 by xurizaemon, evac9, bogdan.dinu, heddn: drush migrate:...
-
heddn โ
committed d9436eff on 6.0.x authored by
mrinalini9 โ