Problem/Motivation

There's a new SF version out.

Run composer update "symfony/*"

Drupal 9 should be handled by #3094007: Update the 9.0.x branch to Symfony 4.4-beta2 as that will require code changes due to new deprecations.

Proposed resolution

Remaining tasks

User interface changes

API changes

Data model changes

Release notes snippet

Drupal 8.8:

All Symfony dependencies have been updated to version 3.4.35

Drupal 8.7 and 8.6:

Symfony http-foundation has been updated to version 3.4.35

(maybe):
This includes an upstream security release which does not impact Drupal core.

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

alexpott created an issue. See original summary.

alexpott’s picture

On Drupal 8.8 and 8.9 the changes are:

+------------------------------+---------+---------+---------------------------------------------------------------------------+
| Production Changes           | From    | To      | Compare                                                                   |
+------------------------------+---------+---------+---------------------------------------------------------------------------+
| symfony/class-loader         | v3.4.33 | v3.4.35 | https://github.com/symfony/class-loader/compare/v3.4.33...v3.4.35         |
| symfony/console              | v3.4.33 | v3.4.35 | https://github.com/symfony/console/compare/v3.4.33...v3.4.35              |
| symfony/debug                | v3.4.33 | v3.4.35 | https://github.com/symfony/debug/compare/v3.4.33...v3.4.35                |
| symfony/dependency-injection | v3.4.33 | v3.4.35 | https://github.com/symfony/dependency-injection/compare/v3.4.33...v3.4.35 |
| symfony/event-dispatcher     | v3.4.33 | v3.4.35 | https://github.com/symfony/event-dispatcher/compare/v3.4.33...v3.4.35     |
| symfony/http-foundation      | v3.4.33 | v3.4.35 | https://github.com/symfony/http-foundation/compare/v3.4.33...v3.4.35      |
| symfony/http-kernel          | v3.4.33 | v3.4.35 | https://github.com/symfony/http-kernel/compare/v3.4.33...v3.4.35          |
| symfony/process              | v3.4.33 | v3.4.35 | https://github.com/symfony/process/compare/v3.4.33...v3.4.35              |
| symfony/routing              | v3.4.33 | v3.4.35 | https://github.com/symfony/routing/compare/v3.4.33...v3.4.35              |
| symfony/serializer           | v3.4.33 | v3.4.35 | https://github.com/symfony/serializer/compare/v3.4.33...v3.4.35           |
| symfony/translation          | v3.4.33 | v3.4.35 | https://github.com/symfony/translation/compare/v3.4.33...v3.4.35          |
| symfony/validator            | v3.4.33 | v3.4.35 | https://github.com/symfony/validator/compare/v3.4.33...v3.4.35            |
| symfony/yaml                 | v3.4.33 | v3.4.35 | https://github.com/symfony/yaml/compare/v3.4.33...v3.4.35                 |
| symfony/polyfill-php56       | NEW     | v1.12.0 |                                                                           |
| symfony/polyfill-util        | NEW     | v1.12.0 |                                                                           |
+------------------------------+---------+---------+---------------------------------------------------------------------------+

+------------------------+---------+---------+---------------------------------------------------------------------+
| Dev Changes            | From    | To      | Compare                                                             |
+------------------------+---------+---------+---------------------------------------------------------------------+
| symfony/browser-kit    | v3.4.33 | v3.4.35 | https://github.com/symfony/browser-kit/compare/v3.4.33...v3.4.35    |
| symfony/css-selector   | v3.4.33 | v3.4.35 | https://github.com/symfony/css-selector/compare/v3.4.33...v3.4.35   |
| symfony/dom-crawler    | v3.4.33 | v3.4.35 | https://github.com/symfony/dom-crawler/compare/v3.4.33...v3.4.35    |
| symfony/filesystem     | v3.4.33 | v3.4.35 | https://github.com/symfony/filesystem/compare/v3.4.33...v3.4.35     |
| symfony/finder         | v3.4.33 | v3.4.35 | https://github.com/symfony/finder/compare/v3.4.33...v3.4.35         |
| symfony/lock           | v3.4.33 | v3.4.35 | https://github.com/symfony/lock/compare/v3.4.33...v3.4.35           |
| symfony/phpunit-bridge | v3.4.33 | v3.4.35 | https://github.com/symfony/phpunit-bridge/compare/v3.4.33...v3.4.35 |
+------------------------+---------+---------+---------------------------------------------------------------------+

On Drupal 8.7.x the updates are:

+------------------------------+---------+---------+---------------------------------------------------------------------------+
| Production Changes           | From    | To      | Compare                                                                   |
+------------------------------+---------+---------+---------------------------------------------------------------------------+
| symfony/class-loader         | v3.4.26 | v3.4.35 | https://github.com/symfony/class-loader/compare/v3.4.26...v3.4.35         |
| symfony/console              | v3.4.26 | v3.4.35 | https://github.com/symfony/console/compare/v3.4.26...v3.4.35              |
| symfony/debug                | v3.4.26 | v3.4.35 | https://github.com/symfony/debug/compare/v3.4.26...v3.4.35                |
| symfony/dependency-injection | v3.4.26 | v3.4.35 | https://github.com/symfony/dependency-injection/compare/v3.4.26...v3.4.35 |
| symfony/event-dispatcher     | v3.4.26 | v3.4.35 | https://github.com/symfony/event-dispatcher/compare/v3.4.26...v3.4.35     |
| symfony/http-foundation      | v3.4.27 | v3.4.35 | https://github.com/symfony/http-foundation/compare/v3.4.27...v3.4.35      |
| symfony/http-kernel          | v3.4.26 | v3.4.35 | https://github.com/symfony/http-kernel/compare/v3.4.26...v3.4.35          |
| symfony/polyfill-ctype       | v1.11.0 | v1.12.0 | https://github.com/symfony/polyfill-ctype/compare/v1.11.0...v1.12.0       |
| symfony/polyfill-iconv       | v1.11.0 | v1.12.0 | https://github.com/symfony/polyfill-iconv/compare/v1.11.0...v1.12.0       |
| symfony/polyfill-mbstring    | v1.11.0 | v1.12.0 | https://github.com/symfony/polyfill-mbstring/compare/v1.11.0...v1.12.0    |
| symfony/polyfill-php70       | v1.11.0 | v1.12.0 | https://github.com/symfony/polyfill-php70/compare/v1.11.0...v1.12.0       |
| symfony/process              | v3.4.26 | v3.4.35 | https://github.com/symfony/process/compare/v3.4.26...v3.4.35              |
| symfony/routing              | v3.4.26 | v3.4.35 | https://github.com/symfony/routing/compare/v3.4.26...v3.4.35              |
| symfony/serializer           | v3.4.26 | v3.4.35 | https://github.com/symfony/serializer/compare/v3.4.26...v3.4.35           |
| symfony/translation          | v3.4.26 | v3.4.35 | https://github.com/symfony/translation/compare/v3.4.26...v3.4.35          |
| symfony/validator            | v3.4.26 | v3.4.30 | https://github.com/symfony/validator/compare/v3.4.26...v3.4.30            |
| symfony/yaml                 | v3.4.26 | v3.4.35 | https://github.com/symfony/yaml/compare/v3.4.26...v3.4.35                 |
| symfony/polyfill-php56       | NEW     | v1.12.0 |                                                                           |
| symfony/polyfill-util        | NEW     | v1.12.0 |                                                                           |
+------------------------------+---------+---------+---------------------------------------------------------------------------+

+------------------------+---------+---------+---------------------------------------------------------------------+
| Dev Changes            | From    | To      | Compare                                                             |
+------------------------+---------+---------+---------------------------------------------------------------------+
| symfony/browser-kit    | v3.4.26 | v3.4.35 | https://github.com/symfony/browser-kit/compare/v3.4.26...v3.4.35    |
| symfony/css-selector   | v3.4.26 | v3.4.35 | https://github.com/symfony/css-selector/compare/v3.4.26...v3.4.35   |
| symfony/dom-crawler    | v3.4.26 | v3.4.35 | https://github.com/symfony/dom-crawler/compare/v3.4.26...v3.4.35    |
| symfony/phpunit-bridge | v3.4.26 | v3.4.35 | https://github.com/symfony/phpunit-bridge/compare/v3.4.26...v3.4.35 |
+------------------------+---------+---------+---------------------------------------------------------------------+

On Drupal 8.6.x the changes are:

+---------------------------------+---------+---------+----------------------------------------------------------------------------+
| Production Changes              | From    | To      | Compare                                                                    |
+---------------------------------+---------+---------+----------------------------------------------------------------------------+
| symfony/class-loader            | v3.4.15 | v3.4.35 | https://github.com/symfony/class-loader/compare/v3.4.15...v3.4.35          |
| symfony/console                 | v3.4.15 | v3.4.35 | https://github.com/symfony/console/compare/v3.4.15...v3.4.35               |
| symfony/debug                   | v3.4.15 | v3.4.35 | https://github.com/symfony/debug/compare/v3.4.15...v3.4.35                 |
| symfony/dependency-injection    | v3.4.26 | v3.4.35 | https://github.com/symfony/dependency-injection/compare/v3.4.26...v3.4.35  |
| symfony/event-dispatcher        | v3.4.15 | v3.4.35 | https://github.com/symfony/event-dispatcher/compare/v3.4.15...v3.4.35      |
| symfony/http-foundation         | v3.4.28 | v3.4.35 | https://github.com/symfony/http-foundation/compare/v3.4.28...v3.4.35       |
| symfony/http-kernel             | v3.4.15 | v3.4.35 | https://github.com/symfony/http-kernel/compare/v3.4.15...v3.4.35           |
| symfony/polyfill-ctype          | v1.9.0  | v1.12.0 | https://github.com/symfony/polyfill-ctype/compare/v1.9.0...v1.12.0         |
| symfony/polyfill-iconv          | v1.9.0  | v1.12.0 | https://github.com/symfony/polyfill-iconv/compare/v1.9.0...v1.12.0         |
| symfony/polyfill-mbstring       | v1.9.0  | v1.12.0 | https://github.com/symfony/polyfill-mbstring/compare/v1.9.0...v1.12.0      |
| symfony/polyfill-php70          | v1.9.0  | v1.12.0 | https://github.com/symfony/polyfill-php70/compare/v1.9.0...v1.12.0         |
| symfony/process                 | v3.4.15 | v3.4.35 | https://github.com/symfony/process/compare/v3.4.15...v3.4.35               |
| symfony/psr-http-message-bridge | v1.1.0  | v1.1.2  | https://github.com/symfony/psr-http-message-bridge/compare/v1.1.0...v1.1.2 |
| symfony/routing                 | v3.4.15 | v3.4.35 | https://github.com/symfony/routing/compare/v3.4.15...v3.4.35               |
| symfony/serializer              | v3.4.15 | v3.4.35 | https://github.com/symfony/serializer/compare/v3.4.15...v3.4.35            |
| symfony/translation             | v3.4.15 | v3.4.35 | https://github.com/symfony/translation/compare/v3.4.15...v3.4.35           |
| symfony/validator               | v3.4.15 | v3.4.30 | https://github.com/symfony/validator/compare/v3.4.15...v3.4.30             |
| symfony/yaml                    | v3.4.15 | v3.4.35 | https://github.com/symfony/yaml/compare/v3.4.15...v3.4.35                  |
| symfony/polyfill-php56          | NEW     | v1.12.0 |                                                                            |
| symfony/polyfill-util           | NEW     | v1.12.0 |                                                                            |
+---------------------------------+---------+---------+----------------------------------------------------------------------------+

+------------------------+---------+---------+---------------------------------------------------------------------+
| Dev Changes            | From    | To      | Compare                                                             |
+------------------------+---------+---------+---------------------------------------------------------------------+
| symfony/browser-kit    | v3.4.15 | v3.4.35 | https://github.com/symfony/browser-kit/compare/v3.4.15...v3.4.35    |
| symfony/css-selector   | v3.4.15 | v3.4.35 | https://github.com/symfony/css-selector/compare/v3.4.15...v3.4.35   |
| symfony/dom-crawler    | v3.4.15 | v3.4.35 | https://github.com/symfony/dom-crawler/compare/v3.4.15...v3.4.35    |
| symfony/phpunit-bridge | v3.4.15 | v3.4.35 | https://github.com/symfony/phpunit-bridge/compare/v3.4.15...v3.4.35 |
+------------------------+---------+---------+---------------------------------------------------------------------+
alexpott’s picture

Status: Active » Needs review
alexpott’s picture

Here's a more cautious approach for 8.6.x and 8.7.x if we want.
8.7.x

+-------------------------+---------+---------+----------------------------------------------------------------------+
| Production Changes      | From    | To      | Compare                                                              |
+-------------------------+---------+---------+----------------------------------------------------------------------+
| symfony/http-foundation | v3.4.27 | v3.4.35 | https://github.com/symfony/http-foundation/compare/v3.4.27...v3.4.35 |
| symfony/http-kernel     | v3.4.26 | v3.4.35 | https://github.com/symfony/http-kernel/compare/v3.4.26...v3.4.35     |
| symfony/polyfill-php56  | NEW     | v1.12.0 |                                                                      |
| symfony/polyfill-util   | NEW     | v1.12.0 |                                                                      |
+-------------------------+---------+---------+----------------------------------------------------------------------+

8.6.x

+-------------------------+---------+---------+----------------------------------------------------------------------+
| Production Changes      | From    | To      | Compare                                                              |
+-------------------------+---------+---------+----------------------------------------------------------------------+
| symfony/http-foundation | v3.4.28 | v3.4.35 | https://github.com/symfony/http-foundation/compare/v3.4.28...v3.4.35 |
| symfony/http-kernel     | v3.4.15 | v3.4.35 | https://github.com/symfony/http-kernel/compare/v3.4.15...v3.4.35     |
| symfony/polyfill-php56  | NEW     | v1.12.0 |                                                                      |
| symfony/polyfill-util   | NEW     | v1.12.0 |                                                                      |
+-------------------------+---------+---------+----------------------------------------------------------------------+
catch’s picture

Status: Needs review » Reviewed & tested by the community

Prefer the patches in #4, we shouldn't update 8.6/8.7 any more than we need to, or at least not today.

I manually read through all the patches and they look fine. There's a new Symfony polyfill dependency in composer.lock - this is because it's a newly added dependency for http-kernel, so that change in composer.lock is legit.

Marking RTBC for the 8.6/8.7 patches in #4 and the 8.9 patch in #2. It would be great if someone else could +1 to allow me to commit (or of course another core committer is welcome to).

mikelutz’s picture

This makes sense, the metapackage changes appear to be correct for 8.8 and 8.9. I would go with the minimal approach for 8.6, and the fuller approach for 8.7, as it's technically still bugfix, and having it fully updated with Symfony as it goes into security next month will make addressing any other symfony security issues potentially easier over the next 6 months.

edit - @catch beat me to the RTBC, but +1, and I'm fine with the minimal approach for 8.7 too, that is an RM decision.

catch’s picture

the fuller approach for 8.7, as it's technically still bugfix, and having it fully updated with Symfony as it goes into security next month will make addressing any other symfony security issues potentially easier over the next 6 months.

This is potentially a good idea but I think we should open a follow-up to talk about that, since we may try to put out new 8.6/8.7 releases today which doesn't allow a lot of time to let the updates settle.

  • catch committed a83fb23 on 8.9.x
    Issue #3094146 by alexpott, mikelutz: Update Drupal 8 to the latest...

  • catch committed 7839ca4 on 8.8.x
    Issue #3094146 by alexpott, mikelutz: Update Drupal 8 to the latest...

  • catch committed a879559 on 8.7.x
    Issue #3094146 by alexpott, mikelutz: Update Drupal 8 to the latest...

  • catch committed b8a4aed on 8.6.x
    Issue #3094146 by alexpott, mikelutz: Update Drupal 8 to the latest...
catch’s picture

Version: 8.9.x-dev » 8.6.x-dev
Issue summary: View changes
Status: Reviewed & tested by the community » Fixed
Issue tags: +8.8.0 release notes

Committed/pushed to 8.9.x, 8.8.x, 8.7.x, and 8.6.x, phew!

Also added a release notes snippet (which might need improving).

xjm’s picture

Issue tags: +8.7.10 release notes
btriest’s picture

The release candidate (symfony 4 and 5) is released as of 17-11-2019. (rc-1).

https://symfony.com/blog/symfony-4-4-0-rc1-released

https://symfony.com/blog/symfony-5-0-0-rc1-released.

Is there a need to create a new issue?

greggles’s picture

Title: Update Drupal 8 to the latest Symfony version » Update Drupal 8 to the latest stable/compatibe Symfony 3.x versions

Re #14: Drupal 8 is stable and does not include dramatic changes like a completely new symfony major release. Updating title to make that more clear, though likely it could be phrased even better.

Drupal 9, on the other hand, is the point to make a bump to the major version and it indeed has symfony 4, per #3009219: Update Symfony to 4.4 in Drupal 9.0 and more recently #3088369: Update Drupal 9 to Symfony 4.4-dev.

JeroenT’s picture

FWIW, is there a possibility on automating this kind of updates? e.g. on Github you have https://dependabot.com/ which automates this kind of process.

Status: Fixed » Closed (fixed)

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