Skip to content

Releases: zerosixty/samurai

v0.9.1

Choose a tag to compare

@github-actions github-actions released this 25 May 14:27
7ea4f2a

What's Changed

Full Changelog: v0.9.0...v0.9.1

v0.9.0

Choose a tag to compare

@github-actions github-actions released this 25 May 14:25
132f4b8

What's Changed

Full Changelog: v0.8.5...v0.9.0

v0.8.5

Choose a tag to compare

@github-actions github-actions released this 21 May 09:35
e901ab8

What's Changed

  • docs(CLAUDE.md): release via Release workflow_dispatch, not manual gh release create by @stepan-romankov in #22
  • docs(skill): add "keep related scenarios in one tree" guidance by @stepan-romankov in #23

Full Changelog: v0.8.4...v0.8.5

v0.8.4

Choose a tag to compare

@github-actions github-actions released this 21 May 09:17
755c69c

What's Changed

Full Changelog: v0.8.3...v0.8.4

v0.8.3 — Skill v3 cleanup

Choose a tag to compare

@stepan-romankov stepan-romankov released this 27 Apr 10:59
16ac1f7

Skill tooling cleanup for the Claude Code samurai skill (no framework code changes).

Changes

  • claude-setup version sync: bumped the version constant from "2" to "3" so claude-setup correctly upgrades v2 installs to the v3 SKILL.md already shipped in v0.8.2
  • Dropped false-positive rule #5 ("Existing isolation: test already uses Ginkgo BeforeEach or similar") — too broad, the other four rules already cover the real cases

Full Changelog: v0.8.2...v0.8.3

v0.8.2 — Factory: extract when shared across Tests

Choose a tag to compare

@stepan-romankov stepan-romankov released this 24 Apr 12:09
7acd7ff

Skill documentation refinement for the Claude Code samurai skill (no framework code changes).

Change

Relaxed the strict "always inline the factory closure" rule:

  • Prefer inlining the factory inside `RunWith`
  • Extract to a private helper (below the Tests) when 2+ Test functions in the same file need identical factory logic — duplication outweighs locality once there is no single caller

Why

Multi-Test files (e.g. 5 `TestXxx` sharing one factory) turned strict inlining into mandatory 5× duplication. The locality rationale only applies when there is a single caller.

Full Changelog: v0.8.1...v0.8.2

v0.8.1 — Skill detection protocol

Choose a tag to compare

@stepan-romankov stepan-romankov released this 24 Apr 11:13
dbd8a76

Skill documentation refinements for the Claude Code samurai skill (no framework code changes).

Changes

  • File layout guide: context type + Test on top, helpers below
  • Detection protocol: read bodies not names, swap-order test, find the writes
  • Refined false-positive rules: read-only chains and shared setup helpers are not samurai candidates

Full Changelog: v0.8.0...v0.8.1

v0.8.0 — Auto-parallel top-level tests

Choose a tag to compare

@stepan-romankov stepan-romankov released this 23 Apr 18:58
0597aa8

Breaking: top-level `TestXxx` is now parallel by default

`samurai.Run` / `samurai.RunWith` now call `t.Parallel()` on the top-level `*testing.T`, not just on samurai-emitted sub-tests. Tests in the same Go package run concurrently without a manual `t.Parallel()` at the top of every `TestXxx`.

Migration

  • Remove any manual `t.Parallel()` from the first line of a `TestXxx` that uses `samurai.Run` / `samurai.RunWith`. Go panics with `t.Parallel called multiple times` if the same `*testing.T` is marked parallel twice.
  • Pass `samurai.Sequential()` for any test that uses `t.Setenv`, binds a fixed port, or otherwise cannot tolerate sibling tests running alongside it.

Why

Previously only sub-tests within a single `TestXxx` ran in parallel; different `TestXxx` functions in the same package ran serially unless each one wrote `t.Parallel()` manually. Real-world adoption (20 samurai tests in one package, ~140 leaves) dropped from ~30s to ~19s wall-clock once top-level parallelism was enabled — this release makes that the default.

🤖 Generated with Claude Code

v0.7.2

Choose a tag to compare

@stepan-romankov stepan-romankov released this 31 Mar 10:50
40297ee

Skill improvements

  • Split Claude Code skill into 3 files: SKILL.md (rules + when to use), api.md (examples), pitfalls.md (validation + wrong patterns)
  • Added "When to Use" decision guide with clear criteria for when samurai is/isn't appropriate
  • Bumped skill version to v2 — run go run github.com/zerosixty/samurai/cmd/claude-setup@latest to update

v0.7.1

Choose a tag to compare

@stepan-romankov stepan-romankov released this 28 Mar 14:22
c972406

Documentation

  • Add best practice: one action + its assertions = one Test() — don't split assertions into child Tests
  • Add Wrong Pattern #6 to Claude Code skill showing the antipattern with fix
  • Update all examples across skill, CLAUDE.md, and README.md to follow the pattern