Hi, the recent thread on the public api made me question how do we version different releases, based on what kind of changes to expect from them.
https://jspwiki-wiki.apache.org/Wiki.jsp?page=VersioningProposal contains the current proposal for JSPWiki versioning. It states: """ As of JSPWiki entering Apache, we'll adopt the following versioning system: major.minor.revision[-identifier-build] Where * major = Major release, which breaks compatibility (binary or source) with previous versions. * minor = Update with new major functionality which maybe breaks downwards compatibility. * revision = Bug fixes or minor functionality updates. Forward and backward compatibility within the same major.minor revision is retained. [...] """ I'd like to rephrase the first two points to: * major = Major release, which breaks compatibility (binary or source) with previous versions on the public API. * minor = Update with new major functionality, which breaks compatibility (binary or source) with previous versions on any place except the public API. Public API would still have to be defined (=don't want to tie this thread to the public api one): - either what is ongoing on the o.a.w.api package - or the classes / interfaces needed to develop custom plugins / filters / page providers - or whatever we see fit The reasoning behind this change is that current wording makes the difference between major and minor (a bit) blurry: any backward incompatible change could fit either major or minor versioning. The suggested rewording pursues to clearly differentiate when to increase each number: * major: *All* custom plugins / filters / page providers will need some work to run on the new version, be it reimporting a class or completely rewritting them. * minor: there are backwards incompatible changes, which *may* be translated on *some* plugins / filters / page providers, but generally speaking they should work, or at least they'll be loaded by JSPWiki. * revision: *All* custom plugins / filters / page providers will continue to work at this level. thoughts? makes sense? is it clear as it is, and doesn't need further editing? thanks in advance, juan pablo