Skip to content
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

chore: remove go workspace, handle them personal to each developer #1357

Merged
merged 6 commits into from
Nov 11, 2024

Conversation

StarpTech
Copy link
Contributor

@StarpTech StarpTech commented Nov 9, 2024

Motivation and Context

Introduction

Although go workspace has been built to simplify managing multiple modules in a single codebase, we run into couple of very serious issues that we were not able to solve deterministically.

One example: We upgraded a dependency that is not used in any other Go module. This upgrade had the effect that another module dependency was upgraded. Due to this behaviour it was impossible to understand the dependency tree because the change was not reflected in the mod or sum file of any module. Luckily, our CI has catched this before it become a serious issue.

Conclusion

We used workspaces the wrong way. Meanwhile, community has built an opinion around the usage of Go workspaces. Go workspaces should be handled as personal to each developer and therefore not be committed.

This makes sense, if you see them as a more manageable approach to replace directives.

More information https://earthly.dev/blog/go-workspaces/

Checklist

Copy link
Contributor

@df-wg df-wg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In general, lgtm. One additional change I'd like to see would be explicit recommendations in Contributing.md, perhaps, about how it's best to configure a personal workspace to make things smooth, if there is any difference from our current workflow

@StarpTech
Copy link
Contributor Author

@df-wg addressed, thanks.

@StarpTech StarpTech merged commit 5e9f0a8 into main Nov 11, 2024
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants