From 498f1021bf100f3428acdc28f91742904d280f40 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 15 Jan 2026 21:51:46 +0000 Subject: [PATCH 1/2] chore(release): prepare v0.10.2 --- CHANGELOG.md | 10 ++++++++++ package.json | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 857774d..6bfed57 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,16 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [0.10.2] - 2026-01-15 + +### Added +- **make**: add workflow targets with fzf interactive prompts (#6) + +### Fixed +- **ci**: update npm to latest for oidc trusted publishing (#5) + + ## [0.10.1] - 2026-01-15 ### Added diff --git a/package.json b/package.json index bcee1d8..411e4b7 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "opencode-toolbox", - "version": "0.10.1", + "version": "0.10.2", "description": "Tool Search Tool Plugin for OpenCode - search and execute tools from MCP servers on-demand", "main": "dist/index.js", "module": "dist/index.js", From b532009c00a6f922807c9967ea170fb71f9d097c Mon Sep 17 00:00:00 2001 From: assagman Date: Fri, 16 Jan 2026 00:56:13 +0300 Subject: [PATCH 2/2] fix(release): handle [Unreleased] section in changelog generation - Workflow now inserts new version AFTER [Unreleased], not before - Fixed misplaced [Unreleased] section in CHANGELOG.md - Added 0.10.2 entry for recent changes (#5, #6) - Consolidated duplicate 0.10.1 entries Signed-off-by: assagman --- .github/workflows/release-pr.yml | 23 ++++++++++++++++------- CHANGELOG.md | 32 ++++++++++++-------------------- 2 files changed, 28 insertions(+), 27 deletions(-) diff --git a/.github/workflows/release-pr.yml b/.github/workflows/release-pr.yml index 9e744d2..a20936a 100644 --- a/.github/workflows/release-pr.yml +++ b/.github/workflows/release-pr.yml @@ -174,16 +174,25 @@ jobs: echo "$ENTRY" > /tmp/changelog_entry.md # Prepend to CHANGELOG.md if it exists - # Preserves full header (everything before first "## [" section marker) + # Handles [Unreleased] section: insert new version AFTER it if [ -f "CHANGELOG.md" ]; then - # Find line number of first version section (## [x.y.z] or ## [Unreleased]) - HEADER_END=$(grep -n '^## \[' CHANGELOG.md | head -1 | cut -d: -f1) - if [ -n "$HEADER_END" ]; then - HEADER_END=$((HEADER_END - 1)) - head -n "$HEADER_END" CHANGELOG.md > /tmp/changelog_new.md + # Check for [Unreleased] section (case-insensitive) + UNRELEASED_LINE=$(grep -in '^## \[Unreleased\]' CHANGELOG.md | head -1 | cut -d: -f1) + # Find first versioned section (## [x.y.z]) + FIRST_VERSION_LINE=$(grep -n '^## \[[0-9]' CHANGELOG.md | head -1 | cut -d: -f1) + + if [ -n "$UNRELEASED_LINE" ]; then + # Has [Unreleased] section - insert new version after it + head -n "$UNRELEASED_LINE" CHANGELOG.md > /tmp/changelog_new.md + echo "" >> /tmp/changelog_new.md + cat /tmp/changelog_entry.md >> /tmp/changelog_new.md + tail -n +"$((UNRELEASED_LINE + 1))" CHANGELOG.md >> /tmp/changelog_new.md + elif [ -n "$FIRST_VERSION_LINE" ]; then + # No [Unreleased], insert before first version section + head -n "$((FIRST_VERSION_LINE - 1))" CHANGELOG.md > /tmp/changelog_new.md echo "" >> /tmp/changelog_new.md cat /tmp/changelog_entry.md >> /tmp/changelog_new.md - tail -n +"$((HEADER_END + 1))" CHANGELOG.md >> /tmp/changelog_new.md + tail -n +"$FIRST_VERSION_LINE" CHANGELOG.md >> /tmp/changelog_new.md else # No version sections found, append to end cat CHANGELOG.md > /tmp/changelog_new.md diff --git a/CHANGELOG.md b/CHANGELOG.md index 6bfed57..58fcf67 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,39 +6,30 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [Unreleased] -## [0.10.2] - 2026-01-15 +## [0.10.2] - 2026-01-16 ### Added - **make**: add workflow targets with fzf interactive prompts (#6) ### Fixed -- **ci**: update npm to latest for oidc trusted publishing (#5) - +- **ci**: update npm to latest for OIDC trusted publishing (#5) ## [0.10.1] - 2026-01-15 ### Added -- **schema**: add jsonc support with trailing commas and comments (#1) +- **JSON Schema JSONC support**: Schema now allows trailing commas and comments for better editor compatibility (#1) ### Fixed -- **release**: validate custom version input and include all changelog entries (#3) - -### Changed -- ignore .opencode - - -## [Unreleased] - -## [0.10.1] - 2026-01-16 - -### Added -- **JSON Schema JSONC support**: Schema now allows trailing commas and comments for better editor compatibility +- **Release workflow**: Validate custom version input and include all changelog entries (#3) ### CI/CD -- **Automated release workflows**: New `release-pr.yml` and `release-publish.yml` for automated versioning and npm publishing -- **OIDC npm publishing**: Secure npm publishing using GitHub OIDC tokens (no npm tokens stored) -- **Custom version validation**: Release workflow validates custom version input format +- Automated release workflows (`release-pr.yml`, `release-publish.yml`) for versioning and npm publishing (#2) +- OIDC npm publishing using GitHub OIDC tokens (no npm tokens stored) + +### Changed +- Ignore `.opencode` directory ### Documentation - Updated RELEASE.md with automation instructions @@ -221,7 +212,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 --- -[Unreleased]: https://github.com/assagman/opencode-toolbox/compare/v0.10.1...HEAD +[Unreleased]: https://github.com/assagman/opencode-toolbox/compare/v0.10.2...HEAD +[0.10.2]: https://github.com/assagman/opencode-toolbox/compare/v0.10.1...v0.10.2 [0.10.1]: https://github.com/assagman/opencode-toolbox/compare/v0.10.0...v0.10.1 [0.10.0]: https://github.com/assagman/opencode-toolbox/compare/v0.9.0...v0.10.0 [0.9.0]: https://github.com/assagman/opencode-toolbox/compare/v0.8.0...v0.9.0