The new versioning system is based on the versioning system used by the
GNOME Foundation for the GNOME desktop.
We are dropping the "major version" as defined by SemVer and move to a
version number with a most and least significant number.
The most significant number must be incremented, if there are new
features or significant changes since last major release.
Otherwise, the least significant number must be incremented, if there
are only minor changes since the last release. New features or
significant changes mustn't be introduced by a bump of the least
significant number.
If a minor change would introduce small user-facing changes (like a
message-box or slight UI changes), it could still be classified as a
minor change.
At the end of the day, a human shall decide, if a change is minor or
significant, as there is no clear line that would separate a "minor" and
a "significant" change in a GUI-application.
Definitions:
feature: New user-facing functionality
significant change: Something that changes user-facing behavior
minor change: Something that fixes unexpected behavior
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
Two new build options are added:
`MAC_SPARKLE_PUB_KEY`: the public key used to verify the signatures of the appcast
`MAC_SPARKLE_APPCAST_URL`: the URL where the `appcast.xml` is located
If the updater should be disabled on macOS, set either of these to an empty string.
This adds a check for a GIT_REFSPEC value of "GITDIR-NOTFOUND" and sets
the VERSION_CHANNEL to stable in that case. Without this change,
"GITDIR-N" is appended to the version string when building from a source
archive instead of a git checkout.
MSA Client ID has been moved to CMakeLists.txt, and defaults to the
Client ID for the PolyMC application.
Removed secrets/notsecrets library, replace with (temporary?)
program_info subdirectory.
Here lies yet another early-stage move to debrand the MultiMC codebase,
as well as reducing the burden of updating strings across the codebase
for a future MultiMC6.
Support URLs (bug tracker, Discord guild, subreddit) are now specified
as cache variables in cmake, and the buttons are not shown if no value
is set for them.
This is an early-stage move towards debranding the MultiMC codebase,
and will (hopefully) alleviate support requests coming to us from
illicit forks.