New URI class commited https://wiki.php.net/rfc/url_parsing_api
will be fixed
┊ -'REPEATABLE-READ'
┊ +'READ-COMMITTED'
With sed -i 's/attach/offsetSet/' vendor/phpspec/prophecy/src/Prophecy/Call/CallCenter.php # TODO: wait for release
the test pass
I think it's fine for me to RTBC !13038 as not an author
Moreover it needs backport to 10.x
Replaced comparison with session vs global isolation level
Yes it needs to fix
Installer Isolation Level Existing Settings (Drupal\Tests\mysql\Functional\InstallerIsolationLevelExistingSettings)
✘ Installer
┐
├ Failed asserting that two strings are equal.
┊ ---·Expected
┊ +++·Actual
┊ @@ @@
┊ -'REPEATABLE-READ'
┊ +'READ-COMMITTED'
│
│ /builds/issue/drupal-3539366/core/modules/mysql/tests/src/Functional/InstallerIsolationLevelExistingSettingsTest.php:58
┴
Default value is set, now only one broken test in core need to fix expectations
the issue was in tx_isolation
which should be the same as in Mysql transaction_isolation
Commited to production
Looking for reviews https://github.com/phpspec/prophecy/pull/647
one more deprecation
1) /builds/issue/drupal-3541427/vendor/phpspec/prophecy/src/Prophecy/Call/CallCenter.php:87
Method SplObjectStorage::attach() is deprecated since 8.5, use method SplObjectStorage::offsetSet() instead
Triggered by:
* Drupal\Tests\Core\Entity\EntityUnitTest::testPostSave
/builds/issue/drupal-3541427/core/tests/Drupal/Tests/Core/Entity/EntityUnitTest.php:411
* Drupal\Tests\Core\Entity\EntityUnitTest::testPostSaveBundle
/builds/issue/drupal-3541427/core/tests/Drupal/Tests/Core/Entity/EntityUnitTest.php:433
Somehow now 2 jobs fails in pipeline https://git.drupalcode.org/project/masquerade/-/pipelines/575664
Thank you, merged
PHP 8.5 changes are backported to 10.x so part of it should do too
Curious if the changes in table clean-up will help to close related #2949229: SQLite findTables Returns Empty Array on External DB. →
EDIT sadly no
Pushed one more commit as this upgrade is required
Please update https://github.com/Lullabot/php-webdriver/releases/tag/v2.0.7 as well as it makes more tests to pass
one more deprecation commited https://wiki.php.net/rfc/deprecations_php_8_5#deprecate_passing_integers...
IIRC we fixed AVIF long time ago by using Ubuntu as a source for CI images
Thank you, looks like good idea but I think the rotation got changes(
Related in terms of PHP 8.5 🐛 Fix ToolkitGdTest n PHP 8.5 Active
Created testing branch with patches to run tests on 8.5 from 📌 Discus adoption of #NoDiscard and PHP 8.5 Active
I think we need to wait a bit for core's dependencies to be fixed as guzzle/kink produce too many warnings and contrib can't actually use it without patching like 📌 Discus adoption of #NoDiscard and PHP 8.5 Active
Updated IS with curent state
smustgrave → credited andypost → .
as core running fine
thank you!
follow-up for 10.x 📌 10.x backport - Inconsistent switch case syntax Active
Filed follow-up for 10.x backport 📌 10.x backport - Inconsistent switch case syntax Active
andypost → created an issue.
In 2 weeks next beta will arrive and probably core will have less issues (a lot of compatibility issues been fixed today)
looks like all php-files are inserting it before namespace but a lot of others doing it after `use` so probably makes sense to formalize it)
Thank you @jacktonkin it can catch!
moved after meaningful descrtiption
I think it's a good time to allow start testing as all deprecations already commited and beta 1 is out
I found only one tool to fix it https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/doc/rules/cast_...
Thank you, never know it could work like that)
this approach much cleaner!
thank you!
in core/modules/page_cache/tests/src/Functional/PageCacheTest.php
object is destroyed when leaving method
in core/tests/Drupal/FunctionalJavascriptTests/WebDriverCurlService.php
setting to null
andypost → created an issue.
https://github.com/nikic/PHP-Parser/commit/02dcdd74bb328ca0bd9b9e459ca25...
and one more
vendor/sebastian/recursion-context/src/Context.php:148
Method SplObjectStorage::contains() is deprecated since 8.5, use method SplObjectStorage::offsetExists() instead
A bit more deprecations
php message: PHP Deprecated: Case statements followed by a semicolon (;) are deprecated, use a colon (:) instead in /var/www/html/web/vendor/react/promise/src/functions.php on line 300
https://github.com/reactphp/promise/commit/d3998c8a5d3cff0b39b2f332da550...
php message: Failed to log error: Deprecated function: Function curl_close() is deprecated since 8.5, as it has no effect since PHP 8.0 in GuzzleHttp\Handler\CurlFactory->__destruct() (line 732 of /var/www/html/web/vendor/guzzlehttp/guzzle/src/Handler/CurlFactory.php). #0 /var/www/html/web/core/includes/bootstrap.inc(104): _drupal_error_handler_real()
#1 /var/www/html/web/vendor/guzzlehttp/guzzle/src/Handler/CurlFactory.php(732): _drupal_error_handler()
#2 [internal function]: GuzzleHttp\Handler\CurlFactory->__destruct()
#3 {main}
need new issue for guzzle
cspell fix is required, see the job
Moreover PHP 8,5 beta1 CI image created and test run showing serious log pollution https://git.drupalcode.org/issue/drupal-3523596/-/jobs/6189639
follow-up to enable sniffer #2901831-36: Only use colons in case statements →
ready for review/commit
EDIT failed sniff https://git.drupalcode.org/issue/drupal-2901831/-/jobs/6176971
Code was fixed in 📌 Inconsistent switch case syntax Downport
but sniffer is not enabled https://github.com/PHPCSStandards/PHPCSExtra/commit/6f023adc8e28dbdcd21a...
one more deprecation to fix #2901831: Only use colons in case statements →
Deprecation of colon is commited to PHP 8.5
https://github.com/php/php-src/commit/5f8d648af6ef4e29a3c7f2b2029d08466c...
Updated IS
Looks like the failed test is valid
Entity Query (Drupal\KernelTests\Core\Entity\EntityQuery)
✘ Entity query
┐
├ Failed asserting that two arrays are identical.
┊ ---·Expected
┊ +++·Actual
┊ @@ @@
┊ Array &0 [
┊ 16 => '4',
┊ +····20·=>·'12',
┊ 8 => '8',
┊ -····20·=>·'12',
┊ ]
│
│ /builds/issue/drupal-3540788/core/tests/Drupal/KernelTests/Core/Entity/EntityQueryTest.php:393
┴
I think transition to new hash should be done in follow-up, moreover old passwords makes no sense when Argon2 available
andypost → created an issue.
now 8.4 passed
PHP 8.4 image is cached so pipeline needs to be re-queued later
Somehow PHP 8.4 image is used from cache so tested locally
all images are pushed, testing in 📌 Use FFI extension from DrupalCI 8.3+ images Active
Filed follow-up as FFI added 📌 Use FFI extension from DrupalCI 8.3+ images Active
andypost → created an issue.
8.4 done and now pushing to production
$ docker run --rm drupalci/php-8.4-ubuntu-apache:dev php -d extension=ffi --ri ffi
FFI
FFI support => enabled
Directive => Local Value => Master Value
ffi.enable => preload => preload
ffi.preload => no value => no value
Looks the only place to fix
andypost → created an issue.
Added to 8.3 image
$ docker run --rm drupalci/php-8.3-ubuntu-apache:dev php --ri ffi
Extension 'ffi' not present.
$ docker run --rm drupalci/php-8.3-ubuntu-apache:dev php -d extension=ffi --ri ffi
FFI
FFI support => enabled
Directive => Local Value => Master Value
ffi.enable => preload => preload
ffi.preload => no value => no value
Removed post update hook
Also created 2 fixes for commited deprecations (will be released on August 13)
📌
Remove remaining usage of setAccessible()
Active
📌
Clean-up deprecated non-standard cast names
Active
Filed issue for the test 🐛 Fix ToolkitGdTest n PHP 8.5 Active
andypost → created an issue.
andypost → created an issue.
Filed follow-up to remove remaining usage as it was deprecated in PHP 8.5 📌 Remove remaining usage of setAccessible() Active
Usage is
core$ git grep setAccessible
core/tests/Drupal/Tests/Component/Plugin/Attribute/AttributeClassDiscoveryCachedTest.php:70: $ref_file_cache->setAccessible(TRUE);
core/tests/Drupal/Tests/Component/Plugin/Attribute/AttributeClassDiscoveryCachedTest.php:128: $ref_file_cache->setAccessible(TRUE);
core/tests/Drupal/Tests/Component/Plugin/Attribute/AttributeClassDiscoveryTest.php:51: $reflection->setAccessible(TRUE);
core/tests/Drupal/Tests/Core/Entity/Access/EntityCreateAccessCustomCidTest.php:100: $access_cache->setAccessible(TRUE);
core/tests/Drupal/Tests/Core/Field/FieldTypePluginManagerTest.php:75: $property->setAccessible(TRUE);
core/tests/Drupal/Tests/Core/Theme/Icon/IconFinderTest.php:647: $method->setAccessible(TRUE);
core/tests/Drupal/Tests/Core/Theme/Icon/IconFinderTest.php:661: $method->setAccessible(TRUE);
core/tests/Drupal/Tests/Core/Theme/Icon/IconFinderTest.php:674: $method->setAccessible(TRUE);
core/tests/Drupal/Tests/Core/Theme/Icon/IconFinderTest.php:688: $method->setAccessible(TRUE);
core/tests/Drupal/Tests/Core/Theme/Icon/IconFinderTest.php:702: $method->setAccessible(TRUE);
core/tests/Drupal/Tests/Core/Theme/Icon/IconFinderTest.php:768: $method->setAccessible(TRUE);
core/tests/Drupal/Tests/Core/Theme/Icon/IconFinderTest.php:778: $method->setAccessible(TRUE);
andypost → created an issue.
I think it's ok to add the extension but it needs to define which image to start with (probably PHP 8.3)
Beta 2 image is pushed to dev
andypost → created an issue.
Postgresql 18 will be released in September
MariaDB 12 (rolling release) is out https://mariadb.com/docs/release-notes/community-server/release-notes-ma...
I think it makes sense to wait for 12.1.2 to add CI image