Problem/Motivation

- 7.3 is supposed to be be released in May https://symfony.com/releases/7.3 (root composer still require ^7.2)
- missing symfony/polyfill-php84 as PHP 8.4 is supported and the package makes adoption wide, core usage in #3516348: Allow 6.x version of justinrainbow/json-schema

Steps to reproduce

summary contains todo #3522353: Update Composer dependencies for 11.2.0

Core in post-alpha and new beta could be released before next beta or RC

Proposed resolution

- change root composer about Simfony 7.3
- add symfony/polyfill-php84
- deal with remaining ones in separate issues

Remaining tasks

- discus upgrade and compatibility

User interface changes

no

Introduced terminology

no

API changes

not supposed

Data model changes

not

Release notes snippet

Core require Symfony 7.3 and provides symfony/polyfill-php84 for PHP 8.4 feature adoption

Issue fork drupal-3523284

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

andypost created an issue. See original summary.

andypost’s picture

Status: Active » Needs review
+----------------------------------+---------+--------------+
| Production Changes               | From    | To           |
+----------------------------------+---------+--------------+
| doctrine/deprecations            | 1.1.3   | 1.1.5        |
| egulias/email-validator          | 4.0.2   | 4.0.4        |
| symfony/console                  | v7.2.0  | v7.3.0-BETA1 |
| symfony/dependency-injection     | v7.2.0  | v7.3.0-BETA1 |
| symfony/error-handler            | v7.2.0  | v7.3.0-BETA1 |
| symfony/event-dispatcher         | v7.2.0  | v7.3.0-BETA1 |
| symfony/filesystem               | v7.2.0  | v7.3.0-BETA1 |
| symfony/finder                   | v7.2.0  | v7.3.0-BETA1 |
| symfony/http-foundation          | v7.2.0  | v7.3.0-BETA1 |
| symfony/http-kernel              | v7.2.0  | v7.3.0-BETA1 |
| symfony/mailer                   | v7.2.0  | v7.3.0-BETA1 |
| symfony/mime                     | v7.2.0  | v7.3.0-BETA1 |
| symfony/polyfill-ctype           | v1.31.0 | v1.32.0      |
| symfony/polyfill-iconv           | v1.31.0 | v1.32.0      |
| symfony/polyfill-intl-grapheme   | v1.31.0 | v1.32.0      |
| symfony/polyfill-intl-idn        | v1.31.0 | v1.32.0      |
| symfony/polyfill-intl-normalizer | v1.31.0 | v1.32.0      |
| symfony/polyfill-mbstring        | v1.31.0 | v1.32.0      |
| symfony/process                  | v7.2.0  | v7.2.5       |
| symfony/psr-http-message-bridge  | v7.2.0  | v7.3.0-BETA1 |
| symfony/routing                  | v7.2.0  | v7.3.0-BETA1 |
| symfony/serializer               | v7.2.0  | v7.3.0-BETA1 |
| symfony/string                   | v7.2.0  | v7.3.0-BETA1 |
| symfony/validator                | v7.2.0  | v7.3.0-BETA1 |
| symfony/var-dumper               | v7.2.0  | v7.3.0-BETA1 |
| symfony/var-exporter             | v7.2.0  | v7.3.0-BETA1 |
| symfony/yaml                     | v7.2.0  | v7.3.0-BETA1 |
+----------------------------------+---------+--------------+

+----------------------+--------+--------------+
| Dev Changes          | From   | To           |
+----------------------+--------+--------------+
| symfony/browser-kit  | v7.2.0 | v7.3.0-BETA1 |
| symfony/css-selector | v7.2.0 | v7.3.0-BETA1 |
| symfony/dom-crawler  | v7.2.0 | v7.3.0-BETA1 |
| symfony/lock         | v7.2.0 | v7.3.0-BETA1 |
+----------------------+--------+--------------+
andypost’s picture

Status: Needs review » Needs work

8.3+ unit test fails

---- Drupal\Tests\Core\DependencyInjection\YamlFileLoaderTest ----
Status      Duration Info                                                                               
--------------------------------------------------------------------------------------------------------
Error         0.060s testParseDefinitionsWithProvider                                                
Pass          0.002s testExceptions with data set "_defaults must be an array"                       
Pass          0.001s testExceptions with data set "invalid _defaults key"                            
Pass          0.001s testExceptions with data set "default tags must be an array"                    
Pass          0.001s testExceptions with data set "default tags must have a name"                    
Pass          0.001s testExceptions with data set "default tag name must not be empty"               
Pass          0.001s testExceptions with data set "default tag name must be a string"                
Pass          0.001s testExceptions with data set "default tag attribute must be scalar"             
Pass          0.000s testExceptions with data set "tags must be an array"                            
Pass          0.001s testExceptions with data set "tags must have a name"                            
Pass          0.001s testExceptions with data set "tag name must not be empty"                       
Pass          0.001s testExceptions with data set "tag attribute must be scalar"                     
Pass          0.000s testExceptions with data set "service must be array or @service"                
Pass          0.000s testExceptions with data set "YAML must be valid"                               
Pass          0.001s testExceptions with data set "YAML must have expected keys"                     
Pass          0.001s testExceptions with data set "decorates must be without @"                      
Pass          0.001s ...Exceptions with data set "decorates_on_invalid may not be "null" with quotes"
Pass          0.001s testExceptions with data set "decoration_on_invalid must be valid"              
Log           0.410s *** Process execution output ***                                                
    PHPUnit 11.5.19 by Sebastian Bergmann and contributors.
    
    Runtime:       PHP 8.4.6
    Configuration: /builds/issue/drupal-3523284/core/phpunit.xml.dist
    
    E.................                                                18 / 18 (100%)
    
    Time: 00:00.080, Memory: 6.00 MB
    
    Yaml File Loader (Drupal\Tests\Core\DependencyInjection\YamlFileLoader)
     ✘ Parse definitions with provider
       ┐
       ├ Symfony\Component\DependencyInjection\Exception\InvalidArgumentException: The file "vfs://drupal/modules/example/example.yml" does not contain valid YAML: Unexpected token """ at line 11 (near "arguments: [!tagged_iterator foo.bar]"").
       │
       │ /builds/issue/drupal-3523284/core/lib/Drupal/Core/DependencyInjection/YamlFileLoader.php:452
       │ /builds/issue/drupal-3523284/core/lib/Drupal/Core/DependencyInjection/YamlFileLoader.php:75
       │ /builds/issue/drupal-3523284/core/tests/Drupal/Tests/Core/DependencyInjection/YamlFileLoaderTest.php:59
       ┴
     ✔ Exceptions with _defaults·must·be·an·array
     ✔ Exceptions with invalid·_defaults·key
     ✔ Exceptions with default·tags·must·be·an·array
     ✔ Exceptions with default·tags·must·have·a·name
     ✔ Exceptions with default·tag·name·must·not·be·empty
     ✔ Exceptions with default·tag·name·must·be·a·string
     ✔ Exceptions with default·tag·attribute·must·be·scalar
     ✔ Exceptions with tags·must·be·an·array
     ✔ Exceptions with tags·must·have·a·name
     ✔ Exceptions with tag·name·must·not·be·empty
     ✔ Exceptions with tag·attribute·must·be·scalar
     ✔ Exceptions with service·must·be·array·or·@service
     ✔ Exceptions with YAML·must·be·valid
     ✔ Exceptions with YAML·must·have·expected·keys
     ✔ Exceptions with decorates·must·be·without·@
     ✔ Exceptions with decorates_on_invalid·may·not·be·"null"·with·quotes
     ✔ Exceptions with decoration_on_invalid·must·be·valid
    
    ERRORS!
    Tests: 18, Assertions: 34, Errors: 1, PHPUnit Deprecations: 2.
andypost’s picture

longwave’s picture

andypost’s picture

Title: Compatibility with Symfony 7.3 » Update remaining Composer dependencies for 11.2.0
Issue summary: View changes
Status: Needs work » Needs review
Related issues: +#3458945: Make use of new functions from PHP 8.4, +#3522353: Update Composer dependencies for 11.2.0, +#3429849: Make doctrine/lexer:^3.0 compatible with \Drupal\Component\Annotation\Doctrine., +#3516348: Allow 6.x version of justinrainbow/json-schema

yes, duplicate but I see that root composer and other dependencies are not updated in other issue.

also coder https://www.drupal.org/project/coder/releases/8.3.29

andypost’s picture

cld --from 11.x
+-----------------------+--------+--------------+
| Production Changes    | From   | To           |
+-----------------------+--------+--------------+
| symfony/error-handler | v7.2.5 | v7.3.0-BETA1 |
| symfony/string        | v7.2.6 | v7.3.0-BETA1 |
| symfony/var-dumper    | v7.2.6 | v7.3.0-BETA1 |
| symfony/var-exporter  | v7.2.6 | v7.3.0-BETA1 |
+-----------------------+--------+--------------+

+----------------------+--------+--------------+
| Dev Changes          | From   | To           |
+----------------------+--------+--------------+
| drupal/coder         | 8.3.26 | 8.3.29       |
| symfony/browser-kit  | v7.2.4 | v7.3.0-BETA1 |
| symfony/css-selector | v7.2.0 | v7.3.0-BETA1 |
| symfony/dom-crawler  | v7.2.4 | v7.3.0-BETA1 |
| symfony/lock         | v7.2.6 | v7.3.0-BETA1 |
+----------------------+--------+--------------+

quietone’s picture

Coder already has an issue for upgrading it, #3522406: Update Coder to 8.3.30

andypost’s picture

Issue summary: View changes
Related issues: +#3522406: Update Coder to 8.3.30

@quietone thank you, downgraded for it

removed coder from summary

andypost’s picture

btw maybe it's useful to add forward compatibility with 8.5 as we already has testing it via nightly and new array/error functions has polyfills and attributes implemented

andypost’s picture

rebased and added snipped

current state

cld --from 11.x
+---------------------------+--------+--------------+
| Production Changes        | From   | To           |
+---------------------------+--------+--------------+
| symfony/error-handler     | v7.2.5 | v7.3.0-BETA1 |
| symfony/string            | v7.2.6 | v7.3.0-BETA1 |
| symfony/var-dumper        | v7.2.6 | v7.3.0-BETA1 |
| symfony/var-exporter      | v7.2.6 | v7.3.0-BETA1 |
+---------------------------+--------+--------------+

+----------------------+--------+--------------+
| Dev Changes          | From   | To           |
+----------------------+--------+--------------+
| symfony/browser-kit  | v7.2.4 | v7.3.0-BETA1 |
| symfony/css-selector | v7.2.0 | v7.3.0-BETA1 |
| symfony/dom-crawler  | v7.2.4 | v7.3.0-BETA1 |
| symfony/lock         | v7.2.6 | v7.3.0-BETA1 |
+----------------------+--------+--------------+
andypost’s picture

Issue summary: View changes
smustgrave’s picture

Status: Needs review » Reviewed & tested by the community

Was about say didn't know we used BETA release but then saw "symfony/serializer": "~v7.3.0-BETA1", so nvm

lets do it!

smustgrave’s picture

  • longwave committed bedda6ac on 11.x
    Issue #3523284 by andypost: Update remaining Composer dependencies for...
longwave’s picture

Status: Reviewed & tested by the community » Fixed

Committed bedda6a and pushed to 11.x. Thanks!

andypost’s picture

Thank you! now deprecated attribute is available for core even on PHP 8.3 - #3479340: Adopt #[\Deprecated] attribute

andypost’s picture

next beta has no viable changes, let's wait for next https://github.com/symfony/symfony/releases/tag/v7.3.0-BETA2

quietone’s picture

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.