Skip to content

Commit 2ec71fa

Browse files
authored
Merge pull request #38 from codesoda/feat/setup-steps
feat: setup steps, optional test name, changelog (v0.4.0)
2 parents 71a4bf7 + 97c2604 commit 2ec71fa

File tree

11 files changed

+469
-29
lines changed

11 files changed

+469
-29
lines changed

.github/workflows/release.yml

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,14 +85,35 @@ jobs:
8585
cd artifacts
8686
sha256sum *.tar.gz > checksums-sha256.txt
8787
88+
- name: Extract changelog for release
89+
id: changelog
90+
run: |
91+
tag="${GITHUB_REF#refs/tags/}"
92+
version="${tag#v}"
93+
# Extract the section between this version's heading and the next heading
94+
notes=$(awk -v ver="$version" '
95+
/^## \[/ {
96+
if (found) exit
97+
if ($0 ~ "\\[" ver "\\]") found=1; next
98+
}
99+
found { print }
100+
' CHANGELOG.md)
101+
# Fail if we got nothing — forces you to update CHANGELOG.md before tagging
102+
if [ -z "$notes" ]; then
103+
echo "::error::No CHANGELOG.md entry found for version ${version}"
104+
exit 1
105+
fi
106+
# Write to file to avoid quoting issues
107+
echo "$notes" > release-notes.md
108+
88109
- name: Create GitHub Release
89110
env:
90111
GH_TOKEN: ${{ github.token }}
91112
run: |
92113
tag="${GITHUB_REF#refs/tags/}"
93114
gh release create "${tag}" \
94115
--title "${tag}" \
95-
--generate-notes \
116+
--notes-file release-notes.md \
96117
--draft \
97118
artifacts/*.tar.gz \
98119
artifacts/checksums-sha256.txt

CHANGELOG.md

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
# Changelog
2+
3+
All notable changes to this project will be documented in this file.
4+
5+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7+
8+
## [Unreleased]
9+
10+
## [0.4.0] - 2026-04-08
11+
12+
### Added
13+
14+
- Self-update command with passive version checking
15+
- Setup steps (`setup = true`) that always run even when checkpoint-skipped and are not counted in pass/fail
16+
- Test file `name` field now defaults to the file stem when omitted (e.g. `login-flow.test.toml` defaults to "login-flow")
17+
- Changelog based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/)
18+
19+
### Changed
20+
21+
- Release workflow now extracts notes from CHANGELOG.md instead of auto-generating from commits
22+
23+
## [0.3.1] - 2026-04-04
24+
25+
### Added
26+
27+
- Agent setup hint in CLI help output
28+
- Coding agent quick-start prompt in README and getting-started docs
29+
- Links to bugatti.dev in README and CLI help
30+
31+
## [0.3.0] - 2026-04-04
32+
33+
### Added
34+
35+
- Documentation site, llms.txt, and docs CI workflow
36+
- Checkpoint save/restore and step skip with checkpoint support
37+
- `--from-checkpoint` CLI flag and timestamp-based run IDs
38+
- Checkpoint timeout configuration
39+
- Comprehensive docs for includes, shared test files, skip, and checkpoints
40+
- Node.js Express and Python Flask example projects
41+
- Release workflow and installer script
42+
- Readiness URL checks for long-lived services
43+
- CLI skip flags for harness commands (`--skip-setup`, `--skip-teardown`)
44+
- Long-lived subprocess management with readiness checks
45+
- Result marker parser, report generation, and run artifacts
46+
- Claude Code provider adapter
47+
- Test discovery, step expansion with cycle detection, and end-to-end pipeline
48+
- Config types and `bugatti.config.toml` parsing
49+
- Test file types and `*.test.toml` parsing
50+
- CLI scaffold with `bugatti test` subcommand
51+
52+
### Fixed
53+
54+
- Clippy warnings for release build
55+
- Docs deploy workflow triggers and Node version
56+
- Result marker parser handling of embedded markers
57+
58+
[Unreleased]: https://github.com/codesoda/bugatti-cli/compare/v0.4.0...HEAD
59+
[0.4.0]: https://github.com/codesoda/bugatti-cli/compare/v0.3.1...v0.4.0
60+
[0.3.1]: https://github.com/codesoda/bugatti-cli/compare/v0.3.0...v0.3.1
61+
[0.3.0]: https://github.com/codesoda/bugatti-cli/releases/tag/v0.3.0

Cargo.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "bugatti"
3-
version = "0.3.1"
3+
version = "0.4.0"
44
edition = "2021"
55
description = "A CLI for plain-English, agent-assisted local application verification using *.test.toml files"
66

src/config.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -373,6 +373,7 @@ readiness_url = "http://localhost:3000/health"
373373
include_glob: None,
374374
step_timeout_secs: None,
375375
skip: false,
376+
setup: false,
376377
checkpoint: None,
377378
}],
378379
};

0 commit comments

Comments
 (0)