riebl/vanetza

Add versioning

Closed this issue · 3 comments

I use Vanetza in my company, and we like it so much. It would help us a lot of having versioned releases of it. We need to use fixed commits or git submodules in order to develop on top of the library and it is not very handy. I would recommend Semantic Versioning 2.0.0.

riebl commented

Why is it better to stick with a particular version (which is in the end only a human-readable tag for a particular commit) instead of tracking commits? Are you concerned about API compatibility?

There are many reasons:

  1. API compatibility
    In the past I developed an app and later the API changed slightly. It produced compilation errors when cloning master from scratch and building the library.

  2. Meaning
    With semver, you give meaning to every release. Example: a patch or a minor version should not change any API. A major version may do it. A complete new feature should be a new major version if it implies API changes, a bug correction should be a patch.

  3. Easy to remember
    A commit is very difficult to remember, a version X.Y.Z is super easy.

There are many other advantages, but in general versioning is a good choice in my point of view.

riebl commented

Finally done with release 24.10 :-)
No semantic versioning but calendar versioning, but should still be useful for your use case.