Merged
Conversation
1a33dc4 to
a302195
Compare
Bug fixes: - Remove declaring-class filter in supportsByPropertyAttribute() that silently skipped inherited properties, breaking MappedSuperclass detection - Assert on preg_replace return in sanitize() to prevent silent cache key corruption - Remove dead MetadataSubscriber manual registration from services.php Improvements: - Replace spl_object_id arrays with WeakMap in MetadataReader and AbstractExtensionMetadataFactory to prevent stale metadata in long-running processes (Messenger, RoadRunner) - Add exception hierarchy: DuplicateMappingException and InvalidMappingAttributeException extending MappingException - Add hasConfiguration() and getConfigurations() to ExtensionMetadataInterface - Add driver priority support via getPriority() on MappingDriverInterface and AutowireIterator defaultPriorityMethod - Add getEntityChangeSet() helper to AbstractDoctrineListener - Add ValidatableConfigurationInterface for opt-in post-load validation - Add WakeupAwareConfigurationInterface for opt-in wakeup hooks - Add trigger_error(E_USER_NOTICE) for shadowed field mappings instead of silent array_diff_key - Add MetadataDumpCommand (chamber-orchestra:metadata:dump) for debugging - Add MetadataDataCollector for Symfony profiler integration Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
a302195 to
e6b3c3b
Compare
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
e6b3c3b to
296f029
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
preg_replacereturn in cache key sanitization, remove deadMetadataSubscriberservice registrationspl_object_id-keyed arrays with\WeakMapinMetadataReaderandAbstractExtensionMetadataFactoryto prevent stale metadata in long-running processesDuplicateMappingExceptionandInvalidMappingAttributeExceptionsubtypes for granular catch blockshasConfiguration(),getConfigurations(),getEntityChangeSet(), driver priority viagetPriority()ValidatableConfigurationInterface(post-load validation),WakeupAwareConfigurationInterface(deserialization hook)MetadataDumpCommandfor CLI debugging,MetadataDataCollectorfor Symfony profiler,trigger_error(E_USER_NOTICE)for shadowed field mappingsTest plan
bin/phpunit)vendor/bin/php-cs-fixer fix --dry-run)chamber-orchestra:metadata:dumpcommand with real entity🤖 Generated with Claude Code