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

More usual version numbers #123

Closed
cbeleites opened this issue May 13, 2020 · 8 comments
Closed

More usual version numbers #123

cbeleites opened this issue May 13, 2020 · 8 comments
Assignees
Labels
Type: proposal 💡 Proposed ideas for all to consider.
Milestone

Comments

@cbeleites
Copy link
Owner

I propose to move to the more "usual" version number system of having patch numbers in the 3rd place rather than the date.

This has advantages:

  • We get one step further to not (or almost never) needing make, i.e. being able to use devtools and RStudio build functionality.
  • The current version numbers also trigger a warning on R CMD check --as-cran. This means that on submission to CRAN I always have to add an explanation.

I suggest that hyperSpec version 1.0 is a good point to do that.

@cbeleites cbeleites added this to the Version 1.0 milestone May 13, 2020
@cbeleites cbeleites added the Type: proposal 💡 Proposed ideas for all to consider. label May 13, 2020
@bryanhanson
Copy link
Collaborator

I concur with this. I think there are some other things we could do with the Makefile as well, but I'll put those in another issue in the near future. Claudia, should we go ahead and implement x.y.z per semantic versioning now? We could work at 0.99.1 and increment .z for the time being. I can do this if you like, once the all the demons are out of the build system.

@cbeleites
Copy link
Owner Author

The difficulty with that is that 0.99.1 < 0.99.20200513
However, with the usual versioning, the version bumps would be manual. And that transition could be done immediately by removing the Makefile target to update the date in the version number while keeping the date system until we step to 1.0.

@bryanhanson
Copy link
Collaborator

bryanhanson commented May 13, 2020 via email

@cbeleites
Copy link
Owner Author

CRAN checks include that z needs to be larger than the previous one if x or y did not increase. We can do that though.

@ximeg
Copy link
Collaborator

ximeg commented May 13, 2020

The difficulty with that is that 0.99.1 < 0.99.20200513

@cbeleites Why don't we make 0.100.1, which is bigger than 0.99.whatever?

Here is a link to semver.org for reference.

@bryanhanson
Copy link
Collaborator

So what is the desired behavior here? When do you (any of you) want to increment .z? In my own work I increment every time I build, that way there is always a unique version. I think that's consistent with the principles of semantic versioning. But it does create DESCRIPTION files that constantly change date & version. In a group setting we can just live with that, or try to remember not to commit it, or change .z according to... what scheme?

@GegznaV
Copy link
Collaborator

GegznaV commented May 21, 2020

Why don't we make 0.100.1, which is bigger than 0.99.whatever?

👍

@ximeg
Copy link
Collaborator

ximeg commented May 24, 2020

So what is the desired behavior here? When do you (any of you) want to increment .z? In my own work I increment every time I build, that way there is always a unique version. I think that's consistent with the principles of semantic versioning. But it does create DESCRIPTION files that constantly change date & version. In a group setting we can just live with that, or try to remember not to commit it, or change .z according to... what scheme?

In my opinion, it makes sense to assign version numbers only to the releases (i.e. commits in the master) branch. As soon as we have a stable state (working builds, no errors, no warnings, no notes) that can go to CRAN, we should start to release (merge to master) on a regular basis.

Once we start the release, we should update the version number:

  • No significant changes or only small bugfixes? -> increment .z
  • New functionality? New vignettes? -> increment .y
  • Changed behavior? New package structure? Breaking things? -> increment x

@ximeg ximeg closed this as completed May 25, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: proposal 💡 Proposed ideas for all to consider.
Projects
None yet
Development

No branches or pull requests

4 participants