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: bump version #216

Merged
merged 2 commits into from
Nov 20, 2023
Merged

Conversation

enitrat
Copy link
Collaborator

@enitrat enitrat commented Nov 15, 2023

Bumped the version of the package following breaking changes in the API brought by #209

@milancermak
Copy link
Contributor

IMO only the storage package version should be bumped.

@enitrat
Copy link
Collaborator Author

enitrat commented Nov 15, 2023

ah, good to know! Indeed it makes sense. Should the virtual workspace have no version at all?

@milancermak
Copy link
Contributor

Hmm, I always thought it has to, but it would make sense not to have it there 🤔 Summoning @mkaput to teach us the way 🙏

@mkaput
Copy link
Contributor

mkaput commented Nov 16, 2023

Frankly? It's actually entirely up to maintainers 😅

We're identical to Rust in this arena, so there are three possibilities, and I'll use Rust projects as examples:

  1. Each package has its own version that can be unsynchronized (that's what Tokio and Gitoxide do).
  2. You define workspace.package.version and then share this version with all workspace members (that's what's happening in Cairo repository).
  3. You mix both approaches (that's for example what Scarb repo itself does).

IMO, what path you choose depends on the level of coupling of workspace members, and what release strategy you have. In the case of Alexandria, I think the level of coupling is low enough that @milancermak's suggestion makes sense.

There is one drawback to this desynchronized story, though: releases are harder because you can't just for-each all members and publish in a single dumb loop. Furthermore, you have to manage a bit more Git tags, etc. I cannot find and example r/n, but I know some projects just release everything at once (for example, using a year-month-day scheme instead of semver) just because of this. This means that there may be releases with no changes, though!

@0xLucqs 0xLucqs merged commit e3af7ed into keep-starknet-strange:main Nov 20, 2023
3 checks passed
@github-actions github-actions bot locked and limited conversation to collaborators Nov 22, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants