This pull request introduces the capability for the Sweep application to handle comments on GitLab Merge Requests (MRs) in a manner equivalent to its existing functionality for GitHub Pull Requests (PRs). It adds the necessary utilities to interact with the GitLab API for fetching and posting comments on MRs, and integrates these utilities into the existing comment handling workflow.
Summary
Added new utility functions in sweepai/utils/gitlab_utils.py for authenticating with the GitLab API, and for fetching and posting comments on MRs.
Integrated GitLab comment handling into the on_comment function in sweepai/handlers/on_comment.py. This includes:
Adding a new platform parameter to determine the source platform of the comment (GitHub or GitLab).
Implementing a conditional branch to handle comments originating from GitLab, utilizing the new utility functions.
The changes ensure that the application can seamlessly handle comment events from both GitHub and GitLab, making it more versatile and accommodating to different development workflows.
Fixes #80.
š Latest improvements to Sweep:
New dashboard launched for real-time tracking of Sweep issues, covering all stages from search to coding.
Integration of OpenAI's latest Assistant API for more efficient and reliable code planning and editing, improving speed by 3x.
[ ] Apply: We should use loguru for error logging. If the log is inside an exception, use logger.exception to add tracebacks, where logger is imported from loguru. Use f-strings for string formatting in logger calls (e.g. logger.info(f'Hello {name}') instead of logger.info('Hello {name}', name=name)).
[ ] Apply: There should be no debug log or print statements in production code.
[ ] Apply: All functions should have parameters and output annotated with type hints. Use list, tuple and dict instead of typing.List, typing.Tuple and typing.dict.
[ ] Apply: Leftover TODOs in the code should be handled.
[ ] Apply: All new business logic should have corresponding unit tests in the same directory. For example, sweepai/api_test.py tests sweepai/api.py. Use unittest and unittest.mock as required.
[ ] Apply: Any clearly inefficient or repeated code should be optimized or refactored.
[ ] Apply: Remove any comments before code that are obvious. For example # this prints hello world; print('hello world').
This is an automated message generated by Sweep AI.
PR Feedback (click)
Description
This pull request introduces the capability for the Sweep application to handle comments on GitLab Merge Requests (MRs) in a manner equivalent to its existing functionality for GitHub Pull Requests (PRs). It adds the necessary utilities to interact with the GitLab API for fetching and posting comments on MRs, and integrates these utilities into the existing comment handling workflow.
Summary
sweepai/utils/gitlab_utils.py
for authenticating with the GitLab API, and for fetching and posting comments on MRs.on_comment
function insweepai/handlers/on_comment.py
. This includes:platform
parameter to determine the source platform of the comment (GitHub or GitLab).Fixes #80.
š Latest improvements to Sweep:
š” To get Sweep to edit this pull request, you can:
This is an automated message generated by Sweep AI.