-
-
Notifications
You must be signed in to change notification settings - Fork 9.6k
[Cache] Log a more readable message when trying to cache an unsupported type #31395
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Cache] Log a more readable message when trying to cache an unsupported type #31395
Conversation
5d6d5f4
to
7277340
Compare
this is not logging the exception anymore. |
f3e14ab
to
ab1eb51
Compare
Travis failure is not related. |
5d1ff9d
to
ae099b7
Compare
Tests failures on AppVeyor are not related: they seem to be related to changes made on other components, whereas I only reworded warning-level log messages on the Cache component. |
I'm sorry but I don't see why this improves the state of things. The brackets are not explicit enough thought. |
Thanks @nicolas-grekas, sorry, looks like I didn't understand the original issue like this, I'll fix my PR ASAP :) |
4bd2d3e
to
ec281fe
Compare
ec281fe
to
21ba3c0
Compare
Thank you @Deuchnord. |
… an unsupported type (Deuchnord) This PR was merged into the 4.3 branch. Discussion ---------- [Cache] Log a more readable message when trying to cache an unsupported type | Q | A | ------------- | --- | Branch? | master | Bug fix? | no | New feature? | yes <!-- don't forget to update src/**/CHANGELOG.md files --> | BC breaks? | no <!-- see https://symfony.com/bc --> | Deprecations? | no <!-- don't forget to update UPGRADE-*.md and src/**/CHANGELOG.md files --> | Tests pass? | yes <!-- please add some, will be required by reviewers --> | Fixed tickets | #29710 <!-- #-prefixed issue number(s), if any --> | License | MIT | Doc PR | Improved the warning risen when trying to save something that has a non-supported type in the Simple cache. For instance, let's say the following code: ```php class TestCommand extends Command { private $cache; public function __construct(CacheInterface $cache) { parent::__construct(); $this->cache = $cache; } // ... protected function execute(InputInterface $input, OutputInterface $output) { $n = $this->cache->get('n', function () { return function () { return rand(0,10); }; }); dump($n()); } } ``` Running this code will give the following: ``` 14:32:03 WARNING [cache] Could not save key "n" in cache: the Closure type is not supported. 0 ``` Commits ------- 21ba3c0 [Cache] Log a more readable error message when saving into cache fails
This PR was merged into the 4.3 branch. Discussion ---------- [Cache] improve logged messages | Q | A | ------------- | --- | Branch? | 4.3 | Bug fix? | yes | New feature? | no | BC breaks? | no | Deprecations? | no | Tests pass? | yes | Fixed tickets | - | License | MIT | Doc PR | - This was improved already in #31395, but the patch was incomplete. This PR fixes this. Commits ------- 257f3f1 [Cache] improve logged messages
This PR was squashed before being merged into the 4.3 branch (closes #31864). Discussion ---------- [Cache] Fixed undefined variable in ArrayTrait | Q | A | ------------- | --- | Branch? | 4.3 | Bug fix? | yes | New feature? | no | BC breaks? | no | Deprecations? | no | Tests pass? | yes | Fixed tickets | | License | MIT | Doc PR | So once again (see #29591) my test suite managed to find an error in ArrayTrait in cache. This time it was this PR: #31395 later improved by #31590 that introduced `$id` to logging, which I guess should be `$key`? So this PR changes it to `$key`, ~but my tests **still fail** as there is no `$this->namespace` in `ArrayAdapter` (is this the only class that uses this ArrayTrait?). But I don't know what to do about it. Maybe @nicolas-grekas has some answers?~ Commits ------- 8568923 [Cache] Fixed undefined variable in ArrayTrait
Improved the warning risen when trying to save something that has a non-supported type in the Simple cache.
For instance, let's say the following code:
Running this code will give the following: