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

Github releases not in sync with registered versions #351

Closed
CarloLucibello opened this issue Jan 16, 2023 · 8 comments
Closed

Github releases not in sync with registered versions #351

CarloLucibello opened this issue Jan 16, 2023 · 8 comments

Comments

@CarloLucibello
Copy link
Contributor

CarloLucibello commented Jan 16, 2023

Last registered version on the Registries is v0.12.0 while the last github release in this repo is v0.11.0.

As a side note, it would be nice to have a new release whenever a PR is merged since changes are low frequency

@pdeffebach
Copy link
Collaborator

Yes, sorry about that. I need to do more releases.

I'm sorry about the github releases not being in sync. I'll look for a way to sync them up.

@pdeffebach
Copy link
Collaborator

@CarloLucibello

Thinking about this more, I recalled that the reason we aren't making frequent release is that we are still pre-1.0. This means every release is technically breaking according to SemVer, and making lots of releases will cause compat issues.

The solution, I think, is to power ahead to 1.0 (will compile a roadmap soon) so we can do a more reasonable and faster release schedule.

@bkamins
Copy link
Member

bkamins commented Jan 18, 2023

@pdeffebach - I think that for DataFramesMeta.jl doing more frequent releases is not a problem because:

  1. it is a small package (so precompilation is fast)
  2. it is mostly used interactively (so it is not often used as a dependency in another packages, but rather in end-user code, where users mostly install latest version anyway)

(btw. it is OK to do patch releases if needed as e.g. to fix the broadcasting bug you fixed)

@CarloLucibello
Copy link
Contributor Author

Bumping the y in v0.x.y is totally fine for both bug fixes and new features. Reasonable compat bounds, ie. in the form DataFramesMeta = "0.x", won't be affected. Don't be afraid of releasing often, if people don't want to be bothered with frequent updates because of precompilation time they can just avoid updating!
Some packages I know like https://github.com/JuliaDiff/ChainRules.jl go to the extreme of requiring that each pR bumps the version and have a github action checking that.

@CarloLucibello
Copy link
Contributor Author

Releases are in sync now.

@CarloLucibello
Copy link
Contributor Author

Out of curiosity, which was the breaking change that lead to v0.13 being tagged instead of v0.12.1?

@pdeffebach
Copy link
Collaborator

We added a new feature, @distinct, and this merits a minor version bump. Because we are pre-1.0, all these are technically breaking. It's annoying, but won't happen when we get to 1.0.

@CarloLucibello
Copy link
Contributor Author

CarloLucibello commented Jan 24, 2023

my experience with any package in the julia ecosystem is that in pre-1.0 they just update the patch version when adding new features, which avoids unnecessary compact changes in dependents.
The only way by which the addition of a new symbol like @distinct could break someone's code is if the symbol is exported and it is exported also by another package, and if they are both using-imported, using pkgA, pkgB. Again, this is commonly judged as non-breaking.

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

3 participants