Feature/migrate gsak filters - #935
Merged
Merged
Conversation
Map GSAK criteria that previously fell back to Where-SQL or comments onto the filter rows now available on beta: - User data 1-4 -> UserData1-4Filter (regex operators now run too) - User note yes/no -> UserNoteFilter (not_empty / empty) - Elevation -> ElevationFilter - Compass quadrants -> DirectionFilter - Open-ended/equal distance -> DistanceFilter op at_least / equal - GSAK "reverse filter" -> FilterSet negate (global Invert filter) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- TB/coin name -> Trackables tab name row (all text operators, regex included) - "has no trackables" -> TrackableFilter count equal 0 - A TB name combined with "no trackables" can never match; the name is left as a comment so the dialog's single trackable row stays intact Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Contributor
Author
|
implementation of #891 |
Member
|
@nagisml |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Feature list — feature/migrate-gsak-filters
Written for: reviewers of the branch.
File → Import GSAK Filters… reads the saved filters from GSAK's gsak.db3 (or the one inside a GSAK backup .zip) and writes them as OpenSAK filter profiles. It runs as a GUI task: you pick which filters to import, and it ends with a coverage report per condition.
Migrated to native filter rows
Cache types, container sizes, difficulty/terrain
Found / not found, DNF, FTF, premium, availability, locked, user flag, corrected coordinates
All text fields with every operator (regex included), user data 1–4, personal note, full-text search
Favourite points and elevation, as conditions
Distance, fixed at your home point
Bearing in degrees and compass quadrants, both as Direction
Date fields, including rolling windows ("during the last N days") and "compared with" another date (the order of GSAK's lists is assumed — check after import)
The Logs tab: log types, groups, last N logs, finder name or ID, date, count and include/exclude
The Waypoints tab: type, text, date, "created by me", count
Attributes, area selection (line or polygon), TB/coin name and "has / no trackables"
Reverse filter, as Invert filter
Migrated with a known difference (noted in the import report)
Last N logs: GSAK counts within the ticked log groups, OpenSAK over all logs. They agree when all three groups are ticked.
Bearing: measured from the active centre point, and only as fresh as the last distance recalculation.
Record created date / Last GPX update: OpenSAK stamps these locally, not from GSAK's values.
Migrated as SQL in the Where tab (it runs, but there's no filter row for it)
Watch list, user sort, my found count
Source file, "last user update" date, attributes that must be absent
Distance when no home point is set
A bearing that sits next to compass quadrants
GSAK's own WHERE clause, when it translates cleanly
Not migrated (left as -- comments in the Where tab, to rebuild by hand)
GSAK user-defined columns
The Waymark and L&F Celebration cache types
Regex on fields that only exist as SQL
Comparisons involving "Last user update"
GSAK macro variables, and any WHERE clause that doesn't translate