diff --git a/CHANGELOG.md b/CHANGELOG.md index fc98dfe..3024247 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,8 +1,28 @@ +## [1.0.60] - 2025-06-07 + +### Added + +- 📄 **Merge Request Enhancement**: Added support for `remove_source_branch` and `squash` options for merge requests + - Enhanced merge request functionality with additional configuration options + - Allows automatic source branch removal after merge + - Supports squash commits for cleaner Git history + - See: [PR #86](https://github.com/zereight/gitlab-mcp/pull/86) + +### Fixed + +- 🔧 **Issue Assignment Fix**: Fixed list issues assignee username handling + - Corrected assignee username field in issue listing functionality + - Improved user assignment data processing for GitLab issues + - See: [PR #87](https://github.com/zereight/gitlab-mcp/pull/87), [Issue #74](https://github.com/zereight/gitlab-mcp/issues/74) + +--- + ## [1.0.54] - 2025-05-31 ### Added - 🌐 **Multi-Platform Support**: Added support for multiple platforms to improve compatibility across different environments + - Enhanced platform detection and configuration handling - Improved cross-platform functionality for GitLab MCP server - See: [PR #71](https://github.com/zereight/gitlab-mcp/pull/71), [Issue #69](https://github.com/zereight/gitlab-mcp/issues/69) diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md new file mode 100644 index 0000000..71641c8 --- /dev/null +++ b/RELEASE_NOTES.md @@ -0,0 +1,18 @@ +## [1.0.60] - 2025-06-07 + +### Added + +- 📄 **Merge Request Enhancement**: Added support for `remove_source_branch` and `squash` options for merge requests + - Enhanced merge request functionality with additional configuration options + - Allows automatic source branch removal after merge + - Supports squash commits for cleaner Git history + - See: [PR #86](https://github.com/zereight/gitlab-mcp/pull/86) + +### Fixed + +- 🔧 **Issue Assignment Fix**: Fixed list issues assignee username handling + - Corrected assignee username field in issue listing functionality + - Improved user assignment data processing for GitLab issues + - See: [PR #87](https://github.com/zereight/gitlab-mcp/pull/87), [Issue #74](https://github.com/zereight/gitlab-mcp/issues/74) + +--- diff --git a/package.json b/package.json index 793fbcc..636ddce 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@zereight/mcp-gitlab", - "version": "1.0.59", + "version": "1.0.60", "description": "MCP server for using the GitLab API", "license": "MIT", "author": "zereight", @@ -21,6 +21,7 @@ "watch": "tsc --watch", "deploy": "npm publish --access public", "generate-tools": "npx ts-node scripts/generate-tools-readme.ts", + "changelog": "auto-changelog -p", "test": "node test/validate-api.js", "test:integration": "node test/validate-api.js", "lint": "eslint . --ext .ts", @@ -48,6 +49,7 @@ "prettier": "^3.4.2", "ts-node": "^10.9.2", "typescript": "^5.8.2", - "zod": "^3.24.2" + "zod": "^3.24.2", + "auto-changelog": "^2.4.0" } } diff --git a/scripts/create-github-release.sh b/scripts/create-github-release.sh new file mode 100755 index 0000000..26c613e --- /dev/null +++ b/scripts/create-github-release.sh @@ -0,0 +1,38 @@ +#!/bin/bash +set -e + +# Extract version from package.json +VERSION=$(jq -r .version package.json) + +if [ -z "$VERSION" ]; then + echo "Could not read version from package.json." + exit 1 +fi + +# Check if release notes file exists +if [ ! -f RELEASE_NOTES.md ]; then + echo "RELEASE_NOTES.md file does not exist." + exit 1 +fi + +# Generate RELEASE_NOTES.md from CHANGELOG.md for the current version +node <<'EOF' +const fs = require('fs'); +const changelog = fs.readFileSync('CHANGELOG.md', 'utf8'); +const pkg = JSON.parse(fs.readFileSync('package.json', 'utf8')); +const version = pkg.version; + +const regex = new RegExp(`## \\[${version.replace(/\./g, '\\.')}\\][\\s\\S]*?(?=\\n## |\\n?$)`, 'g'); +const match = changelog.match(regex); + +if (match && match[0]) { + fs.writeFileSync('RELEASE_NOTES.md', match[0].trim() + '\n'); + console.log('RELEASE_NOTES.md generated for version', version); +} else { + console.error('No changelog entry found for version', version); + process.exit(1); +} +EOF + +# Create GitHub release using CLI +gh release create "$VERSION" -t "Release $VERSION" -F RELEASE_NOTES.md \ No newline at end of file