-
Notifications
You must be signed in to change notification settings - Fork 3.7k
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
feat: Go Workspace #11453
feat: Go Workspace #11453
Conversation
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.
this is awesome, I need to read up on how this works exactly. im slightly confused.
Thank you for the PR. ill try to do a better review later
I was slightly confused, as well :) |
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.
🚀
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.
left more questions, I still haven't read how workspaces work, so the questions are curiosity based
Hey, so the sync command is broken again due to imports of gogo/protobuf v1.3.3 which doesn’t actually exist. as for some of your other questions I am not certain but I figure what I’ll do is get this into a working state locally and push. Seems we may need the replace for sdk in cosmovisor, which is less than ideal. probably just another driver to pull gogo out of the stack where we can |
hi, I reworked this today. I now have an answer to your question about replaces: As soon as there's a release of the cosmos-sdk that doesn't refrence:
-- a version of gogo/protobuf that does not exist upstream, then the modules in the sdk can refer to those "other cosmos SDK's" without trouble. Cosmovisor seems to be the last one that is extremely picky about this. |
basically cleanly making this PR without those replaces depends on #11414 Would it be okay to:
the specific issue is that gogo/protobuf v1.3.3 does not exist -- everything must reference gogo/protobuf v1.3.2 (even a replace in go.work doesn't work, I am not sure why) The fastest and best path to ship this may be:
Update 6/10/2022This branch has working go workspaces. That said, the go workspaces have killed CI. |
go 1.18 (installs that are grouped must have same version so there are more run commands)
FYI, I was trying something similar in Umee, but got into the following blocker and decided to not continue: umee-network/umee#1056 (comment) |
## Description This helps to prepare for #11453 by removing the ics23 dependency on gogo/protobuf v1.3.3 which does not exist. It will have an outsized quality of life impact. For reference the way to do this is: * keep the replace as-is * `go get github.com/gogo/[email protected]` ### Affects * cosmovisor * ics23 * sdk ### Prerequisite to: * #11453 (or maybe it helps it happen? I think after this we won't get those troublesome 1.3.3 imports) Maybe not exactly a prerequisite, more like something that will reduce the review scope of #11453 and also eliminate this problem for downstream users of the sdk. To clarify the purpose here, the command go work sink, does not work because the upstream version 1.3.3 does not exist in gogo/protobuf --- ### Author Checklist *All items are required. Please add a note to the item if the item is not applicable and please add links to any relevant follow up issues.* I have... - [x] included the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title - [ ] added `!` to the type prefix if API or client breaking change - [x] targeted the correct branch (see [PR Targeting](https://github.com/cosmos/cosmos-sdk/blob/main/CONTRIBUTING.md#pr-targeting)) - [ ] provided a link to the relevant issue or specification - [ ] followed the guidelines for [building modules](https://github.com/cosmos/cosmos-sdk/blob/main/docs/building-modules) - [ ] included the necessary unit and integration [tests](https://github.com/cosmos/cosmos-sdk/blob/main/CONTRIBUTING.md#testing) - [x] added a changelog entry to `CHANGELOG.md` - [ ] included comments for [documenting Go code](https://blog.golang.org/godoc) - [ ] updated the relevant documentation or specification - [ ] reviewed "Files changed" and left comments if necessary - [x] confirmed all CI checks have passed ### Reviewers Checklist *All items are required. Please add a note if the item is not applicable and please add your handle next to the items reviewed if you only reviewed selected items.* I have... - [ ] confirmed the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title - [ ] confirmed `!` in the type prefix if API or client breaking change - [ ] confirmed all author checklist items have been addressed - [ ] reviewed state machine logic - [ ] reviewed API design and naming - [ ] reviewed documentation is accurate - [ ] reviewed tests and test coverage - [ ] manually tested (if applicable)
@@ -5,8 +5,8 @@ import ( | |||
fmt "fmt" | |||
_ "github.com/cosmos/cosmos-proto" | |||
runtime "github.com/cosmos/cosmos-proto/runtime" | |||
v1beta11 "github.com/cosmos/cosmos-sdk/api/cosmos/base/query/v1beta1" | |||
v1beta1 "github.com/cosmos/cosmos-sdk/api/cosmos/base/v1beta1" | |||
v1beta11 "cosmossdk.io/api/cosmos/base/query/v1beta1" |
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.
no clue why this is happening.
did we make such a version?
I cannot find any reference to this, anywhere else in the code.
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.
probably there is a name conflict
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.
wonder why the changes would cause this....
I am going to wait to resolve conflicts here until #12645 is merged. That will make landing this PR much easier. |
Closing to reopen, now that some of the blockers are out of the way in main. It doesn't make sense to review a 94 commit behemoth like this one imo. |
Description
Closes: #11450
This PR adds go workspaces, and bumps the version of go in all of the cosmos-sdk modules to v1.18.
It also stops using the diff action because that breaks ci / workspaces in ci.
Author Checklist
All items are required. Please add a note to the item if the item is not applicable and
please add links to any relevant follow up issues.
I have...
!
to the type prefix if API or client breaking changeCHANGELOG.md
Reviewers Checklist
All items are required. Please add a note if the item is not applicable and please add
your handle next to the items reviewed if you only reviewed selected items.
I have...
!
in the type prefix if API or client breaking change