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

Improve crate versioning #2365

Closed
bkchr opened this issue Nov 16, 2023 · 2 comments
Closed

Improve crate versioning #2365

bkchr opened this issue Nov 16, 2023 · 2 comments

Comments

@bkchr
Copy link
Member

bkchr commented Nov 16, 2023

We are currently bumping the major/minor version every time we are doing a release. This is a quite "heavy" operation and also means that crates are never compatible with each other even if they didn't changed. Another issue is that we don't have the versions in the master branch and thus, it is quite hard to for example patch a branch to some external repo that is using the crate releases. The proper way to solve this is that we start versioning the Cargo.toml files manually in the pull requests. Then on each release we only pick the crates which version changed and release them using this version. To make this job more easier, we need the following improvements to the repository:

  • Introduce a CI check that helps in identifying SemVer breaking changes. Luckily there exists already a github action for this. While the tool is not perfect, it may helps to detect certain kind of SemVer breaking changes. The tool should be configured to always run against the latest release branch.
  • We should move all the internal crates to workspace.dependencies and then use them from there in all our crates. This should reduce the merge conflicts to a single file when it comes to version changes.
  • Introduce another CI check that ensures that we don't bump the any of the versions multiple times in between two releases. For example there are two pull requests that would bump the patch version of one crate, the CI job should reject the second bump. This is not that important, but it would be nice to prevent these double bumps most of the time if possible.
@bkchr
Copy link
Member Author

bkchr commented Apr 2, 2024

@ggwpez this is probably now a duplicate of one of the issues you created? If yes, please close.

@ggwpez
Copy link
Member

ggwpez commented Apr 2, 2024

Yes.

@ggwpez ggwpez closed this as completed Apr 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants