bobbylight / RSyntaxTextArea

A syntax highlighting, code folding text editor for Java Swing applications.
BSD 3-Clause "New" or "Revised" License
1.12k stars 259 forks source link

Improve CI coverage via github-actions-random-matrix #435

Open vlsi opened 2 years ago

vlsi commented 2 years ago

Describe the solution you'd like

Use https://github.com/vlsi/github-actions-random-matrix for GitHub Actions matrix generation

For instance, parameters like headless=true|false, os=linux|windows, java=8|11|17, timezone=..., coverage=collect|ignore are hard to configure manually as it would result in a big number of CI jobs causing long CI durations or it would be hand-picked selection which might miss bugs.

I suggest using a randomized approach, so every time CI uses a slightly different set of parameters, so eventually it would get better coverage.

Note: there can be explicit constraints like "there should be at least one job with Java 8", "at least one job with Linux", "at least one job with Windows", "at least one with headless=true/false", and it could add a random selection of the jobs.

WDYT?

Are there any workarounds?

The matrix has to be configured manually.

Additional context

Sample integrations: https://github.com/cbeust/testng/actions/runs/1863017796 https://github.com/apache/jmeter/pull/693 https://github.com/qos-ch/logback/pull/556 see also https://github.com/vlsi/github-actions-random-matrix#sample-integrations