-
Notifications
You must be signed in to change notification settings - Fork 16
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
Switch to workspace dependencies #664
Conversation
9822fa4
to
ae78d17
Compare
As you can see, CI is red, and the builds are broken. This is without any changes to the |
As I figured out workspace maintains the additive nature of the package dependency, it can enable default features but it can't disable them:
Already pushed the commit with additive nature. |
98eb9a2
to
eb8ba52
Compare
I see what the problem is. I don't like the idea of having default features disabled for some of the workspace deps, but enabled for the rest. How about we disbale default features for all workspace deps, and the selectively enable them as needed? |
Agree with you, it should avoid having confusion in mind. |
@dmitrylavrenov thx for the help, I'll take care of the rest. |
23cccd1
to
88f7ca4
Compare
@MOZGIII default features have beet set to false for all deps. |
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.
I think we must also run local tests for this to be sure (to see if we maybe disabled some features unexpectedly that don't break the compilation, but reduce the effective feature set for instance). Should be alright though.
Status update: this can be merged, but we decided to introduce snapshotting of the active feature per dependency, land that at CI so we get an alert when features change, and then ensure this PR doesn't cause a snapshot change to rnsure we only purely rewrite the way we declare the features, and bit the actual sets of features. |
#687 is getting merged now, we can continue here |
b097bcc
to
99ca432
Compare
@MOZGIII Just merged master and resolved conflict. I guess it can be reviewed now. |
Can we make it so the features snapshot is unchanged? |
I suggest that we squash the commits in this PR and rebase on top of |
Spent time to properly rebase. Current features snapshot changes are related to
|
4a8b8e6
to
deeab39
Compare
a4c46ec
to
36f5979
Compare
@MOZGIII Check again, please. Features snapshot hasn't been changed. |
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.
Looks great! I'll take some time to review to make sure I understand the tradeoffs taken here.
It would be nice to add a clippy lint to only allow workspace dependencies. This doesn't look too difficult, check out this for a reference: https://github.com/rust-lang/rust-clippy/tree/master/clippy_lints/src/cargo |
Closes #610