feat(client): Version helper + sync-version script; project.godot config/version
- Add scripts/sync-version to sync root /VERSION into client/project.godot - Add Version GDScript helper (reads application/config/version) - Test coverage: 2 tests for Version.string() and footer() - Synced config/version="0.01-alpha" to project.godot Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
18
client/scripts/util/version.gd
Normal file
18
client/scripts/util/version.gd
Normal file
@@ -0,0 +1,18 @@
|
||||
class_name Version
|
||||
extends RefCounted
|
||||
## The client's view of the single source of truth (/VERSION, charter §4). The
|
||||
## value is baked into project.godot's application/config/version by
|
||||
## scripts/sync-version on each bump; read it via ProjectSettings so an exported
|
||||
## build (which has no repo-root /VERSION) still knows its own version.
|
||||
|
||||
const SETTING := "application/config/version"
|
||||
const LAST_RESORT := "0.0.0-dev"
|
||||
|
||||
|
||||
func string() -> String:
|
||||
var v := str(ProjectSettings.get_setting(SETTING, ""))
|
||||
return v if v != "" else LAST_RESORT
|
||||
|
||||
|
||||
func footer() -> String:
|
||||
return "v%s · BUILT IN GODOT 4.7 · © 2026" % string()
|
||||
Reference in New Issue
Block a user