On Fri, Jan 11, 2019 at 8:11 AM carl harris <[email protected]> wrote:

> Just a thought, but perhaps we should start by considering how the
> evolution of the product should be reflected in the versioning.
>

Agreed.


>
> Are we committed to semantic versioning? For API, semantic versioning
> generally has very specific set of conventions. However, in my experience,
> for a software product, the relationship between features and version
> numbers is much less clear cut. What kinds of new features should
> constitute a major or minor version increment?
>

I don't know if I would say "committed" to it, but we decided back
post-0.9.14 and pre-1.0.0 that we would move forward with semantic
versioning, where API-related changes are major versions (1.0.0 -> 2.0.0),
feature changes are minor versions (1.0.0 -> 1.1.0), and then bug fixes are
release versions (1.0.0 -> 1.0.1).  I don't have the exact link at my
fingertips, but the proposed/accepted proposal at the time was:
- Changes which impact the overall API and thus change or break
compatibility between components within the product would be major version
changes.  This would be most changes to guacamole-ext and guacamole-common
components.
- Changes which introduce new features or significant code changes to
extensions, but which do not break compatibility, would be minor version
changes.
- Changes which are very simple, bug fixes, etc., would be release versions.

I think I have accurately represented it - I'm having trouble digging up
the link.


>
> Many products have skirted this question by dropping the semantic
> versioning in favor of some sort of version scheme based on a time-boxed
> release cycle. Would something like that be more appropriate here? What
> would that mean with respect to versioning for the API that Guacamole
> exposes for extensions and such?
>

I'm not opposed to such a versioning scheme.  My only question would be how
to deal with the API-level changes that you mentioned before, and that
we've currently identified for the "major release" changes?  Is there a way
that these sort of time-boxed releases handle that in the versioning?


>
> Again, just trying to stimulate some discussion here.
>
>
Definitely appreciated!

-Nick

Reply via email to