Skip to content

Bump SBT 1.10.7, Scala 2.12.20/2.13.16/3.3.5, and all build plugins#5

Open
halotukozak wants to merge 27 commits intoseries/3.x-avsfrom
bump-dependencies
Open

Bump SBT 1.10.7, Scala 2.12.20/2.13.16/3.3.5, and all build plugins#5
halotukozak wants to merge 27 commits intoseries/3.x-avsfrom
bump-dependencies

Conversation

@halotukozak
Copy link
Member

Summary

  • SBT 1.5.2 → 1.10.7
  • Scala 2.12.15/2.13.8/3.1.2 → 2.12.20/2.13.16/3.3.5
  • sbt-tpolecat 0.3.1 (io.github.davidgregory084) → 0.5.3 (org.typelevel)
  • sbt-mima-plugin → 1.1.4, sbt-jmh → 0.4.7, sbt-scalafmt → 2.5.4, sbt-header → 5.10.0, sbt-pgp → 2.3.1, sbt-sonatype → 3.12.2, sbt-git → 2.1.0, sbt-dynver → 5.1.0, sbt-reproducible-builds → 0.32
  • sbt-assembly intentionally kept at 1.2.0 (2.x breaks JCTools shading)

Compilation fixes

  • Added -Wconf suppressions for tpolecat 0.5.x value-discard warnings (Scala 2.13)
  • Removed -Werror for Scala 3 (tpolecat 0.5.x API change)
  • Fixed CancelablePromise.scala refutable pattern for Scala 3 (@unchecked)
  • Suppressed other-implicit-type warning for Scala 2.13.16
  • Tuned test-scope scalacOptions for pre-existing patterns

Known issues (pre-existing, not introduced by this PR)

  • Scala.js test CatsEffectIssue380Suite hangs — unrelated to dependency changes
  • MiMa reports TrampolineExecutionContext startLoop signature change — intentional fix from earlier commit on series/3.x-avs, needs exclusion filter

Test plan

  • sbt exit loads without errors
  • sbt ++2.12.20 compile passes
  • sbt ++2.13.16 compile passes
  • sbt ++3.3.5 compile passes
  • sbt +test (JVM tests pass; JS hangs on pre-existing issue)
  • sbt +mimaReportBinaryIssues (needs TrampolineEC exclusion filter)

🤖 Generated with Claude Code

halotukozak and others added 25 commits February 24, 2026 14:40
 - Bump kind-projector and silencer versions\n - Silence other-implicit-type warnings in 2.13\n - Revert sbt-assembly to 1.2.0 to keep shading working
 - Explicitly state that starting a new stack trace is intentional for performance and thread-safety\n - Add verification tests in TracingSuite
….typelevel 0.5.3

- Replace io.github.davidgregory084 group with org.typelevel in project/plugins.sbt
- Update plugin version from 0.3.1 to 0.5.3
- Add explicit import org.typelevel.scalacoptions.ScalacOptions to build.sbt (required by 0.5.x API)
- SBT loads without errors after migration
…tion plan

- Create 01-01-SUMMARY.md documenting the org.typelevel migration
- Update STATE.md with current position (Phase 01, Plan 02 next) and decisions
- Update ROADMAP.md plan progress (1/2 summaries for phase 01)
- Mark requirement UP-02 complete in REQUIREMENTS.md

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add -Wconf:msg=unused value of type:silent for Scala 2.13 to suppress
  -Wvalue-discard warnings newly enabled by tpolecat 0.5.x (pre-existing
  patterns like trySuccess/tryFailure returning Boolean are intentional)
- Remove -Werror for Scala 3 (tpolecat 0.5.x uses -Werror, not -Xfatal-warnings;
  the existing removal of -Xfatal-warnings was insufficient)
- Fix CancelablePromise.scala:245: add @unchecked to val x :: xs pattern
  (Scala 3 requires annotation for refutable patterns used as definitions)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…erns

Add Test / scalacOptions --= to remove warnings that tpolecat 0.5.x newly
enables for test compilation but which trigger on pre-existing test patterns:
- Remove -Wunused:patvars (2.13) / -Ywarn-unused:patvars (2.12): triggers on
  for-comprehension loop vars (e.g. `for (i <- 0 until 5) yield Future {...}`)
- Remove -Xlint:constant (2.13): triggers on intentional overflow tests
  (e.g. `mc.orderedUpdate(c2, Long.MaxValue + 1)` in OrderedCancelableSuite)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Create 01-02-SUMMARY.md documenting UAT-verified cross-compilation
  success on Scala 2.12.20, 2.13.16, and 3.3.5
- Update STATE.md: Phase 01 all plans complete; document known issues
  (CatsEffectIssue380Suite JS hang, MiMa TrampolineExecutionContext)
- Update ROADMAP.md: Phase 1 marked complete (2/2 plans done)
- Mark requirements UP-01 and UP-02 complete in REQUIREMENTS.md

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings February 26, 2026 13:53
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates Monix’s build toolchain to newer SBT/Scala patch versions and refreshes sbt plugins, with follow-up compilation/test adjustments to accommodate tpolecat 0.5.x warning defaults and Scala 3 compiler strictness.

Changes:

  • Bumped SBT to 1.10.7, updated Scala versions in CI, and upgraded build plugins (including tpolecat → 0.5.3 under org.typelevel).
  • Adjusted scalacOptions / -Wconf suppressions and test-scope compiler options to keep cross-compilation working under the new toolchain.
  • Applied a Scala 3 refutable-pattern fix (@unchecked) and added/updated tracing tests and documentation notes about fiber stack-trace behavior.

Reviewed changes

Copilot reviewed 7 out of 9 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
project/build.properties Bumps SBT version to 1.10.7.
project/plugins.sbt Updates sbt plugin versions and adds a dependency scheme override for geny.
build.sbt Adds tpolecat-related -Wconf suppressions, tunes test-scope scalac options, and disables Scala 3 fatal warnings.
.github/workflows/build.yml Updates Scala versions in the CI matrix.
.jvmopts Removes a legacy JVM option.
monix-execution/shared/src/main/scala/monix/execution/CancelablePromise.scala Scala 3 compatibility tweak for a refutable pattern binding.
monix-eval/shared/src/main/scala/monix/eval/Task.scala Documents stack-trace behavior for Task.start / startAndForget.
tracingTests/src/test/scala/tracing/TracingSuite.scala Adds tests asserting stack-trace isolation behavior for fibers.
.planning/** Adds planning/roadmap/state docs for the maintenance effort and decisions.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@halotukozak halotukozak self-assigned this Feb 26, 2026
@halotukozak halotukozak requested a review from mikkolaj February 26, 2026 14:01
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.

2 participants