The roadmap diagrams referenced issue numbers (#1, #8-#13, #43-#55) that no longer exist on Codeberg: the GitHub to Codeberg migration reset this repo's issue tracker, and those numbers were never re-created. scripts/check-roadmap.sh existed only to keep that roadmap in sync with GitHub epic-labeled issues via gh, which can't resolve a Codeberg/Forgejo repo anyway, so the gate had been a silent no-op since the move. Removed the roadmap section, the gate script, its two call sites, and its now-pointless rule doc, and pointed the remaining work at the real, live issues (#4, #5, #6, #7, tracked under epic #8). Also fixed two leftover Mihaela/PureYAML references in docs/RELEASE.md.
2.4 KiB
Release Process
PureYAML versioning is driven by Git tags. The current release is 0.2.0.
0.2.0 Release
- Swift tools version: 6.1
- Products:
PureYAML,PureYAMLJSON - SwiftPM dependencies: none
- Source targets: Swift only, no C targets and no generated parser targets
- Hosted CI matrix: macOS build and test, Linux build and test, Windows build and test, WASM build
- Release notes file:
docs/releases/pureyaml-0-2-0.md
Local Verification
Run the full gate from a clean checkout before tagging:
git status --short --branch
bash scripts/check-all.sh
scripts/check-all.sh expands to:
bash scripts/check-style.sh
bash scripts/check-namespacing.sh
bash scripts/check-forbidden-patterns.sh
bash scripts/check-changelog-touched.sh
swiftformat . --config .swiftformat --lint
swiftlint --config .swiftlint.yml --strict
swift build
swift test
bash scripts/check-linux.sh
bash scripts/check-wasm.sh
The Linux and Windows checks must exercise build and tests. The WASM check must build the library target with the configured Swift Wasm SDK.
Hosted Verification
Push main and wait for the CI workflow to pass:
git push origin main
Watch the run at https://codeberg.org/NodetteHQ/PureYAML/actions. Until the
full platform matrix runs on Codeberg runners, the authoritative platform
gates are the local ones (scripts/check-all.sh covers macOS, the Linux
relay, and WASM); Windows verification is deferred and must be disclosed in
the release notes.
Tag and Publish
Only run these commands after the local gates pass and hosted CI passes.
git status --short --branch
git tag -a 0.2.0 -m "PureYAML 0.2.0"
git push origin main 0.2.0
tea releases create --login codeberg --repo NodetteHQ/PureYAML \
--tag 0.2.0 --title "PureYAML 0.2.0" \
--note "$(cat docs/releases/pureyaml-0-2-0.md)"
After publishing, verify the release exists:
git ls-remote --tags origin 0.2.0
tea releases list --login codeberg --repo NodetteHQ/PureYAML | head
Do Not Tag If
Package.swifthas any external dependency.Sources/contains C, JavaScript, WebAssembly blobs, or generated parser runtime files.- Any Swift source imports Foundation in the library target.
- The changelog does not have a dated section for the version being tagged.
- The release notes omit known deferred issues.
- Any locally runnable platform gate (macOS, Linux relay, WASM) is red, or a skipped platform is not disclosed in the release notes.