-
-
Notifications
You must be signed in to change notification settings - Fork 9.6k
[Mailer] Changed EventDispatcherInterface dependency from Component to Contracts #31956
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
[Mailer] Changed EventDispatcherInterface dependency from Component to Contracts #31956
Conversation
e3efc9e
to
848fce2
Compare
Makes sense to me, don't miss bumping the bridge's lowest version in composer.json
technically: because we are >=PHP7.1 while PSR14 is >=7.2 |
d39cada
to
bdb6217
Compare
@nicolas-grekas I've updated minimum required versions for both Bridge -> Mailer and Mailer -> Bridge, but deps=high job still fails because current dev-master hasn't my changes. How can I fix that or should we just ignore this failed job? |
deps=high can fail in this situation, until the patch is merged to master. |
Thank you @Koc. |
…rom Component to Contracts (Koc) This PR was merged into the 4.4 branch. Discussion ---------- [Mailer] Changed EventDispatcherInterface dependency from Component to Contracts | Q | A | ------------- | --- | Branch? | 4.4 | Bug fix? | no | New feature? | no | BC breaks? | yes | Deprecations? | no | Tests pass? | almost yes, see #31956 (comment) | Fixed tickets | - | License | MIT | Doc PR | - Follow up of #31946 (comment) . I hope this kind of changes are allowed for experimental components. BTW, @nicolas-grekas , why Psr14 interface is optional for Contract's `EventDispatcherInterface https://github.com/symfony/symfony/blob/4.4/src/Symfony/Contracts/EventDispatcher/EventDispatcherInterface.php#L16 ? Commits ------- bdb6217 Changed EventDispatcherInterface dependency from Component to Contracts
4.4.0 | ||
----- | ||
|
||
* [BC BREAK] Transports depend on `Symfony\Contracts\EventDispatcher\EventDispatcherInterface` |
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.
that's not actually a BC break if the component interface extends the contracts one.
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.
Interface from component has methods like addListener
, addSubscriber
but interface from contracts has only dispatch
method. So if some of transports call addListener
- now it could get fatal error.
Follow up of #31946 (comment) . I hope this kind of changes are allowed for experimental components.
BTW, @nicolas-grekas , why Psr14 interface is optional for Contract's `EventDispatcherInterface https://github.com/symfony/symfony/blob/4.4/src/Symfony/Contracts/EventDispatcher/EventDispatcherInterface.php#L16 ?