diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 9271e8d..0bae6ef 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -37,7 +37,7 @@ jobs: VERSION="${{ github.ref_name }}" VERSION="${VERSION#v}" echo "BUILD_VERSION=${VERSION}" >> $GITHUB_OUTPUT - echo "::debug::Set BUILD_VERSION to ${VERSION}" + echo "Set BUILD_VERSION to ${VERSION}" else SHORT_SHA=$(echo ${{ github.sha }} | cut -c1-8) TIMESTAMP=$(date +"%Y%m%d-%H%M%S") @@ -49,7 +49,7 @@ jobs: fi FULL_VERSION="${BASE_VERSION}-${SHORT_SHA}-${TIMESTAMP}" echo "BUILD_VERSION=${FULL_VERSION}" >> $GITHUB_OUTPUT - echo "::debug::Set BUILD_VERSION to ${FULL_VERSION}" + echo "Set BUILD_VERSION to ${FULL_VERSION}" fi - name: Update version in files @@ -76,7 +76,7 @@ jobs: target/GhydraMCP-*.zip bridge_mcp_hydra.py - - name: Generate Release Notes + - name: Generate Release Notes from CHANGELOG if: github.ref_type == 'tag' id: generate_notes run: | @@ -84,25 +84,13 @@ jobs: VERSION="${{ github.ref_name }}" VERSION="${VERSION#v}" - # Get commit messages since last tag - LAST_TAG=$(git describe --tags --abbrev=0 "v${VERSION}^" 2>/dev/null || echo "") - if [ -z "$LAST_TAG" ]; then - # If no previous tag exists, get all commits - COMMITS=$(git log --pretty=format:"- %s" --no-merges) - else - # Get commits between last tag and current tag - COMMITS=$(git log --pretty=format:"- %s" --no-merges ${LAST_TAG}..HEAD) - fi - - # Create release notes file - cat > release_notes.md << EOF - # Release v${VERSION} - - ## What's Changed - ${COMMITS} - - **Full Changelog**: https://github.com/${{ github.repository }}/compare/${LAST_TAG}...v${VERSION} - EOF + # Extract the changelog section for this version + awk -v version="$VERSION" ' + BEGIN { print=0 } + /^## \['version'\]/ { print=1; next } + /^## \[/ && print { print=0; next } + print { print $0 } + ' CHANGELOG.md > release_notes.md echo "RELEASE_NOTES_FILE=release_notes.md" >> $GITHUB_OUTPUT diff --git a/CHANGELOG.md b/CHANGELOG.md index 78e258d..a6daa99 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,11 +2,12 @@ All notable changes to this project will be documented in this file. -The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), -and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). ## [Unreleased] +## [1.3.0] - 2025-04-02 + ### Added - Added docstrings for all @mcp.tool functions - Variable manipulation tools (rename/retype variables) @@ -32,7 +33,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Reorganized imports in bridge_mcp_hydra.py - Updated MANIFEST.MF with more detailed description -## [1.2.0] - 2024-06-15 +## [1.2] - 2025-03-30 ### Added - Enhanced function analysis capabilities @@ -43,10 +44,22 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Improved error handling in API calls - Optimized performance for large binaries -## [1.0.0] - 2024-03-15 +## [1.1] - 2025-03-30 ### Added - Initial release of GhydraMCP bridge - Basic Ghidra instance management tools - Function analysis tools - Variable manipulation tools + +## [1.0] - 2025-03-24 + +### Added +- Initial project setup +- Basic MCP bridge functionality + +[unreleased]: https://github.com/teal-bauer/GhydraMCP/compare/v1.3.0...HEAD +[1.3.0]: https://github.com/teal-bauer/GhydraMCP/compare/v1.2...v1.3.0 +[1.2]: https://github.com/teal-bauer/GhydraMCP/compare/v1.1...v1.2 +[1.1]: https://github.com/teal-bauer/GhydraMCP/compare/1.0...v1.1 +[1.0]: https://github.com/teal-bauer/GhydraMCP/releases/tag/1.0