Skip to content

Conversation

@fengelniederhammer
Copy link
Contributor

resolves #1480

The MutationsOverTimeModel already had a quite well-suited abstraction that made the implementation straight forward. I renamed a bunch of things to fit the more general case that we have now.

PR Checklist

  • All necessary documentation has been adapted.
  • The implemented feature is covered by an appropriate test.

@vercel
Copy link

vercel bot commented Jan 8, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Review Updated (UTC)
lapis Ready Ready Preview, Comment Jan 13, 2026 7:47am

@github-actions
Copy link
Contributor

github-actions bot commented Jan 8, 2026

This is a preview of the changelog of the next release. If this branch is not up-to-date with the current main branch, the changelog may not be accurate. Rebase your branch on the main branch to get the most accurate changelog.

Note that this might contain changes that are on main, but not yet released.

Changelog:

0.6.4 (2026-01-13)

Features

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds a new endpoint /component/queriesOverTime that generalizes the existing mutations-over-time functionality to support arbitrary queries. The implementation refactors the existing MutationsOverTimeModel into a more general QueriesOverTimeModel that can handle both specific mutation queries and custom query expressions.

Key Changes

  • Introduced a new /component/queriesOverTime endpoint accepting custom query expressions with separate count and coverage queries
  • Refactored MutationsOverTimeModel to QueriesOverTimeModel to support both mutations and arbitrary queries
  • Updated the existing mutations-over-time endpoints to use the refactored model while maintaining backward compatibility

Reviewed changes

Copilot reviewed 15 out of 15 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
lapis/src/main/kotlin/org/genspectrum/lapis/controller/QueriesOverTimeController.kt Renamed controller and added new postQueriesOverTime endpoint
lapis/src/main/kotlin/org/genspectrum/lapis/model/mutationsOverTime/QueriesOverTimeModel.kt Renamed model class and added evaluateQueriesOverTime method for handling arbitrary queries
lapis/src/main/kotlin/org/genspectrum/lapis/request/QueriesOverTimeRequest.kt Added new request types for queries over time functionality
lapis/src/main/kotlin/org/genspectrum/lapis/response/LapisResponse.kt Generalized response type to support both mutations and queries
lapis/src/main/kotlin/org/genspectrum/lapis/openApi/*.kt Added OpenAPI schema definitions for the new endpoint
lapis/src/test/kotlin/org/genspectrum/lapis/controller/QueriesOverTimeControllerTest.kt Added comprehensive tests for the new endpoint
lapis/src/test/kotlin/org/genspectrum/lapis/model/mutationsOverTime/*.kt Updated tests to use refactored model class
lapis-e2e/test/queriesOverTime.spec.ts Added end-to-end test for the new endpoint

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Contributor

@fhennig fhennig left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice!

@fengelniederhammer fengelniederhammer merged commit 6a9597c into main Jan 14, 2026
8 of 9 checks passed
@fengelniederhammer fengelniederhammer deleted the 1480-new-query-over-time-endpoint branch January 14, 2026 07:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

New "query-over-time" endpoint

3 participants