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.git


The following commit(s) were added to refs/heads/main by this push:
     new 2c4fd6dd84 fix: correct comprehensive typos across entire project (83 
files) (#2867)
2c4fd6dd84 is described below

commit 2c4fd6dd8473bd95554298a086a7f9ce4e67ed18
Author: He-Pin(kerr) <[email protected]>
AuthorDate: Sun Apr 19 04:31:36 2026 +0800

    fix: correct comprehensive typos across entire project (83 files) (#2867)
    
    * fix: rename shudownLatch to shutdownLatch in ScatterGatherSpec
    
    Motivation:
    Typo in variable name `shudownLatch` should be `shutdownLatch`.
    
    Modification:
    Renamed `shudownLatch` to `shutdownLatch` in
    ScatterGatherFirstCompletedSpec (parameter and usage).
    
    Result:
    Correct spelling, no functional change. All tests pass.
    
    🤖 Generated with [Qoder][https://qoder.com]
    
    * fix: correct multiple typos across codebase
    
    Motivation:
    Comprehensive spell-check scan using codespell across 356 Scala source
    files found 11 typos in comments, variable names, and documentation.
    
    Modification:
    - Actor.scala: Superseeded → Superseded, bellow → below
    - ActorSystemSpec.scala: Terminater → Terminator (8 occurrences)
    - ByteString.scala: halfs → halves, knowlage → knowledge, guarantied → 
guaranteed
    - DispatchersSpec.scala: tipe → typ (variable name)
    - ImmutableIntMap.scala: indicies → indices
    - LightArrayRevolverScheduler.scala: re-use → reuse
    - Logging.scala: tha → that
    - SWARUtil.scala: specificied → specified
    - TcpListenerSpec.scala: reenabled → re-enabled
    - ScatterGatherFirstCompletedSpec.scala: shudownLatch → shutdownLatch
    
    Result:
    Correct spelling throughout codebase. No functional changes.
    All 169 affected tests pass.
    
    🤖 Generated with [Qoder][https://qoder.com]
    
    * fix: correct comprehensive typos across entire project (83 files)
    
    Fix 110+ typos across Scala, protobuf, and markdown documentation files.
    Excludes generated protobuf Java files (ReplicatedDataMessages.java,
    ReplicatorMessages.java, MessageFormats.java, ArteryControlFormats.java,
    ContainerFormats.java, WireFormats.java, CountMinSketch.java).
    
    Key fixes by module:
    
    **Actor:** Superseeded→Superseded, bellow→below, RESETing→Resetting
    **Cluster:** implemntation→implementation, entires→entries, 
plugable→pluggable
    **Stream:** therefor→therefore (6x), wit→with, bever→never, INERNAL→INTERNAL
    **Remote:** Dettach→Detach (3x), wee→we (2x), interfact→interact
    **Persistence:** requestor→requester (9x), whithin→within
    **Typed:** plugable→pluggable, requestor→requester
    **Docs:** implementor→implementer, viceversa→vice-versa, re-use→reuse
    
    False positives excluded: Mattern (person name), aCount/bCount (variables),
    sandwitch (test name), ND (test constant), anyOther/Checkin/systemN/strat
    (variables), onlyOnce (variable), inPorts (API method name).
    
    All Scala files formatted with scalafmt.
    
    🤖 Generated with [Qoder][https://qoder.com]
    
    * fix: revert false positives per review feedback
    
    Revert changes that were false positives:
    - RemoteDeployer.scala: unparsable → unparseable (both correct, original 
more common)
    - RemoteWatcher.scala: we → wee (variable name)
    - RemoteDeathWatchSpec.scala: no one → noone (test value/name)
    - FileSinkSpec.scala: does/not → doesnt (test path)
    - algoritm-class.backwards.excludes: revert typo fix documentation
    
    🤖 Generated with [Qoder][https://qoder.com]
    
    * fix: revert Dettach→Detach typo fix for binary compatibility
    
    Dettach is a typo in the original code but changing it to Detach breaks
    binary compatibility. Added mima exclude filter to document this decision.
    
    Also added exclude filters:
    - InboundControlJunction$Dettach (MissingClassProblem)
    - InboundControlJunction$Dettach$ (MissingClassProblem)
    
    🤖 Generated with [Qoder][https://qoder.com]
    
    * fix: correct vice versa spelling in docs per review feedback
    
    Change vice-versa to vice versa (two words, no hyphen) in:
    - stream-quickstart.md
    - typed/actors.md
    
    Also reverted mima filter changes as requested.
    
    🤖 Generated with [Qoder][https://qoder.com]
    
    * fix: revert mima filter changes as requested
    
    Revert the Dettach exclude filters added to 
remove-deprecated-methods.excludes.
    The Dettach→Detach fix in Control.scala is kept for 2.0.0 since major 
versions
    can break binary compatibility.
    
    🤖 Generated with [Qoder][https://qoder.com]
    
    * fix: add mima filter for Dettach→Detach typo fix
    
    The Dettach→Detach spelling correction breaks binary compatibility
    because the old class 
org.apache.pekko.remote.artery.InboundControlJunction$Dettach
    no longer exists. Add mima exclude filter to allow the corrected spelling.
    
    🤖 Generated with [Qoder][https://qoder.com]
    
    * remove duplicate test
    
    ---------
    
    Co-authored-by: PJ Fanning <[email protected]>
---
 CONTRIBUTING.md                                    |  2 +-
 .../org/apache/pekko/actor/ActorSystemSpec.scala   | 20 ++++----
 .../pekko/actor/dispatch/DispatchersSpec.scala     |  6 +--
 .../org/apache/pekko/io/TcpListenerSpec.scala      |  2 +-
 .../routing/ScatterGatherFirstCompletedSpec.scala  |  4 +-
 .../pekko/typed/InteractionPatternsTest.java       |  2 +-
 .../pekko/typed/InteractionPatterns3Spec.scala     |  8 ++--
 .../pekko/typed/InteractionPatternsSpec.scala      |  8 ++--
 .../main/scala/org/apache/pekko/actor/Actor.scala  |  4 +-
 .../pekko/actor/LightArrayRevolverScheduler.scala  |  2 +-
 .../scala/org/apache/pekko/event/Logging.scala     |  2 +-
 .../scala/org/apache/pekko/io/TcpConnection.scala  |  2 +-
 .../scala/org/apache/pekko/util/ByteString.scala   |  6 +--
 .../org/apache/pekko/util/ImmutableIntMap.scala    |  2 +-
 .../scala/org/apache/pekko/util/SWARUtil.scala     |  2 +-
 bench-jmh/README.md                                |  2 +-
 .../pekko/actor/typed/TypedBenchmarkActors.scala   |  2 +-
 .../sharding/typed/javadsl/ClusterSharding.scala   |  2 +-
 .../sharding/typed/scaladsl/ClusterSharding.scala  |  2 +-
 .../pekko/cluster/sharding/ClusterSharding.scala   |  2 +-
 .../internal/DDataRememberEntitiesShardStore.scala |  4 +-
 .../sharding/internal/RememberEntitiesStore.scala  |  2 +-
 .../RollingUpdateShardAllocationSpec.scala         |  2 +-
 .../pekko/cluster/CrossDcClusterHeartbeat.scala    |  2 +-
 .../org/apache/pekko/cluster/DowningProvider.scala |  2 +-
 .../scala/org/apache/pekko/cluster/Gossip.scala    |  2 +-
 .../pekko/cluster/ddata/WriteAggregatorSpec.scala  |  2 +-
 .../protobuf/ReplicatorMessageSerializerSpec.scala |  2 +-
 docs/src/main/paradox/additional/ide.md            |  2 +-
 docs/src/main/paradox/additional/osgi.md           |  4 +-
 .../paradox/common/binary-compatibility-rules.md   |  2 +-
 docs/src/main/paradox/extending-pekko.md           |  2 +-
 docs/src/main/paradox/io-dns.md                    |  2 +-
 docs/src/main/paradox/persistence-query.md         |  2 +-
 docs/src/main/paradox/split-brain-resolver.md      |  2 +-
 .../main/paradox/stream/operators/Flow/lazyFlow.md |  2 +-
 .../stream/operators/Source/asSubscriber.md        |  2 +-
 .../main/paradox/stream/operators/Source/never.md  |  2 +-
 docs/src/main/paradox/stream/stream-context.md     |  2 +-
 docs/src/main/paradox/stream/stream-customize.md   |  2 +-
 docs/src/main/paradox/stream/stream-graphs.md      |  8 ++--
 docs/src/main/paradox/stream/stream-quickstart.md  |  2 +-
 docs/src/main/paradox/typed/actor-lifecycle.md     |  2 +-
 docs/src/main/paradox/typed/actors.md              |  2 +-
 docs/src/main/paradox/typed/choosing-cluster.md    |  2 +-
 docs/src/main/paradox/typed/extending.md           |  2 +-
 docs/src/main/paradox/typed/fault-tolerance.md     |  2 +-
 .../src/main/paradox/typed/interaction-patterns.md |  4 +-
 .../main/paradox/typed/replicated-eventsourcing.md |  2 +-
 .../stream/operators/source/AsSubscriber.java      |  2 +-
 .../stream/operators/source/AsSubscriber.scala     |  2 +-
 .../test/scala/docs/testkit/TestKitUsageSpec.scala |  2 +-
 .../query/internal/QuerySerializerSpec.scala       |  4 +-
 .../pekko/persistence/scalatest/MayVerb.scala      |  2 +-
 .../pekko/persistence/typed/crdt/LwwSpec.scala     |  4 +-
 .../ReplicatedEventSourcingSerializer.scala        |  2 +-
 .../apache/pekko/persistence/JournalProtocol.scala | 18 ++++----
 .../pekko/persistence/fsm/PersistentFSM.scala      |  2 +-
 .../journal/InmemEventAdaptersSpec.scala           |  2 +-
 .../serialization/MessageSerializerSpec.scala      |  4 +-
 .../pekko/remote/testconductor/BarrierSpec.scala   |  2 +-
 .../remove-deprecated-methods.excludes             |  4 ++
 .../pekko/remote/PhiAccrualFailureDetector.scala   |  2 +-
 .../org/apache/pekko/remote/artery/Codecs.scala    |  2 +-
 .../org/apache/pekko/remote/artery/Control.scala   |  6 +--
 .../pekko/remote/artery/LruBoundedCache.scala      |  2 +-
 .../pekko/remote/artery/RemoteInstrument.scala     |  2 +-
 .../pekko/remote/artery/aeron/AeronSink.scala      |  2 +-
 remote/src/test/protobuf/ProtobufProtocolV3.proto  |  2 +-
 .../pekko/remote/Ticket1978CommunicationSpec.scala |  2 +-
 .../artery/tcp/SecureRandomFactorySpec.scala       |  2 +-
 .../SystemMessageSerializationSpec.scala           |  2 +-
 .../impl/fusing/ActorGraphInterpreterSpec.scala    | 53 ----------------------
 .../stream/scaladsl/FlowFlatMapPrefixSpec.scala    |  2 +-
 .../pekko/stream/scaladsl/FlowMapAsyncSpec.scala   |  2 +-
 .../pekko/stream/scaladsl/GraphMatValueSpec.scala  |  2 +-
 .../org/apache/pekko/stream/scaladsl/HubSpec.scala |  2 +-
 .../pekko/stream/impl/fusing/FutureFlow.scala      |  2 +-
 .../stream/impl/fusing/GraphInterpreter.scala      |  2 +-
 .../org/apache/pekko/stream/impl/fusing/Ops.scala  |  2 +-
 .../org/apache/pekko/stream/impl/package.scala     |  2 +-
 .../org/apache/pekko/stream/javadsl/Flow.scala     |  4 +-
 .../org/apache/pekko/stream/javadsl/Source.scala   |  4 +-
 .../pekko/stream/javadsl/StreamConverters.scala    |  2 +-
 .../org/apache/pekko/stream/scaladsl/Flow.scala    |  4 +-
 .../org/apache/pekko/stream/scaladsl/Framing.scala |  2 +-
 .../org/apache/pekko/stream/scaladsl/Graph.scala   |  2 +-
 .../pekko/stream/scaladsl/StreamConverters.scala   |  2 +-
 .../metrics/reporter/PekkoConsoleReporter.scala    |  2 +-
 89 files changed, 134 insertions(+), 183 deletions(-)

diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index b2c6e33542..2c84774d18 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -214,7 +214,7 @@ To use the task, simply type `validatePullRequest`, and the 
output should includ
 ```shell
 > validatePullRequest
 [info] Diffing [HEAD] to determine changed modules in PR...
-[info] Detected uncomitted changes in directories (including in dependency 
analysis): [protobuf,project]
+[info] Detected uncommitted changes in directories (including in dependency 
analysis): [protobuf,project]
 [info] Detected changes in directories: [actor-tests, project, stream, docs, 
persistence]
 ```
 
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 2871d9ff39..ac1326debe 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
@@ -38,20 +38,20 @@ object ActorSystemSpec {
 
   class Waves extends Actor {
     var master: ActorRef = _
-    var terminaters = Set[ActorRef]()
+    var terminators = Set[ActorRef]()
 
     def receive = {
       case n: Int =>
         master = sender()
-        terminaters = Set() ++
+        terminators = Set() ++
           (for (_ <- 1 to n) yield {
-            val man = 
context.watch(context.system.actorOf(Props[Terminater]()))
+            val man = 
context.watch(context.system.actorOf(Props[Terminator]()))
             man ! "run"
             man
           })
-      case Terminated(child) if terminaters contains child =>
-        terminaters -= child
-        if (terminaters.isEmpty) {
+      case Terminated(child) if terminators contains child =>
+        terminators -= child
+        if (terminators.isEmpty) {
           master ! "done"
           context.stop(self)
         }
@@ -65,7 +65,7 @@ object ActorSystemSpec {
     }
   }
 
-  class Terminater extends Actor {
+  class Terminator extends Actor {
     def receive = {
       case "run" => context.stop(self)
     }
@@ -169,7 +169,7 @@ class ActorSystemSpec extends 
PekkoSpec(ActorSystemSpec.config) with ImplicitSen
         ActorSystem("LogDeadLetters", 
ConfigFactory.parseString("pekko.loglevel=INFO").withFallback(PekkoSpec.testConf))
       try {
         val probe = TestProbe()(sys)
-        val a = sys.actorOf(Props[ActorSystemSpec.Terminater]())
+        val a = sys.actorOf(Props[ActorSystemSpec.Terminator]())
         probe.watch(a)
         a.tell("run", probe.ref)
         probe.expectTerminated(a)
@@ -193,7 +193,7 @@ class ActorSystemSpec extends 
PekkoSpec(ActorSystemSpec.config) with ImplicitSen
         ActorSystem("LogDeadLetters", 
ConfigFactory.parseString("pekko.loglevel=INFO").withFallback(PekkoSpec.testConf))
       try {
         val probe = TestProbe()(sys)
-        val a = sys.actorOf(Props[ActorSystemSpec.Terminater]())
+        val a = sys.actorOf(Props[ActorSystemSpec.Terminator]())
         probe.watch(a)
         a.tell("run", probe.ref)
         probe.expectTerminated(a)
@@ -308,7 +308,7 @@ class ActorSystemSpec extends 
PekkoSpec(ActorSystemSpec.config) with ImplicitSen
       var created = Vector.empty[ActorRef]
       while (!system.whenTerminated.isCompleted) {
         try {
-          val t = system.actorOf(Props[ActorSystemSpec.Terminater]())
+          val t = system.actorOf(Props[ActorSystemSpec.Terminator]())
           failing should not be true // because once failing => always failing 
(it’s due to shutdown)
           created :+= t
           if (created.size % 1000 == 0) Thread.sleep(50) // in case of unfair 
thread scheduling
diff --git 
a/actor-tests/src/test/scala/org/apache/pekko/actor/dispatch/DispatchersSpec.scala
 
b/actor-tests/src/test/scala/org/apache/pekko/actor/dispatch/DispatchersSpec.scala
index d33faf98b8..ec98c13810 100644
--- 
a/actor-tests/src/test/scala/org/apache/pekko/actor/dispatch/DispatchersSpec.scala
+++ 
b/actor-tests/src/test/scala/org/apache/pekko/actor/dispatch/DispatchersSpec.scala
@@ -116,7 +116,7 @@ class DispatchersSpec extends 
PekkoSpec(DispatchersSpec.config) with ImplicitSen
   val df = system.dispatchers
   import df._
 
-  val tipe = "type"
+  val typ = "type"
   val keepalivems = "keep-alive-time"
   val corepoolsizefactor = "core-pool-size-factor"
   val maxpoolsizefactor = "max-pool-size-factor"
@@ -139,7 +139,7 @@ class DispatchersSpec extends 
PekkoSpec(DispatchersSpec.config) with ImplicitSen
     import scala.jdk.CollectionConverters._
 
     validTypes
-      .map(t => (t, from(ConfigFactory.parseMap(Map(tipe -> t, id -> 
t).asJava).withFallback(defaultDispatcherConfig))))
+      .map(t => (t, from(ConfigFactory.parseMap(Map(typ -> t, id -> 
t).asJava).withFallback(defaultDispatcherConfig))))
       .toMap
   }
 
@@ -180,7 +180,7 @@ class DispatchersSpec extends 
PekkoSpec(DispatchersSpec.config) with ImplicitSen
       intercept[ConfigurationException] {
         from(
           ConfigFactory
-            .parseMap(Map(tipe -> "typedoesntexist", id -> 
"invalid-dispatcher").asJava)
+            .parseMap(Map(typ -> "typedoesntexist", id -> 
"invalid-dispatcher").asJava)
             .withFallback(defaultDispatcherConfig))
       }
     }
diff --git 
a/actor-tests/src/test/scala/org/apache/pekko/io/TcpListenerSpec.scala 
b/actor-tests/src/test/scala/org/apache/pekko/io/TcpListenerSpec.scala
index f7dbe623a1..16d0e39125 100644
--- a/actor-tests/src/test/scala/org/apache/pekko/io/TcpListenerSpec.scala
+++ b/actor-tests/src/test/scala/org/apache/pekko/io/TcpListenerSpec.scala
@@ -82,7 +82,7 @@ class TcpListenerSpec extends PekkoSpec("""
       interestCallReceiver.expectMsg(OP_ACCEPT)
     }
 
-    "not accept connections after a previous accept until read is reenabled" 
in new TestSetup(pullMode = true) {
+    "not accept connections after a previous accept until read is re-enabled" 
in new TestSetup(pullMode = true) {
       bindListener()
 
       attemptConnectionToEndpoint()
diff --git 
a/actor-tests/src/test/scala/org/apache/pekko/routing/ScatterGatherFirstCompletedSpec.scala
 
b/actor-tests/src/test/scala/org/apache/pekko/routing/ScatterGatherFirstCompletedSpec.scala
index a9d56b11ee..6902fab230 100644
--- 
a/actor-tests/src/test/scala/org/apache/pekko/routing/ScatterGatherFirstCompletedSpec.scala
+++ 
b/actor-tests/src/test/scala/org/apache/pekko/routing/ScatterGatherFirstCompletedSpec.scala
@@ -34,7 +34,7 @@ object ScatterGatherFirstCompletedSpec {
 
   final case class Stop(id: Option[Int] = None)
 
-  def newActor(id: Int, shudownLatch: Option[TestLatch] = None)(implicit 
system: ActorSystem) =
+  def newActor(id: Int, shutdownLatch: Option[TestLatch] = None)(implicit 
system: ActorSystem) =
     system.actorOf(
       Props(new Actor {
         def receive = {
@@ -48,7 +48,7 @@ object ScatterGatherFirstCompletedSpec {
         }
 
         override def postStop() = {
-          shudownLatch.foreach(_.countDown())
+          shutdownLatch.foreach(_.countDown())
         }
       }),
       "Actor:" + id)
diff --git 
a/actor-typed-tests/src/test/java/jdocs/org/apache/pekko/typed/InteractionPatternsTest.java
 
b/actor-typed-tests/src/test/java/jdocs/org/apache/pekko/typed/InteractionPatternsTest.java
index d9e6ec82de..49f2f5086f 100644
--- 
a/actor-typed-tests/src/test/java/jdocs/org/apache/pekko/typed/InteractionPatternsTest.java
+++ 
b/actor-typed-tests/src/test/java/jdocs/org/apache/pekko/typed/InteractionPatternsTest.java
@@ -873,7 +873,7 @@ public class InteractionPatternsTest {
       private Behavior<Command> onUpdateResult(WrappedUpdateResult wrapped) {
         // decrease operationsInProgress counter
         operationsInProgress--;
-        // send result to original requestor
+        // send result to original requester
         wrapped.replyTo.tell(wrapped.result);
         return this;
       }
diff --git 
a/actor-typed-tests/src/test/scala-3/docs/org/apache/pekko/typed/InteractionPatterns3Spec.scala
 
b/actor-typed-tests/src/test/scala-3/docs/org/apache/pekko/typed/InteractionPatterns3Spec.scala
index b5809dd498..cbe5a08dc4 100644
--- 
a/actor-typed-tests/src/test/scala-3/docs/org/apache/pekko/typed/InteractionPatterns3Spec.scala
+++ 
b/actor-typed-tests/src/test/scala-3/docs/org/apache/pekko/typed/InteractionPatterns3Spec.scala
@@ -454,11 +454,11 @@ class InteractionPatterns3Spec extends 
ScalaTestWithActorTestKit with AnyWordSpe
     }
     // #per-session-child
 
-    val requestor = createTestProbe[Home.ReadyToLeaveHome]()
+    val requester = createTestProbe[Home.ReadyToLeaveHome]()
 
     val home = spawn(Home(), "home")
-    home ! Home.LeaveHome("Bobby", requestor.ref)
-    requestor.expectMessage(Home.ReadyToLeaveHome("Bobby", Keys(), Wallet()))
+    home ! Home.LeaveHome("Bobby", requester.ref)
+    requester.expectMessage(Home.ReadyToLeaveHome("Bobby", Keys(), Wallet()))
   }
 
   "contain a sample for ask from outside the actor system" in {
@@ -637,7 +637,7 @@ class InteractionPatterns3Spec extends 
ScalaTestWithActorTestKit with AnyWordSpe
               }
 
             case WrappedUpdateResult(result, replyTo) =>
-              // send result to original requestor
+              // send result to original requester
               replyTo ! result
               // decrease operationsInProgress counter
               next(dataAccess, operationsInProgress - 1)
diff --git 
a/actor-typed-tests/src/test/scala/docs/org/apache/pekko/typed/InteractionPatternsSpec.scala
 
b/actor-typed-tests/src/test/scala/docs/org/apache/pekko/typed/InteractionPatternsSpec.scala
index 6e2c5a40ed..ee7844e1ff 100644
--- 
a/actor-typed-tests/src/test/scala/docs/org/apache/pekko/typed/InteractionPatternsSpec.scala
+++ 
b/actor-typed-tests/src/test/scala/docs/org/apache/pekko/typed/InteractionPatternsSpec.scala
@@ -452,11 +452,11 @@ class InteractionPatternsSpec extends 
ScalaTestWithActorTestKit with AnyWordSpec
     }
     // #per-session-child
 
-    val requestor = createTestProbe[Home.ReadyToLeaveHome]()
+    val requester = createTestProbe[Home.ReadyToLeaveHome]()
 
     val home = spawn(Home(), "home")
-    home ! Home.LeaveHome("Bobby", requestor.ref)
-    requestor.expectMessage(Home.ReadyToLeaveHome("Bobby", Keys(), Wallet()))
+    home ! Home.LeaveHome("Bobby", requester.ref)
+    requester.expectMessage(Home.ReadyToLeaveHome("Bobby", Keys(), Wallet()))
   }
 
   "contain a sample for ask from outside the actor system" in {
@@ -635,7 +635,7 @@ class InteractionPatternsSpec extends 
ScalaTestWithActorTestKit with AnyWordSpec
               }
 
             case WrappedUpdateResult(result, replyTo) =>
-              // send result to original requestor
+              // send result to original requester
               replyTo ! result
               // decrease operationsInProgress counter
               next(dataAccess, operationsInProgress - 1)
diff --git a/actor/src/main/scala/org/apache/pekko/actor/Actor.scala 
b/actor/src/main/scala/org/apache/pekko/actor/Actor.scala
index feaf70c757..61f2a460e5 100644
--- a/actor/src/main/scala/org/apache/pekko/actor/Actor.scala
+++ b/actor/src/main/scala/org/apache/pekko/actor/Actor.scala
@@ -304,7 +304,7 @@ final case class UnhandledMessage(
     with AllDeadLetters
 
 /**
- * Superseeded by [[pekko.pattern.StatusReply]], prefer that when possible.
+ * Superseded by [[pekko.pattern.StatusReply]], prefer that when possible.
  *
  * Classes for passing status back to the sender.
  * Used for internal ACKing protocol. But exposed as utility class for 
user-specific ACKing protocols as well.
@@ -353,7 +353,7 @@ trait ActorLogging { this: Actor =>
 /**
  * Scala API: Mix in DiagnosticActorLogging into your Actor to easily obtain a 
reference to a logger with MDC support,
  * which is available under the name "log".
- * In the example bellow "the one who knocks" will be available under the key 
"iam" for using it in the logback pattern.
+ * In the example below "the one who knocks" will be available under the key 
"iam" for using it in the logback pattern.
  *
  * {{{
  * class MyActor extends Actor with DiagnosticActorLogging {
diff --git 
a/actor/src/main/scala/org/apache/pekko/actor/LightArrayRevolverScheduler.scala 
b/actor/src/main/scala/org/apache/pekko/actor/LightArrayRevolverScheduler.scala
index 71839865c5..eb7ee9921d 100644
--- 
a/actor/src/main/scala/org/apache/pekko/actor/LightArrayRevolverScheduler.scala
+++ 
b/actor/src/main/scala/org/apache/pekko/actor/LightArrayRevolverScheduler.scala
@@ -338,7 +338,7 @@ class LightArrayRevolverScheduler(config: Config, log: 
LoggingAdapter, threadFac
         }
         executeBucket()
         wheel(bucket) = putBack
-        // we know tasks is empty now, so we can re-use it next tick
+        // we know tasks is empty now, so we can reuse it next tick
         spareTaskQueue = tasks
 
         tick += 1
diff --git a/actor/src/main/scala/org/apache/pekko/event/Logging.scala 
b/actor/src/main/scala/org/apache/pekko/event/Logging.scala
index 6bb38e560f..62d8f0146b 100644
--- a/actor/src/main/scala/org/apache/pekko/event/Logging.scala
+++ b/actor/src/main/scala/org/apache/pekko/event/Logging.scala
@@ -1665,7 +1665,7 @@ trait DiagnosticLoggingAdapter extends LoggingAdapter {
    * Mapped Diagnostic Context for application defined values
    * which can be used in PatternLayout when 
`org.apache.pekko.event.slf4j.Slf4jLogger` is configured.
    * Visit <a href="https://logback.qos.ch/manual/mdc.html";>Logback Docs: 
MDC</a> for more information.
-   * Note tha it returns a <b>COPY</b> of the actual MDC values.
+   * Note that it returns a <b>COPY</b> of the actual MDC values.
    * You cannot modify any value by changing the returned Map.
    * Code like the following won't have any effect unless you set back the 
modified Map.
    *
diff --git a/actor/src/main/scala/org/apache/pekko/io/TcpConnection.scala 
b/actor/src/main/scala/org/apache/pekko/io/TcpConnection.scala
index ae0c535a55..cc8f494704 100644
--- a/actor/src/main/scala/org/apache/pekko/io/TcpConnection.scala
+++ b/actor/src/main/scala/org/apache/pekko/io/TcpConnection.scala
@@ -319,7 +319,7 @@ private[io] abstract class TcpConnection(val tcp: TcpExt, 
val channel: SocketCha
   def handleClose(info: ConnectionInfo, closeCommander: Option[ActorRef], 
closedEvent: ConnectionClosed): Unit =
     closedEvent match {
       case Aborted =>
-        if (TraceLogging) log.debug("Got Abort command. RESETing connection.")
+        if (TraceLogging) log.debug("Got Abort command. Resetting connection.")
         doCloseConnection(info.handler, closeCommander, closedEvent)
       case PeerClosed if info.keepOpenOnPeerClosed =>
         // report that peer closed the connection
diff --git a/actor/src/main/scala/org/apache/pekko/util/ByteString.scala 
b/actor/src/main/scala/org/apache/pekko/util/ByteString.scala
index b6ba28d0a3..ef46e00ff9 100644
--- a/actor/src/main/scala/org/apache/pekko/util/ByteString.scala
+++ b/actor/src/main/scala/org/apache/pekko/util/ByteString.scala
@@ -1043,7 +1043,7 @@ object ByteString {
 
     private def drop0(n: Int): ByteString = {
       // impl note: could be optimised a bit by using VectorIterator instead,
-      //            however then we're forced to call .toVector which halfs 
performance
+      //            however then we're forced to call .toVector which halves 
performance
       //            We can work around that, as there's a Scala private method 
"remainingVector" which is fast,
       //            but let's not go into calling private APIs here just yet.
       @tailrec def findSplit(fullDrops: Int, remainingToDrop: Int): (Int, Int) 
= {
@@ -1297,7 +1297,7 @@ sealed abstract class ByteString
     throw new UnsupportedOperationException("Method take is not implemented in 
ByteString")
   override def takeRight(n: Int): ByteString = slice(length - n, length)
 
-  // these methods are optimized in derived classes utilising the maximum 
knowlage about data layout available to them:
+  // these methods are optimized in derived classes utilising the maximum 
knowledge about data layout available to them:
   // *must* be overridden by derived classes.
   override def slice(from: Int, until: Int): ByteString =
     throw new UnsupportedOperationException("Method slice is not implemented 
in ByteString")
@@ -2094,7 +2094,7 @@ object CompactByteString {
 /**
  * A compact ByteString.
  *
- * The ByteString is guarantied to be contiguous in memory and to use only
+ * The ByteString is guaranteed to be contiguous in memory and to use only
  * as much memory as required for its contents.
  */
 sealed abstract class CompactByteString extends ByteString with Serializable {
diff --git a/actor/src/main/scala/org/apache/pekko/util/ImmutableIntMap.scala 
b/actor/src/main/scala/org/apache/pekko/util/ImmutableIntMap.scala
index d81e6b1144..d53b72296a 100644
--- a/actor/src/main/scala/org/apache/pekko/util/ImmutableIntMap.scala
+++ b/actor/src/main/scala/org/apache/pekko/util/ImmutableIntMap.scala
@@ -42,7 +42,7 @@ import org.apache.pekko.annotation.InternalApi
   }
 
   private[this] final def indexForKey(key: Int): Int = {
-    // Custom implementation of binary search since we encode key + value in 
consecutive indicies.
+    // Custom implementation of binary search since we encode key + value in 
consecutive indices.
     // We do the binary search on half the size of the array then project to 
the full size.
     // >>> 1 for division by 2: 
https://research.googleblog.com/2006/06/extra-extra-read-all-about-it-nearly.html
     @tailrec def find(lo: Int, hi: Int): Int =
diff --git a/actor/src/main/scala/org/apache/pekko/util/SWARUtil.scala 
b/actor/src/main/scala/org/apache/pekko/util/SWARUtil.scala
index 1a2912f849..ea65ddd683 100644
--- a/actor/src/main/scala/org/apache/pekko/util/SWARUtil.scala
+++ b/actor/src/main/scala/org/apache/pekko/util/SWARUtil.scala
@@ -136,7 +136,7 @@ private[pekko] object SWARUtil {
   }
 
   /**
-   * Returns the index of the first occurrence of byte that specificied in the 
pattern.
+   * Returns the index of the first occurrence of byte specified in the 
pattern.
    * If no pattern is found, returns 8. Currently only supports big endian.
    *
    * @param word     the return value of {@link #applyPattern(long, long)}
diff --git a/bench-jmh/README.md b/bench-jmh/README.md
index 08aa061eb7..a55839aaf0 100644
--- a/bench-jmh/README.md
+++ b/bench-jmh/README.md
@@ -1,6 +1,6 @@
 # Apache Pekko Microbenchmarks
 
-This subproject contains some microbenchmarks excercising key parts of Apache 
Pekko. (Excluding typed which has its 
+This subproject contains some microbenchmarks exercising key parts of Apache 
Pekko. (Excluding typed which has its 
 own jmh module)
 
 
diff --git 
a/bench-jmh/src/main/scala/org/apache/pekko/actor/typed/TypedBenchmarkActors.scala
 
b/bench-jmh/src/main/scala/org/apache/pekko/actor/typed/TypedBenchmarkActors.scala
index 1d0eaf9fa2..0976e64c5a 100644
--- 
a/bench-jmh/src/main/scala/org/apache/pekko/actor/typed/TypedBenchmarkActors.scala
+++ 
b/bench-jmh/src/main/scala/org/apache/pekko/actor/typed/TypedBenchmarkActors.scala
@@ -183,7 +183,7 @@ object TypedBenchmarkActors {
   private def newPingPongBehavior(messagesPerPair: Int, latch: 
CountDownLatch): Behavior[Message] =
     Behaviors.setup { ctx =>
       var left = messagesPerPair / 2
-      val pong = Message(ctx.self) // we re-use a single pong to avoid alloc 
on each msg
+      val pong = Message(ctx.self) // we reuse a single pong to avoid alloc on 
each msg
       Behaviors.receiveMessage[Message] {
         case Message(replyTo) =>
           replyTo ! pong
diff --git 
a/cluster-sharding-typed/src/main/scala/org/apache/pekko/cluster/sharding/typed/javadsl/ClusterSharding.scala
 
b/cluster-sharding-typed/src/main/scala/org/apache/pekko/cluster/sharding/typed/javadsl/ClusterSharding.scala
index 5e9accbac1..6038efa5ad 100644
--- 
a/cluster-sharding-typed/src/main/scala/org/apache/pekko/cluster/sharding/typed/javadsl/ClusterSharding.scala
+++ 
b/cluster-sharding-typed/src/main/scala/org/apache/pekko/cluster/sharding/typed/javadsl/ClusterSharding.scala
@@ -130,7 +130,7 @@ object ClusterSharding {
  * persistent (durable), e.g. with `pekko-persistence`, so that it can be 
recovered at the new
  * location.
  *
- * The logic that decides which shards to rebalance is defined in a plugable 
shard
+ * The logic that decides which shards to rebalance is defined in a pluggable 
shard
  * allocation strategy. The default implementation 
`LeastShardAllocationStrategy`
  * picks shards for handoff from the ShardRegion` with most number of 
previously allocated shards.
  * They will then be allocated to the `ShardRegion` with least number of 
previously allocated shards,
diff --git 
a/cluster-sharding-typed/src/main/scala/org/apache/pekko/cluster/sharding/typed/scaladsl/ClusterSharding.scala
 
b/cluster-sharding-typed/src/main/scala/org/apache/pekko/cluster/sharding/typed/scaladsl/ClusterSharding.scala
index b701597da9..c50aba205c 100644
--- 
a/cluster-sharding-typed/src/main/scala/org/apache/pekko/cluster/sharding/typed/scaladsl/ClusterSharding.scala
+++ 
b/cluster-sharding-typed/src/main/scala/org/apache/pekko/cluster/sharding/typed/scaladsl/ClusterSharding.scala
@@ -129,7 +129,7 @@ object ClusterSharding extends ExtensionId[ClusterSharding] 
{
  * persistent (durable), e.g. with `pekko-persistence`, so that it can be 
recovered at the new
  * location.
  *
- * The logic that decides which shards to rebalance is defined in a plugable 
shard
+ * The logic that decides which shards to rebalance is defined in a pluggable 
shard
  * allocation strategy. The default implementation 
[[pekko.cluster.sharding.ShardCoordinator.LeastShardAllocationStrategy]]
  * picks shards for handoff from the `ShardRegion` with most number of 
previously allocated shards.
  * They will then be allocated to the `ShardRegion` with least number of 
previously allocated shards,
diff --git 
a/cluster-sharding/src/main/scala/org/apache/pekko/cluster/sharding/ClusterSharding.scala
 
b/cluster-sharding/src/main/scala/org/apache/pekko/cluster/sharding/ClusterSharding.scala
index 7ad8bb5133..6eee343108 100755
--- 
a/cluster-sharding/src/main/scala/org/apache/pekko/cluster/sharding/ClusterSharding.scala
+++ 
b/cluster-sharding/src/main/scala/org/apache/pekko/cluster/sharding/ClusterSharding.scala
@@ -122,7 +122,7 @@ import pekko.util.ByteString
  * location.
  *
  * '''Shard Allocation''':
- * The logic deciding which shards to rebalance is defined in a plugable shard 
allocation
+ * The logic deciding which shards to rebalance is defined in a pluggable 
shard allocation
  * strategy. The default implementation `LeastShardAllocationStrategy`
  * picks shards for handoff from the `ShardRegion` with highest number of 
previously allocated shards.
  * They will then be allocated to the `ShardRegion` with lowest number of 
previously allocated shards,
diff --git 
a/cluster-sharding/src/main/scala/org/apache/pekko/cluster/sharding/internal/DDataRememberEntitiesShardStore.scala
 
b/cluster-sharding/src/main/scala/org/apache/pekko/cluster/sharding/internal/DDataRememberEntitiesShardStore.scala
index 61a488f255..0ff285c06f 100644
--- 
a/cluster-sharding/src/main/scala/org/apache/pekko/cluster/sharding/internal/DDataRememberEntitiesShardStore.scala
+++ 
b/cluster-sharding/src/main/scala/org/apache/pekko/cluster/sharding/internal/DDataRememberEntitiesShardStore.scala
@@ -233,7 +233,7 @@ private[pekko] final class DDataRememberEntitiesShardStore(
   }
 
   private def waitingForUpdates(
-      requestor: ActorRef,
+      requester: ActorRef,
       update: RememberEntitiesShardStore.Update,
       allUpdates: Map[Set[Evt], (Update[ORSet[EntityId]], Int)]): Receive = {
 
@@ -243,7 +243,7 @@ private[pekko] final class DDataRememberEntitiesShardStore(
         log.debug("Remember entities shard store state was successfully 
updated for [{}]", evts)
         val remainingAfterThis = updatesLeft - evts
         if (remainingAfterThis.isEmpty) {
-          requestor ! RememberEntitiesShardStore.UpdateDone(update.started, 
update.stopped)
+          requester ! RememberEntitiesShardStore.UpdateDone(update.started, 
update.stopped)
           context.become(idle)
         } else {
           context.become(next(remainingAfterThis))
diff --git 
a/cluster-sharding/src/main/scala/org/apache/pekko/cluster/sharding/internal/RememberEntitiesStore.scala
 
b/cluster-sharding/src/main/scala/org/apache/pekko/cluster/sharding/internal/RememberEntitiesStore.scala
index cd9b8465d7..3ae8699d24 100644
--- 
a/cluster-sharding/src/main/scala/org/apache/pekko/cluster/sharding/internal/RememberEntitiesStore.scala
+++ 
b/cluster-sharding/src/main/scala/org/apache/pekko/cluster/sharding/internal/RememberEntitiesStore.scala
@@ -90,5 +90,5 @@ private[pekko] object RememberEntitiesCoordinatorStore {
    */
   case object GetShards extends Command
   final case class RememberedShards(entities: Set[ShardId])
-  // No message for failed load since we eager lod the set of shards, may need 
to change in the future
+  // No message for failed load since we eager load the set of shards, may 
need to change in the future
 }
diff --git 
a/cluster-sharding/src/multi-jvm/scala/org/apache/pekko/cluster/sharding/RollingUpdateShardAllocationSpec.scala
 
b/cluster-sharding/src/multi-jvm/scala/org/apache/pekko/cluster/sharding/RollingUpdateShardAllocationSpec.scala
index 6333b70a1a..46b5f9ee27 100644
--- 
a/cluster-sharding/src/multi-jvm/scala/org/apache/pekko/cluster/sharding/RollingUpdateShardAllocationSpec.scala
+++ 
b/cluster-sharding/src/multi-jvm/scala/org/apache/pekko/cluster/sharding/RollingUpdateShardAllocationSpec.scala
@@ -120,7 +120,7 @@ abstract class RollingUpdateShardAllocationSpec
       runOn(first, second) {
 
         // make sure both regions have completed registration before 
triggering entity allocation
-        // so the folloing allocations end up as one on each node
+        // so the following allocations end up as one on each node
         awaitAssert {
           shardRegion ! ShardRegion.GetCurrentRegions
           expectMsgType[ShardRegion.CurrentRegions].regions should have size 2
diff --git 
a/cluster/src/main/scala/org/apache/pekko/cluster/CrossDcClusterHeartbeat.scala 
b/cluster/src/main/scala/org/apache/pekko/cluster/CrossDcClusterHeartbeat.scala
index 671c3b030b..2d6ba5a23a 100644
--- 
a/cluster/src/main/scala/org/apache/pekko/cluster/CrossDcClusterHeartbeat.scala
+++ 
b/cluster/src/main/scala/org/apache/pekko/cluster/CrossDcClusterHeartbeat.scala
@@ -115,7 +115,7 @@ private[cluster] class CrossDcHeartbeatSender extends Actor 
{
    * In this state no cross-datacenter heartbeats are sent by this actor.
    * This may be because one of those reasons:
    *   - no nodes in other DCs were detected yet
-   *   - nodes in other DCs are present, but this node is not tht n-th oldest 
in this DC (see
+   *   - nodes in other DCs are present, but this node is not the n-th oldest 
in this DC (see
    *     `number-of-cross-datacenter-monitoring-actors`), so it does not have 
to monitor that other data centers
    *
    * In this state it will however listen to cluster events to eventually take 
over monitoring other DCs
diff --git 
a/cluster/src/main/scala/org/apache/pekko/cluster/DowningProvider.scala 
b/cluster/src/main/scala/org/apache/pekko/cluster/DowningProvider.scala
index 531ed1f34c..2a96b34120 100644
--- a/cluster/src/main/scala/org/apache/pekko/cluster/DowningProvider.scala
+++ b/cluster/src/main/scala/org/apache/pekko/cluster/DowningProvider.scala
@@ -26,7 +26,7 @@ private[cluster] object DowningProvider {
 
   /**
    * @param fqcn Fully qualified class name of the implementation to be loaded.
-   * @param system Actor system used to load the implemntation
+   * @param system Actor system used to load the implementation
    * @return the provider or throws a [[pekko.ConfigurationException]] if 
loading it fails
    */
   def load(fqcn: String, system: ActorSystem): DowningProvider = {
diff --git a/cluster/src/main/scala/org/apache/pekko/cluster/Gossip.scala 
b/cluster/src/main/scala/org/apache/pekko/cluster/Gossip.scala
index 3c58ddbdba..1326c94412 100644
--- a/cluster/src/main/scala/org/apache/pekko/cluster/Gossip.scala
+++ b/cluster/src/main/scala/org/apache/pekko/cluster/Gossip.scala
@@ -217,7 +217,7 @@ private[cluster] final case class Gossip(
   def isReachable(fromAddress: UniqueAddress, toAddress: UniqueAddress): 
Boolean =
     if (!hasMember(toAddress)) false
     else {
-      // as it looks for specific unreachable entires for the node pair we 
don't have to filter on data center
+      // as it looks for specific unreachable entries for the node pair we 
don't have to filter on data center
       overview.reachability.isReachable(fromAddress, toAddress)
     }
 
diff --git 
a/distributed-data/src/test/scala/org/apache/pekko/cluster/ddata/WriteAggregatorSpec.scala
 
b/distributed-data/src/test/scala/org/apache/pekko/cluster/ddata/WriteAggregatorSpec.scala
index 5b7e7795d9..1ee5cf7f6e 100644
--- 
a/distributed-data/src/test/scala/org/apache/pekko/cluster/ddata/WriteAggregatorSpec.scala
+++ 
b/distributed-data/src/test/scala/org/apache/pekko/cluster/ddata/WriteAggregatorSpec.scala
@@ -394,7 +394,7 @@ class WriteAggregatorSpec extends PekkoSpec(s"""
       probe.expectMsgType[DeltaPropagation]
       // nack
       probe.lastSender ! DeltaNack
-      // the nack will triggger an immediate Write
+      // the nack will trigger an immediate Write
       probe.expectMsgType[Write]
       // no reply
 
diff --git 
a/distributed-data/src/test/scala/org/apache/pekko/cluster/ddata/protobuf/ReplicatorMessageSerializerSpec.scala
 
b/distributed-data/src/test/scala/org/apache/pekko/cluster/ddata/protobuf/ReplicatorMessageSerializerSpec.scala
index 9a5648a414..6f7c24e0e5 100644
--- 
a/distributed-data/src/test/scala/org/apache/pekko/cluster/ddata/protobuf/ReplicatorMessageSerializerSpec.scala
+++ 
b/distributed-data/src/test/scala/org/apache/pekko/cluster/ddata/protobuf/ReplicatorMessageSerializerSpec.scala
@@ -277,7 +277,7 @@ class ReplicatorMessageSerializerSpec
       cache.get(c) should be("C")
     }
 
-    "suppory getOrAdd" in {
+    "support getOrAdd" in {
       var n = 0
       def createValue(@nowarn("msg=never used") a: Read): AnyRef = {
         n += 1
diff --git a/docs/src/main/paradox/additional/ide.md 
b/docs/src/main/paradox/additional/ide.md
index d38d5b3837..7014633a9f 100644
--- a/docs/src/main/paradox/additional/ide.md
+++ b/docs/src/main/paradox/additional/ide.md
@@ -2,7 +2,7 @@
  
 ## Configure the auto-importer in IntelliJ / Eclipse 
 
-For a smooth development experience, when using an IDE such as Eclipse or 
IntelliJ, you can disable the auto-importer from suggesting `javadsl` imports 
when working in Scala, or viceversa.
+For a smooth development experience, when using an IDE such as Eclipse or 
IntelliJ, you can disable the auto-importer from suggesting `javadsl` imports 
when working in Scala, or vice versa.
 
 In IntelliJ, the auto-importer settings are under "Editor" / "General" / "Auto 
Import". Use a name mask such as `org.apache.pekko.stream.javadsl*` or 
`org.apache.pekko.stream.scaladsl*` or `*javadsl*` or `*scaladsl*` to indicate 
the DSL you want to exclude from import/completion. See screenshot below: 
 
diff --git a/docs/src/main/paradox/additional/osgi.md 
b/docs/src/main/paradox/additional/osgi.md
index 603da1cb26..1ad0477fff 100644
--- a/docs/src/main/paradox/additional/osgi.md
+++ b/docs/src/main/paradox/additional/osgi.md
@@ -22,7 +22,7 @@ and on occasion to the structure of the overall application, 
OSGi can be used to
 back as JDK 1.2, usually with no changes at all to the binaries.
 
 These legacy capabilities are OSGi's major strength and its major weakness. 
The creators of OSGi realized early on that
-implementors would be unlikely to rush to support OSGi metadata in existing 
JARs. There were already a handful of new
+implementers would be unlikely to rush to support OSGi metadata in existing 
JARs. There were already a handful of new
 concepts to learn in the JRE and the added value to teams that were managing 
well with straight J2EE was not obvious.
 Facilities emerged to "wrap" binary JARs so they could be used as bundles, but 
this functionality was only used in limited
 situations. An application of the "80/20 Rule" here would have that "80% of 
the complexity is with 20% of the configuration",
@@ -45,7 +45,7 @@ exports across bundles through these classloaders is the 
process of resolution,
 FSM of a bundle in an OSGi container:
 
  1. INSTALLED: A bundle that is installed has been loaded from disk and a 
classloader instantiated with its capabilities.
-Bundles are iteratively installed manually or through container-specific 
descriptors. For those familiar with legacy packging
+Bundles are iteratively installed manually or through container-specific 
descriptors. For those familiar with legacy packaging
 such as EJB, the modular nature of OSGi means that bundles may be used by 
multiple applications with overlapping dependencies.
 By resolving them individually from repositories, these overlaps can be 
de-duplicated across multiple deployments to
 the same container.
diff --git a/docs/src/main/paradox/common/binary-compatibility-rules.md 
b/docs/src/main/paradox/common/binary-compatibility-rules.md
index 9273dd589a..0b3e9db2a7 100644
--- a/docs/src/main/paradox/common/binary-compatibility-rules.md
+++ b/docs/src/main/paradox/common/binary-compatibility-rules.md
@@ -87,7 +87,7 @@ you might want to add `pekko-persistence-query` dependency 
for 1.0.6.
 
 @@@ note
 
-We recommend keeping an `pekkoVersion` variable in your build file, and re-use 
it for all
+We recommend keeping an `pekkoVersion` variable in your build file, and reuse 
it for all
 included modules, so when you upgrade you can simply change it in this one 
place.
 
 @@@
diff --git a/docs/src/main/paradox/extending-pekko.md 
b/docs/src/main/paradox/extending-pekko.md
index 5022191727..8cd72ff4cf 100644
--- a/docs/src/main/paradox/extending-pekko.md
+++ b/docs/src/main/paradox/extending-pekko.md
@@ -12,7 +12,7 @@ Details on how to make that happens are below, in the 
@ref:[Loading from Configu
 
 @@@ warning
 
-Since an extension is a way to hook into Pekko itself, the implementor of the 
extension needs to
+Since an extension is a way to hook into Pekko itself, the implementer of the 
extension needs to
 ensure the thread safety of his/her extension.
 
 @@@
diff --git a/docs/src/main/paradox/io-dns.md b/docs/src/main/paradox/io-dns.md
index 37f56935db..7f0095449b 100644
--- a/docs/src/main/paradox/io-dns.md
+++ b/docs/src/main/paradox/io-dns.md
@@ -41,7 +41,7 @@ To select which `DnsProvider` to use set 
`pekko.io.dns.resolver` to the location
 There are currently two implementations:
 
 * `inet-address` - Based on the JDK's `InetAddress`. Using this will be 
subject to both the JVM's DNS cache and its built in one.
-* `async-dns` - A native implemention of the DNS protocol that does not use 
any JDK classes or caches.
+* `async-dns` - A native implementation of the DNS protocol that does not use 
any JDK classes or caches.
 
 `inet-address` is the default implementation as it pre-dates `async-dns`, 
`async-dns` will likely become the default in the next major release.
 
diff --git a/docs/src/main/paradox/persistence-query.md 
b/docs/src/main/paradox/persistence-query.md
index e5eaca2bcc..801dfe5509 100644
--- a/docs/src/main/paradox/persistence-query.md
+++ b/docs/src/main/paradox/persistence-query.md
@@ -63,7 +63,7 @@ Journal implementers are encouraged to put this identifier in 
a variable known t
 
 ### Predefined queries
 
-Pekko persistence query comes with a number of query interfaces built in and 
suggests Journal implementors to implement
+Pekko persistence query comes with a number of query interfaces built in and 
suggests Journal implementers to implement
 them according to the semantics described below. It is important to notice 
that while these query types are very common
 a journal is not obliged to implement all of them - for example because in a 
given journal such query would be
 significantly inefficient.
diff --git a/docs/src/main/paradox/split-brain-resolver.md 
b/docs/src/main/paradox/split-brain-resolver.md
index f16843e37a..a92fa7218b 100644
--- a/docs/src/main/paradox/split-brain-resolver.md
+++ b/docs/src/main/paradox/split-brain-resolver.md
@@ -453,7 +453,7 @@ You would like to configure this to a short duration to 
have quick failover, but
 risk of having multiple singleton/sharded instances running at the same time 
and it may take a different
 amount of time to act on the decision (dissemination of the down/removal). The 
duration is by default
 the same as the `stable-after` property (see @ref:[Stable 
after](#stable-after) above). It is recommended to
-leave this value as is, but it can also be separately overriden with the 
`pekko.cluster.down-removal-margin` property.
+leave this value as is, but it can also be separately overridden with the 
`pekko.cluster.down-removal-margin` property.
 
 Another concern for setting this 
`stable-after`/`pekko.cluster.down-removal-margin` is dealing with JVM pauses 
e.g.
 garbage collection. When a node is unresponsive it is not known if it is due 
to a pause, overload, a crash or a 
diff --git a/docs/src/main/paradox/stream/operators/Flow/lazyFlow.md 
b/docs/src/main/paradox/stream/operators/Flow/lazyFlow.md
index f60e5f8922..66972dbc47 100644
--- a/docs/src/main/paradox/stream/operators/Flow/lazyFlow.md
+++ b/docs/src/main/paradox/stream/operators/Flow/lazyFlow.md
@@ -15,7 +15,7 @@ Defers `Flow` creation and materialization until when the 
first element arrives
 that the stream behaves as if the nested flow replaced the `lazyFlow`.
 The nested `Flow` will not be created if the outer flow completes or fails 
before any elements arrive.
 
-Note that asynchronous boundaries and many other operators in the stream may 
do pre-fetching or trigger demand and thereby making an early element come 
throught the stream leading to creation of the inner flow earlier than you 
would expect.
+Note that asynchronous boundaries and many other operators in the stream may 
do pre-fetching or trigger demand and thereby making an early element come 
through the stream leading to creation of the inner flow earlier than you would 
expect.
 
 The materialized value of the `Flow` is a 
@scala[`Future`]@java[`CompletionStage`] that is completed with the 
 materialized value of the nested flow once that is constructed.
diff --git a/docs/src/main/paradox/stream/operators/Source/asSubscriber.md 
b/docs/src/main/paradox/stream/operators/Source/asSubscriber.md
index c0cf7d2d7c..85b499b375 100644
--- a/docs/src/main/paradox/stream/operators/Source/asSubscriber.md
+++ b/docs/src/main/paradox/stream/operators/Source/asSubscriber.md
@@ -35,7 +35,7 @@ we could create a @apidoc[Source] that queries the database 
for its rows. That @
 be used for further processing, for example creating a @apidoc[Source] that 
contains the names of the
 rows.
 
-Note that since the database is queried for each materialization, the 
`rowSource` can be safely re-used.
+Note that since the database is queried for each materialization, the 
`rowSource` can be safely reused.
 Because both the database driver and Pekko Streams support [Reactive 
Streams](https://www.reactive-streams.org/),
 backpressure is applied throughout the stream, preventing us from running out 
of memory when the database
 rows are consumed slower than they are produced by the database.
diff --git a/docs/src/main/paradox/stream/operators/Source/never.md 
b/docs/src/main/paradox/stream/operators/Source/never.md
index b1fa68b1ac..7519f6a4df 100644
--- a/docs/src/main/paradox/stream/operators/Source/never.md
+++ b/docs/src/main/paradox/stream/operators/Source/never.md
@@ -12,7 +12,7 @@ Never emit any elements, never complete and never fail.
 
 ## Description
 
-Create a source which never emits any elements, never completes and never 
failes. Useful for tests.
+Create a source which never emits any elements, never completes and never 
fails. Useful for tests.
 
 ## Reactive Streams semantics
 
diff --git a/docs/src/main/paradox/stream/stream-context.md 
b/docs/src/main/paradox/stream/stream-context.md
index a625a4be95..b91c06864c 100644
--- a/docs/src/main/paradox/stream/stream-context.md
+++ b/docs/src/main/paradox/stream/stream-context.md
@@ -41,7 +41,7 @@ As an escape hatch, there is a `via` operator that allows you 
to
 insert an arbitrary @apidoc[Flow] that can process the
 @scala[tuples]@java[pairs] of elements and context in any way
 desired. When using this operator, it is the responsibility of the
-implementor to make sure this @apidoc[Flow] does not perform
+implementer to make sure this @apidoc[Flow] does not perform
 any operations (such as reordering) that might break assumptions
 made by the @apidoc[Sink] consuming the context elements.
 
diff --git a/docs/src/main/paradox/stream/stream-customize.md 
b/docs/src/main/paradox/stream/stream-customize.md
index 980b42910e..e24ee42f45 100644
--- a/docs/src/main/paradox/stream/stream-customize.md
+++ b/docs/src/main/paradox/stream/stream-customize.md
@@ -475,7 +475,7 @@ Java
 
 ## Thread safety of custom operators
 
-All of the above custom operators (linear or graph) provide a few simple 
guarantees that implementors can rely on.
+All of the above custom operators (linear or graph) provide a few simple 
guarantees that implementers can rely on.
 : 
  * The callbacks exposed by all of these classes are never called concurrently.
  * The state encapsulated by these classes can be safely modified from the 
provided callbacks, without any further
diff --git a/docs/src/main/paradox/stream/stream-graphs.md 
b/docs/src/main/paradox/stream/stream-graphs.md
index 23cdabf907..cf700557a0 100644
--- a/docs/src/main/paradox/stream/stream-graphs.md
+++ b/docs/src/main/paradox/stream/stream-graphs.md
@@ -18,7 +18,7 @@ To use Pekko Streams, add the module to your project:
 In Pekko Streams, computation graphs are not expressed using a fluent DSL like 
linear computations are, instead they are
 written in a more graph-resembling DSL which aims to make translating graph 
drawings (e.g. from notes taken
 from design discussions, or illustrations in protocol specifications) to and 
from code simpler. In this section we'll
-dive into the multiple ways of constructing and re-using graphs, as well as 
explain common pitfalls and how to avoid them.
+dive into the multiple ways of constructing and reusing graphs, as well as 
explain common pitfalls and how to avoid them.
 
 Graphs are needed whenever you want to perform any kind of fan-in ("multiple 
inputs") or fan-out ("multiple outputs") operations.
 Considering linear Flows to be like roads, we can picture graph operations as 
junctions: multiple flows being connected at a single point.
@@ -86,9 +86,9 @@ By looking at the snippets above, it should be apparent that 
the @scala[`GraphDS
 The reason for this design choice is to enable simpler creation of complex 
graphs, which may even contain cycles.
 Once the GraphDSL has been constructed though, the 
@scala[`GraphDSL`]@java[`RunnableGraph`] instance *is immutable, thread-safe, 
and freely shareable*.
 The same is true of all operators—sources, sinks, and flows—once they are 
constructed.
-This means that you can safely re-use one given Flow or junction in multiple 
places in a processing graph.
+This means that you can safely reuse one given Flow or junction in multiple 
places in a processing graph.
 
-We have seen examples of such re-use already above: the merge and broadcast 
junctions were imported
+We have seen examples of such reuse already above: the merge and broadcast 
junctions were imported
 into the graph using `builder.add(...)`, an operation that will make a copy of 
the blueprint that
 is passed to it and return the inlets and outlets of the resulting copy so 
that they can be wired up.
 Another alternative is to pass existing graphs—of any shape—into the factory 
method that produces a
@@ -97,7 +97,7 @@ materialized value of the imported graph while importing via 
the factory method
 for more details see @ref[Stream 
Materialization](stream-flows-and-basics.md#stream-materialization).
 
 In the example below, we prepare a graph that consists of two parallel streams,
-in which we re-use the same instance of `Flow`, yet it will properly be
+in which we reuse the same instance of `Flow`, yet it will properly be
 materialized as two connections between the corresponding Sources and Sinks:
 
 Scala
diff --git a/docs/src/main/paradox/stream/stream-quickstart.md 
b/docs/src/main/paradox/stream/stream-quickstart.md
index 1e6c1bae74..cf5d2f2e2a 100644
--- a/docs/src/main/paradox/stream/stream-quickstart.md
+++ b/docs/src/main/paradox/stream/stream-quickstart.md
@@ -16,7 +16,7 @@ To use Pekko Streams, add the module to your project:
 @@@ note
 
 Both the Java and Scala DSLs of Pekko Streams are bundled in the same JAR. For 
a smooth development experience, when using an IDE such as Eclipse or IntelliJ, 
you can disable the auto-importer from suggesting `javadsl` imports when 
working in Scala,
-or viceversa. See @ref:[IDE Tips](../additional/ide.md). 
+or vice versa. See @ref:[IDE Tips](../additional/ide.md). 
 @@@
 
 ## First steps
diff --git a/docs/src/main/paradox/typed/actor-lifecycle.md 
b/docs/src/main/paradox/typed/actor-lifecycle.md
index c5837f4da6..5c3239a720 100644
--- a/docs/src/main/paradox/typed/actor-lifecycle.md
+++ b/docs/src/main/paradox/typed/actor-lifecycle.md
@@ -203,7 +203,7 @@ An alternative to @apidoc[watch](typed.*.ActorContext) 
{scala="#watch[U](other:o
 This is often preferred over using `watch` and the `Terminated` signal because 
additional information can
 be included in the message that can be used later when receiving it.
 
-Similar example as above, but using `watchWith` and replies to the original 
requestor when the job has finished.
+Similar example as above, but using `watchWith` and replies to the original 
requester when the job has finished.
 
 Scala
 :  @@snip 
[IntroSpec.scala](/actor-typed-tests/src/test/scala/docs/org/apache/pekko/typed/GracefulStopDocSpec.scala)
 { #master-actor-watchWith }
diff --git a/docs/src/main/paradox/typed/actors.md 
b/docs/src/main/paradox/typed/actors.md
index f371198aa3..7f7e6fbdd2 100644
--- a/docs/src/main/paradox/typed/actors.md
+++ b/docs/src/main/paradox/typed/actors.md
@@ -24,7 +24,7 @@ To use Pekko Actors, add the following dependency in your 
project:
 
 Both the Java and Scala DSLs of Pekko modules are bundled in the same JAR. For 
a smooth development experience,
 when using an IDE such as Eclipse or IntelliJ, you can disable the 
auto-importer from suggesting `javadsl`
-imports when working in Scala, or viceversa. See @ref:[IDE 
Tips](../additional/ide.md). 
+imports when working in Scala, or vice versa. See @ref:[IDE 
Tips](../additional/ide.md). 
 
 @@project-info{ projectId="actor-typed" }
 
diff --git a/docs/src/main/paradox/typed/choosing-cluster.md 
b/docs/src/main/paradox/typed/choosing-cluster.md
index 90c06f4f53..741792c998 100644
--- a/docs/src/main/paradox/typed/choosing-cluster.md
+++ b/docs/src/main/paradox/typed/choosing-cluster.md
@@ -43,7 +43,7 @@ Pekko Cluster can efficiently be used for building such 
distributed application.
 In this case, you have a single deployment unit, built from a single code base 
(or using traditional binary
 dependency management to modularize) but deployed across many nodes using a 
single cluster.
 Tighter coupling is OK, because there is a central point of deployment and 
control. In some cases, nodes may
-have specialized runtime roles which means that the cluster is not totally 
homogenous (e.g., "front-end" and
+have specialized runtime roles which means that the cluster is not totally 
homogeneous (e.g., "front-end" and
 "back-end" nodes, or dedicated master/worker nodes) but if these are run from 
the same built artifacts this
 is just a runtime behavior and doesn't cause the same kind of problems you 
might get from tight coupling of
 totally separate artifacts.
diff --git a/docs/src/main/paradox/typed/extending.md 
b/docs/src/main/paradox/typed/extending.md
index afe4628d2a..bf4f3d6580 100644
--- a/docs/src/main/paradox/typed/extending.md
+++ b/docs/src/main/paradox/typed/extending.md
@@ -12,7 +12,7 @@ Details on how to make that happens are below, in the 
@ref:[Loading from Configu
 
 @@@ warning
 
-Since an extension is a way to hook into Pekko itself, the implementor of the 
extension needs to
+Since an extension is a way to hook into Pekko itself, the implementer of the 
extension needs to
 ensure the thread safety and that it is non-blocking.
 
 @@@
diff --git a/docs/src/main/paradox/typed/fault-tolerance.md 
b/docs/src/main/paradox/typed/fault-tolerance.md
index 76826abb07..685cd71e35 100644
--- a/docs/src/main/paradox/typed/fault-tolerance.md
+++ b/docs/src/main/paradox/typed/fault-tolerance.md
@@ -19,7 +19,7 @@ part of the actor protocol than make the actor throw 
exceptions.
 
 A **failure** is instead something unexpected or outside the control of the 
actor itself, for example a database connection
 that broke. Opposite to validation errors, it is seldom useful to model 
failures as part of the protocol as a sending actor
-can very seldomly do anything useful about it.
+can very seldom do anything useful about it.
 
 For failures it is useful to apply the "let it crash" philosophy: instead of 
mixing fine grained recovery and correction
 of internal state that may have become partially invalid because of the 
failure with the business logic we move that
diff --git a/docs/src/main/paradox/typed/interaction-patterns.md 
b/docs/src/main/paradox/typed/interaction-patterns.md
index a0ded8413a..535031a880 100644
--- a/docs/src/main/paradox/typed/interaction-patterns.md
+++ b/docs/src/main/paradox/typed/interaction-patterns.md
@@ -220,9 +220,9 @@ Java
 :  @@snip 
[InteractionPatternsTest.java](/actor-typed-tests/src/test/java/jdocs/org/apache/pekko/typed/InteractionPatternsTest.java)
 { #standalone-ask }
 
 Note that validation errors are also explicit in the message protocol. The 
`GiveMeCookies` request can reply
-with `Cookies` or `InvalidRequest`. The requestor has to decide how to handle 
an `InvalidRequest` reply. Sometimes
+with `Cookies` or `InvalidRequest`. The requester has to decide how to handle 
an `InvalidRequest` reply. Sometimes
 it should be treated as a failed 
@scala[@scaladoc[Future](scala.concurrent.Future)]@java[@javadoc[CompletionStage](java.util.concurrent.CompletionStage)]
 and for that the reply can be mapped on the
-requestor side. See also the [Generic response 
wrapper](#generic-response-wrapper) for replies that are either a success or an 
error.
+requester side. See also the [Generic response 
wrapper](#generic-response-wrapper) for replies that are either a success or an 
error.
 
 Scala
 :  @@snip 
[InteractionPatternsSpec.scala](/actor-typed-tests/src/test/scala/docs/org/apache/pekko/typed/InteractionPatternsSpec.scala)
 { #standalone-ask-fail-future }
diff --git a/docs/src/main/paradox/typed/replicated-eventsourcing.md 
b/docs/src/main/paradox/typed/replicated-eventsourcing.md
index fa0a8be822..a54d3894e3 100644
--- a/docs/src/main/paradox/typed/replicated-eventsourcing.md
+++ b/docs/src/main/paradox/typed/replicated-eventsourcing.md
@@ -341,7 +341,7 @@ More advanced routing among the replicas is currently left 
as an exercise for th
 ## Tagging events and running projections
 
 Just like for regular `EventSourcedBehavior`s it is possible to tag events 
along with persisting them. 
-This is useful for later retrival of events for a given tag. The same @ref[API 
for tagging provided for EventSourcedBehavior](persistence.md#tagging) can 
+This is useful for later retrieval of events for a given tag. The same 
@ref[API for tagging provided for EventSourcedBehavior](persistence.md#tagging) 
can 
 be used for replicated event sourced behaviors as well.
 Tagging is useful in practice to build queries that lead to other data 
representations or aggregations of these event 
 streams that can more directly serve user queries – known as building the 
“read side” in @ref[CQRS](cqrs.md) based applications.
diff --git a/docs/src/test/java/jdocs/stream/operators/source/AsSubscriber.java 
b/docs/src/test/java/jdocs/stream/operators/source/AsSubscriber.java
index b289479910..aa0a7d8702 100644
--- a/docs/src/test/java/jdocs/stream/operators/source/AsSubscriber.java
+++ b/docs/src/test/java/jdocs/stream/operators/source/AsSubscriber.java
@@ -65,7 +65,7 @@ public interface AsSubscriber {
                 });
 
     public Source<String, NotUsed> names() {
-      // rowSource can be re-used, since it will start a new
+      // rowSource can be reused, since it will start a new
       // query for each materialization, fully supporting backpressure
       // for each materialized stream:
       return rowSource.map(row -> row.getField("name"));
diff --git 
a/docs/src/test/scala/docs/stream/operators/source/AsSubscriber.scala 
b/docs/src/test/scala/docs/stream/operators/source/AsSubscriber.scala
index 24b875a5db..5654aaeff5 100644
--- a/docs/src/test/scala/docs/stream/operators/source/AsSubscriber.scala
+++ b/docs/src/test/scala/docs/stream/operators/source/AsSubscriber.scala
@@ -44,7 +44,7 @@ object AsSubscriber {
       });
 
   val names: Source[String, NotUsed] =
-    // rowSource can be re-used, since it will start a new
+    // rowSource can be reused, since it will start a new
     // query for each materialization, fully supporting backpressure
     // for each materialized stream:
     rowSource.map(row => row.name)
diff --git a/docs/src/test/scala/docs/testkit/TestKitUsageSpec.scala 
b/docs/src/test/scala/docs/testkit/TestKitUsageSpec.scala
index 432504fae7..2c487fa5bb 100644
--- a/docs/src/test/scala/docs/testkit/TestKitUsageSpec.scala
+++ b/docs/src/test/scala/docs/testkit/TestKitUsageSpec.scala
@@ -143,7 +143,7 @@ object TestKitUsageSpec {
   /**
    * An actor that sends a sequence of messages with a random head list, an
    * interesting value and a random tail list. The idea is that you would
-   * like to test that the interesting value is received and that you cant
+   * like to test that the interesting value is received and that you can't
    * be bothered with the rest
    */
   class SequencingActor(next: ActorRef, head: immutable.Seq[String], tail: 
immutable.Seq[String]) extends Actor {
diff --git 
a/persistence-query/src/test/scala/org/apache/pekko/persistence/query/internal/QuerySerializerSpec.scala
 
b/persistence-query/src/test/scala/org/apache/pekko/persistence/query/internal/QuerySerializerSpec.scala
index a3b39cce7e..1d9268d226 100644
--- 
a/persistence-query/src/test/scala/org/apache/pekko/persistence/query/internal/QuerySerializerSpec.scala
+++ 
b/persistence-query/src/test/scala/org/apache/pekko/persistence/query/internal/QuerySerializerSpec.scala
@@ -34,8 +34,8 @@ class QuerySerializerSpec extends PekkoSpec {
     val serializer = 
serialization.findSerializerFor(obj).asInstanceOf[SerializerWithStringManifest]
     val manifest = serializer.manifest(obj)
     val bytes = serialization.serialize(obj).get
-    val deserialzied = serialization.deserialize(bytes, serializer.identifier, 
manifest).get
-    deserialzied shouldBe obj
+    val deserialized = serialization.deserialize(bytes, serializer.identifier, 
manifest).get
+    deserialized shouldBe obj
   }
 
   "Query serializer" should {
diff --git 
a/persistence-tck/src/main/scala/org/apache/pekko/persistence/scalatest/MayVerb.scala
 
b/persistence-tck/src/main/scala/org/apache/pekko/persistence/scalatest/MayVerb.scala
index 72cc4202df..8ea99a86ef 100644
--- 
a/persistence-tck/src/main/scala/org/apache/pekko/persistence/scalatest/MayVerb.scala
+++ 
b/persistence-tck/src/main/scala/org/apache/pekko/persistence/scalatest/MayVerb.scala
@@ -59,7 +59,7 @@ trait MayVerb {
 
   /**
    * Implicitly converts an object of type <code>String</code> to a 
<code>StringMayWrapper</code>,
-   * to enable <code>may</code> methods to be invokable on that object.
+   * to enable <code>may</code> methods to be invocable on that object.
    */
   implicit def convertToStringMayWrapper(o: String): StringMayWrapperForVerb =
     new StringMayWrapperForVerb {
diff --git 
a/persistence-typed-tests/src/test/scala/org/apache/pekko/persistence/typed/crdt/LwwSpec.scala
 
b/persistence-typed-tests/src/test/scala/org/apache/pekko/persistence/typed/crdt/LwwSpec.scala
index 890964c1cf..5ac29f47c4 100644
--- 
a/persistence-typed-tests/src/test/scala/org/apache/pekko/persistence/typed/crdt/LwwSpec.scala
+++ 
b/persistence-typed-tests/src/test/scala/org/apache/pekko/persistence/typed/crdt/LwwSpec.scala
@@ -54,7 +54,7 @@ object LwwSpec {
           Registry("", LwwTime(Long.MinValue, replicationContext.replicaId)),
           (state, command) =>
             command match {
-              case Update(s, timestmap, error, maybeLatch) =>
+              case Update(s, timestamp, error, maybeLatch) =>
                 if (s == "") {
                   error ! "bad value"
                   Effect.none
@@ -63,7 +63,7 @@ object LwwSpec {
                     l.countDown()
                     l.await(10, TimeUnit.SECONDS)
                   }
-                  Effect.persist(Changed(s, 
state.updatedTimestamp.increase(timestmap, replicationContext.replicaId)))
+                  Effect.persist(Changed(s, 
state.updatedTimestamp.increase(timestamp, replicationContext.replicaId)))
                 }
               case Get(replyTo) =>
                 replyTo ! state
diff --git 
a/persistence-typed/src/main/scala/org/apache/pekko/persistence/typed/serialization/ReplicatedEventSourcingSerializer.scala
 
b/persistence-typed/src/main/scala/org/apache/pekko/persistence/typed/serialization/ReplicatedEventSourcingSerializer.scala
index c3926dbea5..fbf3b650ef 100644
--- 
a/persistence-typed/src/main/scala/org/apache/pekko/persistence/typed/serialization/ReplicatedEventSourcingSerializer.scala
+++ 
b/persistence-typed/src/main/scala/org/apache/pekko/persistence/typed/serialization/ReplicatedEventSourcingSerializer.scala
@@ -356,7 +356,7 @@ import pekko.serialization.{ BaseSerializer, 
SerializerWithStringManifest }
         else if (entry.getOperation == 
ReplicatedEventSourcing.ORSetDeltaOp.Full)
           ORSet.FullStateDeltaOp(orsetFromProto(entry.getUnderlying))
         else
-          throw new NotSerializableException(s"Unknow ORSet delta operation 
${entry.getOperation}")
+          throw new NotSerializableException(s"Unknown ORSet delta operation 
${entry.getOperation}")
       }.toVector
     ORSet.DeltaGroup(ops)
   }
diff --git 
a/persistence/src/main/scala/org/apache/pekko/persistence/JournalProtocol.scala 
b/persistence/src/main/scala/org/apache/pekko/persistence/JournalProtocol.scala
index 490d547f21..acd1fb253d 100644
--- 
a/persistence/src/main/scala/org/apache/pekko/persistence/JournalProtocol.scala
+++ 
b/persistence/src/main/scala/org/apache/pekko/persistence/JournalProtocol.scala
@@ -44,7 +44,7 @@ private[persistence] object JournalProtocol {
    * Request to write messages.
    *
    * @param messages messages to be written.
-   * @param persistentActor write requestor.
+   * @param persistentActor write requester.
    */
   final case class WriteMessages(
       messages: immutable.Seq[PersistentEnvelope],
@@ -54,13 +54,13 @@ private[persistence] object JournalProtocol {
       with NoSerializationVerificationNeeded
 
   /**
-   * Reply message to a successful [[WriteMessages]] request. This reply is 
sent to the requestor
+   * Reply message to a successful [[WriteMessages]] request. This reply is 
sent to the requester
    * before all subsequent [[WriteMessageSuccess]] replies.
    */
   case object WriteMessagesSuccessful extends Response
 
   /**
-   * Reply message to a failed [[WriteMessages]] request. This reply is sent 
to the requestor
+   * Reply message to a failed [[WriteMessages]] request. This reply is sent 
to the requester
    * before all subsequent [[WriteMessageFailure]] replies.
    *
    * @param cause failure cause.
@@ -70,7 +70,7 @@ private[persistence] object JournalProtocol {
 
   /**
    * Reply message to a successful [[WriteMessages]] request. For each 
contained [[PersistentRepr]] message
-   * in the request, a separate reply is sent to the requestor.
+   * in the request, a separate reply is sent to the requester.
    *
    * @param persistent successfully written message.
    */
@@ -79,7 +79,7 @@ private[persistence] object JournalProtocol {
   /**
    * Reply message to a rejected [[WriteMessages]] request. The write of this 
message was rejected before
    * it was stored, e.g. because it could not be serialized. For each 
contained [[PersistentRepr]] message
-   * in the request, a separate reply is sent to the requestor.
+   * in the request, a separate reply is sent to the requester.
    *
    * @param message message rejected to be written.
    * @param cause failure cause.
@@ -90,7 +90,7 @@ private[persistence] object JournalProtocol {
 
   /**
    * Reply message to a failed [[WriteMessages]] request. For each contained 
[[PersistentRepr]] message
-   * in the request, a separate reply is sent to the requestor.
+   * in the request, a separate reply is sent to the requester.
    *
    * @param message message failed to be written.
    * @param cause failure cause.
@@ -126,7 +126,7 @@ private[persistence] object JournalProtocol {
       extends Request
 
   /**
-   * Reply message to a [[ReplayMessages]] request. A separate reply is sent 
to the requestor for each
+   * Reply message to a [[ReplayMessages]] request. A separate reply is sent 
to the requester for each
    * replayed message.
    *
    * @param persistent replayed message.
@@ -137,7 +137,7 @@ private[persistence] object JournalProtocol {
       with NoSerializationVerificationNeeded
 
   /**
-   * Reply message to a successful [[ReplayMessages]] request. This reply is 
sent to the requestor
+   * Reply message to a successful [[ReplayMessages]] request. This reply is 
sent to the requester
    * after all [[ReplayedMessage]] have been sent (if any).
    *
    * It includes the highest stored sequence number of a given persistent 
actor. Note that the
@@ -148,7 +148,7 @@ private[persistence] object JournalProtocol {
   case class RecoverySuccess(highestSequenceNr: Long) extends Response with 
DeadLetterSuppression
 
   /**
-   * Reply message to a failed [[ReplayMessages]] request. This reply is sent 
to the requestor
+   * Reply message to a failed [[ReplayMessages]] request. This reply is sent 
to the requester
    * if a replay could not be successfully completed.
    */
   final case class ReplayMessagesFailure(cause: Throwable) extends Response 
with DeadLetterSuppression
diff --git 
a/persistence/src/main/scala/org/apache/pekko/persistence/fsm/PersistentFSM.scala
 
b/persistence/src/main/scala/org/apache/pekko/persistence/fsm/PersistentFSM.scala
index df67e50519..69343ac8c8 100644
--- 
a/persistence/src/main/scala/org/apache/pekko/persistence/fsm/PersistentFSM.scala
+++ 
b/persistence/src/main/scala/org/apache/pekko/persistence/fsm/PersistentFSM.scala
@@ -485,7 +485,7 @@ object PersistentFSM {
   final case class Event[D](event: Any, stateData: D) extends 
NoSerializationVerificationNeeded
 
   /**
-   * Case class representing the state of the [[pekko.actor.FSM]] whithin the
+   * Case class representing the state of the [[pekko.actor.FSM]] within the
    * `onTermination` block.
    */
   final case class StopEvent[S, D](reason: Reason, currentState: S, stateData: 
D)
diff --git 
a/persistence/src/test/scala/org/apache/pekko/persistence/journal/InmemEventAdaptersSpec.scala
 
b/persistence/src/test/scala/org/apache/pekko/persistence/journal/InmemEventAdaptersSpec.scala
index 3807fcfb2f..a7d5d77eb9 100644
--- 
a/persistence/src/test/scala/org/apache/pekko/persistence/journal/InmemEventAdaptersSpec.scala
+++ 
b/persistence/src/test/scala/org/apache/pekko/persistence/journal/InmemEventAdaptersSpec.scala
@@ -34,7 +34,7 @@ class InmemEventAdaptersSpec extends PekkoSpec {
       |  }
       |
       |  inmem {
-      |    # showcases re-using and concating configuration of adapters
+      |    # showcases reusing and concatenating configuration of adapters
       |
       |    event-adapters {
       |      example  = ${classOf[ExampleEventAdapter].getCanonicalName}
diff --git 
a/persistence/src/test/scala/org/apache/pekko/persistence/serialization/MessageSerializerSpec.scala
 
b/persistence/src/test/scala/org/apache/pekko/persistence/serialization/MessageSerializerSpec.scala
index 61499ef3f4..e35857b0e2 100644
--- 
a/persistence/src/test/scala/org/apache/pekko/persistence/serialization/MessageSerializerSpec.scala
+++ 
b/persistence/src/test/scala/org/apache/pekko/persistence/serialization/MessageSerializerSpec.scala
@@ -24,8 +24,8 @@ class MessageSerializerSpec extends PekkoSpec {
     "serialize metadata for persistent repr" in {
       val pr = PersistentRepr("payload", 1L, "pid1").withMetadata("meta")
       val serialization = SerializationExtension(system)
-      val deserialzied = 
serialization.deserialize(serialization.serialize(pr).get, 
classOf[PersistentRepr]).get
-      deserialzied.metadata shouldEqual Some("meta")
+      val deserialized = 
serialization.deserialize(serialization.serialize(pr).get, 
classOf[PersistentRepr]).get
+      deserialized.metadata shouldEqual Some("meta")
     }
   }
 
diff --git 
a/remote-tests/src/test/scala/org/apache/pekko/remote/testconductor/BarrierSpec.scala
 
b/remote-tests/src/test/scala/org/apache/pekko/remote/testconductor/BarrierSpec.scala
index 7047f44a09..dad0d5d442 100644
--- 
a/remote-tests/src/test/scala/org/apache/pekko/remote/testconductor/BarrierSpec.scala
+++ 
b/remote-tests/src/test/scala/org/apache/pekko/remote/testconductor/BarrierSpec.scala
@@ -479,7 +479,7 @@ class BarrierSpec extends PekkoSpec(BarrierSpec.config) 
with ImplicitSender {
       }
     }
 
-    "fail subsequent barriers after foreced failure" taggedAs TimingTest in {
+    "fail subsequent barriers after forced failure" taggedAs TimingTest in {
       withController(2) { barrier =>
         val a, b = TestProbe()
         val nodeA = NodeInfo(A, AddressFromURIString("pekko://sys"), a.ref)
diff --git 
a/remote/src/main/mima-filters/2.0.x.backwards.excludes/remove-deprecated-methods.excludes
 
b/remote/src/main/mima-filters/2.0.x.backwards.excludes/remove-deprecated-methods.excludes
index 09b2cce7b2..ee73cd3e7b 100644
--- 
a/remote/src/main/mima-filters/2.0.x.backwards.excludes/remove-deprecated-methods.excludes
+++ 
b/remote/src/main/mima-filters/2.0.x.backwards.excludes/remove-deprecated-methods.excludes
@@ -31,3 +31,7 @@ 
ProblemFilters.exclude[MissingClassProblem]("org.apache.pekko.remote.serializati
 
ProblemFilters.exclude[MissingClassProblem]("org.apache.pekko.remote.transport.FailureInjectorTransportAdapter$All*")
 
ProblemFilters.exclude[DirectMissingMethodProblem]("org.apache.pekko.remote.transport.AssociationHandle.disassociate")
 
ProblemFilters.exclude[DirectMissingMethodProblem]("org.apache.pekko.remote.transport.TestAssociationHandle.disassociate")
+
+# Dettach→Detach typo fix (Dettach was the original typo, Detach is the 
corrected spelling)
+ProblemFilters.exclude[MissingClassProblem]("org.apache.pekko.remote.artery.InboundControlJunction$Dettach")
+ProblemFilters.exclude[MissingClassProblem]("org.apache.pekko.remote.artery.InboundControlJunction$Dettach$")
diff --git 
a/remote/src/main/scala/org/apache/pekko/remote/PhiAccrualFailureDetector.scala 
b/remote/src/main/scala/org/apache/pekko/remote/PhiAccrualFailureDetector.scala
index aed93af2b4..b7e69c5d1e 100644
--- 
a/remote/src/main/scala/org/apache/pekko/remote/PhiAccrualFailureDetector.scala
+++ 
b/remote/src/main/scala/org/apache/pekko/remote/PhiAccrualFailureDetector.scala
@@ -257,7 +257,7 @@ private[pekko] final case class HeartbeatHistory private (
     intervalSum: Long,
     squaredIntervalSum: Long) {
 
-  // Heartbeat histories are created trough the firstHeartbeat variable of the 
PhiAccrualFailureDetector
+  // Heartbeat histories are created through the firstHeartbeat variable of 
the PhiAccrualFailureDetector
   // which always have intervals.size > 0.
   if (maxSampleSize < 1)
     throw new IllegalArgumentException(s"maxSampleSize must be >= 1, got 
[$maxSampleSize]")
diff --git a/remote/src/main/scala/org/apache/pekko/remote/artery/Codecs.scala 
b/remote/src/main/scala/org/apache/pekko/remote/artery/Codecs.scala
index 3f9eb5957d..5bcb972859 100644
--- a/remote/src/main/scala/org/apache/pekko/remote/artery/Codecs.scala
+++ b/remote/src/main/scala/org/apache/pekko/remote/artery/Codecs.scala
@@ -255,7 +255,7 @@ private[remote] object Decoder {
 
   private object Tick
 
-  /** Materialized value of [[Encoder]] which allows safely calling into the 
operator to interfact with compression tables. */
+  /** Materialized value of [[Encoder]] which allows safely calling into the 
operator to interact with compression tables. */
   private[remote] trait InboundCompressionAccess {
     def confirmActorRefCompressionAdvertisementAck(ack: 
ActorRefCompressionAdvertisementAck): Future[Done]
     def confirmClassManifestCompressionAdvertisementAck(ack: 
ClassManifestCompressionAdvertisementAck): Future[Done]
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 d440774959..8cf1b573e9 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
@@ -111,7 +111,7 @@ private[remote] object InboundControlJunction {
   private[InboundControlJunction] sealed trait CallbackMessage
   private[InboundControlJunction] final case class Attach(observer: 
ControlMessageObserver, done: Promise[Done])
       extends CallbackMessage
-  private[InboundControlJunction] final case class Dettach(observer: 
ControlMessageObserver) extends CallbackMessage
+  private[InboundControlJunction] final case class Detach(observer: 
ControlMessageObserver) extends CallbackMessage
 }
 
 /**
@@ -137,7 +137,7 @@ private[remote] class InboundControlJunction
         case Attach(observer, done) =>
           observers :+= observer
           done.success(Done)
-        case Dettach(observer) =>
+        case Detach(observer) =>
           observers = observers.filterNot(_ == observer)
       }
 
@@ -170,7 +170,7 @@ private[remote] class InboundControlJunction
       }
 
       override def detach(observer: ControlMessageObserver): Unit =
-        callback.invoke(Dettach(observer))
+        callback.invoke(Detach(observer))
 
     }
 
diff --git 
a/remote/src/main/scala/org/apache/pekko/remote/artery/LruBoundedCache.scala 
b/remote/src/main/scala/org/apache/pekko/remote/artery/LruBoundedCache.scala
index fc4bc8b713..669ae73b35 100644
--- a/remote/src/main/scala/org/apache/pekko/remote/artery/LruBoundedCache.scala
+++ b/remote/src/main/scala/org/apache/pekko/remote/artery/LruBoundedCache.scala
@@ -29,7 +29,7 @@ private[pekko] case class CacheStatistics(entries: Int, 
maxProbeDistance: Int, a
  * with backshift 
(https://codecapsule.com/2013/11/17/robin-hood-hashing-backward-shift-deletion/).
  *
  * The main modification compared to an RH hashmap is that it never grows the 
map (no rehashes) instead it is allowed
- * to kick out entires that are considered old. The implementation tries to 
keep the map close to full, only evicting
+ * to kick out entries that are considered old. The implementation tries to 
keep the map close to full, only evicting
  * old entries when needed.
  */
 private[pekko] abstract class LruBoundedCache[K <: AnyRef: ClassTag, V <: 
AnyRef: ClassTag](
diff --git 
a/remote/src/main/scala/org/apache/pekko/remote/artery/RemoteInstrument.scala 
b/remote/src/main/scala/org/apache/pekko/remote/artery/RemoteInstrument.scala
index 089a5622b3..4b97a7776e 100644
--- 
a/remote/src/main/scala/org/apache/pekko/remote/artery/RemoteInstrument.scala
+++ 
b/remote/src/main/scala/org/apache/pekko/remote/artery/RemoteInstrument.scala
@@ -38,7 +38,7 @@ import pekko.util.OptionVal
  * Part of the monitoring SPI which allows attaching metadata to outbound 
remote messages,
  * and reading in metadata from incoming messages.
  *
- * Multiple instruments are automatically handled, however they MUST NOT 
overlap in their idenfitiers.
+ * Multiple instruments are automatically handled, however they MUST NOT 
overlap in their identifiers.
  *
  * Instances of `RemoteInstrument` are created from configuration. A new 
instance of RemoteInstrument
  * will be created for each encoder and decoder. It's only called from the 
operator, so if it doesn't
diff --git 
a/remote/src/main/scala/org/apache/pekko/remote/artery/aeron/AeronSink.scala 
b/remote/src/main/scala/org/apache/pekko/remote/artery/aeron/AeronSink.scala
index adeced9d48..72c261e521 100644
--- a/remote/src/main/scala/org/apache/pekko/remote/artery/aeron/AeronSink.scala
+++ b/remote/src/main/scala/org/apache/pekko/remote/artery/aeron/AeronSink.scala
@@ -231,7 +231,7 @@ private[remote] class AeronSink(
       private def onPublicationClosed(): Unit = {
         offerTaskInProgress = false
         val cause = new PublicationClosedException(s"Aeron Publication to 
[$channel] was closed.")
-        // this is not exepected, since we didn't close the publication 
ourselves
+        // this is not expected, since we didn't close the publication 
ourselves
         flightRecorder.aeronSinkPublicationClosedUnexpectedly(channel, 
streamId)
         completedValue = Failure(cause)
         failStage(cause)
diff --git a/remote/src/test/protobuf/ProtobufProtocolV3.proto 
b/remote/src/test/protobuf/ProtobufProtocolV3.proto
index 434d6af31e..3873cacf36 100644
--- a/remote/src/test/protobuf/ProtobufProtocolV3.proto
+++ b/remote/src/test/protobuf/ProtobufProtocolV3.proto
@@ -12,7 +12,7 @@
  */
 
 // Generated with protoc 3 compiler and copied do test src
-// doesen't use protobufGenerate yet as that replaces google packages
+// doesn't use protobufGenerate yet as that replaces google packages
 // with akka
 syntax = "proto3";
 
diff --git 
a/remote/src/test/scala/org/apache/pekko/remote/Ticket1978CommunicationSpec.scala
 
b/remote/src/test/scala/org/apache/pekko/remote/Ticket1978CommunicationSpec.scala
index 84ff2206dc..eeb1c99e58 100644
--- 
a/remote/src/test/scala/org/apache/pekko/remote/Ticket1978CommunicationSpec.scala
+++ 
b/remote/src/test/scala/org/apache/pekko/remote/Ticket1978CommunicationSpec.scala
@@ -180,7 +180,7 @@ abstract class Ticket1978CommunicationSpec(val 
cipherConfig: CipherConfig)
         }
       }
 
-      "have random numbers that are not compressable, because then they are 
not random" in {
+      "have random numbers that are not compressible, because then they are 
not random" in {
         val provider = new ConfigSSLEngineProvider(system)
         val rng = provider.createSecureRandom()
 
diff --git 
a/remote/src/test/scala/org/apache/pekko/remote/artery/tcp/SecureRandomFactorySpec.scala
 
b/remote/src/test/scala/org/apache/pekko/remote/artery/tcp/SecureRandomFactorySpec.scala
index 19dfe78320..c91bd6964d 100644
--- 
a/remote/src/test/scala/org/apache/pekko/remote/artery/tcp/SecureRandomFactorySpec.scala
+++ 
b/remote/src/test/scala/org/apache/pekko/remote/artery/tcp/SecureRandomFactorySpec.scala
@@ -64,7 +64,7 @@ abstract class SecureRandomFactorySpec(alg: String) extends 
PekkoSpec {
         }
       }
 
-      "have random numbers that are not compressable, because then they are 
not random" in {
+      "have random numbers that are not compressible, because then they are 
not random" in {
         val randomData = new Array[Byte](1024 * 1024)
         prng.nextBytes(randomData)
 
diff --git 
a/remote/src/test/scala/org/apache/pekko/remote/serialization/SystemMessageSerializationSpec.scala
 
b/remote/src/test/scala/org/apache/pekko/remote/serialization/SystemMessageSerializationSpec.scala
index 3bda09a491..d86908f051 100644
--- 
a/remote/src/test/scala/org/apache/pekko/remote/serialization/SystemMessageSerializationSpec.scala
+++ 
b/remote/src/test/scala/org/apache/pekko/remote/serialization/SystemMessageSerializationSpec.scala
@@ -54,7 +54,7 @@ class SystemMessageSerializationSpec extends 
PekkoSpec(SystemMessageSerializatio
       "Watch(ref, ref)" -> Watch(testRef, testRef2),
       "Unwatch(ref, ref)" -> Unwatch(testRef, testRef2),
       "Failed(ref, ex, uid)" -> Failed(testRef, new TestException("test4"), 
42),
-      "DeathWatchNotification(ref, confimed, addressTerminated)" ->
+      "DeathWatchNotification(ref, confirmed, addressTerminated)" ->
       DeathWatchNotification(testRef, existenceConfirmed = true, 
addressTerminated = true)).foreach {
       case (scenario, item) =>
         s"resolve serializer for [$scenario]" in {
diff --git 
a/stream-tests/src/test/scala/org/apache/pekko/stream/impl/fusing/ActorGraphInterpreterSpec.scala
 
b/stream-tests/src/test/scala/org/apache/pekko/stream/impl/fusing/ActorGraphInterpreterSpec.scala
index cb0d79caf4..84ddb87c26 100644
--- 
a/stream-tests/src/test/scala/org/apache/pekko/stream/impl/fusing/ActorGraphInterpreterSpec.scala
+++ 
b/stream-tests/src/test/scala/org/apache/pekko/stream/impl/fusing/ActorGraphInterpreterSpec.scala
@@ -158,59 +158,6 @@ class ActorGraphInterpreterSpec extends StreamSpec {
 
     }
 
-    "be able to interpret and resuse a simple bidi stage" in {
-      val identityBidi = new GraphStage[BidiShape[Int, Int, Int, Int]] {
-        val in1 = Inlet[Int]("in1")
-        val in2 = Inlet[Int]("in2")
-        val out1 = Outlet[Int]("out1")
-        val out2 = Outlet[Int]("out2")
-        val shape = BidiShape(in1, out1, in2, out2)
-
-        override def createLogic(inheritedAttributes: Attributes): 
GraphStageLogic = new GraphStageLogic(shape) {
-          setHandler(in1,
-            new InHandler {
-              override def onPush(): Unit = push(out1, grab(in1))
-
-              override def onUpstreamFinish(): Unit = complete(out1)
-            })
-
-          setHandler(in2,
-            new InHandler {
-              override def onPush(): Unit = push(out2, grab(in2))
-
-              override def onUpstreamFinish(): Unit = complete(out2)
-            })
-
-          setHandler(out1,
-            new OutHandler {
-              override def onPull(): Unit = pull(in1)
-
-              override def onDownstreamFinish(cause: Throwable): Unit = 
cancel(in1, cause)
-            })
-
-          setHandler(out2,
-            new OutHandler {
-              override def onPull(): Unit = pull(in2)
-
-              override def onDownstreamFinish(cause: Throwable): Unit = 
cancel(in2, cause)
-            })
-        }
-
-        override def toString = "IdentityBidi"
-      }
-
-      val identityBidiF = BidiFlow.fromGraph(identityBidi)
-      val identity = identityBidiF
-        .atop(identityBidiF)
-        .atop(identityBidiF)
-        .join(Flow[Int].map { x =>
-          x
-        })
-
-      Await.result(Source(1 to 
10).via(identity).grouped(100).runWith(Sink.head), 3.seconds) should ===(1 to 
10)
-
-    }
-
     "be able to interpret a rotated identity bidi stage" in {
       // This is a "rotated" identity BidiStage, as it loops back upstream 
elements
       // to its upstream, and loops back downstream elementd to its downstream.
diff --git 
a/stream-tests/src/test/scala/org/apache/pekko/stream/scaladsl/FlowFlatMapPrefixSpec.scala
 
b/stream-tests/src/test/scala/org/apache/pekko/stream/scaladsl/FlowFlatMapPrefixSpec.scala
index 6f6f25742e..3c24383da9 100644
--- 
a/stream-tests/src/test/scala/org/apache/pekko/stream/scaladsl/FlowFlatMapPrefixSpec.scala
+++ 
b/stream-tests/src/test/scala/org/apache/pekko/stream/scaladsl/FlowFlatMapPrefixSpec.scala
@@ -612,7 +612,7 @@ class FlowFlatMapPrefixSpec extends 
StreamSpec("pekko.loglevel = debug") {
             log.debug("closing sink")
             closeSink()
             log.debug("sink closed")
-            // closing the sink before returning means that it's higly probably
+            // closing the sink before returning means that it's highly 
probably
             // for the flatMapPrefix stage to receive the downstream 
cancellation before the actor graph interpreter
             // gets a chance to complete the new interpreter shell's 
registration.
             // this in turn exposes a bug in the actor graph interpreter when 
all active flows complete
diff --git 
a/stream-tests/src/test/scala/org/apache/pekko/stream/scaladsl/FlowMapAsyncSpec.scala
 
b/stream-tests/src/test/scala/org/apache/pekko/stream/scaladsl/FlowMapAsyncSpec.scala
index 47042b561f..9c7759bf7c 100644
--- 
a/stream-tests/src/test/scala/org/apache/pekko/stream/scaladsl/FlowMapAsyncSpec.scala
+++ 
b/stream-tests/src/test/scala/org/apache/pekko/stream/scaladsl/FlowMapAsyncSpec.scala
@@ -203,7 +203,7 @@ class FlowMapAsyncSpec extends StreamSpec {
               }
             case unexpected => fail(s"unexpected $unexpected")
           }
-        case unexpeced => fail(s"unexpected $unexpeced")
+        case unexpected => fail(s"unexpected $unexpected")
       }
     }
 
diff --git 
a/stream-tests/src/test/scala/org/apache/pekko/stream/scaladsl/GraphMatValueSpec.scala
 
b/stream-tests/src/test/scala/org/apache/pekko/stream/scaladsl/GraphMatValueSpec.scala
index 6daa81fd3c..3336034274 100644
--- 
a/stream-tests/src/test/scala/org/apache/pekko/stream/scaladsl/GraphMatValueSpec.scala
+++ 
b/stream-tests/src/test/scala/org/apache/pekko/stream/scaladsl/GraphMatValueSpec.scala
@@ -242,7 +242,7 @@ class GraphMatValueSpec extends StreamSpec {
       matValue should ===(NotUsed)
     }
 
-    "not ignore materialized value of indentity flow which is optimized away" 
in {
+    "not ignore materialized value of identity flow which is optimized away" 
in {
       val (m1, m2) = 
Source.single(1).viaMat(Flow[Int])(Keep.both).to(Sink.ignore).run()
       m1 should ===(NotUsed)
       m2 should ===(NotUsed)
diff --git 
a/stream-tests/src/test/scala/org/apache/pekko/stream/scaladsl/HubSpec.scala 
b/stream-tests/src/test/scala/org/apache/pekko/stream/scaladsl/HubSpec.scala
index db057b952c..1a396d823e 100644
--- a/stream-tests/src/test/scala/org/apache/pekko/stream/scaladsl/HubSpec.scala
+++ b/stream-tests/src/test/scala/org/apache/pekko/stream/scaladsl/HubSpec.scala
@@ -833,7 +833,7 @@ class HubSpec extends StreamSpec {
       // demand from downstream 2 is lost, because the buffer was full with 
elements for the other partition
       // however this is likely because of the very fine grained demand logic 
in this test and not likely
       // to happen in reality where both downstreams are likely going to keep 
pulling, or canceling
-      // for a scenario where one dosntream continous back pressures, head of 
line blocking can anyway happen
+      // for a scenario where one dosntream continuous back pressures, head of 
line blocking can anyway happen
       downstream1.request(1)
       downstream2.expectNext(1, 3, 5, 7, 9, 11, 13, 15)
       downstream1.expectNext(8)
diff --git 
a/stream/src/main/scala/org/apache/pekko/stream/impl/fusing/FutureFlow.scala 
b/stream/src/main/scala/org/apache/pekko/stream/impl/fusing/FutureFlow.scala
index 0deea88007..6cb4d2c558 100644
--- a/stream/src/main/scala/org/apache/pekko/stream/impl/fusing/FutureFlow.scala
+++ b/stream/src/main/scala/org/apache/pekko/stream/impl/fusing/FutureFlow.scala
@@ -74,7 +74,7 @@ import pekko.util.OptionVal
       }
 
       object Initializing extends InHandler with OutHandler {
-        // we don't expect a push since we bever pull upstream during 
initialization
+        // we don't expect a push since we never pull upstream during 
initialization
         override def onPush(): Unit = throw new 
IllegalStateException("unexpected push during initialization")
 
         var upstreamFailure = OptionVal.none[Throwable]
diff --git 
a/stream/src/main/scala/org/apache/pekko/stream/impl/fusing/GraphInterpreter.scala
 
b/stream/src/main/scala/org/apache/pekko/stream/impl/fusing/GraphInterpreter.scala
index df3a36a39e..b774cfb6ab 100644
--- 
a/stream/src/main/scala/org/apache/pekko/stream/impl/fusing/GraphInterpreter.scala
+++ 
b/stream/src/main/scala/org/apache/pekko/stream/impl/fusing/GraphInterpreter.scala
@@ -83,7 +83,7 @@ import pekko.stream.stage._
   val singleNoAttribute: Array[Attributes] = Array(Attributes.none)
 
   /**
-   * INERNAL API
+   * INTERNAL API
    *
    * Contains all the necessary information for the GraphInterpreter to be 
able to implement a connection
    * between an output and input ports.
diff --git 
a/stream/src/main/scala/org/apache/pekko/stream/impl/fusing/Ops.scala 
b/stream/src/main/scala/org/apache/pekko/stream/impl/fusing/Ops.scala
index d214479d4e..6f7b1db1ae 100644
--- a/stream/src/main/scala/org/apache/pekko/stream/impl/fusing/Ops.scala
+++ b/stream/src/main/scala/org/apache/pekko/stream/impl/fusing/Ops.scala
@@ -1252,7 +1252,7 @@ private[stream] object Collect {
   final class Holder[T](var elem: Try[T], val cb: AsyncCallback[Holder[T]]) 
extends (Try[T] => Unit) {
 
     // To support both fail-fast when the supervision directive is Stop
-    // and not calling the decider multiple times (#23888) we need to cache 
the decider result and re-use that
+    // and not calling the decider multiple times (#23888) we need to cache 
the decider result and reuse that
     private var cachedSupervisionDirective: OptionVal[Supervision.Directive] = 
OptionVal.None
 
     def supervisionDirectiveFor(decider: Supervision.Decider, ex: Throwable): 
Supervision.Directive = {
diff --git a/stream/src/main/scala/org/apache/pekko/stream/impl/package.scala 
b/stream/src/main/scala/org/apache/pekko/stream/impl/package.scala
index d6356db91b..7f551a106c 100644
--- a/stream/src/main/scala/org/apache/pekko/stream/impl/package.scala
+++ b/stream/src/main/scala/org/apache/pekko/stream/impl/package.scala
@@ -359,7 +359,7 @@ package org.apache.pekko.stream
  *  [[org.apache.pekko.stream.impl.PhasedFusingActorMaterializer]] and its 
[[org.apache.pekko.stream.impl.IslandTracking]] helper comes into
  *  the picture. These classes do the heavy-lifting of traversing the 
traversal and then mapping global slots to
  *  slots local to the island, delegating then the local wiring to 
[[org.apache.pekko.stream.impl.PhaseIsland]] implementations.
- *  For example the [[org.apache.pekko.stream.impl.GraphStageIsland]] sees 
only a contigous slot-space and hence it can directly
+ *  For example the [[org.apache.pekko.stream.impl.GraphStageIsland]] sees 
only a contiguous slot-space and hence it can directly
  *  construct the array for the interpreter. It is not aware of the presence 
of other islands or how it is represented
  *  in the global slot-space.
  *
diff --git a/stream/src/main/scala/org/apache/pekko/stream/javadsl/Flow.scala 
b/stream/src/main/scala/org/apache/pekko/stream/javadsl/Flow.scala
index eb5d4c9f34..010ce0b34d 100755
--- a/stream/src/main/scala/org/apache/pekko/stream/javadsl/Flow.scala
+++ b/stream/src/main/scala/org/apache/pekko/stream/javadsl/Flow.scala
@@ -4219,7 +4219,7 @@ final class Flow[In, Out, Mat](delegate: 
scaladsl.Flow[In, Out, Mat]) extends Gr
   /**
    * Materializes to `FlowMonitor[Out]` that allows monitoring of the current 
flow. All events are propagated
    * by the monitor unchanged. Note that the monitor inserts a memory barrier 
every time it processes an
-   * event, and may therefor affect performance.
+   * event, and may therefore affect performance.
    *
    * The `combine` function is used to combine the `FlowMonitor` with this 
flow's materialized value.
    */
@@ -4234,7 +4234,7 @@ final class Flow[In, Out, Mat](delegate: 
scaladsl.Flow[In, Out, Mat]) extends Gr
    *
    * The `FlowMonitor[Out]` allows monitoring of the current flow. All events 
are propagated
    * by the monitor unchanged. Note that the monitor inserts a memory barrier 
every time it processes an
-   * event, and may therefor affect performance.
+   * event, and may therefore affect performance.
    */
   def monitor(): Flow[In, Out, Pair[Mat, FlowMonitor[Out]]] =
     monitorMat(Keep.both)
diff --git a/stream/src/main/scala/org/apache/pekko/stream/javadsl/Source.scala 
b/stream/src/main/scala/org/apache/pekko/stream/javadsl/Source.scala
index c15979af8e..10a634f582 100755
--- a/stream/src/main/scala/org/apache/pekko/stream/javadsl/Source.scala
+++ b/stream/src/main/scala/org/apache/pekko/stream/javadsl/Source.scala
@@ -4706,7 +4706,7 @@ final class Source[Out, Mat](delegate: 
scaladsl.Source[Out, Mat]) extends Graph[
   /**
    * Materializes to `FlowMonitor[Out]` that allows monitoring of the current 
flow. All events are propagated
    * by the monitor unchanged. Note that the monitor inserts a memory barrier 
every time it processes an
-   * event, and may therefor affect performance.
+   * event, and may therefore affect performance.
    * The `combine` function is used to combine the `FlowMonitor` with this 
flow's materialized value.
    */
   def monitorMat[M](combine: function.Function2[Mat, FlowMonitor[Out], M]): 
javadsl.Source[Out, M] =
@@ -4720,7 +4720,7 @@ final class Source[Out, Mat](delegate: 
scaladsl.Source[Out, Mat]) extends Graph[
    *
    * The `FlowMonitor` allows monitoring of the current flow. All events are 
propagated
    * by the monitor unchanged. Note that the monitor inserts a memory barrier 
every time it processes an
-   * event, and may therefor affect performance.
+   * event, and may therefore affect performance.
    */
   def monitor(): Source[Out, Pair[Mat, FlowMonitor[Out]]] =
     monitorMat(Keep.both)
diff --git 
a/stream/src/main/scala/org/apache/pekko/stream/javadsl/StreamConverters.scala 
b/stream/src/main/scala/org/apache/pekko/stream/javadsl/StreamConverters.scala
index 8303f6687f..fa5f39ec5f 100644
--- 
a/stream/src/main/scala/org/apache/pekko/stream/javadsl/StreamConverters.scala
+++ 
b/stream/src/main/scala/org/apache/pekko/stream/javadsl/StreamConverters.scala
@@ -185,7 +185,7 @@ object StreamConverters {
    * Java 8 ``Stream`` throws exception in case reactive stream failed.
    *
    * Be aware that Java ``Stream`` blocks current thread while waiting on next 
element from downstream.
-   * As it is interacting wit blocking API the implementation runs on a 
separate dispatcher
+   * As it is interacting with blocking API the implementation runs on a 
separate dispatcher
    * configured through the ``pekko.stream.blocking-io-dispatcher``.
    */
   def asJavaStream[T](): Sink[T, java.util.stream.Stream[T]] = new 
Sink(scaladsl.StreamConverters.asJavaStream())
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 49d0c8382e..4cb3070b21 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
@@ -4546,7 +4546,7 @@ trait FlowOpsMat[+Out, +Mat] extends FlowOps[Out, Mat] {
   /**
    * Materializes to `FlowMonitor[Out]` that allows monitoring of the current 
flow. All events are propagated
    * by the monitor unchanged. Note that the monitor inserts a memory barrier 
every time it processes an
-   * event, and may therefor affect performance.
+   * event, and may therefore affect performance.
    *
    * The `combine` function is used to combine the `FlowMonitor` with this 
flow's materialized value.
    */
@@ -4561,7 +4561,7 @@ trait FlowOpsMat[+Out, +Mat] extends FlowOps[Out, Mat] {
    *
    * The `FlowMonitor[Out]` allows monitoring of the current flow. All events 
are propagated
    * by the monitor unchanged. Note that the monitor inserts a memory barrier 
every time it processes an
-   * event, and may therefor affect performance.
+   * event, and may therefore affect performance.
    */
   def monitor: ReprMat[Out, (Mat, FlowMonitor[Out])] =
     monitorMat(Keep.both)
diff --git 
a/stream/src/main/scala/org/apache/pekko/stream/scaladsl/Framing.scala 
b/stream/src/main/scala/org/apache/pekko/stream/scaladsl/Framing.scala
index c3becf8ada..feaeacb016 100644
--- a/stream/src/main/scala/org/apache/pekko/stream/scaladsl/Framing.scala
+++ b/stream/src/main/scala/org/apache/pekko/stream/scaladsl/Framing.scala
@@ -227,7 +227,7 @@ object Framing {
 
         // We use an efficient unsafe array implementation and must be use 
with caution.
         // It contains all indices computed during search phase.
-        // The capacity is fixed at 256 to preserve fairness and prevent 
uneccessary allocation during parsing phase.
+        // The capacity is fixed at 256 to preserve fairness and prevent 
unnecessary allocation during parsing phase.
         // This array provide a way to check remaining capacity and must be 
use to prevent out of bounds exception.
         // In this use case, we compute all possibles indices up to 256 and 
then parse everything.
         private val indices = new LightArray[(Int, Int)](256)
diff --git a/stream/src/main/scala/org/apache/pekko/stream/scaladsl/Graph.scala 
b/stream/src/main/scala/org/apache/pekko/stream/scaladsl/Graph.scala
index a8c4a2ad24..c653800bda 100755
--- a/stream/src/main/scala/org/apache/pekko/stream/scaladsl/Graph.scala
+++ b/stream/src/main/scala/org/apache/pekko/stream/scaladsl/Graph.scala
@@ -1278,7 +1278,7 @@ class ZipWithN[A, O](zipper: immutable.Seq[A] => O)(n: 
Int) extends GraphStage[U
 
 object Concat {
 
-  // two streams is so common that we can re-use a single instance to avoid 
some allocations
+  // two streams is so common that we can reuse a single instance to avoid 
some allocations
   private val _concatTwo = new Concat[Any](2)
   private def concatTwo[T]: GraphStage[UniformFanInShape[T, T]] =
     _concatTwo.asInstanceOf[GraphStage[UniformFanInShape[T, T]]]
diff --git 
a/stream/src/main/scala/org/apache/pekko/stream/scaladsl/StreamConverters.scala 
b/stream/src/main/scala/org/apache/pekko/stream/scaladsl/StreamConverters.scala
index 7b1a743889..445e34bdaf 100644
--- 
a/stream/src/main/scala/org/apache/pekko/stream/scaladsl/StreamConverters.scala
+++ 
b/stream/src/main/scala/org/apache/pekko/stream/scaladsl/StreamConverters.scala
@@ -181,7 +181,7 @@ object StreamConverters {
    * If the Java 8 ``Stream`` throws exception the Pekko stream is cancelled.
    *
    * Be aware that Java ``Stream`` blocks current thread while waiting on next 
element from downstream.
-   * As it is interacting wit blocking API the implementation runs on a 
separate dispatcher
+   * As it is interacting with blocking API the implementation runs on a 
separate dispatcher
    * configured through the ``pekko.stream.blocking-io-dispatcher``.
    */
   def asJavaStream[T](): Sink[T, java.util.stream.Stream[T]] = {
diff --git 
a/testkit/src/test/scala/org/apache/pekko/testkit/metrics/reporter/PekkoConsoleReporter.scala
 
b/testkit/src/test/scala/org/apache/pekko/testkit/metrics/reporter/PekkoConsoleReporter.scala
index 369ad39e9a..b4fdf026b6 100644
--- 
a/testkit/src/test/scala/org/apache/pekko/testkit/metrics/reporter/PekkoConsoleReporter.scala
+++ 
b/testkit/src/test/scala/org/apache/pekko/testkit/metrics/reporter/PekkoConsoleReporter.scala
@@ -23,7 +23,7 @@ import org.apache.pekko
 import pekko.testkit.metrics._
 
 /**
- * Used to report `org.apache.pekko.testkit.metric.Metric` types that the 
original `com.codahale.metrics.ConsoleReporter` is unaware of (cannot re-use 
directly because of private constructor).
+ * Used to report `org.apache.pekko.testkit.metric.Metric` types that the 
original `com.codahale.metrics.ConsoleReporter` is unaware of (cannot reuse 
directly because of private constructor).
  */
 class PekkoConsoleReporter(registry: PekkoMetricRegistry, verbose: Boolean, 
output: PrintStream = System.out)
     extends ScheduledReporter(


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

Reply via email to