Use bump package instead of custom script

This commit is contained in:
Nicola Spadari
2024-07-02 12:56:09 +02:00
parent 688ae42198
commit fd13490a71
3 changed files with 15 additions and 47 deletions

13
bump.config.ts Normal file
View File

@@ -0,0 +1,13 @@
import { defineConfig } from "bumpp";
export default defineConfig({
release: "patch",
commit: false,
tag: false,
push: false,
files: [
"package.json",
"src-tauri/tauri.conf.json",
"src-tauri/Cargo.toml"
]
});

View File

@@ -16,9 +16,7 @@
"preinstall": "npx only-allow pnpm",
"postinstall": "nuxt prepare",
"lint": "eslint . --fix",
"bump:patch": "tsx scripts/bump.ts patch && eslint package.json src-tauri/tauri.conf.json src-tauri/Cargo.toml --fix",
"bump:minor": "tsx scripts/bump.ts minor && eslint package.json src-tauri/tauri.conf.json src-tauri/Cargo.toml --fix",
"bump:major": "tsx scripts/bump.ts major && eslint package.json src-tauri/tauri.conf.json src-tauri/Cargo.toml --fix",
"bump": "bumpp",
"tauri": "tauri",
"tauri:dev": "tauri dev",
"tauri:build": "tauri build",
@@ -40,6 +38,7 @@
"@unocss/nuxt": "^0.61.0",
"@vueuse/core": "^10.11.0",
"@vueuse/nuxt": "^10.11.0",
"bumpp": "^9.4.1",
"eslint": "8.57.0",
"internal-ip": "^8.0.0",
"nuxt": "^3.12.2",

View File

@@ -1,44 +0,0 @@
import { readFileSync, writeFileSync } from "node:fs";
import { parse, stringify } from "@iarna/toml";
type BumpMethod = "patch" | "minor" | "major";
const bumpVersion = (currentVersion: string) => {
const method = <BumpMethod>process.argv[2] || "patch";
const parts = currentVersion.split(".");
let major = Number.parseInt(parts[0], 10);
let minor = Number.parseInt(parts[1], 10);
let patch = Number.parseInt(parts[2], 10);
if (method === "patch") {
patch += 1;
} else if (method === "minor") {
minor += 1;
patch = 0;
} else if (method === "major") {
major += 1;
minor = 0;
patch = 0;
}
const newVersion = `${major}.${minor}.${patch}`;
console.log(`Version bumped to ${newVersion}`);
return newVersion;
};
const packageJson = JSON.parse(readFileSync("./package.json", "utf-8"));
const tauriConfig = JSON.parse(readFileSync("./src-tauri/tauri.conf.json", "utf-8"));
const tauriToml = parse(readFileSync("./src-tauri/Cargo.toml", "utf-8"));
packageJson.version = bumpVersion(packageJson.version);
tauriConfig.version = bumpVersion(tauriConfig.version);
// @ts-expect-error No interface for parsed TOML
tauriToml.package.version = bumpVersion(tauriToml.package.version);
writeFileSync("./package.json", JSON.stringify(packageJson, null, "\t"));
writeFileSync("./src-tauri/tauri.conf.json", JSON.stringify(tauriConfig, null, "\t"));
writeFileSync("./src-tauri/Cargo.toml", stringify(tauriToml));