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

fanningpj pushed a commit to branch 1.3.x
in repository https://gitbox.apache.org/repos/asf/pekko.git


The following commit(s) were added to refs/heads/1.3.x by this push:
     new a7362e38c9 Scala 2.13.17 (#2285)
a7362e38c9 is described below

commit a7362e38c9e160db2a584728c20273a789133d43
Author: PJ Fanning <[email protected]>
AuthorDate: Tue Sep 30 18:31:56 2025 +0100

    Scala 2.13.17 (#2285)
    
    * silence compiler warnings new in scala 2.13.17 (#2255)
    
    * silence compiler warning new in scala 2.13.17
    
    * Update FrequencySketch.scala
    
    * chore: Update Scala 2.13 version to 2.13.17 (#2284)
    
    ---------
    
    Co-authored-by: He-Pin(kerr) <[email protected]>
---
 .../src/test/scala/org/apache/pekko/actor/ActorSystemSpec.scala     | 1 +
 .../src/test/scala/org/apache/pekko/event/LoggingReceiveSpec.scala  | 1 +
 actor/src/main/scala-2.13/org/apache/pekko/util/ByteString.scala    | 1 +
 actor/src/main/scala/org/apache/pekko/actor/Address.scala           | 1 +
 actor/src/main/scala/org/apache/pekko/util/FrequencySketch.scala    | 6 ++++--
 .../src/main/scala/org/apache/pekko/persistence/Eventsourced.scala  | 2 ++
 project/Dependencies.scala                                          | 2 +-
 remote/src/main/scala/org/apache/pekko/remote/artery/Control.scala  | 1 +
 .../src/main/scala/org/apache/pekko/stream/impl/QueueSource.scala   | 1 +
 stream/src/main/scala/org/apache/pekko/stream/impl/SetupStage.scala | 2 ++
 stream/src/main/scala/org/apache/pekko/stream/impl/Sinks.scala      | 2 ++
 .../src/main/scala/org/apache/pekko/stream/impl/io/TcpStages.scala  | 1 +
 .../test/scala/org/apache/pekko/testkit/metrics/MetricsKit.scala    | 1 +
 13 files changed, 19 insertions(+), 3 deletions(-)

diff --git 
a/actor-tests/src/test/scala/org/apache/pekko/actor/ActorSystemSpec.scala 
b/actor-tests/src/test/scala/org/apache/pekko/actor/ActorSystemSpec.scala
index 0e9f7e29f7..783c44ee02 100644
--- a/actor-tests/src/test/scala/org/apache/pekko/actor/ActorSystemSpec.scala
+++ b/actor-tests/src/test/scala/org/apache/pekko/actor/ActorSystemSpec.scala
@@ -87,6 +87,7 @@ object ActorSystemSpec {
 
   class SlowDispatcher(_config: Config, _prerequisites: 
DispatcherPrerequisites)
       extends MessageDispatcherConfigurator(_config, _prerequisites) {
+    @nowarn("msg=inferred structural type")
     private val instance = new Dispatcher(
       this,
       this.config.getString("id"),
diff --git 
a/actor-tests/src/test/scala/org/apache/pekko/event/LoggingReceiveSpec.scala 
b/actor-tests/src/test/scala/org/apache/pekko/event/LoggingReceiveSpec.scala
index d89e8af6d7..910aa7f814 100644
--- a/actor-tests/src/test/scala/org/apache/pekko/event/LoggingReceiveSpec.scala
+++ b/actor-tests/src/test/scala/org/apache/pekko/event/LoggingReceiveSpec.scala
@@ -103,6 +103,7 @@ class LoggingReceiveSpec extends AnyWordSpec with 
BeforeAndAfterAll {
           case null =>
         }
 
+        @scala.annotation.nowarn("msg=inferred structural type")
         val actor = TestActorRef(new Actor {
           def switch: Actor.Receive = { case "becomenull" => context.become(r, 
false) }
           def receive =
diff --git a/actor/src/main/scala-2.13/org/apache/pekko/util/ByteString.scala 
b/actor/src/main/scala-2.13/org/apache/pekko/util/ByteString.scala
index af8af0529e..f603e8258b 100644
--- a/actor/src/main/scala-2.13/org/apache/pekko/util/ByteString.scala
+++ b/actor/src/main/scala-2.13/org/apache/pekko/util/ByteString.scala
@@ -981,6 +981,7 @@ sealed abstract class ByteString
    *
    * @return this ByteString copied into a byte array
    */
+  @nowarn("msg=easy to mistake")
   protected[ByteString] def toArray: Array[Byte] = toArray[Byte]
 
   final override def toArray[B >: Byte](implicit arg0: ClassTag[B]): Array[B] 
= {
diff --git a/actor/src/main/scala/org/apache/pekko/actor/Address.scala 
b/actor/src/main/scala/org/apache/pekko/actor/Address.scala
index 2ca061ea7c..04a6ded6be 100644
--- a/actor/src/main/scala/org/apache/pekko/actor/Address.scala
+++ b/actor/src/main/scala/org/apache/pekko/actor/Address.scala
@@ -75,6 +75,7 @@ final case class Address private[pekko] (protocol: String, 
system: String, host:
   def hasGlobalScope: Boolean = host.isDefined
 
   // store hashCode
+  @scala.annotation.nowarn("msg=deprecated")
   @transient override lazy val hashCode: Int = 
scala.util.hashing.MurmurHash3.productHash(this)
 
   /**
diff --git a/actor/src/main/scala/org/apache/pekko/util/FrequencySketch.scala 
b/actor/src/main/scala/org/apache/pekko/util/FrequencySketch.scala
index e54cf1a0b5..dea5071a1a 100644
--- a/actor/src/main/scala/org/apache/pekko/util/FrequencySketch.scala
+++ b/actor/src/main/scala/org/apache/pekko/util/FrequencySketch.scala
@@ -29,10 +29,11 @@
 
 package org.apache.pekko.util
 
-import org.apache.pekko.annotation.InternalApi
-
+import scala.annotation.nowarn
 import scala.util.hashing.MurmurHash3
 
+import org.apache.pekko.annotation.InternalApi
+
 /**
  * INTERNAL API
  *
@@ -74,6 +75,7 @@ private[pekko] object FrequencySketch {
     implicit val StringHasher: StringHasher = new StringHasher(DefaultSeed)
 
     final class StringHasher(seed: Int) extends Hasher[String] {
+      @nowarn("msg=deprecated")
       override def hash(value: String): Int = MurmurHash3.stringHash(value, 
seed)
     }
   }
diff --git 
a/persistence/src/main/scala/org/apache/pekko/persistence/Eventsourced.scala 
b/persistence/src/main/scala/org/apache/pekko/persistence/Eventsourced.scala
index bd7b862c19..c5d1514464 100644
--- a/persistence/src/main/scala/org/apache/pekko/persistence/Eventsourced.scala
+++ b/persistence/src/main/scala/org/apache/pekko/persistence/Eventsourced.scala
@@ -628,6 +628,7 @@ private[persistence] trait Eventsourced
    * @param replayMax maximum number of messages to replay.
    * @param timeout recovery event timeout
    */
+  @nowarn("msg=inferred structural type")
   private def recoveryStarted(replayMax: Long, timeout: FiniteDuration) = new 
State {
 
     val timeoutCancellable = {
@@ -745,6 +746,7 @@ private[persistence] trait Eventsourced
    *
    * All incoming messages are stashed.
    */
+  @nowarn("msg=inferred structural type")
   private def recovering(recoveryBehavior: Receive, timeout: FiniteDuration) =
     new State {
 
diff --git a/project/Dependencies.scala b/project/Dependencies.scala
index 9de68a5c09..4a491669a2 100644
--- a/project/Dependencies.scala
+++ b/project/Dependencies.scala
@@ -43,7 +43,7 @@ object Dependencies {
   val jacksonDatabindVersion = jacksonCoreVersion
 
   val scala212Version = "2.12.20"
-  val scala213Version = "2.13.16"
+  val scala213Version = "2.13.17"
   val scala3Version = "3.3.6"
   val allScalaVersions = Seq(scala213Version, scala212Version, scala3Version)
 
diff --git a/remote/src/main/scala/org/apache/pekko/remote/artery/Control.scala 
b/remote/src/main/scala/org/apache/pekko/remote/artery/Control.scala
index f842e62b3f..d440774959 100644
--- a/remote/src/main/scala/org/apache/pekko/remote/artery/Control.scala
+++ b/remote/src/main/scala/org/apache/pekko/remote/artery/Control.scala
@@ -203,6 +203,7 @@ private[remote] class OutboundControlJunction(
   val out: Outlet[OutboundEnvelope] = Outlet("OutboundControlJunction.out")
   override val shape: FlowShape[OutboundEnvelope, OutboundEnvelope] = 
FlowShape(in, out)
 
+  @scala.annotation.nowarn("msg=inferred structural type")
   override def createLogicAndMaterializedValue(inheritedAttributes: 
Attributes) = {
 
     val logic = new GraphStageLogic(shape)
diff --git 
a/stream/src/main/scala/org/apache/pekko/stream/impl/QueueSource.scala 
b/stream/src/main/scala/org/apache/pekko/stream/impl/QueueSource.scala
index 98827879cf..39f4292335 100644
--- a/stream/src/main/scala/org/apache/pekko/stream/impl/QueueSource.scala
+++ b/stream/src/main/scala/org/apache/pekko/stream/impl/QueueSource.scala
@@ -50,6 +50,7 @@ import pekko.stream.stage._
   val out = Outlet[T]("queueSource.out")
   override val shape: SourceShape[T] = SourceShape.of(out)
 
+  @scala.annotation.nowarn("msg=inferred structural type")
   override def createLogicAndMaterializedValue(inheritedAttributes: 
Attributes) = {
     val completion = Promise[Done]()
     val name = inheritedAttributes.nameOrDefault(getClass.toString)
diff --git 
a/stream/src/main/scala/org/apache/pekko/stream/impl/SetupStage.scala 
b/stream/src/main/scala/org/apache/pekko/stream/impl/SetupStage.scala
index b6efde68a1..ac47aa4afc 100644
--- a/stream/src/main/scala/org/apache/pekko/stream/impl/SetupStage.scala
+++ b/stream/src/main/scala/org/apache/pekko/stream/impl/SetupStage.scala
@@ -45,6 +45,7 @@ import pekko.stream.stage.OutHandler
     (createStageLogic(matPromise), matPromise.future)
   }
 
+  @scala.annotation.nowarn("msg=inferred structural type")
   private def createStageLogic(matPromise: Promise[M]) = new 
GraphStageLogic(shape) {
     import SetupStage._
 
@@ -88,6 +89,7 @@ import pekko.stream.stage.OutHandler
     (createStageLogic(matPromise), matPromise.future)
   }
 
+  @scala.annotation.nowarn("msg=inferred structural type")
   private def createStageLogic(matPromise: Promise[M]) = new 
GraphStageLogic(shape) {
     import SetupStage._
 
diff --git a/stream/src/main/scala/org/apache/pekko/stream/impl/Sinks.scala 
b/stream/src/main/scala/org/apache/pekko/stream/impl/Sinks.scala
index 380b27e2db..bbd9a69222 100644
--- a/stream/src/main/scala/org/apache/pekko/stream/impl/Sinks.scala
+++ b/stream/src/main/scala/org/apache/pekko/stream/impl/Sinks.scala
@@ -255,6 +255,7 @@ import org.reactivestreams.Subscriber
 
   override protected def initialAttributes: Attributes = 
DefaultAttributes.seqSink
 
+  @scala.annotation.nowarn("msg=inferred structural type")
   override def createLogicAndMaterializedValue(inheritedAttributes: 
Attributes) = {
     val p: Promise[That] = Promise()
     val logic = new GraphStageLogic(shape) with InHandler {
@@ -312,6 +313,7 @@ import org.reactivestreams.Subscriber
 
   override def toString: String = "QueueSink"
 
+  @scala.annotation.nowarn("msg=inferred structural type")
   override def createLogicAndMaterializedValue(inheritedAttributes: 
Attributes) = {
     val stageLogic = new GraphStageLogic(shape) with InHandler with 
SinkQueueWithCancel[T] {
 
diff --git 
a/stream/src/main/scala/org/apache/pekko/stream/impl/io/TcpStages.scala 
b/stream/src/main/scala/org/apache/pekko/stream/impl/io/TcpStages.scala
index 084536beeb..f60abd333c 100644
--- a/stream/src/main/scala/org/apache/pekko/stream/impl/io/TcpStages.scala
+++ b/stream/src/main/scala/org/apache/pekko/stream/impl/io/TcpStages.scala
@@ -64,6 +64,7 @@ import pekko.util.ByteString
     throw new UnsupportedOperationException("Not used")
 
   // TODO: Timeout on bind
+  @nowarn("msg=inferred structural type")
   override def createLogicAndMaterializedValue(inheritedAttributes: 
Attributes, eagerMaterialzer: Materializer) = {
     val bindingPromise = Promise[ServerBinding]()
 
diff --git 
a/testkit/src/test/scala/org/apache/pekko/testkit/metrics/MetricsKit.scala 
b/testkit/src/test/scala/org/apache/pekko/testkit/metrics/MetricsKit.scala
index 25766d341f..2dc8a5aa17 100644
--- a/testkit/src/test/scala/org/apache/pekko/testkit/metrics/MetricsKit.scala
+++ b/testkit/src/test/scala/org/apache/pekko/testkit/metrics/MetricsKit.scala
@@ -190,6 +190,7 @@ private[pekko] object MetricsKit {
     override def matches(name: String, metric: Metric) = 
classOf[KnownOpsInTimespanTimer].isInstance(metric)
   }
 
+  @scala.annotation.nowarn("msg=inferred structural type")
   val GcMetricsFilter = new MetricFilter {
     val keyPattern = """.*\.gc\..*""".r.pattern
 


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

Reply via email to