-
-
Notifications
You must be signed in to change notification settings - Fork 835
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
Optional Dependencies #2579
Optional Dependencies #2579
Conversation
5aad483
to
299ed62
Compare
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.
Code looks good!
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.
So I noticed an odd behaviour,
I created two dummy extensions that have flarum/tags
as an optional dependency, I enabled both of them and observed the enabled extensions list order, looked fine and logical. I then proceeded to disable the tags extension, being an optional dependency it should not affect the other two extensions, however everytime I tried doing so one of the extensions (not always the same one) gets disabled.
Tracked it down to an issue in the extension order resolution algorithm.
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.
Can confirm the bug reported by @SychO9 is fixed, works well locally!
* Add and calculate optional dependencies * Add extension dependency resolver (Kahn's algorithm), plus unit tests * Resolve extension dependency on enable/disable
Refs #1318
Changes proposed in this pull request:
Reviewers should focus on:
Confirmed
- [ ] Frontend changes: tested on a local Flarum installation.composer test
).Required changes: