Addition of Saving and Loading of Filter Presets [WIP] #4755
+789
−11
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request introduces a new "filter preset" feature to CodeChecker, allowing users to save, retrieve, list, and delete named sets of report filters. It also includes updates to the API version and necessary database changes to support this functionality. The changes span the backend, API, database schema, and client helpers.
Filter Preset Feature:
FilterPresetstruct toreport_server.thriftand defined four new API endpoints:storeFilterPreset,getFilterPreset,deleteFilterPreset, andlistFilterPresetfor managing filter presets. Also addedgetNameByValueForFilterto convert enum values to UI-friendly names. [1] [2] [3]report_server.pyfor storing, retrieving, deleting, and listing filter presets, including validation and error handling.results.py) to call the new filter preset API endpoints.Database and Migration Updates:
filter_presetstable via Alembic migration, with unique preset names and JSON storage for report filters.FilterPresetORM model torun_db_model.pyto support the new table. [1] [2]Version and Packaging Updates:
6.68.0across Python, Node.js, and client/server package manifests. [1] [2] [3] [4] [5] [6] [7]Build and Maintenance:
completly-rebuild-thrift.shto automate rebuilding the Thrift API and related environment setup.