Introduce an Events API
What does this MR do?
Introduce an Events API
Are there points in the code the reviewer needs to double check?
Results wise, this endpoint can produce a lot. The queries are always scope to the event source, a project or a user, and the filters allow the query to be reduced even further. Performance wise, the worst call is the probably the projects/:id/events
endpoint but this is no worse than it previously was.
Why was this MR needed?
Results for events for projects and users cannot currently be filtered. Some projects have hundreds of thousands of associated events, growing each day, and retrieving all of them to only work with a narrow dataset can take a long time.
We plan to use this to determine the events created during the Issue Bash to understand the contributions made enable prizewinners to be picked
Screenshots (if relevant)
Does this MR meet the acceptance criteria?
-
Changelog entry added, if necessary -
Documentation created/updated -
API support added - Tests
-
Added for this feature/bug -
All builds are passing
-
-
Conform by the merge request performance guides -
Conform by the style guides -
Branch has no merge conflicts with master
(if it does - rebase it please) -
Squashed related commits together
What are the relevant issue numbers?
Closes #14707 (closed)