in tools/release-tools/setVersion.js [220:270]
function calculateVersion(rootVersion) {
let preRelParts = (rootVersion || "0.0.0").split("-");
let postfix = preRelParts.length > 1 && preRelParts[1] ? ("-" + preRelParts[1]) : "";
let parts = preRelParts[0].split(".");
if (parts.length < 3) {
console.error("!!! Package version [" + rootVersion + "] doesn't look correct");
parts = ["0", "0", "0"];
}
let newVersion;
if (newVer) {
newVersion = newVer;
postfix = "";
} else {
if (autoInc == "patch") {
parts[2]++;
} else if (autoInc == "minor") {
parts[1]++;
parts[2] = 0;
} else if (autoInc == "major") {
parts[0]++;
parts[1] = 0;
parts[2] = 0;
} else if (isRelease) {
// Don't update the numbers just remove the preRel
postfix = "";
}
newVersion = parts[0] + "." + parts[1] + "." + parts[2];
}
if (buildNum && !buildNum.startsWith(".") && !buildNum.startsWith("+")) {
buildNum = "." + buildNum;
}
if (buildNum && isRelease) {
preRel = "rc";
}
if (preRel) {
postfix = preRel;
if (!postfix.startsWith("-")) {
postfix = "-" + preRel;
}
}
return newVersion + (postfix || "") + (buildNum || "");
}