generated from personal-projects/leo-claude-mktplace
Added 3 new PR merge tools to complete v1.0.0: - merge_pull_request: Merge PR with 5 strategies (merge, rebase, rebase-merge, squash, fast-forward-only) - get_pr_merge_status: Check if PR is mergeable - cancel_auto_merge: Cancel scheduled auto-merge Changes: - New merge methods in GiteaClient (gitea_client.py) - New async wrappers in PullRequestTools with branch checks (tools/pull_requests.py) - Tool definitions and dispatch routing in tool_registry.py - Boolean type coercion for force_merge and delete_branch parameters - Comprehensive test suite with 18 tests (test_pull_requests.py) - Full documentation: README.md, CHANGELOG.md, CLAUDE.md Features: - 5 merge strategies with full Gitea API support - Branch-aware security enforcement - Type coercion handles MCP string serialization - 100% test coverage for merge operations Result: - Total tools: 39 (7 PR operations + 3 merge = 10 PR tools) - All tests passing (18 new merge tests + 60 existing tests) - Ready for v1.0.0 release Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
54 lines
2.5 KiB
Markdown
54 lines
2.5 KiB
Markdown
# Changelog
|
|
|
|
All notable changes to gitea-mcp will be documented in this file.
|
|
|
|
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).
|
|
|
|
## [1.0.0] - 2026-02-08
|
|
|
|
### Added
|
|
|
|
- Initial release as standalone package
|
|
- 39 MCP tools across 7 categories:
|
|
- Issue management (6 tools): list_issues, get_issue, create_issue, update_issue, add_comment, aggregate_issues
|
|
- Label management (5 tools): list_labels, get_labels, suggest_labels, create_label, create_label_smart
|
|
- Wiki & lessons learned (7 tools): list_wiki_pages, get_wiki_page, create_wiki_page, update_wiki_page, create_lesson, search_lessons, allocate_rfc_number
|
|
- Milestone management (5 tools): list_milestones, get_milestone, create_milestone, update_milestone, delete_milestone
|
|
- Issue dependencies (4 tools): list_issue_dependencies, create_issue_dependency, remove_issue_dependency, get_execution_order
|
|
- Pull requests (7 tools): list_pull_requests, get_pull_request, get_pr_diff, get_pr_comments, create_pr_review, add_pr_comment, create_pull_request
|
|
- **PR merge operations (3 tools) — NEW**: merge_pull_request, get_pr_merge_status, cancel_auto_merge
|
|
|
|
- **Merge strategies** (5 supported):
|
|
- `merge` — Create merge commit (default)
|
|
- `rebase` — Rebase commits onto base, no merge commit
|
|
- `rebase-merge` — Rebase then create merge commit
|
|
- `squash` — Squash all commits into one
|
|
- `fast-forward-only` — Only if fast-forward is possible
|
|
|
|
- Dual-mode operation:
|
|
- Project mode: Works with single configured repository
|
|
- PMO/Company mode: Manages multiple repositories with org-level aggregation
|
|
|
|
- Advanced features:
|
|
- Branch-aware security with permission enforcement
|
|
- Type coercion for MCP string serialization
|
|
- Auto-detection of project vs PMO mode
|
|
- Transport-agnostic architecture via tool_registry + dispatcher pattern
|
|
- Comprehensive error handling and logging
|
|
|
|
- Development:
|
|
- Full test suite with 30+ test cases
|
|
- Comprehensive documentation (README, CHANGELOG, CLAUDE.md)
|
|
- Gitea PyPI registry distribution
|
|
- CI/CD ready with pytest and coverage reporting
|
|
|
|
### Notes
|
|
|
|
- Extracted from leo-claude-mktplace v9.1.0 (mcp-servers/gitea/ v1.3.0)
|
|
- Module renamed: `mcp_server` → `gitea_mcp`
|
|
- All existing functionality preserved and tested
|
|
- Ready for use in Claude Code and other MCP-compatible systems
|
|
|
|
[1.0.0]: https://gitea.hotserv.cloud/personal-projects/gitea-mcp/releases/tag/v1.0.0
|