Skip to content

[Build] Run API check and javadoc only once per operating system - #3485

Merged
akurtakov merged 1 commit into
eclipse-platform:masterfrom
vogella:ci-api-check-once-per-os
Aug 6, 2026
Merged

[Build] Run API check and javadoc only once per operating system#3485
akurtakov merged 1 commit into
eclipse-platform:masterfrom
vogella:ci-api-check-once-per-os

Conversation

@vogella

@vogella vogella commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

The reusable build workflow always passed -Papi-check -Pjavadoc, so the API tools check and the javadoc generation ran in all six PR jobs. Neither depends on the GTK version, the GDK backend or the target architecture, only on the Java sources, so the three Linux jobs and the two macOS jobs were computing identical results. I verified the macOS case rather than assuming it: the two cocoa fragments compile the same source folders and their jars contain an identical set of 768 class files with identical sizes and an identical .api_description apart from the component id.

A new boolean input api_check (default false) now gates both profiles, and maven.yml enables it for exactly one job per operating system: gtk3/x11 on Linux, the single Windows job and aarch64 on macOS. That takes the API check and javadoc from six runs down to three, which cuts a few minutes off the slowest jobs without losing any coverage. Unlike most Eclipse repos, SWT does have a genuinely different API surface per gtk/win32/cocoa fragment, so the check deliberately stays per operating system instead of collapsing to a single global run.

Fixes #3484

The reusable build workflow always passed -Papi-check and -Pjavadoc, so
both ran in all six PR jobs. Neither depends on the GTK version, the GDK
backend or the target architecture, only on the Java sources, so the
three Linux jobs and the two macOS jobs computed identical results.

A new boolean input api_check (default false) now gates the two profiles,
and maven.yml enables it for one job per operating system: gtk3/x11 on
Linux, the single Windows job and aarch64 on macOS. The API surface still
differs between the gtk, win32 and cocoa fragments, so the check stays
per operating system.

Fixes eclipse-platform#3484
@github-actions

github-actions Bot commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

Test Results

  212 files  ±0    212 suites  ±0   29m 44s ⏱️ -24s
4 894 tests ±0  4 870 ✅ ±0   24 💤 ±0  0 ❌ ±0 
7 065 runs  ±0  6 897 ✅ ±0  168 💤 ±0  0 ❌ ±0 

Results for commit 41b18a3. ± Comparison against base commit 2e68c71.

@akurtakov

Copy link
Copy Markdown
Member

The compiler warnings are unrelated and TBH I have no clue why they appear (it's not the first time in my experience). Merging despite them.

@akurtakov
akurtakov merged commit 4755f49 into eclipse-platform:master Aug 6, 2026
21 of 24 checks passed
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.

Run API tools check and javadoc only once per OS

2 participants