This is an automated email from the ASF dual-hosted git repository. hepin pushed a commit to branch 1.3.x-3.3.7 in repository https://gitbox.apache.org/repos/asf/pekko.git
commit ea9616ca10907b3780c5ede4ff70e2d2577f35e0 Author: He-Pin(kerr) <[email protected]> AuthorDate: Fri Oct 10 23:28:19 2025 +0800 chore: bump Scala version to 3.3.7 (#2104) (cherry picked from commit 71ff3ff9b567b21cdd699d38ca1a411b42e2ddfd) # Conflicts: # project/Dependencies.scala --- .../scala/org/apache/pekko/actor/SupervisorHierarchySpec.scala | 10 +++++----- .../src/test/scala/org/apache/pekko/actor/SupervisorSpec.scala | 10 +++++----- .../scala/org/apache/pekko/cluster/client/ClusterClient.scala | 2 +- .../pekko/cluster/singleton/ClusterSingletonManager.scala | 2 +- .../scala/org/apache/pekko/cluster/ddata/DurableStore.scala | 2 +- .../src/test/scala/docs/stream/operators/flow/FutureFlow.scala | 1 + .../org/apache/pekko/persistence/AtLeastOnceDelivery.scala | 3 ++- .../pekko/persistence/journal/PersistencePluginProxy.scala | 2 +- project/Dependencies.scala | 2 +- .../remote/artery/FlushBeforeDeathWatchNotification.scala | 2 +- .../scala/org/apache/pekko/remote/artery/FlushOnShutdown.scala | 2 +- .../apache/pekko/stream/impl/ActorRefBackpressureSource.scala | 1 + .../src/main/scala/org/apache/pekko/stream/scaladsl/Flow.scala | 1 + 13 files changed, 22 insertions(+), 18 deletions(-) diff --git a/actor-tests/src/test/scala/org/apache/pekko/actor/SupervisorHierarchySpec.scala b/actor-tests/src/test/scala/org/apache/pekko/actor/SupervisorHierarchySpec.scala index edbee05493..acc5903a91 100644 --- a/actor-tests/src/test/scala/org/apache/pekko/actor/SupervisorHierarchySpec.scala +++ b/actor-tests/src/test/scala/org/apache/pekko/actor/SupervisorHierarchySpec.scala @@ -239,7 +239,7 @@ object SupervisorHierarchySpec { case (_, x) => log :+= Event("unhandled exception from " + sender() + Logging.stackTraceFor(x), identityHashCode(this)) sender() ! Dump(0) - context.system.scheduler.scheduleOnce(1.second, self, Dump(0))(context.dispatcher) + context.system.scheduler.scheduleOnce(1.second, self, Dump(0))(context.dispatcher, self) Resume }) @@ -524,7 +524,7 @@ object SupervisorHierarchySpec { when(Stress) { case this.Event(Work, _) if idleChildren.isEmpty => - context.system.scheduler.scheduleOnce(workSchedule, self, Work)(context.dispatcher) + context.system.scheduler.scheduleOnce(workSchedule, self, Work)(context.dispatcher, self) stay() case this.Event(Work, x) if x > 0 => nextJob.next() match { @@ -545,7 +545,7 @@ object SupervisorHierarchySpec { ref ! f } if (idleChildren.nonEmpty) self ! Work - else context.system.scheduler.scheduleOnce(workSchedule, self, Work)(context.dispatcher) + else context.system.scheduler.scheduleOnce(workSchedule, self, Work)(context.dispatcher, self) stay().using(x - 1) case this.Event(Work, _) => if (pingChildren.isEmpty) goto(LastPing) else goto(Finishing) case this.Event(Died(path), _) => @@ -625,7 +625,7 @@ object SupervisorHierarchySpec { children = Vector.empty pingChildren = Set.empty idleChildren = Vector.empty - context.system.scheduler.scheduleOnce(workSchedule, self, GCcheck(weak))(context.dispatcher) + context.system.scheduler.scheduleOnce(workSchedule, self, GCcheck(weak))(context.dispatcher, self) System.gc() goto(GC) } else { @@ -649,7 +649,7 @@ object SupervisorHierarchySpec { case this.Event(GCcheck(weak), _) => val next = weak.filter(_.get ne null) if (next.nonEmpty) { - context.system.scheduler.scheduleOnce(workSchedule, self, GCcheck(next))(context.dispatcher) + context.system.scheduler.scheduleOnce(workSchedule, self, GCcheck(next))(context.dispatcher, self) System.gc() stay() } else { diff --git a/actor-tests/src/test/scala/org/apache/pekko/actor/SupervisorSpec.scala b/actor-tests/src/test/scala/org/apache/pekko/actor/SupervisorSpec.scala index 9df4e76f15..0970e988d9 100644 --- a/actor-tests/src/test/scala/org/apache/pekko/actor/SupervisorSpec.scala +++ b/actor-tests/src/test/scala/org/apache/pekko/actor/SupervisorSpec.scala @@ -211,18 +211,18 @@ class SupervisorSpec override def beforeEach() = {} def ping(pingPongActor: ActorRef) = { - Await.result(pingPongActor.?(Ping)(DilatedTimeout), DilatedTimeout) should ===(PongMessage) + Await.result(pingPongActor.?(Ping)(DilatedTimeout, self), DilatedTimeout) should ===(PongMessage) expectMsg(Timeout, PingMessage) } def kill(pingPongActor: ActorRef) = { - val result = pingPongActor.?(DieReply)(DilatedTimeout) + val result = pingPongActor.?(DieReply)(DilatedTimeout, self) expectMsg(Timeout, ExceptionMessage) // this is sent from PingPongActor's postRestart() intercept[RuntimeException] { Await.result(result, DilatedTimeout) } } def killExpectNoRestart(pingPongActor: ActorRef) = { - val result = pingPongActor.?(DieReply)(DilatedTimeout) + val result = pingPongActor.?(DieReply)(DilatedTimeout, self) expectNoMessage(500.milliseconds) intercept[RuntimeException] { Await.result(result, DilatedTimeout) } } @@ -292,7 +292,7 @@ class SupervisorSpec "not restart temporary actor" in { val (temporaryActor, _) = temporaryActorAllForOne - intercept[RuntimeException] { Await.result(temporaryActor.?(DieReply)(DilatedTimeout), DilatedTimeout) } + intercept[RuntimeException] { Await.result(temporaryActor.?(DieReply)(DilatedTimeout, self), DilatedTimeout) } expectNoMessage(1.second) } @@ -445,7 +445,7 @@ class SupervisorSpec EventFilter[PreRestartException]("Don't wanna!", occurrences = 1), EventFilter[PostRestartException]("Don't wanna!", occurrences = 1)) { intercept[RuntimeException] { - Await.result(dyingActor.?(DieReply)(DilatedTimeout), DilatedTimeout) + Await.result(dyingActor.?(DieReply)(DilatedTimeout, self), DilatedTimeout) } } diff --git a/cluster-tools/src/main/scala/org/apache/pekko/cluster/client/ClusterClient.scala b/cluster-tools/src/main/scala/org/apache/pekko/cluster/client/ClusterClient.scala index 54881a9fa2..458a54d060 100644 --- a/cluster-tools/src/main/scala/org/apache/pekko/cluster/client/ClusterClient.scala +++ b/cluster-tools/src/main/scala/org/apache/pekko/cluster/client/ClusterClient.scala @@ -991,7 +991,7 @@ final class ClusterReceptionist(pubSubMediator: ActorRef, settings: ClusterRecep failureDetectionInterval, failureDetectionInterval, self, - CheckDeadlines)(context.dispatcher) + CheckDeadlines)(context.dispatcher, self) override def preStart(): Unit = { super.preStart() diff --git a/cluster-tools/src/main/scala/org/apache/pekko/cluster/singleton/ClusterSingletonManager.scala b/cluster-tools/src/main/scala/org/apache/pekko/cluster/singleton/ClusterSingletonManager.scala index 62e86945ca..78e05a5e22 100644 --- a/cluster-tools/src/main/scala/org/apache/pekko/cluster/singleton/ClusterSingletonManager.scala +++ b/cluster-tools/src/main/scala/org/apache/pekko/cluster/singleton/ClusterSingletonManager.scala @@ -821,7 +821,7 @@ class ClusterSingletonManager(singletonProps: Props, terminationMessage: Any, se def scheduleDelayedMemberRemoved(m: Member): Unit = { if (removalMargin > Duration.Zero) { log.debug("Schedule DelayedMemberRemoved for [{}]", m.address) - context.system.scheduler.scheduleOnce(removalMargin, self, DelayedMemberRemoved(m))(context.dispatcher) + context.system.scheduler.scheduleOnce(removalMargin, self, DelayedMemberRemoved(m))(context.dispatcher, self) } else self ! DelayedMemberRemoved(m) } diff --git a/distributed-data/src/main/scala/org/apache/pekko/cluster/ddata/DurableStore.scala b/distributed-data/src/main/scala/org/apache/pekko/cluster/ddata/DurableStore.scala index efced43cdf..77f52968d1 100644 --- a/distributed-data/src/main/scala/org/apache/pekko/cluster/ddata/DurableStore.scala +++ b/distributed-data/src/main/scala/org/apache/pekko/cluster/ddata/DurableStore.scala @@ -254,7 +254,7 @@ final class LmdbDurableStore(config: Config) extends Actor with ActorLogging { dbPut(OptionVal.None, key, data) } else { if (pending.isEmpty) - context.system.scheduler.scheduleOnce(writeBehindInterval, self, WriteBehind)(context.dispatcher) + context.system.scheduler.scheduleOnce(writeBehindInterval, self, WriteBehind)(context.dispatcher, self) pending.put(key, data) } reply match { diff --git a/docs/src/test/scala/docs/stream/operators/flow/FutureFlow.scala b/docs/src/test/scala/docs/stream/operators/flow/FutureFlow.scala index c6cdf01040..eaf58c6cfc 100644 --- a/docs/src/test/scala/docs/stream/operators/flow/FutureFlow.scala +++ b/docs/src/test/scala/docs/stream/operators/flow/FutureFlow.scala @@ -37,6 +37,7 @@ class FutureFlow { case (List(id: Int), tail) => // base the Future flow creation on the first element tail.via(Flow.futureFlow(processingFlow(id))) + case _ => throw new RuntimeException() // compiler exhaustiveness check pleaser } // #base-on-first-element } diff --git a/persistence/src/main/scala/org/apache/pekko/persistence/AtLeastOnceDelivery.scala b/persistence/src/main/scala/org/apache/pekko/persistence/AtLeastOnceDelivery.scala index 2dda683f7a..798c254ceb 100644 --- a/persistence/src/main/scala/org/apache/pekko/persistence/AtLeastOnceDelivery.scala +++ b/persistence/src/main/scala/org/apache/pekko/persistence/AtLeastOnceDelivery.scala @@ -253,7 +253,8 @@ trait AtLeastOnceDeliveryLike extends Eventsourced { if (redeliverTask.isEmpty) { val interval = redeliverInterval / 2 redeliverTask = Some( - context.system.scheduler.scheduleWithFixedDelay(interval, interval, self, RedeliveryTick)(context.dispatcher)) + context.system.scheduler.scheduleWithFixedDelay(interval, interval, self, RedeliveryTick)(context.dispatcher, + self)) } } diff --git a/persistence/src/main/scala/org/apache/pekko/persistence/journal/PersistencePluginProxy.scala b/persistence/src/main/scala/org/apache/pekko/persistence/journal/PersistencePluginProxy.scala index 3878ed869c..bdc26da6f2 100644 --- a/persistence/src/main/scala/org/apache/pekko/persistence/journal/PersistencePluginProxy.scala +++ b/persistence/src/main/scala/org/apache/pekko/persistence/journal/PersistencePluginProxy.scala @@ -126,7 +126,7 @@ final class PersistencePluginProxy(config: Config) extends Actor with Stash with } } - context.system.scheduler.scheduleOnce(initTimeout, self, InitTimeout)(context.dispatcher) + context.system.scheduler.scheduleOnce(initTimeout, self, InitTimeout)(context.dispatcher, self) } } diff --git a/project/Dependencies.scala b/project/Dependencies.scala index 4a491669a2..e87a786694 100644 --- a/project/Dependencies.scala +++ b/project/Dependencies.scala @@ -44,7 +44,7 @@ object Dependencies { val scala212Version = "2.12.20" val scala213Version = "2.13.17" - val scala3Version = "3.3.6" + val scala3Version = "3.3.7" val allScalaVersions = Seq(scala213Version, scala212Version, scala3Version) val reactiveStreamsVersion = "1.0.4" diff --git a/remote/src/main/scala/org/apache/pekko/remote/artery/FlushBeforeDeathWatchNotification.scala b/remote/src/main/scala/org/apache/pekko/remote/artery/FlushBeforeDeathWatchNotification.scala index 211e0dd662..0717762e0c 100644 --- a/remote/src/main/scala/org/apache/pekko/remote/artery/FlushBeforeDeathWatchNotification.scala +++ b/remote/src/main/scala/org/apache/pekko/remote/artery/FlushBeforeDeathWatchNotification.scala @@ -58,7 +58,7 @@ private[remote] class FlushBeforeDeathWatchNotification( private var remaining = -1 private val timeoutTask = - context.system.scheduler.scheduleOnce(timeout, self, Timeout)(context.dispatcher) + context.system.scheduler.scheduleOnce(timeout, self, Timeout)(context.dispatcher, self) override def preStart(): Unit = { try { diff --git a/remote/src/main/scala/org/apache/pekko/remote/artery/FlushOnShutdown.scala b/remote/src/main/scala/org/apache/pekko/remote/artery/FlushOnShutdown.scala index 67610f6b22..4a48fcb949 100644 --- a/remote/src/main/scala/org/apache/pekko/remote/artery/FlushOnShutdown.scala +++ b/remote/src/main/scala/org/apache/pekko/remote/artery/FlushOnShutdown.scala @@ -46,7 +46,7 @@ private[remote] class FlushOnShutdown(done: Promise[Done], timeout: FiniteDurati var remaining = Map.empty[UniqueAddress, Int] private val timeoutTask = - context.system.scheduler.scheduleOnce(timeout, self, FlushOnShutdown.Timeout)(context.dispatcher) + context.system.scheduler.scheduleOnce(timeout, self, FlushOnShutdown.Timeout)(context.dispatcher, self) override def preStart(): Unit = { try { diff --git a/stream/src/main/scala/org/apache/pekko/stream/impl/ActorRefBackpressureSource.scala b/stream/src/main/scala/org/apache/pekko/stream/impl/ActorRefBackpressureSource.scala index 29a159433b..b80cfbb8d9 100644 --- a/stream/src/main/scala/org/apache/pekko/stream/impl/ActorRefBackpressureSource.scala +++ b/stream/src/main/scala/org/apache/pekko/stream/impl/ActorRefBackpressureSource.scala @@ -80,6 +80,7 @@ private object ActorRefBackpressureSource { } tryPush() } + case _ => throw new RuntimeException() // compiler exhaustiveness check pleaser }.ref private def tryPush(): Unit = { diff --git a/stream/src/main/scala/org/apache/pekko/stream/scaladsl/Flow.scala b/stream/src/main/scala/org/apache/pekko/stream/scaladsl/Flow.scala index cf4d921df9..5651529d93 100755 --- a/stream/src/main/scala/org/apache/pekko/stream/scaladsl/Flow.scala +++ b/stream/src/main/scala/org/apache/pekko/stream/scaladsl/Flow.scala @@ -3331,6 +3331,7 @@ trait FlowOps[+Out, +Mat] { case (`passedEnd`, r: U @unchecked) => (thisElem, r) case (l: A @unchecked, `passedEnd`) => (l, thatElem) case t: (A, U) @unchecked => t + case _ => throw new RuntimeException() // compiler exhaustiveness check pleaser } zipFlow } --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
