This is an automated email from the ASF dual-hosted git repository.

pjfanning pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/pekko-projection.git


The following commit(s) were added to refs/heads/main by this push:
     new 6a5a5ee6 Update sbt-mima-plugin to 1.2.0 (#622)
6a5a5ee6 is described below

commit 6a5a5ee69895dbdc9cd48ffbb8154679640c66b2
Author: Scala Steward <[email protected]>
AuthorDate: Tue Sep 8 22:39:44 2026 +0200

    Update sbt-mima-plugin to 1.2.0 (#622)
    
    * Update sbt-mima-plugin to 1.2.0
    
    * Add MiMa excludes for internal offset stores
    
    Motivation:
    MiMa 1.2.0 reports pre-existing changes in the @InternalApi offset store
    classes that MiMa 1.1.6 did not detect, so the sbt-mima-plugin 1.2.0
    upgrade fails the Check Code Style job for the slick and r2dbc modules.
    
    Modification:
    Add backwards excludes for the newly reported problems in
    SlickOffsetStore and R2dbcOffsetStore. Both classes are
    @InternalApi private[projection], so they carry no compatibility
    guarantee.
    
    Result:
    mimaReportBinaryIssues passes for the slick and r2dbc modules with
    sbt-mima-plugin 1.2.0.
    
    Tests:
    - sbt "slick/mimaReportBinaryIssues" "r2dbc/mimaReportBinaryIssues" / 
success
    
    References:
    Refs #622
    
    * Give the code style check job more heap
    
    Motivation:
    The Check Code Style job runs sbt with the default 1GB heap. With
    sbt-mima-plugin 1.2.0 the mimaReportBinaryIssues run over all modules
    spends most of its time in GC and then dies with
    java.lang.OutOfMemoryError: Java heap space.
    
    Modification:
    Set JAVA_OPTS for the code style and binary-compatibility step, using
    the same JVM settings as the nightly publish workflow but with a 4GB
    maximum heap.
    
    Result:
    The job has enough heap to complete checkCodeStyle and
    mimaReportBinaryIssues.
    
    Tests:
    - Not run - CI configuration only; verified by the GitHub Actions run on 
this PR
    
    References:
    Refs #622
    
    ---------
    
    Co-authored-by: PJ Fanning <[email protected]>
---
 .github/workflows/checks.yml                       |  2 ++
 project/plugins.sbt                                |  2 +-
 .../internal-r2dbc-offset-store.excludes           | 28 ++++++++++++++++++++++
 .../internal-slick-offset-store.excludes           | 23 ++++++++++++++++++
 4 files changed, 54 insertions(+), 1 deletion(-)

diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml
index 53c4f2c6..28a46c01 100644
--- a/.github/workflows/checks.yml
+++ b/.github/workflows/checks.yml
@@ -46,6 +46,8 @@ jobs:
         uses: coursier/cache-action@95e5b1029b6b86e7bac033ee44a0697d8a527d2d # 
v8.1.1
 
       - name: Code style check and binary-compatibility check
+        env:
+          JAVA_OPTS: -Xms2G -Xmx4G -Xss2M -XX:ReservedCodeCacheSize=256M 
-Dfile.encoding=UTF-8
         run: sbt "checkCodeStyle; mimaReportBinaryIssues"
 
   check-code-compilation:
diff --git a/project/plugins.sbt b/project/plugins.sbt
index 664326c0..3bee080d 100644
--- a/project/plugins.sbt
+++ b/project/plugins.sbt
@@ -25,7 +25,7 @@ addSbtPlugin("com.github.sbt" % "sbt-site-paradox" % "1.8.0")
 addSbtPlugin("com.lightbend.paradox" % "sbt-paradox-theme" % "0.11.0")
 addSbtPlugin("com.lightbend.paradox" % "sbt-paradox" % "0.11.0")
 
-addSbtPlugin("com.typesafe" % "sbt-mima-plugin" % "1.1.6")
+addSbtPlugin("com.typesafe" % "sbt-mima-plugin" % "1.2.0")
 addSbtPlugin("com.lightbend.sbt" % "sbt-bill-of-materials" % "1.1.1")
 
 addSbtPlugin("com.github.sbt.junit" % "sbt-jupiter-interface" % "0.19.0")
diff --git 
a/r2dbc/src/main/mima-filters/2.0.x.backwards.excludes/internal-r2dbc-offset-store.excludes
 
b/r2dbc/src/main/mima-filters/2.0.x.backwards.excludes/internal-r2dbc-offset-store.excludes
new file mode 100644
index 00000000..862cfca1
--- /dev/null
+++ 
b/r2dbc/src/main/mima-filters/2.0.x.backwards.excludes/internal-r2dbc-offset-store.excludes
@@ -0,0 +1,28 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+# Internal API changes that are only reported since the upgrade to MiMa 1.2.0
+# org.apache.pekko.projection.r2dbc.internal.R2dbcOffsetStore is @InternalApi 
private[projection]
+ProblemFilters.exclude[DirectMissingMethodProblem]("org.apache.pekko.projection.r2dbc.internal.R2dbcOffsetStore.FutureTrue")
+ProblemFilters.exclude[DirectMissingMethodProblem]("org.apache.pekko.projection.r2dbc.internal.R2dbcOffsetStore.FutureFalse")
+ProblemFilters.exclude[IncompatibleMethTypeProblem]("org.apache.pekko.projection.r2dbc.internal.R2dbcOffsetStore.saveOffset")
+ProblemFilters.exclude[IncompatibleMethTypeProblem]("org.apache.pekko.projection.r2dbc.internal.R2dbcOffsetStore.saveOffsetInTx")
+ProblemFilters.exclude[IncompatibleSignatureProblem]("org.apache.pekko.projection.r2dbc.internal.R2dbcOffsetStore.saveOffsets")
+ProblemFilters.exclude[IncompatibleSignatureProblem]("org.apache.pekko.projection.r2dbc.internal.R2dbcOffsetStore.saveOffsetsInTx")
+ProblemFilters.exclude[DirectMissingMethodProblem]("org.apache.pekko.projection.r2dbc.internal.R2dbcOffsetStore.isDuplicate")
+ProblemFilters.exclude[DirectMissingMethodProblem]("org.apache.pekko.projection.r2dbc.internal.R2dbcOffsetStore.filterAccepted")
+ProblemFilters.exclude[DirectMissingMethodProblem]("org.apache.pekko.projection.r2dbc.internal.R2dbcOffsetStore.isAccepted")
diff --git 
a/slick/src/main/mima-filters/2.0.x.backwards.excludes/internal-slick-offset-store.excludes
 
b/slick/src/main/mima-filters/2.0.x.backwards.excludes/internal-slick-offset-store.excludes
new file mode 100644
index 00000000..13a679d4
--- /dev/null
+++ 
b/slick/src/main/mima-filters/2.0.x.backwards.excludes/internal-slick-offset-store.excludes
@@ -0,0 +1,23 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+# Internal API changes that are only reported since the upgrade to MiMa 1.2.0
+# org.apache.pekko.projection.slick.internal.SlickOffsetStore is @InternalApi 
private[projection]
+ProblemFilters.exclude[DirectMissingMethodProblem]("org.apache.pekko.projection.slick.internal.SlickOffsetStore.db")
+ProblemFilters.exclude[IncompatibleResultTypeProblem]("org.apache.pekko.projection.slick.internal.SlickOffsetStore.dialect")
+ProblemFilters.exclude[DirectMissingMethodProblem]("org.apache.pekko.projection.slick.internal.SlickOffsetStore.this")
+ProblemFilters.exclude[IncompatibleMethTypeProblem]("org.apache.pekko.projection.slick.internal.SlickOffsetStore.this")


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

Reply via email to