* 8.0: (26 commits)
Fix merge
[RateLimiter] Fix retryAfter when consuming exactly all remaining tokens in FixedWindow and TokenBucket
[RateLimiter] Fix retryAfter value on last token consume (SlidingWindow)
[RateLimiter] Fix reservations outside the second fixed window
[Filesystem] makePathRelative with existing files, remove ending /
[Config][Routing] Fix exclude option being ignored for non-glob and PSR-4 resources
[Serializer][Validator] Fix propertyPath in ConstraintViolationListNormalizer with MetadataAwareNameConverter
[Messenger][Amqp] Don't use retry routing key when sending to failure transport
[Messenger] Fix re-sending failed messages to a different failure transport
[DependencyInjection] Fix #[AsTaggedItem] discovery through multi-level decoration chains
[Config] Fix ArrayShapeGenerator required keys with deep merging
[Validator] Add a guard when `Parser::IGNORE_UNKNOWN_VARIABLES` is not defined
[Validator] Correctly handle null `allowedVariables` in `ExpressionSyntaxValidator`
[DependencyInjection] Fix PriorityTaggedServiceTrait not discovering #[AsTaggedItem] on decorated services
[Mailer] Clarify the purpose of SentMessage's "message id" concept
[ObjectMapper] fix nested mapping with class-level transform
[TwigBridge] Fix Bootstrap 4 form error layout
[Form] Fix merging POST params and files when collection entries have mismatched indices
[Validator] Fix type error for non-array items when Unique::fields is set
[HttpKernel] Fix default locale ignored when Accept-Language has no enabled-locale match
...
* 7.4: (25 commits)
[RateLimiter] Fix retryAfter when consuming exactly all remaining tokens in FixedWindow and TokenBucket
[RateLimiter] Fix retryAfter value on last token consume (SlidingWindow)
[RateLimiter] Fix reservations outside the second fixed window
[Filesystem] makePathRelative with existing files, remove ending /
[Config][Routing] Fix exclude option being ignored for non-glob and PSR-4 resources
[Serializer][Validator] Fix propertyPath in ConstraintViolationListNormalizer with MetadataAwareNameConverter
[Messenger][Amqp] Don't use retry routing key when sending to failure transport
[Messenger] Fix re-sending failed messages to a different failure transport
[DependencyInjection] Fix #[AsTaggedItem] discovery through multi-level decoration chains
[Config] Fix ArrayShapeGenerator required keys with deep merging
[Validator] Add a guard when `Parser::IGNORE_UNKNOWN_VARIABLES` is not defined
[Validator] Correctly handle null `allowedVariables` in `ExpressionSyntaxValidator`
[DependencyInjection] Fix PriorityTaggedServiceTrait not discovering #[AsTaggedItem] on decorated services
[Mailer] Clarify the purpose of SentMessage's "message id" concept
[ObjectMapper] fix nested mapping with class-level transform
[TwigBridge] Fix Bootstrap 4 form error layout
[Form] Fix merging POST params and files when collection entries have mismatched indices
[Validator] Fix type error for non-array items when Unique::fields is set
[HttpKernel] Fix default locale ignored when Accept-Language has no enabled-locale match
[FrameworkBundle] Make `ConfigDebugCommand` use its container to resolve env vars
...
* 6.4:
[RateLimiter] Fix retryAfter when consuming exactly all remaining tokens in FixedWindow and TokenBucket
[RateLimiter] Fix retryAfter value on last token consume (SlidingWindow)
[RateLimiter] Fix reservations outside the second fixed window
[Filesystem] makePathRelative with existing files, remove ending /
[Config][Routing] Fix exclude option being ignored for non-glob and PSR-4 resources
[Serializer][Validator] Fix propertyPath in ConstraintViolationListNormalizer with MetadataAwareNameConverter
[Messenger][Amqp] Don't use retry routing key when sending to failure transport
[Messenger] Fix re-sending failed messages to a different failure transport
[DependencyInjection] Fix #[AsTaggedItem] discovery through multi-level decoration chains
[DependencyInjection] Fix PriorityTaggedServiceTrait not discovering #[AsTaggedItem] on decorated services
[Mailer] Clarify the purpose of SentMessage's "message id" concept
[TwigBridge] Fix Bootstrap 4 form error layout
[Form] Fix merging POST params and files when collection entries have mismatched indices
[Validator] Fix type error for non-array items when Unique::fields is set
[HttpKernel] Fix default locale ignored when Accept-Language has no enabled-locale match
[FrameworkBundle] Make `ConfigDebugCommand` use its container to resolve env vars
[Console] Fix various completion edge cases
[Messenger][AmazonSqs] Add test for default queue_name when not set in DSN path or options
* 7.4:
bump symfony/type-info dependency
remove usages of the deprecated any() invoked count expectation
[Console] Fix profiling commands that use #[Ask]
remove usages of the deprecated any() invoked count expectation
[Serializer] Fix constructor parameter type override when property type extractor returns a different type
Minor: Fix Portuguese (pt) translations for validators
[Serializer] Fix passing context option to property-info
[CssSelector] Add LRU cache to CssSelectorConverter
* 7.4:
[Console] Fix ProgressBar %remaining% and %estimated% placeholder guards
[Validator] Fix missing null type in ValidatorInterface::validate() phpdoc
use PHPUnit 13 on PHP 8.4+
[PropertyInfo] Prioritize property type over is/has/can accessors
* 7.4:
do not use PHPUnit mock objects without configured expectations
do not use PHPUnit mock objects without configured expectations
do not use PHPUnit mock objects without configured expectations
do not use createMock() to create non-mock objects
* 7.3:
do not use PHPUnit mock objects without configured expectations
do not use PHPUnit mock objects without configured expectations
do not use createMock() to create non-mock objects
* 7.4: (23 commits)
fix merge
fix merge
do not use PHPUnit mock objects without configured expectations
do not use PHPUnit mock objects without configured expectations
do not use PHPUnit mock objects without configured expectations
do not use PHPUnit mock objects without configured expectations
do not use PHPUnit mock objects without configured expectations
do not use PHPUnit mock objects without configured expectations
do not use PHPUnit mock objects without configured expectations
do not use PHPUnit mock objects without configured expectations
Bump Symfony version to 7.4.4
Update VERSION for 7.4.3
Update CHANGELOG for 7.4.3
Bump Symfony version to 7.3.10
Update VERSION for 7.3.9
Update CHANGELOG for 7.3.9
Bump Symfony version to 6.4.32
Update VERSION for 6.4.31
Update CONTRIBUTORS for 6.4.31
Update CHANGELOG for 6.4.31
...
* 7.3:
fix merge
do not use PHPUnit mock objects without configured expectations
do not use PHPUnit mock objects without configured expectations
do not use PHPUnit mock objects without configured expectations
do not use PHPUnit mock objects without configured expectations
do not use PHPUnit mock objects without configured expectations
do not use PHPUnit mock objects without configured expectations
do not use PHPUnit mock objects without configured expectations
do not use PHPUnit mock objects without configured expectations
Bump Symfony version to 7.3.10
Update VERSION for 7.3.9
Update CHANGELOG for 7.3.9
Bump Symfony version to 6.4.32
Update VERSION for 6.4.31
Update CONTRIBUTORS for 6.4.31
Update CHANGELOG for 6.4.31
do not use PHPUnit mock objects without configured expectations
* 6.4:
do not use PHPUnit mock objects without configured expectations
do not use PHPUnit mock objects without configured expectations
do not use PHPUnit mock objects without configured expectations
do not use PHPUnit mock objects without configured expectations
do not use PHPUnit mock objects without configured expectations
Bump Symfony version to 6.4.32
Update VERSION for 6.4.31
Update CONTRIBUTORS for 6.4.31
Update CHANGELOG for 6.4.31
do not use PHPUnit mock objects without configured expectations
* 7.4:
[Messenger] Allow to use custom http client for sqs messenger transport
[JsonStreamer] Merge `PropertyMetadata` value transformers
[Mailer] Relax regexp to parse message ids
[Mailer] Fix parsing message ids in SMTP responses
Reviewed translations
[HttpClient] Consider cached responses without expiration as immediately stale
[Routing] Indicate type of rejected object in CompiledUrlMatcherDumper
[Workflow] Extract code from the data collector to a dedicated class
[Messenger] Add `MessageSentToTransportsEvent`
Add FormFlow for multistep forms management
[HttpKernel][DebugBundle] Collect dumps when console profiling is enabled
This PR was squashed before being merged into the 7.4 branch.
Discussion
----------
[Messenger] Allow to use custom http client for sqs messenger transport
| Q | A
| ------------- | ---
| Branch? | 7.4
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| License | MIT
In some scenarios (test cases) we need to pass specific HTTP client to messenger transport.
Commits
-------
83a31836de3 [Messenger] Allow to use custom http client for sqs messenger transport
* 7.4:
[DependencyInjection][Routing] Fix nested config imports when returning PHP arrays
fix compatibility with Relay 0.12.1
[TypeInfo] Fix resolving use statements with line breaks
[FrameworkBundle] Fix normalization of enums in workflow transitions
Add missing return type for docblock Closure
don't use a fixed date fixture when assertions depend on relative times
[FrameworkBundle] Fix secrets:encrypt-from-local
[Security] Add support for `Sec-Fetch-Site` to `SameOriginCsrfTokenManager`
[Console] Optimize mostRecentlyEnteredValue() method
[HttpClient] Add QUERY to the list of retriable HTTP methods
Update regular expression in URL validator
[AssetMapper] Fix parsing @import that don't use url()
[Messenger] Add retry delay on amazon sqs
[Serializer] CsvEncoder to escape values starting with line feed when escape formulas is enabled
* 7.4:
[Mime] Deprecate implementing `__sleep/wakeup()` on `AbstractPart` implementations
[Validator] Deprecate implementing `__sleep/wakeup()` on GenericMetadata implementations
[String] Deprecate implementing `__sleep/wakeup()` on string implementations
More cleanups related to internal sleep/wakeup usages
[HttpKernel] Deprecate `__sleep/wakeup()` on kernels and data collectors and make `Profile` final
[Serializer] Make `AttributeMetadata` and `ClassMetadata` final
Replace __sleep/wakeup() by __(un)serialize() when BC isn't a concern
chore: PHP CS Fixer - simplify config
* 7.4:
skip legacy extractor test with symfony/property-info 8.0+
chore: heredoc indentation as of PHP 7.3
[Actions] remove dead code from integration-test We can always revisit later if needed.From 2021 its there and not in use
* 7.4:
[Form] Fix code style issues
[SecurityBundle] Add tests for `debug:firewall` command
Adding more helpful error messages to the Questionhelper
[Messenger] Allow SQS to handle it's own retry/DLQ
This PR was merged into the 7.4 branch.
Discussion
----------
[Messenger] Allow SQS to handle its own retry/DLQ
| Q | A
| ------------- | ---
| Branch? | 7.4
| Bug fix? | no
| New feature? | yes
| Deprecations? | no
| Issues | Fix#45104
| License | MIT
As mentioned on the linked issue this has a number of benefits but mainly
* The consumer no longer needs to be able to send messages into the queue.
* Less chance of message loss
Allow SQS to handle retries rather then handling this by Symfony.
This allows applications to use the retry strategy from SQS rather then Symfony.
The default is for the message to be deleted from SQS at which point Symfony
will handle the retry by then adding back in to the queue.
If `delete_on_rejection` is set to `false` instead it will change the message
visibility of the message on SQS and thus SQS to handle the retry mechanism
https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
Commits
-------
e9b36d90407 [Messenger] Allow SQS to handle it's own retry/DLQ
* 7.4:
run tests using PHPUnit 11.5
make data provider static
[Lock] Fix using fractional TTLs on all platforms
[Lock] Fixes an issue with PostgreSQL when using fractional TTLs
[Console][Table] Fix unnecessary wrapping
[DependencyInjection] Deprecate registering a service without a class when its id is a non-existing FQCN
disable detecting modified indexes with DBAL 4.3
[cache] RedisTrait::doFetch should use pipeline instead of mget for Relay\Cluster
relax assertions for forward compatibility with Symfony 7.4
[Console][Table] Fix invalid UTF-8 due to text wrapping
Allow SQS to handle retries rather then handling this by Symfony.
This allows applications to use the retry strategy from SQS rather then Symfony.
The default is for the message to be deleted from SQS at which point Symfony
will handle the retry by deleting and then adding back in to the queue.
If `delete_on_rejection` is set to `false` instead it will change the message
visibility of the message on SQS and thus SQS to handle the retry mechanism