/* Galvanic Corrosion - Rec Room custom server for communities. Copyright (C) 2025 @zombieb (Discord / proxnet Gitea) This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see . */ interface DenoProj { version: string } try { const file = JSON.parse(Deno.readTextFileSync('./deno.json').toString()) as DenoProj; const devVer = Deno.readTextFileSync('./ver.ts'); const commitHash = new Deno.Command("git", { args: ["rev-parse", "--short=12", "HEAD"] }).outputSync(); const newVerString = `${file.version}-${new TextDecoder().decode(commitHash.stdout).trim()}`; if (file.version) { await Deno.writeTextFile('./ver.ts.bak', devVer); await Deno.writeTextFile('./ver.ts', devVer.replace('development', newVerString)); console.info(`Built version information: Commit ${newVerString}`); } } catch (err) { console.error(`Cannot build version information: ${err}`); Deno.exit(1); }