OpenHands
OpenHands copied to clipboard
Add Forgejo integration similar to GitHub and GitLab integrations
- [x] This change is worth documenting at https://docs.all-hands.dev/
- [x] Include this change in the Release Notes. If checked, you must provide an end-user friendly description for your change below
End-user friendly description of the problem this fixes or functionality that this introduces.
This PR adds support for Forgejo, a self-hosted Git service that is a fork of Gitea. With this integration, users can now interact with Forgejo instances like Codeberg.org in the same way they interact with GitHub and GitLab. This enables browsing repositories, viewing issues and pull requests, and creating pull requests on Forgejo platforms.
Give a summary of what the PR does, explaining any non-trivial design decisions.
This PR implements a Forgejo integration similar to the existing GitHub and GitLab integrations. It includes:
- A new
ForgejoServiceclass that implements theGitServiceprotocol - A new
ForgejoIssueHandlerandForgejoPRHandlerfor the resolver interface - Updates to the
ProviderTypeenum to include Forgejo - Updates to the
ProviderHandlerclass to support the Forgejo service - A new microagent knowledge file for Forgejo
- Comprehensive unit tests for the Forgejo service
- Documentation for the Forgejo integration
The implementation follows the same patterns as the existing GitHub and GitLab integrations, making it easy to understand and maintain. The Forgejo API is similar to the GitHub API, but there are some differences in endpoint names and response formats that are handled in the implementation.
The integration has been tested against Codeberg.org, a popular Forgejo instance, and works correctly for browsing repositories, searching, and other operations.
Link of any specific issues this addresses.
N/A
@erkinalp were you able to verify this works? Can you post a screenshot showing Forgejo repositories in the homepage repo picker?
This PR is stale because it has been open for 30 days with no activity. Remove stale label or comment or this will be closed in 7 days.
still pursuing
This PR is stale because it has been open for 30 days with no activity. Remove stale label or comment or this will be closed in 7 days.
This PR was closed because it has been stalled for over 30 days with no activity.
@erkinalp are you sill pursuing this pr?