PureXML/scripts/check-all.sh
Mihaela Mihaljevic 708390242c chore: scaffold PureXML pure-Swift XML package
Root Swift package mirroring PureYAML's structure, rules, and verification
gates. Includes the XML node model (Node, Element, Attribute, QualifiedName),
a working emitter (Serializer) with escaping and pretty/compact options, and
structural validation. The parser surface is stable; parse() raises
notImplemented until the scanner lands, pinned by a test.

- dependency-free, namespaced under PureXML
- portability and style gates carried over (style, namespacing, forbidden
  patterns, swiftformat, swiftlint, linux, wasm, windows CI)
- 11 tests passing
2026-06-07 23:20:20 +02:00

25 lines
825 B
Bash
Executable File

#!/usr/bin/env bash
# Full local verification gate for PureXML.
#
# Runs the checks required before completion. The Linux and WASM gates are
# available as separate scripts (scripts/check-linux.sh, scripts/check-wasm.sh)
# and run in hosted CI; they are not chained here so this gate stays runnable on
# any machine without remote infrastructure or a Wasm SDK.
set -euo pipefail
run_gate() {
name="$1"
shift
printf '\n==> %s\n' "$name"
"$@"
}
run_gate "style" bash scripts/check-style.sh
run_gate "namespacing" bash scripts/check-namespacing.sh
run_gate "forbidden patterns" bash scripts/check-forbidden-patterns.sh
run_gate "swiftformat" swiftformat . --config .swiftformat --lint
run_gate "swiftlint" swiftlint --config .swiftlint.yml --strict
run_gate "swift build" swift build
run_gate "swift test" swift test