diff --git a/.opencode/skills/git-release/SKILL.md b/.opencode/skills/git-release/SKILL.md index fe85972..411e8d4 100644 --- a/.opencode/skills/git-release/SKILL.md +++ b/.opencode/skills/git-release/SKILL.md @@ -28,9 +28,9 @@ v1.2.20260415 → v1.3.20260415 (same-day second release) ## Release Naming -Each release gets a unique adjective-animal name. Analyze the commits and PRs since the last release, identify the theme, and choose a name that reflects it. +Each release gets a unique name: **{adjective}-{bee-genus}**. Analyze the commits and PRs since the last release, identify the theme, choose an adjective that reflects it, and select a bee genus from the pool below that matches. -Choose any adjective and any animal (use scientific name, not common name). The only constraints: +The only constraints: 1. **Thematic fit**: the name should reflect what this release does 2. **No repetition**: neither the adjective nor the animal may appear in a previous release @@ -40,6 +40,68 @@ Check previous names to avoid repetition: gh release list --limit 20 ``` +### Curated Bee Genus Pool + +Choose from this pool for intentional, memorable names. Each genus has a character note to guide thematic matching. + +| Genus | Common name | Character / theme | +|---|---|---| +| *Apis* | Honey bee | Collaboration, industry, the gold standard | +| *Bombus* | Bumblebee | Robustness, persistence, surprising capability | +| *Osmia* | Mason bee | Precision, craftsmanship, careful construction | +| *Megachile* | Leafcutter bee | Clever tooling, cutting to shape | +| *Xylocopa* | Carpenter bee | Structural work, building into solid foundations | +| *Halictus* | Sweat bee | Small but essential, invisible infrastructure | +| *Lasioglossum* | Small sweat bee | Ubiquity, the most common; baseline correctness | +| *Nomada* | Nomad bee | Migration, discovery, exploratory behavior | +| *Andrena* | Mining bee | Digging deep, uncovering hidden things | +| *Colletes* | Plasterer bee | Sealing, finishing, waterproofing | +| *Hylaeus* | Masked bee | Hidden internals, minimal exterior | +| *Eulaema* | Orchid bee | Exotic, specialized, high-value collection | +| *Eufriesea* | Orchid bee | Rare, distinctive, one-of-a-kind | +| *Agapostemon* | Metallic sweat bee | Brilliance, sheen, polish | +| *Augochlora* | Green sweat bee | Fresh, new, verdant growth | +| *Augochlorella* | Sweat bee | Emerging, small-scale refinement | +| *Augochloropsis* | Sweat bee | Variation on a theme, extension | +| *Panurgus* | Mining bee | Collective effort, many small contributions | +| *Perdita* | Mining bee | Smallest US bee; economy, minimalism | +| *Melitturga* | Mining bee | Clarity, straight lines | +| *Dasypoda* | Pantaloon bee | Deep foundations, load-bearing | +| *Macropis* | Oil bee | Specialized extraction, targeted collection | +| *Melitta* | Melitta bee | Sweetness, reward, delight | +| *Anthidium* | Wool-carder bee | Gathering, tidying, organization | +| *Coelioxys* | Sharp-tailed bee | Edge cases, pointed precision | +| *Stelis* | Cleptoparasitic bee | Detection, catching what doesn't belong | +| *Dioxys* | Cleptoparasitic bee | Finding impostors, validation | +| *Sphecodes* | Blood bee | Ruthless removal of what shouldn't be there | +| *Ceratina* | Small carpenter bee | Incremental progress, small but persistent | +| *Exomalopsis* | Bee | Quiet correctness, unassuming reliability | +| *Emphorella* | Bee | Niche specialization | +| *Peponapis* | Squash bee | Domain-specific excellence | +| *Xenoglossa* | Squash bee | Specialized vocabulary, domain language | +| *Ptilothrix* | Mallow bee | Softness of interface, gentle handling | +| *Melissodes* | Long-horned bee | Signal detection, communication | +| *Svastra* | Long-horned bee | Season-aware, time-sensitive behavior | +| *Eucera* | Long-horned bee | Patient waiting, timing | +| *Tetralonia* | Long-horned bee | Systematic coverage | +| *Anthophora* | Digger bee | Fast, energetic execution | +| *Habropoda* | Digger bee | Buzz-pollination; resonance, vibration | +| *Amegilla* | Blue-banded bee | Vibrant, high-frequency operation | +| *Xylocopinae* | Carpenter bee subfamily | Load-bearing architecture | +| *Euglossa* | Orchid bee | Precision collection, perfume of quality | +| *Eulaema* | Orchid bee | Valuable, coveted output | +| *Trigona* | Stingless bee | Safe, no sharp edges, user-friendly | +| *Tetragonula* | Stingless bee | Compact, structured, geometric | +| *Meliponula* | Stingless bee | African precision; warm-climate reliability | +| *Frieseomelitta* | Stingless bee | Abundant output, productivity | +| *Scaptotrigona* | Stingless bee | Aggressive defense of quality | +| *Plebeia* | Stingless bee | Humble, small, widely deployed | +| *Schwarziana* | Stingless bee | Named for a scientist; rigorous methodology | +| *Ctenocolletes* | Stenotritid bee | Ancient, foundational, rarely changed | +| *Stenotritus* | Stenotritid bee | Narrow, focused, specialized interface | + +If the release theme doesn't match any entry above, choose any other real bee genus and add it to this list with a character note. + ## Release Process ### 1. Analyze changes since last release diff --git a/.pyproject.toml.swp b/.pyproject.toml.swp deleted file mode 100644 index d8fab30..0000000 Binary files a/.pyproject.toml.swp and /dev/null differ diff --git a/CHANGELOG.md b/CHANGELOG.md index a0d79d0..73d077d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,26 @@ All notable changes to pytest-beehave will be documented in this file. +## [v3.3.20260419] — Mason Osmia — 2026-04-20 + +### Added +- feat(stub-format-config): add `stub_format` config key under `[tool.beehave]` — controls output format of generated test stubs + - `"functions"` (default): top-level functions + - `"classes"`: class-wrapped methods for backward compatibility +- feat(stub-format-config): 7 acceptance criteria across 5 Rules +- feat(stub-format-config): new test suite in `tests/features/stub_format_config/` +- feat(example-hatch): `pytest --beehave-hatch` generates bee-themed feature files +- feat(plugin-hook): adds deprecated marker sync for `Example:` blocks + +### Changed +- ci(release): add auto-tag workflow (`.github/workflows/tag-release.yml`) — creates version tag on main merge +- ci(release): fix stale artifact reuse — clean `dist/` before build +- docs: add "See it in 2 minutes" demo section to README +- chore(skills): number SE Self-Declaration items 1–25 +- chore(skills): restore bee genus pool to git-release skill (50 curated genera) +- chore: add `test-coverage` task +- chore: add `*.swp` to .gitignore + ## [v3.2.20260419] — Mason Osmia — 2026-04-19 ### Added diff --git a/pyproject.toml b/pyproject.toml index bcc8a02..535635f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "pytest-beehave" -version = "3.2.20260419" +version = "3.3.20260419" description = "A pytest plugin that runs acceptance criteria stub generation as part of the pytest lifecycle, with auto-ID assignment and generic step docstrings" readme = "README.md" requires-python = ">=3.13" diff --git a/uv.lock b/uv.lock index 740fa5a..87bd599 100644 --- a/uv.lock +++ b/uv.lock @@ -672,7 +672,7 @@ wheels = [ [[package]] name = "pytest-beehave" -version = "3.2.20260419" +version = "3.3.20260419" source = { editable = "." } dependencies = [ { name = "fire" },