Hi all, Wanted to share a couple of my thoughts about changes that could be good for Cayenne. And the first milestone release of Cayenne 5.0 could be a perfect target for these changes.
1. Get rid of the `server` part in the names everywhere, starting by renaming our core dependency from `cayenne-server` to just `cayenne`. As we already removed the `client` counterpart, `server` just doesn't make sense anymore. 2. Change of the versioning schema we use for the development cycle. A short version of the proposal: drop BETA versions, keep the version of snapshot build always the same, and slightly change format to articulate what is the actual version. Format would look like `MAJOR.MINOR-QUALIFIER`. Where the qualifier is one of `SNAPSHOT`, `M` for the milestone or `RC` for the release candidate. Example for the 5.0: - snapshot always stays as 5.0-SNAPSHOT - milestones releases are 5.0-M1, 5.0-M2 etc. - release candidates are 5.0-RC1, 5.0-RC2, etc. - and final release is just 5.0 And here's a reason for that change. It solves two minor problems with the current schema. The first one is that all systems think that `B` goes before `M`, so our beta versions always look older than milestones. We are not that strict about what is beta nor are we enforcing any rules, so there should be no problems with that. The second one is that projects using SNAPSHOT versions should update dependency every time we make a dev release. Again not a big change and should not affect anything really, as there shouldn't be many projects brave enough to just use SNAPSHOT. Note this change does not affect overall versioning, e.g. patch versions like 5.0.1 or global updates like 5.1. -- Best regards, Nikita Timofeev