-
Notifications
You must be signed in to change notification settings - Fork 53
Description
There should be some way of differentiating between development and release builds to avoid confusion on the user side. Furthermore, this distinction would remove the possibility of running into internal incompatibilities when trying to use release builds with development builds (see #804).
Previously, we were using the suffix .DEVEL for this purpose. I would suggest to just use .DEV, but that is a matter of taste. (It would be even nicer to add the commit hash to guarantee compatibility between development builds, but that would require git functionality that may not be present when building, so I am not sure whether this is doable.)
Furthermore, the previous solution (before the move to semantic versioning) was to always have the ".DEVEL" qualifier committed in the git repo, only remove it temporarily for releases, and then add it back (and increase the current release number).
A better solution (in my opinion) would be to patch the version as part of the build process. This could by done by adding a .DEV modifier to the version by default unless a specific argument is provided specifying that the process should create a release build.
This would lead to the build always creating development builds unless specified otherwise and would remove the hassle of having to manage "DEV" status in the git repo.
I know that this is possible for IntelliJ (but would require moving the process of setting the version number from the plugin.xml to the build.gradle file).
@m273d15 Do you know whether something like this also possible for building Eclipse plugins?
Also, for the Saros Server, we would have to patch SarosServer.java as it contains the version number.