-
Notifications
You must be signed in to change notification settings - Fork 120
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
Add workspace initial support #1358
Add workspace initial support #1358
Conversation
We need to understand what repercussions it has on a crate publishing process. We've experienced some issues with the release process in ink! where come internal crates had cyclic dependencies |
This PR is to do with user contract projects with workspace dependencies. That said, this project itself could also be upgraded to use workspace dependencies, I think hernando started a PR for that somewhere. |
I agree this should be the default behaviour, just wanted to add it for now as unstable given it's not proven yet how well it works. I'm unsure on the part about cyclic dependencies and how could this small change affect the crate publishing process? On another note, I believe the CI is failing but due to unrelated things. |
I'm fine with bringing it straight in, if it is well tested. i.e. works to compile all existing
I believe @SkymanOne was referring to the issues we experienced when migrating
Should be fixed once #1352 is merged. Just merge in |
@ascjones I have created a PR in ink-examples following your recommendation, showing how it works. use-ink/ink-examples#44 |
User @faculerena, please sign the CLA here. |
`toml::Value` does not implement Eq or hash
Pull request comments addressed. |
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.
LGTM thanks!
We (@faculerena, @tenuki) closed this PR due to some problems with checks and opened PR paritytech/ink-examples#52 as a replacement. |
Summary
Closes #1357
ink
orpallet-contracts
?Adds unstable flag
workspace-mode
that enables the usage of cargo-contracts inside a workspace package.Description
Initially, this PR aimed to address use-ink/ink#1919, but it also fixes the issue when running
cargo-contract
.This PR fixes the issue by changing in the manifest all workspace-inherited dependencies to normal dependencies. This is done by grabbing the workspace definition, and merging the dependencies with the ones defined in the crate.
For example if the workspace
Cargo.toml
is:And the contract
Cargo.toml
is:Then when building,
cargo-contract
will use aCargo.toml
with merged dependencies:Checklist before requesting a review
CHANGELOG.md