The GitHub Actions job "Validate and test" on pekko-persistence-r2dbc.git/main 
has failed.
Run started by GitHub user ptrdom (triggered by ptrdom).

Head commit for run:
a935b9fe8b82bdcba605dca523084e961728b1db / Domantas Petrauskas 
<[email protected]>
Test against Scala 3 LTS and Next, publish only Scala 2.13 and 3.3 (#523)

* Test against Scala 3 LTS and Next, publish only Scala 2.13 and 3.3

Motivation:
Scala3Next was added at 3.8.4 to test the next Scala 3 line, but Scala
Steward moved it to 3.9.0, which is the new Scala 3 LTS, and keeps it on
3.9.x. Scala Next (3.10) is no longer tested. Also, +publish and
+publishSigned publish every crossScalaVersions entry, and all Scala 3
versions share the _3 suffix, so nightly _3 snapshots were built with
3.9.0 instead of 3.3.8.

Modification:
- Keep Scala3 = 3.3.8, add Scala3Lts = 3.9.0, set Scala3Next = 3.10.0.
- Skip publishing and MiMa for Scala3Lts and Scala3Next.
- Replace `with` type operators, which Scala 3.10 rejects, with
  per-Scala-version type aliases in internal SettingsTypes.
- Read the CI Scala matrix from project/Dependencies.scala.

Result:
CI tests Scala 2.13, 3.3, 3.9 LTS and 3.10 Next. Only 2.13 and 3.3
artifacts are published. The CI matrix follows Dependencies.scala.

Tests:
- sbt +Test/compile (2.13.18, 3.3.8, 3.9.0, 3.10.0): success
- sbt +mimaReportBinaryIssues: success
- sbt scalafmtCheckAll scalafmtSbtCheck headerCheckAll: success
- publish / skip per Scala version checked with sbt show
- actionlint on build-test.yml: no new findings
- Database tests not run locally, CI runs them

References:
Refs #506, #438, #485

* Switch CI Scala matrix to named sbt aliases

Motivation:
Review on #523: reading every `val Scala... = "x.y.z"` from
Dependencies.scala would also pick up unrelated values such as a
future `val ScalaTestVersion`, and the extra scala-versions job made
every matrix job wait on it.

Modification:
- Add `scala213`, `scala3`, `scala3Lts` and `scala3Next` command
  aliases in build.sbt that switch to the named Dependencies values.
- Use the alias names as the CI matrix and drop the scala-versions job.

Result:
The CI matrix lists the four named Scala versions. Versions are only
defined in Dependencies.scala, so Steward bumps still apply to CI.

Tests:
- sbt scala213/scala3/scala3Lts/scala3Next with show core/scalaVersion
  and core/publish/skip: 2.13.18/false, 3.3.8/false, 3.9.0/true,
  3.10.0/true
- sbt scala3Next Test/compile: success
- sbt scalafmtCheckAll scalafmtSbtCheck: success
- actionlint 1.7.7: only the existing matrix.COMPILE_ONLY warning

References:
Refs #523

* Check binary compatibility only for published Scala versions

Motivation:
The Binary Compatibility job ran `+compile` and `+mimaReportBinaryIssues`.
MiMa already skips Scala3Lts and Scala3Next, but both commands still
compiled them, so a Scala Next break would turn the job red although no
published artifact is affected.

Modification:
Run compile and mimaReportBinaryIssues with the scala213 and scala3
aliases instead of `+`.

Result:
The Binary Compatibility job only builds and checks Scala 2.13 and 3.3,
the versions that are published.

Tests:
- sbt scala213 compile scala3 compile: success
- sbt scala213 mimaReportBinaryIssues scala3 mimaReportBinaryIssues: success
- actionlint 1.7.7 on binary-compatibility-checks.yml: no findings

References:
Refs #523

* Test Scala 3 LTS and Next nightly and on their version bumps

Motivation:
Review on #523: testing three Scala 3 versions on every commit uses too
much of the ASF GitHub Actions budget.

Modification:
A select job picks the Scala matrix per event:
- pull requests and pushes: scala213 and scala3
- pull requests that change `val Scala3Lts` or `val Scala3Next` in
  project/Dependencies.scala: also scala3Lts and scala3Next
- new nightly schedule: scala3Lts and scala3Next
- workflow_dispatch: all four
A failing `git diff` fails the select job instead of silently skipping
LTS and Next.

Result:
Regular CI only tests the published Scala versions. Scala 3 LTS and
Next are tested nightly and before Steward bumps of them are merged.

Tests:
- Select step on synthetic commits: Scala3Lts or Scala3Next bump selects
  all four; Scala3, Scala213 and Scala3TestOnly edits select scala213
  and scala3
- Select step on depth-2 checkouts of refs/pull/523/merge (all four) and
  refs/pull/517/merge (scala213, scala3), with bash -eo pipefail
- Depth-1 checkout: step fails with exit 128
- actionlint 1.7.7: only the existing matrix.COMPILE_ONLY warning

References:
Refs #523

* Test only the Scala 3 LTS or Next version a pull request bumps

Motivation:
A pull request that changed only `Scala3Next` also tested `Scala3Lts`,
and the other way round.

Modification:
Check the `val Scala3Lts` and `val Scala3Next` lines separately and add
only the alias whose line the pull request changes.

Result:
A Scala Next bump tests 2.13, 3.3 and Next. A Scala LTS bump tests
2.13, 3.3 and LTS. A pull request changing both tests all four.

Tests:
- Select step on synthetic commits: Next only, LTS only, both, Scala3
  only and Scala3TestOnly edit select the expected versions
- Select step on depth-2 checkouts of refs/pull/523/merge (all four) and
  refs/pull/517/merge (scala213, scala3), with bash -eo pipefail
- Depth-1 checkout: step fails with exit 128
- actionlint 1.7.7: only the existing matrix.COMPILE_ONLY warning

References:
Refs #523

* Only compile Scala 3 LTS and Next, run integration tests on published versions

Motivation:
Review on #523: database integration tests are not needed for Scala 3.9
and 3.10, compiling is enough.

Modification:
- Run the PostgreSQL, PostgreSQL JSONB, YugabyteDB and MySQL jobs only
  for scala213 and scala3, without waiting for the select job.
- Skip those jobs and Docs on the nightly schedule.
- Test and compile still uses the selected Scala versions.

Result:
Scala 3.9 LTS and 3.10 Next are only compiled (main and test sources),
nightly and on pull requests that bump them. Integration tests run on
the published Scala 2.13 and 3.3.

Tests:
- actionlint 1.7.7: only the existing matrix.COMPILE_ONLY warning

References:
Refs #523

Report URL: 
https://github.com/apache/pekko-persistence-r2dbc/actions/runs/40258619330

With regards,
GitHub Actions via GitBox


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to