2x: The "Symfony\Component\Debug\BufferingLogger" class is deprecated since Symfony 4.4, use "Symfony\Component\ErrorHandler\BufferingLogger" instead.
1x in EntityReferenceSettingsTest::testConfigTargetBundleDeletion from Drupal\Tests\field\Kernel\EntityReference
1x in EntityReferenceSettingsTest::testCustomTargetBundleDeletion from Drupal\Tests\field\Kernel\EntityReference
2x: The "entity_reference_settings_test.logger" service relies on the deprecated "Symfony\Component\Debug\BufferingLogger" class. It should either be deprecated or its implementation upgraded.
1x in EntityReferenceSettingsTest::testConfigTargetBundleDeletion from Drupal\Tests\field\Kernel\EntityReference
1x in EntityReferenceSettingsTest::testCustomTargetBundleDeletion from Drupal\Tests\field\Kernel\EntityReference
| Comment | File | Size | Author |
|---|---|---|---|
| #25 | interdiff-18-25.txt | 562 bytes | jungle |
| #25 | 3117857-25.patch | 5.46 KB | jungle |
Comments
Comment #2
longwaveComment #3
kristen polComment #4
kristen polThanks for the patch.
1) Found reference to
BufferingLoggerin 9.0 dev code in these files:2) The patch swaps:
Symfony\Component\Debug\BufferingLoggerwith
Symfony\Component\ErrorHandler\BufferingLoggerand removes the deprecation warnings from
DeprecationListenerTrait.php.Looking at
vendor/symfony/debug/BufferingLogger.phpit has:@deprecated since Symfony 4.4, use Symfony\Component\ErrorHandler\BufferingLogger instead.so this looks correct.
3) The patch did not apply cleanly to 9.0 so moving back to "Needs work"
Comment #5
longwaveThanks for the review, rerolled.
Comment #6
kristen polComment #7
kristen polThanks for the reroll. The patch applied cleanly and not sure this can be manually tested, so marking RTBC.
Comment #8
catchNeeds a re-roll.
Comment #9
piyuesh23 commentedComment #10
ashokrd2013 commentedComment #11
govind.maloo commentedRerolled patch.
Comment #12
longwaveComment #13
longwaveDo we need to explicitly add a dependency on
symfony/error-handlerwith this change? And can we removesymfony/debugas well, as we don't seem to use it directly?Comment #14
kristen pol@longwave I don't understand your comment. Are you referring to this:
?
BufferingLoggeris used incore/modules/field/tests/src/Kernel/EntityReference/EntityReferenceSettingsTest.php, here:Comment #15
longwaveI am referring to this in composer.json:
The only two references to
Symfony\Component\Debugare being removed in this patch:Symfony\Component\ErrorHandleris a newly introduced dependency after this change, except one mention in a comment:Therefore I wonder if we need to add
symfony/error-handlerto composer.json, and perhaps removesymfony/debug? Technically this makes no real difference because other Symfony dependencies already pull in both packages - but we should also be explicit about the code we rely on.Comment #16
kristen polOh! Of course, that make sense. Thanks for spelling that out for me. I agree with you on "we should also be explicit about the code we rely on".
Comment #17
catchMarking needs work for the dependency changes.
Comment #18
longwaveComment #19
kristen polComment #20
kristen polThanks for the update.
1) Reviewed the changes and they look fine.
2) Compared patches in #12 and #18 to confirm the composer changes were the only ones.
3) Re-checked the whole patch.
4) Applies cleanly:
5) Searched for
symfony/debugafter applying patch and it's referenced in:a)
composer.lock- autogeneratedb)
composer/Metapackage/CoreRecommended/composer.json- okc)
core/lib/Drupal/Core/Composer/Composer.php-$packageToCleanupShould
symfony/error-handlerbe added here? I don't understand what this is used for. The list in there doesn't match up with composer.json.6) Searched for
symfony/error-handlerafter applying patch and it's referenced in:a)
composer.lock- autogeneratedb)
composer.json- added via patch7) Searched for
BufferingLoggerafter applying patch and it's only referenced in the code handled by the patch.8) I'm going to assume 5c isn't a thing and that there is no good way to test manually. Since tests pass, marking this RTBC.
Comment #21
jungle@Kristen Pol, thanks for your great review!
Re #20.5c, As @mixologic said on slack on Mar 20, 2020, "we should always declare dependents that we are using and not rely on the fact that they are pulled in transitively", So it's good to add
symfony/error-handler.Queued the testing against 9.0.x, RTBC+1
Comment #22
kristen polThanks @jungle. I'm a bit confused. You have RTBC+1 but you also have:
Do you mean to add it to
core/lib/Drupal/Core/Composer/Composer.php? As noted in #20.5c, it's missing from that. If it needs to be added, this issue should go back to "Needs work".Comment #23
jungleI meant adding
symfony/error-handlerto composer.json from my understanding of what @mixologic said which is good,At first glance, I thought it's talking about adding to
composer.json. The comment in #15 was in my mind . My bad. Apologize.Back to the question.
\Drupal\Core\Composer\Composer::$packageToCleanupis to make packages smaller by removing unnecessary tests/docs files etc.symfony/debugwas removed,symfony/error-handlerwas added, so yes, I think it's good to add['symfony/error-handler'] => ['Tests'],to there.Comment #24
jungleComment #25
jungleAdding
['symfony/error-handler'] => ['Tests'], to\Drupal\Core\Composer\Composer::$packageToCleanupComment #26
jungleTo make it more clear
\Drupal\Core\Composer\Composer::$packageToCleanupis from the filecore/lib/Drupal/Core/Composer/Composer.phpTestsis the directory where is its tests. See https://github.com/symfony/error-handlerComment #27
kristen polThanks for the update.
1) Confirmed the only change was to
core/lib/Drupal/Core/Composer/Composer.php.Nitpick: Not alphabetical, but it was already like that with
filesystemandfinderbeforeevent-dispatcher, so not marking "Needs work".2) Patch applies cleanly:
3) Marking RTBC! Thanks!
Comment #28
longwaveThanks @Kristen Pol for the detailed reviews, and thanks @jungle for picking up that change in the test cleanup code that I missed.
Comment #31
catchCommitted/pushed to 9.1.x and 9.0.x, thanks!