version policy of EUPHORIA
- Posted by SDPringle Jun 24, 2014
- 1414 views
I thought the way we did things was.
X.Y.Z
Z - patchlevel release. bugfixes and new routines in stdlib.
Y - minor release. new language features, keywords, syntax, etc.
X - major release, backwards incompatibility.
So this would have to be pushed back to 5.0.0 if we follow this.
This is exactly the way we have been doing things. When it comes to deciding what the required version of a library you are using, you cannot count on others to behave so well. Another dev group can decide to change the meaning of alpha channel from 1 means full transparency to 1 means full opacity in a patch version. This kind of thing happened in a game library I tried. I believe we should look to this example, as a guide of what not to do.
Patch level changes mean you may have to put namespaces on symbols that conflict with new library routines. Minor release changes mean you may have rename a symbol because it may conflict with a builtin. Major release means you will have to overhaul the code to get it up to the newest version.
Shawn