From c0bd1279b89a0b99faa8fe240a0a22a4ed6022f6 Mon Sep 17 00:00:00 2001 From: Lucas Machado Date: Wed, 6 May 2026 21:23:41 +0200 Subject: [PATCH] chore(release): prep v0.1.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - README: clean install section with Linux + macOS curl one-liners and links to other platforms - Reusable workflow: drop GitHub API call for latest, use native releases/latest/download redirect - CHANGELOG: collapse Unreleased into [0.1.0] — 2026-05-06 --- .github/workflows/reusable.yml | 4 +-- CHANGELOG.md | 46 +++++++++++----------------------- README.md | 29 ++++++++++----------- 3 files changed, 31 insertions(+), 48 deletions(-) diff --git a/.github/workflows/reusable.yml b/.github/workflows/reusable.yml index 14e990f..1045124 100644 --- a/.github/workflows/reusable.yml +++ b/.github/workflows/reusable.yml @@ -75,9 +75,7 @@ jobs: run: | VERSION="${{ inputs.yamlspec-version }}" if [ "$VERSION" = "latest" ]; then - DOWNLOAD_URL=$(curl -s https://api.github.com/repos/AxeForging/yamlspec/releases/latest \ - | grep "browser_download_url.*linux-amd64.tar.gz" \ - | cut -d '"' -f 4) + DOWNLOAD_URL="https://github.com/AxeForging/yamlspec/releases/latest/download/yamlspec-linux-amd64.tar.gz" else DOWNLOAD_URL="https://github.com/AxeForging/yamlspec/releases/download/${VERSION}/yamlspec-linux-amd64.tar.gz" fi diff --git a/CHANGELOG.md b/CHANGELOG.md index 8fc5c00..60fbf5f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,33 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] -### Added -- `docs/index.md` documentation landing page with cross-links between docs. -- `docs/recipes.md` cookbook of common assertion patterns - (multi-environment, security baseline, image pinning, label conventions, - HPA/PDB invariants, NetworkPolicy, etc.). -- `docs/troubleshooting.md` with the common authoring/runtime errors and how - to read them. -- `examples/README.md` describing each worked example and the exact command - to run it. -- `CONTRIBUTING.md` covering dev setup, layer conventions, how to add an - operator/formatter/command, commit conventions, and the release flow. -- README field-path quick reference (dotted, `[index]`, `[*]` wildcard, - bracket notation, leading-dot JQ form) and cross-links to the docs. -- GitHub Actions reusable workflow now writes the EMD output to - `$GITHUB_STEP_SUMMARY` so results show on the workflow run page, not only - as a PR comment. -- `--github-annotations` output mode (auto-enabled when `GITHUB_ACTIONS=true`) - emits `::error file=...,line=...::` lines so failing assertions appear - inline in the GitHub "Files changed" diff view. - -### Changed -- README install instructions now reflect that no GitHub release exists yet — - use `go install` from source until v0.1.0 is cut. +## [0.1.0] — 2026-05-06 -## [0.1.0] — Initial release - -The first usable yamlspec build, including a correctness-hardening pass. +The first usable yamlspec build, including a correctness-hardening pass and +the full documentation set. ### Added - RSpec-like `describe`/`it`/`should` test syntax in `spec.yaml`. @@ -50,6 +27,9 @@ The first usable yamlspec build, including a correctness-hardening pass. - Six output formats: console (colored RSpec-style tree), JSON, YAML, Markdown, enriched Markdown (collapsible `
` for PR comments), JUnit XML. +- `--github-annotations` output mode (auto-enabled when `GITHUB_ACTIONS=true`) + emits `::error file=...,line=...::` lines so failing assertions appear + inline in the GitHub "Files changed" diff view. - Parallel execution via `--workers N`. - `--fail-fast` for fast feedback on sequential runs. - Configurable `--pre-run-timeout` (default 60s) for `pre_run` shell @@ -63,17 +43,21 @@ The first usable yamlspec build, including a correctness-hardening pass. `sleep`-style children no longer keep the command alive past its deadline. - Cross-platform process management (Unix `setpgid` + `kill -PGID`; Windows fallback). -- Reusable GitHub Actions workflow with one-line opt-in via - `uses: AxeForging/yamlspec/.github/workflows/reusable.yml@main`. Posts - enriched-markdown PR comments and updates them in place on subsequent - pushes. +- Reusable GitHub Actions workflow with one-line opt-in. Posts + enriched-markdown PR comments (updated in place on subsequent pushes) and + writes the same EMD to `$GITHUB_STEP_SUMMARY` so results show on the + workflow run page. - `init` command to scaffold new specs. - `list` / `list --tags` for spec/tag discovery (deterministic ordering). - `ai-help` command emitting a comprehensive reference for AI assistants. - Built on Go 1.25.8 (covers the recent stdlib CVE). +- Documentation: `docs/index.md`, `docs/spec-format.md`, `docs/recipes.md`, + `docs/troubleshooting.md`, `docs/reusable-workflow.md`, + `examples/README.md`, `CONTRIBUTING.md`, `CHANGELOG.md`. +- README field-path quick reference, badges, sample output, and demo GIF. ### Validation -- 118 tests passing across 6 packages. +- 120 tests passing across 6 packages. - Examples for plain manifests, Helm charts, Kustomize overlays, multi-resource specs, and a security baseline. diff --git a/README.md b/README.md index c7cdd66..a8b192c 100644 --- a/README.md +++ b/README.md @@ -23,28 +23,29 @@ YAML test framework with RSpec-like assertions. Validate any YAML manifests — ## Install -No tagged release yet — install from source: - ```bash -# Latest commit on main -go install github.com/AxeForging/yamlspec@main +# Go install (any platform with Go 1.25+) +go install github.com/AxeForging/yamlspec@latest -# Or clone and build -git clone https://github.com/AxeForging/yamlspec.git -cd yamlspec -make install # builds and installs to /usr/local/bin +# Linux (amd64) +curl -sSL https://github.com/AxeForging/yamlspec/releases/latest/download/yamlspec-linux-amd64.tar.gz | tar xz +sudo mv yamlspec /usr/local/bin/ + +# macOS (Apple Silicon) +curl -sSL https://github.com/AxeForging/yamlspec/releases/latest/download/yamlspec-darwin-arm64.tar.gz | tar xz +sudo mv yamlspec /usr/local/bin/ ``` -Once v0.1.0 is published you'll also be able to use: +Other platforms (linux/arm64, darwin/amd64, windows/{amd64,arm64}) on the [releases page](https://github.com/AxeForging/yamlspec/releases/latest). + +### From source ```bash -# Direct download (post-release) -curl -sSL https://github.com/AxeForging/yamlspec/releases/latest/download/yamlspec-linux-amd64.tar.gz | tar xz -sudo mv yamlspec /usr/local/bin/ +git clone https://github.com/AxeForging/yamlspec.git +cd yamlspec +make install # builds and installs to /usr/local/bin ``` -See [CHANGELOG.md](CHANGELOG.md) for release status. - ## Quick Start ```bash