Files
Eligio Mariño 008cce50a1 feat: pin Windows toolchain versions in config/version.json (#456)
- Extends the manifest-first discipline (already used for
Flutter/Android) to the Windows toolchain. `config/version.json` now
carries `windows.git`, `windows.vsBuildTools.cmakeProject`,
`windows.vsBuildTools.windows11Sdk.build`, and
`windows.vsBuildTools.vcTools`; `config/schema.cue` validates them via
new `#SemverQuad` and `#WindowsToolchain` definitions.

---------

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-authored-by: verified-commit[bot] <180343340+verified-commit[bot]@users.noreply.github.com>
2026-05-22 20:07:24 +02:00

57 lines
838 B
CUE

import "strings"
import "list"
#PlatformVersion: {
version!: int
}
#SemverMinor: {
version!: =~ "^\\d+.\\d+$"
}
#SemverPatch: {
version!: =~ "^\\d+.\\d+.\\d+$"
}
#SemverQuad: {
version!: =~ "^\\d+\\.\\d+\\.\\d+\\.\\d+$"
}
#WindowsToolchain: {
git: #SemverPatch
vsBuildTools: {
cmakeProject: #SemverQuad
windows11Sdk: {
build!: int
}
vcTools: #SemverQuad
}
}
#FlutterVersion: {
flutter: {
channel!: "stable"
commit!: strings.MaxRunes(40)
#SemverPatch
}
}
#SemverVersion: #SemverMinor | #SemverPatch
#Version: {
#FlutterVersion
android: {
platforms!: [...#PlatformVersion] & list.MinItems(1) & list.UniqueItems
gradle!: #SemverVersion
buildTools!: #SemverPatch
cmdlineTools!: #SemverMinor
ndk!: #SemverPatch
cmake!: #SemverPatch
}
fastlane!: #SemverPatch
windows!: #WindowsToolchain
}