Commit Graph
100 Commits
Author SHA1 Message Date
Axel Uhl 8ffbcf46b0 bug6236: fixing NPE in case of null TimeRange for cache 2026-04-14 23:38:34 +02:00
Axel Uhl 8cb72c676e Merge branch 'main' into bug6236 2026-04-14 23:28:16 +02:00
Axel Uhl 751866568e adding synchronization to SmartFutureCacheTest, hoping to fix test;
see, e.g., https://hudson.sapsailing.com/job/SAPSailingAnalytics-master/8085/testReport/com.sap.sailing.domain.test/SmartFutureCacheTest/testExceptionInComputeCacheUpdate/
2026-04-14 20:24:29 +02:00
Axel Uhl 0404e1bd63 bug6236: caching device mappings and using cache; cache hit counting 2026-04-14 18:44:57 +02:00
Axel Uhl abb891e787 bug6236: (WIP) preparing for caching maximum time ranges with same device mappings 2026-04-14 17:37:32 +02:00
Axel Uhl 56d8c77474 Merge branch 'main' into bug6236 2026-04-14 14:55:59 +02:00
Axel Uhl 19d7771ed7 bug6225: trying with a catch (Throwable e) to also catch and log all Errors 2026-04-14 14:54:37 +02:00
Axel Uhl 5bb42d2d8c bug6236: (WIP) moving towards notifying multiple fixes at once 2026-04-14 11:20:22 +02:00
Axel Uhl 486efe3bbe bug6232: release notes 2026-04-11 23:29:48 +02:00
Axel Uhl 1a70f6a830 Merge branch 'main' into bug6232 2026-04-11 23:28:52 +02:00
Axel Uhl 8d7fb3865a Merge branch 'main' into bug6240 2026-04-10 14:18:55 +02:00
Axel Uhl bc0ce32338 Merge branch 'main' into bug6232 2026-04-10 14:18:45 +02:00
Axel Uhl 8e7915c6b8 export GITHUB_TOKEN in env-default-rules.sh so that secret reaches the JVM 2026-04-10 14:18:16 +02:00
Axel Uhl 08db3fc1b1 introduce env var check for GITHUB_TOKEN for GithubReleasesRepository 2026-04-10 13:54:44 +02:00
Axel Uhl 216c1fee75 fixed refreshInstance.sh regarding fetching default release with latest created_at;
the script erroneously sorted by the created_at time stamp of the
"release" and not the "asset." Specifically for repeated workflow runs
this caused inconsistencies, and the release then downloaded was not
necessarily the latest one published.
2026-04-10 12:52:42 +02:00
Axel Uhl 60e91f40d5 compareServers -a now outputs raw json on stdout and other messages to stderr 2026-04-10 09:43:00 +02:00
Axel Uhl 88f051aa78 bug6232: added comment regarding instruction order in updateSettings 2026-04-10 01:03:08 +02:00
Axel Uhl 651c7d639c Merge branch 'main' into bug6232 2026-04-10 00:57:10 +02:00
Axel Uhl a45954cbb1 bug6240: using TableWrapperWithMultiSelectionAndFilter to simplify table implementation 2026-04-10 00:51:11 +02:00
Axel Uhl b8ba3ecb97 Merge remote-tracking branch 'github/main' 2026-04-09 16:49:34 +02:00
Axel Uhl 67d347ed29 Merge branch 'main' into bug6233 2026-04-09 16:19:51 +02:00
Axel Uhl b3239227d4 bug5959 aftermath: don't count same RaceColumn multiple times when looking for attached TrackedRace;
Delegating leaderboards were adding to the count, although they refer to
the same RaceColumn to which the same TrackedRace is attached.
Therefore, waiting for the number of attached RaceLogs would wait
endlessly because only one race log got attached for the single
RaceColumn.
2026-04-09 15:00:59 +02:00
Axel Uhl ba2ea52318 bug6237: release notes 2026-04-09 10:48:56 +02:00
Axel Uhl 6c1209315d added small version of Logo (200x125px) 2026-04-09 10:44:36 +02:00
Axel Uhl cd42dede3a Merge remote-tracking branch 'github/main' 2026-04-09 10:21:03 +02:00
Axel Uhl 1c3c711dc5 upgrading "addressable" Ruby component for Fastlane build to 2.9.0
addressing https://github.com/SAP/sailing-analytics/security/dependabot/19
2026-04-09 10:20:08 +02:00
Axel Uhl 45077d6741 added hint regarding Claude Code web search 2026-04-09 10:08:14 +02:00
Axel Uhl 15c87fd0ad Merge remote-tracking branch 'github/bug6237' into main 2026-04-08 20:12:00 +02:00
Axel Uhl 0e0e68c1d4 tractrac/tracapi_5.1.0: adjusted package list of TracAPI in OSGi MANIFEST.MF 2026-04-08 14:43:27 +02:00
Axel Uhl 0ef42346d6 tractrac/tracapi_5.1.0: fixed compile errors (FINISH_CONFIRMED no longer exists) 2026-04-08 14:43:00 +02:00
Axel Uhl fb7f82fde1 bug6237: result and error handling/display for tracking times revocation 2026-04-08 13:50:48 +02:00
Axel Uhl 1853d4c65f bug6237: show button only for regatta leaderboards 2026-04-07 21:34:43 +02:00
Axel Uhl 96883875c1 bug6237: working towards automating the revocation of explicit tracking times 2026-04-07 18:51:55 +02:00
Axel Uhl 24f7d87b7b bug6233: removed extra empty line 2026-04-07 17:57:51 +02:00
Axel Uhl 1d7cbde38e bug6229: whitespace change only 2026-04-07 10:25:04 +02:00
Axel Uhl a63e3457ce Merge branch 'main' into bug6229 2026-04-07 09:45:12 +02:00
Axel Uhl 201d3c81c4 Merge remote-tracking branch 'github/bug6229' into bug6229 2026-04-07 09:41:47 +02:00
Axel Uhl e4e142d936 bug6229: removed now unused parameter for event/regatta time range filtering 2026-04-06 23:34:05 +02:00
Axel Uhl 1dd7658802 bug6229: removed EventResolver observer from FixLoaderAndTracker 2026-04-06 23:31:07 +02:00
Axel Uhl e939c7669b Merge branch 'main' into bug6229 2026-04-06 23:07:58 +02:00
Axel Uhl 19b646614b whitespace change only 2026-04-06 19:21:59 +02:00
Axel Uhl 34c60f8859 whitespace/typo changes only 2026-04-06 12:04:48 +02:00
Axel Uhl 514187fcd4 bug6233: using default counting buttons in MediaPanel 2026-04-05 18:43:11 +02:00
Axel Uhl d5a58485da Merge branch 'bug6122' into bug6233 2026-04-05 11:27:29 +02:00
Axel Uhl a060e20f31 Merge remote-tracking branch 'github/bug6229' into bug6229 2026-04-05 11:16:03 +02:00
Axel Uhl dafe8cb534 bug6122: fixed HTML for Javadoc comment in SelectionCheckboxColumn 2026-04-05 00:24:51 +02:00
Axel Uhl b4d35be5af bug6228: release notes 2026-04-05 00:14:34 +02:00
Axel Uhl 1bdea87fcc fixed output of notify-unhealthy-mongodb-of-sailing-instance script 2026-04-03 18:14:00 +02:00
Axel Uhl 867545836e bug6228: fix for bug6228, only adding end-of-tracking to race log if willBeRemoved==false 2026-04-02 17:25:23 +02:00
Axel Uhl bb59922839 bug6228: left a comment 2026-04-02 17:15:26 +02:00
Axel Uhl 2ece4a654d Merge branch 'main' into bug6229 2026-04-02 15:33:42 +02:00
Axel Uhl 5e98b928e6 bug6122: also passing SelectionCheckboxColumn.getSelectionManager() to setSelectionModel;
only this way is a translator for selection events registered that maps
the click events on the selection checkboxes to selection toggle events.
2026-04-02 14:22:26 +02:00
Axel Uhl f8fefd4d9a bug6122: release notes 2026-04-01 15:49:13 +02:00
Axel Uhl 4ff63f2f0e bug6122: don't cause flushing of selection changes upon single setSelected(...);
don't force calling of isSelected(...); the changes *will* be flushed
eventually anyhow
2026-04-01 13:56:59 +02:00
Axel Uhl a68828de4a bug6122: fixing SwissTimingEventManagementPanel race table's selection model 2026-04-01 11:47:53 +02:00
Axel Uhl 090a267271 Merge branch 'main' into bug6122 2026-03-31 23:47:14 +02:00
Axel Uhl 3c6db2c46c bug6210: added crontab entries for central MongoDB instance's root user 2026-03-31 23:30:04 +02:00
Axel Uhl f834c73ecf Merge branch 'main' into bug6210 2026-03-31 21:05:22 +02:00
Axel Uhl 13136aff62 bug6214 merge aftermath 2026-03-31 20:30:57 +02:00
Axel Uhl 7796b51e86 Merge remote-tracking branch 'github/main' 2026-03-31 20:29:15 +02:00
Axel Uhl 577173cc11 bug6210: added notify-unhealthy-mongodb-of-sailing-instance script 2026-03-31 18:52:21 +02:00
Axel Uhl 58a4343120 don't use -C in status script; it harms downstream scripts 2026-03-31 18:50:46 +02:00
Axel Uhl 0d28cfb36e bug5959 aftermath: handle null values for newTack field in maneuver persistence handling 2026-03-31 18:50:21 +02:00
Axel Uhl aca311b0e9 Merge branch 'bug6214' 2026-03-31 18:06:43 +02:00
Axel Uhl 0a8e0a1297 bug6229: added CourseArea observer pattern for FixLoaderAndTracker's event cache 2026-03-31 00:01:34 +02:00
Axel Uhl 863468baa2 bug6229: first implementation to filter by Regatta/Event end time during fix import 2026-03-30 18:35:05 +02:00
Axel Uhl bc5bdd9b53 bug6299: added TODOs, fixed old issue with startOfTracking being used for endOfTracking 2026-03-30 13:20:51 +02:00
Axel Uhl d7731ab7d1 Merge branch 'main' into bug6223 2026-03-28 14:06:47 +01:00
Axel Uhl 9e88daf76f security fix for https://github.com/SAP/sailing-analytics/security/dependabot/18 2026-03-28 14:05:04 +01:00
Axel Uhl fa0db9dd03 bug6223: retry simulation up to 100 instead of 10 times 2026-03-28 13:53:27 +01:00
Axel Uhl c903e37001 bug6223: improved Javadoc 2026-03-28 13:50:45 +01:00
Axel Uhl 4e90ebea2f bug6223: encapsulate queue size calculation in SimulationService 2026-03-27 19:57:24 +01:00
Axel Uhl a5944c6f13 bug6223: implementing request repeating for simulator 2026-03-27 18:30:03 +01:00
Axel Uhl cf5255d2e6 bug6223: started a "micro-framework" for retryable action execution 2026-03-27 16:45:50 +01:00
Axel Uhl 8a9e38849d bug6223: release notes updated 2026-03-27 11:14:44 +01:00
Axel Uhl b45dae9412 bug6223: return null from SimulationServiceImpl.getSimulationResults if not cached 2026-03-27 11:06:02 +01:00
Axel Uhl c1f364969d bug6223: improved comment of SmartFutureCache.get(...) 2026-03-27 10:29:49 +01:00
Axel Uhl 92a6fe09cf bug6223: added FIXME comment 2026-03-27 00:27:17 +01:00
Axel Uhl 995cbf7781 bug6214: same thing for refreshable single selection model: don't remove selection for filtered element 2026-03-26 15:00:49 +01:00
Axel Uhl 32e2627a20 bug6214: fixed the filter/de-selection issue;
When the RefreshableMultiSelectionModel has the elements refreshed,
leave selected elements in the selection even if not found in the new
set of objects. This replicates the previous behavior.
2026-03-26 14:57:08 +01:00
Axel Uhl b3e779db94 Merge branch 'bug6214' into bug6214-opus-4.6 2026-03-26 09:42:32 +01:00
Axel Uhl aeadcc57d3 bug6214: disable landscape tests requiring tokens 2026-03-26 09:41:59 +01:00
Axel Uhl bc3b08f513 bug6214: don't exclude all tests from com.sap.sailing.landscape.test 2026-03-25 23:06:33 +01:00
Axel Uhl 883e96612e bug6214: revert disabling of SwissTiming test 2026-03-25 23:05:21 +01:00
Axel Uhl 36837bbbd3 bug6214: don't exclude all tests from com.sap.sailing.landscape.test 2026-03-25 23:02:55 +01:00
Axel Uhl 8cbe589117 bug6214: disabled a SwissTiming competitor import test temporarily 2026-03-25 23:00:52 +01:00
Axel Uhl 1eeacf159b bug6214: disabled a SwissTiming competitor import test temporarily 2026-03-25 22:59:43 +01:00
Axel Uhl e32a6bf51a bug6214-opus-4.6: replaced two more getSelectedSet() calls by getSelectedElements();
this yields further performance improvements
2026-03-25 18:27:28 +01:00
Axel Uhl 8ef29d5871 bug6214-opus-4.6: introduced MultiSelectionModel subclass with quick access to selected elements;
instead of producing a HashSet which requires hashing/comparing with
equals on all elements, which may be expensive, the new
getSelectedElements() method simply uses an ArrayList to create a stable
copy of the selectedSet.values()
2026-03-25 18:21:04 +01:00
Axel Uhl ef0e9df0fc bug6214: picking performance changes around tails and redraw 2026-03-25 17:56:10 +01:00
Axel Uhl 1589affb36 Merge branch 'main' into bug6214-opus-4.6 2026-03-25 17:20:51 +01:00
Axel Uhl 34178f7905 Merge remote-tracking branch 'origin/main' into bug6214 2026-03-25 17:15:29 +01:00
Axel Uhl b6fe5297f0 Merge branch 'main' into bug6214 2026-03-25 17:15:13 +01:00
Axel Uhl f9f47fd48a bug6214: made updates during refreshSelectionModel incrementally minimal 2026-03-25 16:59:04 +01:00
Axel Uhl 9c5f18a0c8 bug6214: added FIXME comment for clear() call in refreshSelectionModel 2026-03-25 16:18:17 +01:00
Axel Uhl 2b427fd551 bug6214-opus-4.6: use ID as String for maneuver loading and use for competitor matching 2026-03-25 15:49:50 +01:00
Axel Uhl b3742b6221 bug6214-opus-4.6: formatting changes only 2026-03-25 13:13:36 +01:00
Axel Uhl f780770849 bug6214: Apply project coding style preferences
Added CLAUDE.md to document coding style:
- Use final declarations where possible
- No early returns (avoid guard clauses)
- No extra empty lines in method bodies

Applied style fixes to LeaderboardPanel:
- Removed early return in selectionChangeHandler, inverted condition instead
- Added final to all local variables and parameters
- Removed extra empty line in addedToSelection/removedFromSelection
- Moved guard flag setting inside condition in updateSelection to avoid unnecessary flag toggling
2026-03-25 11:10:07 +01:00
Axel Uhl d63232f1aa bug6214: Remove unused field and imports after selection model refactoring
Removed:
- Unused HandlerRegistration import
- Unused MultiSelectionModel import
- Unused leaderboardAsTableSelectionModelRegistration field and its assignment
- Updated Javadoc for selectionChangeHandler to remove reference to removed field
2026-03-25 10:54:04 +01:00
Axel Uhl b2c5b61e01 bug6214: Consolidate LeaderboardPanel selection to single RefreshableMultiSelectionModel
Refactored selection state management to use only the SelectionCheckboxColumn's
RefreshableMultiSelectionModel, eliminating the orphaned MultiSelectionModel that
was previously created by LeaderboardPanel.

Changes:
- Use SelectionCheckboxColumn.getSelectionModel() as the single source of truth
- Added updatingSelectionFromProvider guard flag to prevent infinite recursion
- Simplified synchronization logic by removing handler registration/removal complexity
- SelectionCheckboxColumn no longer implements CompetitorSelectionChangeListener
- SelectionCheckboxColumn.getValue() now uses selection model instead of provider
- All selection state synchronization now flows through LeaderboardPanel only

This eliminates the convoluted dual selection model architecture and ensures
proper bidirectional synchronization with CompetitorSelectionProvider without
endless recursions.
2026-03-25 01:46:10 +01:00