Update build scripts to handle new version format

This commit is contained in:
Veronica Berglyd Olsen
2024-01-23 19:57:27 +01:00
parent b33a3b480d
commit 415f1a1d1a
3 changed files with 22 additions and 23 deletions
+19 -20
View File
@@ -73,9 +73,16 @@ def extractVersion(beQuiet=False):
return numVers, hexVers, relDate return numVers, hexVers, relDate
def compactVersion(version): def stripVersion(version: str) -> str:
"""Make the version number more compact.""" """Strip the pre-release part from a version number."""
return version.replace("-alpha", "a").replace("-beta", "b").replace("-rc", "rc") if "a" in version:
return version.partition("a")[0]
elif "b" in version:
return version.partition("b")[0]
elif "rc" in version:
return version.partition("rc")[0]
else:
return version
def sysCall(callArgs, cwd=None): def sysCall(callArgs, cwd=None):
@@ -392,16 +399,16 @@ def buildQtI18nTS(sysArgs):
## ##
# Generage MacOS PList # Generate MacOS PList
## ##
def genMacOSPlist(): def genMacOSPlist():
"""Set necessary values for .plist file for MacOS build.""" """Set necessary values for .plist file for MacOS build."""
outDir = "setup/macos" outDir = "setup/macos"
numVers = extractVersion()[0].partition("-")[0] numVers = stripVersion(extractVersion()[0])
copyrightYear = datetime.datetime.now().year copyrightYear = datetime.datetime.now().year
# These keys are no longer used but are present for compatability # These keys are no longer used but are present for compatibility
pkgVersMaj, pkgVersMin = numVers.split(".")[:2] pkgVersMaj, pkgVersMin = numVers.split(".")[:2]
plistXML = readFile(f"{outDir}/Info.plist.template").format( plistXML = readFile(f"{outDir}/Info.plist.template").format(
@@ -598,8 +605,7 @@ def makeMinimalPackage(targetOS):
# Build Minimal Zip # Build Minimal Zip
# ================= # =================
numVers, _, _ = extractVersion() pkgVers, _, _ = extractVersion()
pkgVers = compactVersion(numVers)
zipFile = f"novelwriter-{pkgVers}-minimal{targName}.zip" zipFile = f"novelwriter-{pkgVers}-minimal{targName}.zip"
outFile = os.path.join(bldDir, zipFile) outFile = os.path.join(bldDir, zipFile)
if os.path.isfile(outFile): if os.path.isfile(outFile):
@@ -691,8 +697,7 @@ def makeDebianPackage(signKey=None, sourceBuild=False, distName="unstable", buil
# Version Info # Version Info
# ============ # ============
numVers, hexVers, relDate = extractVersion() pkgVers, hexVers, relDate = extractVersion()
pkgVers = compactVersion(numVers)
relDate = datetime.datetime.strptime(relDate, "%Y-%m-%d") relDate = datetime.datetime.strptime(relDate, "%Y-%m-%d")
pkgDate = email.utils.format_datetime(relDate.replace(hour=12, tzinfo=None)) pkgDate = email.utils.format_datetime(relDate.replace(hour=12, tzinfo=None))
print("") print("")
@@ -968,8 +973,7 @@ def makeAppImage(sysArgs):
# Version Info # Version Info
# ============ # ============
numVers, _, relDate = extractVersion() pkgVers, _, relDate = extractVersion()
pkgVers = compactVersion(numVers)
relDate = datetime.datetime.strptime(relDate, "%Y-%m-%d") relDate = datetime.datetime.strptime(relDate, "%Y-%m-%d")
print("") print("")
@@ -1856,7 +1860,7 @@ if __name__ == "__main__":
"", "",
" help Print the help message.", " help Print the help message.",
" pip Install all package dependencies for novelWriter using pip.", " pip Install all package dependencies for novelWriter using pip.",
" version Print the novelWriter version. Add -c for short version.", " version Print the novelWriter version.",
" build-clean Will attempt to delete 'build' and 'dist' folders.", " build-clean Will attempt to delete 'build' and 'dist' folders.",
"", "",
"Additional Builds:", "Additional Builds:",
@@ -1912,12 +1916,7 @@ if __name__ == "__main__":
if "version" in sys.argv: if "version" in sys.argv:
sys.argv.remove("version") sys.argv.remove("version")
numVers, _, _ = extractVersion(beQuiet=True) print(extractVersion(beQuiet=True)[0], end=None)
if "-c" in sys.argv:
sys.argv.remove("-c")
print(compactVersion(numVers), end=None)
else:
print(numVers, end=None)
sys.exit(0) sys.exit(0)
if "pip" in sys.argv: if "pip" in sys.argv:
@@ -1996,7 +1995,7 @@ if __name__ == "__main__":
if "build-appimage" in sys.argv: if "build-appimage" in sys.argv:
sys.argv.remove("build-appimage") sys.argv.remove("build-appimage")
if hostOS == OS_LINUX: if hostOS == OS_LINUX:
sys.argv = makeAppImage(sys.argv) # Build appimage and prune its args sys.argv = makeAppImage(sys.argv)
else: else:
print("ERROR: Command 'build-appimage' can only be used on Linux") print("ERROR: Command 'build-appimage' can only be used on Linux")
sys.exit(1) sys.exit(1)
+2 -2
View File
@@ -1,6 +1,6 @@
<?xml version='1.0' encoding='utf-8'?> <?xml version='1.0' encoding='utf-8'?>
<novelWriterXML appVersion="2.3-alpha1" hexVersion="0x020300a1" fileVersion="1.5" fileRevision="1" timeStamp="2023-12-17 17:48:43"> <novelWriterXML appVersion="2.3a1" hexVersion="0x020300a1" fileVersion="1.5" fileRevision="1" timeStamp="2024-01-23 13:06:53">
<project id="e2be99af-f9bf-4403-857a-c3d1ac25abea" saveCount="1617" autoCount="255" editTime="81245"> <project id="e2be99af-f9bf-4403-857a-c3d1ac25abea" saveCount="1619" autoCount="255" editTime="81251">
<name>Sample Project</name> <name>Sample Project</name>
<title>Sample Project</title> <title>Sample Project</title>
<author>Jane Smith</author> <author>Jane Smith</author>
+1 -1
View File
@@ -24,7 +24,7 @@ echo "Build Dir: $BUILD_DIR"
pushd "$SRC_DIR" || exit 1 pushd "$SRC_DIR" || exit 1
VERSION="$(python3 pkgutils.py version -c)" VERSION="$(python3 pkgutils.py version)"
echo "novelWriter Version: $VERSION" echo "novelWriter Version: $VERSION"
# --- Prepare Files ----------------------------------------------------------------------------- # # --- Prepare Files ----------------------------------------------------------------------------- #