67391 Commits
Author SHA1 Message Date
Axel Uhl c93cdf8d74 show gh pr command main-202609122028 main-202609122020 main-202609122018 2026-09-12 19:25:38 +02:00
Axel Uhl 63d425300f Merge branch 'eclipse-main' into eclipse-sailing-analytics-bot-sap-main 2026-09-12 19:10:15 +02:00
Axel Uhl cd32250f44 Merge branch 'sap-main' into eclipse-sailing-analytics-bot-sap-main 2026-09-12 19:10:14 +02:00
Axel Uhl 6f89dcebb4 Merge remote-tracking branch 'eclipse/bug6302' into eclipse-main 2026-09-12 19:07:07 +02:00
Axel Uhl aededd169e fixing UserGroupApiTest by introducing proper wait for checkbox selection;
especially with the new Selenium driver, sending the click() event may
not wait synchronously until all event handlers on the element clicked
have fired and run to completion. This way, the "updating" DOM attribute
used to synchronize in this case may not have been touched. Now we wait
for the checkbox to really be ticked before continuing. Then we can be
sure that the "updating" flag has also been set.

Assisted-By: Opus 4.8
main-202609121600
2026-09-12 15:12:57 +02:00
Axel Uhl a9ff6f354e bug6302: moved new methods for RaceTracker callback handling closer to their caller (addRace) 2026-09-12 14:44:26 +02:00
Axel Uhl 26519a8bb7 bug6302: comment formatting 2026-09-12 14:42:34 +02:00
Axel Uhl ec320f9fef bug6302: fix RacingEventService deadlock in new-race-tracker path
Two related fixes for the permanent hang where a request thread held the
raceTrackersByRegatta write lock while parked in Object.wait(), timing out all
subsequent requests to the service.

TrackedRaceImpl.waitForAllRaceLogsAttached(): the wait guard re-evaluates the
live attached-race-log count inside the synchronized(latchForRaceLogs) block
instead of a stale local captured before entering the monitor. The stale local
could never change, so a notifyAll() that fired between the initial read and
entering wait() was lost, parking the thread forever (classic lost-wakeup).

RacingEventServiceImpl.addRace(...): split the register-or-notify handshake so
that only *claiming* (removing) the callbacks for the new tracker happens under
the raceTrackersByRegatta write lock, atomically with publishing the tracker;
the callbacks are then *invoked* after the lock is released. A callback may
block during tracker startup (waiting for race logs to attach), and previously
that wait ran while holding the global write lock, turning a single stalled
tracker into a service-wide outage. The read-locked find-or-enqueue in
getRaceTrackerByRegattaAndRaceIdentifier(...) still races atomically against the
claim, so no callback can be lost.

Assisted-By: Claude Opus 4.8
2026-09-12 14:41:49 +02:00
Axel Uhl 18a35f30f8 improved CLAUDE.md file regarding serialVersionUID 2026-09-12 13:37:04 +02:00
Axel Uhl 330e342c97 Merge pull request #73 from eclipse-sailing-analytics-bot/main
Merged latest eclipse/main updates to downstream
2026-09-12 07:35:20 +02:00
Axel Uhl c8426eedc3 Merge branch 'eclipse-main' into eclipse-sailing-analytics-bot-sap-main 2026-09-11 20:10:53 +02:00
Axel Uhl 1c020b6f83 Merge remote-tracking branch 'eclipse/bug6301' into eclipse-main 2026-09-11 20:07:53 +02:00
Axel Uhl eef77bd20e Merge pull request #72 from eclipse-sailing-analytics-bot/main
Merged latest eclipse/main updates to downstream
2026-09-11 17:31:12 +02:00
Axel Uhl 726d92fdd8 Merge branch 'eclipse-main' into eclipse-sailing-analytics-bot-sap-main 2026-09-11 16:38:32 +02:00
Axel Uhl 6345980616 bug6301: admin release notes updated 2026-09-11 16:38:06 +02:00
Axel Uhl aeba3e5822 bug6301: failing test plus fix for updating competitor's nationality only from TracTrac 2026-09-11 16:20:42 +02:00
Axel Uhl 24c18b88aa Merge pull request #6300 from LisaSAP/lisa_eclipse-main
Update Onboarding Text by correcting Link Text
2026-09-10 21:05:15 +02:00
Lisa 6f3485ceeb Update Onboarding Text by correcting Link Text 2026-09-10 15:12:48 +02:00
Axel Uhl d05840787a Merge pull request #71 from eclipse-sailing-analytics-bot/main
Merged latest eclipse/main updates to downstream
2026-09-09 23:58:28 +02:00
Axel Uhl ef404d3ec2 Merge branch 'eclipse-main' into sap-main; ignore upstream change of docs background image 2026-09-09 23:54:53 +02:00
Axel Uhl 30cd390311 updated background image for Github Pages 2026-09-09 22:33:55 +02:00
Axel Uhl e9db5fc5a6 Merge pull request #70 from eclipse-sailing-analytics-bot/main
Merged latest eclipse/main updates to downstream
2026-09-09 16:21:21 +02:00
Axel Uhl 650229a38a Merge branch 'eclipse-main' into sap-main
Adjust the container image badge to the downstream SAP package.

Assisted-By: GPT-5.6-sol
2026-09-09 16:14:58 +02:00
Axel Uhl bce63b173c add container image tag to README.md
Link the badge to the upstream repository's GHCR package page.

Assisted-By: GPT-5.6-sol
main-202609091525
2026-09-09 16:11:03 +02:00
Axel Uhl 5bddde6460 Merge pull request #69 from eclipse-sailing-analytics-bot/main
Merged latest eclipse/main updates to downstream
2026-09-09 16:06:15 +02:00
Axel Uhl b76248bae5 moved README.md tags up, right under the main heading 2026-09-09 15:59:47 +02:00
Axel Uhl 28fe4da7f1 Merge branch 'sap-main' into eclipse-sailing-analytics-bot-sap-main 2026-09-09 15:58:31 +02:00
Axel Uhl 186358389c Merge remote-tracking branch 'sap/main' into sap-main 2026-09-09 15:58:05 +02:00
Axel Uhl 38344c9de1 Merge branch 'sap-main' into eclipse-sailing-analytics-bot-sap-main 2026-09-09 15:56:49 +02:00
Axel Uhl a08413f4dd Merge branch 'eclipse-main' into sap-main 2026-09-09 15:02:41 +02:00
Axel Uhl 803467b9b7 fixed tags in README.md 2026-09-09 14:30:29 +02:00
Axel Uhl 972abfb0de added more tags to the README.md 2026-09-09 14:28:26 +02:00
Axel Uhl 5e50df5c1d Merge pull request #68 from eclipse-sailing-analytics-bot/main
Merged latest eclipse/main updates to downstream
2026-09-08 21:27:46 +02:00
Axel Uhl de74864131 Merge branch 'eclipse-main' into eclipse-sailing-analytics-bot-sap-main 2026-09-08 18:16:41 +02:00
Axel Uhl e3493a5057 Merge branch 'eclipse-main' into bug6299 2026-09-08 17:08:13 +02:00
Axel Uhl e2fecc9f9f Wait for Media tab content after navigation
The Media tab replaces the event activity asynchronously, so wait for the new tab content before constructing its page object.

Assisted-By: GPT-5.6-sol
main-202609081558 main-202609090835
2026-09-08 17:05:36 +02:00
Axel Uhl b1442b9cb0 Merge branch 'eclipse-main' into bug6299 2026-09-08 14:52:10 +02:00
Axel Uhl db2cdd7d01 Stabilize asynchronous admin workflows
Wait for lazily loaded tab content instead of failing on transient absence, and sequence and track event, regatta, and leaderboard creation callbacks so dependent dialogs see persisted state.

Assisted-By: GPT-5.6-sol
2026-09-08 14:51:48 +02:00
Axel Uhl 39bbd61089 bug6299: synchronize animated inputs and expected login alerts
Extract a reusable interactability wait so media URL entry waits for the animated dialog to settle before clearing the input. Track public-server configuration requests and explicitly handle the expected tenant warning during the affected login test.

Assisted-By: GPT-5.6-sol
2026-09-07 23:50:59 +02:00
Axel Uhl 9d2f48b21a Merge pull request #67 from eclipse-sailing-analytics-bot/main
Merged latest eclipse/main updates to downstream
2026-09-07 23:04:35 +02:00
Axel Uhl bfd21494f8 bug6299: more robust check for whether element is clickable;
this is intended to help with animated elements such as the race map
settings, or an animated error dialog's buttons.

Assisted-By: Claude Code + GPT 5.6 Sol
2026-09-07 18:36:07 +02:00
Axel Uhl 6fea91d86e bug6299: un-pin Firefox for Selenium tests, default to latest
Now that the Selenium suite is on 4.13.0 (#6298) and speaks the W3C WebDriver
protocol, the Firefox 140 pin is no longer needed: the pin was a symptom of
Selenium 3's JSON Wire Protocol drifting from modern geckodriver/Firefox.
Default the firefox_version workflow_dispatch input to "latest" (both the input
default and the empty-input fallback) so CI tracks the current Firefox; the
setup-firefox action pairs a matching geckodriver automatically. The input is
kept so a specific version can still be pinned at dispatch time if a future
Firefox release regresses.

Assisted-By: Claude (claude-4.8-opus)
2026-09-07 14:12:36 +02:00
Axel Uhl 44e10ffcd7 bug6298: vendor commons-exec 1.3 required by selenium-os DriverService
Selenium 4's selenium-os module (org.openqa.selenium.os.CommandLine, used by
DriverService.start() to launch the driver binary) depends on Apache Commons
Exec 1.3. Selenium 3's fat client-combined jar bundled it; the modular
Selenium 4 needs it as a separate transitive. Its absence caused a runtime
NoClassDefFoundError: org/apache/commons/exec/ExecuteWatchdog on the first
driver session start. Added commons-exec-1.3.jar (the version pinned by
selenium-os 4.13.0) to lib/ and wired it into Bundle-ClassPath, build.properties
and .classpath. Not re-exported, as only selenium-os references it internally.

Assisted-By: Claude (claude-4.8-opus)
main-202609071810
2026-09-07 13:31:41 +02:00
Axel Uhl fa56d3774c Merge branch 'bug6298' of github.com:eclipse-sailing-analytics/sailing-analytics into bug6298 2026-09-07 13:21:43 +02:00
Axel Uhl ffddbaa58f bug6298: re-export guava base/collect packages consumed directly by the test bundle
The Selenium 4 wrapper rewrite dropped the com.google.common.base and
com.google.common.collect exports that the Selenium 3 bundle provided. The
test bundle uses Guava directly (Objects, Function, ImmutableList) via
Require-Bundle, so Tycho's PDE compiler rejected those references with
"Access restriction: ... is not API". Plain javac did not catch this because
it ignores OSGi Export-Package/Require-Bundle API boundaries. Re-exporting the
two packages restores API access, matching the Selenium 3 behavior.

Assisted-By: Claude (claude-4.8-opus)
2026-09-07 13:20:24 +02:00
Axel Uhl 82e75cbf30 Merge branch 'eclipse-main' into bug6298 2026-09-07 13:13:16 +02:00
Axel Uhl 467266f595 bug6298: migrate Selenium test suite from 3.141.59 to 4.13.0
Selenium 3.x only speaks the legacy JSON Wire Protocol, which forces us to
pin old browser versions. Selenium 4 brings the W3C WebDriver protocol.
Since the reactor still runs on Java 8 and Selenium 4.14+ requires Java 11,
4.13.0 is the migration target: the last Java-8-compatible release.

org.openqa.selenium.osgi wrapper bundle:
- Drop the Selenium-3 client-combined fat jar and its transitives.
- Add the 12 Selenium 4.13.0 modules + selenium-chromium-driver and the
  required transitive runtime deps (Netty async HTTP client, OpenTelemetry).
- Keep the legacy org.json jar (still consumed by the test bundle and
  previously re-exported here); DevTools/CDP jars intentionally omitted
  (the suite uses no CDP).
- Re-scope Export-Package to the 4.13.0 package layout; keep
  Bundle-RequiredExecutionEnvironment JavaSE-1.8. Bump bundle to 4.13.0
  and mirror the jar list in .classpath, build.properties and pom.xml.

com.sap.sailing.selenium.test source fixes:
- WebDriverWait(WebDriver, long) -> WebDriverWait(WebDriver, java.time.Duration).
- org.openqa.selenium.internal.WrapsElement -> org.openqa.selenium.WrapsElement.
- ElementNotSelectableException (removed) -> ElementNotInteractableException.
- Bump wrapper-bundle dependency to 4.13.0.

The full test bundle compiles cleanly against the new wrapper on Java 8.

Assisted-By: Claude (claude-4.8-opus)
2026-09-07 10:33:40 +02:00
Axel Uhl 1fcdeb7e8d Merge branch 'eclipse-main' into eclipse-sailing-analytics-bot-sap-main 2026-09-07 10:10:36 +02:00
Axel Uhl f20e9476a6 Merge pull request #6297 from Adbo05/main
Use "du" instead of formal "Sie" in the German translation
main-202609052359
2026-09-05 23:04:18 +02:00
Adbo05 6f114ef288 Merge branch 'eclipse-sailing-analytics:main' into main 2026-09-05 15:40:46 +02:00