ugml / php-client

ugamela is an open-source clone of the popular browsergame ogame.
https://ugamela.org
GNU Affero General Public License v3.0
14 stars 5 forks source link

Semantic versioning #27

Open Phoscur opened 6 years ago

Phoscur commented 6 years ago
v.X.Y.Z
- X major version
- Y minor version
- Z patch/bugfix version

Since there is existing ugamela sourcecode has had versions up to 0.5. It would make sense to switch to semantic versioning and use version numbers above that, e.g. 1.0.0 or 0.7.0 as soon as possible.

mamen commented 6 years ago

i have already planned to implement this versioning-scheme, but as of now, i never felt the need for it, because there is no official release yet and i don't want to increase the patch/bugfix version with every commit. also, if i want to start from 0.5.1 for example, this project should have the same features implemented as the old project.

for now, it would probably be the best idea to start from 0.0.1 (or somewhere higher) and work our way up as this project was started from scratch.

as another suggestion, we could use the same schema as you proposed, but with the additional buildnuber as a fourth element. this buildnumber could be the current sha256-hash of the latest commit.

Phoscur commented 6 years ago

How about this: Finish milestone 0.1(.0) asap (and get the game to work in any way with a playable subset) and keep bumping the minor version adding features until you reach the ogame classic functionality with 1.0.0. This should reach versions above 0.5. quickly. After 1.0.0 it would make sense to bump the major version instead of just the minor when adding new features.

Let's try to define what could be the smallest playable subset:

0.1.

mamen commented 6 years ago

i think that's the best solution. after the 0.1.0 release, i will rewrite the backlog and make a more realistic roadmap for the versions up to 1.0.0