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

[RFC] leverage semver2 gem to manage versions #113

Open
majormoses opened this issue May 10, 2018 · 2 comments
Open

[RFC] leverage semver2 gem to manage versions #113

majormoses opened this issue May 10, 2018 · 2 comments

Comments

@majormoses
Copy link
Member

majormoses commented May 10, 2018

Rather than manually managing the version in files I think we should use semver2 gem there are several benefits to this:

  • programmatic bumping of versions
  • easier to potentially update changelog (insert diff links and such)

I have used it on several other projects and it has worked fairly nicely. I don't think it would be too much effort to start leveraging the biggest pain is automating the change across ~200 repos.

But I think it would look something like this:

  • in gemspec require 'semver'
  • in gemspec s.add_development_dependency 'semver2', '~> 3.4'
  • in gemspec s.version = SemVer.find.format '%M.%m.%p' (might want to include special/meta/pre?)
  • for migration we would want to a semver init, read in the current version from the class, and write it back out to the .semver file. This can be easily done programmatically.
@majormoses majormoses self-assigned this May 10, 2018
@majormoses majormoses changed the title [RFC] switch to semver2 gem to manage versions [RFC] leverage semver2 gem to manage versions May 10, 2018
@jspaleta
Copy link
Contributor

hey @majormoses,
That sounds interesting. Is there a documented policy concerning the intended semantic versioning that is happening manually now?

@majormoses
Copy link
Member Author

Currently we have a document describing how we version

Regarding the current process at least for plugins (extensions have not been updated yet):

  • update the version file manually
  • update 2 locations in the changelog

Here is a random example

My thought is if we have a programmatic interface to updating the version file we can apply that to the changelog as well via a rake task (or similar) so doing a version bump for a release can be an automated process as sometimes I forget to update all 3 locations.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants