-
-
Notifications
You must be signed in to change notification settings - Fork 9.6k
[Lock] Add LockKeyNormalizer
#60023
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
base: 7.3
Are you sure you want to change the base?
[Lock] Add LockKeyNormalizer
#60023
Conversation
89d05b7
to
d1cd6e1
Compare
{ | ||
$key = (new \ReflectionClass(Key::class))->newInstanceWithoutConstructor(); | ||
foreach ($key->__sleep() as $serializedField) { | ||
(fn () => $this->$serializedField = $data[$serializedField])->bindTo($key, Key::class)(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it should be more efficient to have one closure outside of the loop instead of many calls inside
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, done.
$this->assertEqualsWithDelta($key->getRemainingLifetime(), $copy->getRemainingLifetime(), 0.001); | ||
} | ||
|
||
public function testDenormalize() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This test name as bad as this test is not covering denormalization at all.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, fixed
@@ -2128,6 +2129,11 @@ private function registerLockConfiguration(array $config, ContainerBuilder $cont | ||
{ | ||
$loader->load('lock.php'); | ||
|
||
// BC layer Lock < 7.3 | ||
if (!class_exists(DenormalizerInterface::class) || !class_exists(LockKeyNormalizer::class)) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if (!class_exists(DenormalizerInterface::class) || !class_exists(LockKeyNormalizer::class)) { | |
if (!interface_exists(DenormalizerInterface::class) || !class_exists(LockKeyNormalizer::class)) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed
The Lock documentation mentions that the lock keys are serializable – however, it seems that's the case only if you're using native php serializer.
I'm proposing to add
LockKeyNormalizer
to make the example in the docs work the same when using Symfony Serializer too.