diff --git a/.github/workflows/cve-scan-pr.yml b/.github/workflows/cve-scan-pr.yml
index 0aa0b62ef7..5778d86d15 100644
--- a/.github/workflows/cve-scan-pr.yml
+++ b/.github/workflows/cve-scan-pr.yml
@@ -21,8 +21,6 @@ jobs:
- name: Build Docker image of HMDA platform
run: |
env JAVA_OPTS="-Xss256m -Xmx4096m" sbt "project hmda-platform" dockerPublishLocalSkipTests
- env:
- AKKA_RESOLVER: ${{ secrets.AKKA_RESOLVER }}
- name: Tag and name Docker image
run: docker tag hmda/hmda-platform:latest pr-cve-scan:latest
diff --git a/.github/workflows/dockerhub-push.yml b/.github/workflows/dockerhub-push.yml
index e2520d7987..1bbdd9b965 100644
--- a/.github/workflows/dockerhub-push.yml
+++ b/.github/workflows/dockerhub-push.yml
@@ -24,7 +24,7 @@ jobs:
run: |
sbt "project hmda-platform" dockerPublishLocalSkipTests
env:
- AKKA_RESOLVER: ${{ secrets.AKKA_RESOLVER }}
+ PEKKO_RESOLVER: ${{ secrets.PEKKO_RESOLVER }}
- name: Tag Docker image
run: docker tag $(docker images --filter=reference="hmda/hmda-platform:latest" --format "{{.ID}}") ${{ env.REGISTRY }}:${{ github.ref_name }}
diff --git a/.github/workflows/helper-functions.yaml b/.github/workflows/helper-functions.yaml
index 753803451a..afc8a81fd4 100644
--- a/.github/workflows/helper-functions.yaml
+++ b/.github/workflows/helper-functions.yaml
@@ -39,7 +39,7 @@ jobs:
done
continue-on-error: true
env:
- AKKA_RESOLVER: ${{ secrets.AKKA_RESOLVER }}
+ PEKKO_RESOLVER: ${{ secrets.PEKKO_RESOLVER }}
- name: Check Test Results
run: |
diff --git a/README.md b/README.md
index 30a41ee2cd..b74ba18f11 100644
--- a/README.md
+++ b/README.md
@@ -178,7 +178,7 @@ export JAVA_HOME=$HOME/.asdf/installs/java/openjdk-13.0.2
### Running with sbt
-~~The HMDA Platform can run locally using [`sbt`](https://www.scala-sbt.org/) with an [embedded Cassandra](https://doc.akka.io/docs/alpakka-kafka/current/) and [embedded Kafka](https://doc.akka.io/docs/alpakka-kafka/current/). To get started:~~
+~~The HMDA Platform can run locally using [`sbt`](https://www.scala-sbt.org/) with an [embedded Cassandra](https://doc.pekko.io/docs/pekko-kafka/current/) and [embedded Kafka](https://doc.pekko.io/docs/pekko-kafka/current/). To get started:~~
_removing embedded cassandra allows us to use more up-to-date java versions_
For local development, supporting services need to be started first in docker:
@@ -197,10 +197,10 @@ For local development, supporting services need to be started first in docker:
export CASSANDRA_CLUSTER_HOSTS=localhost
export APP_PORT=2551
```
-1. With the new Akka dependencies no longer available from the public resolver, we need to use the authenticated URL retrievable from https://account.akka.io/token.
+1. With the new pekko dependencies no longer available from the public resolver, we need to use the authenticated URL retrievable from https://account.pekko.io/token.
Once we get the url from that page, export it as an environment variable (or set it as a env var shell profile):
```bash
- export AKKA_RESOLVER={url from the akka token web page}
+ export PEKKO_RESOLVER={url from the pekko token web page}
```
1. Start sbt and run the platform with the following commands:
```bash
diff --git a/UPGRADES.md b/UPGRADES.md
index a9bbe6f102..2df4f7354e 100644
--- a/UPGRADES.md
+++ b/UPGRADES.md
@@ -1,25 +1,25 @@
# Upgrades
-## Akka Cassandra Persistence Plugin Upgrade
-Migration Documentation: https://doc.akka.io/docs/akka-persistence-cassandra/current/migrations.html
+## pekko Cassandra Persistence Plugin Upgrade
+Migration Documentation: https://doc.pekko.io/docs/pekko-persistence-cassandra/current/migrations.html
##### new table needed for upgrading to 1.0+
```sql
-CREATE TABLE IF NOT EXISTS akka.all_persistence_ids(
+CREATE TABLE IF NOT EXISTS pekko.all_persistence_ids(
persistence_id text PRIMARY KEY);
```
new environment variable to put into `cassandra-configmap`: `cassandra-cluster-dc` (e.g.: `dc` / `dc2`)
### Migration
-newly added table needs to be populated, refer to [Migration Documentation](https://doc.akka.io/docs/akka-persistence-cassandra/current/migrations.html) in [plugin upgrade](#akka-cassandra-persistence-plugin-upgrade) section,
+newly added table needs to be populated, refer to [Migration Documentation](https://doc.pekko.io/docs/pekko-persistence-cassandra/current/migrations.html) in [plugin upgrade](#pekko-cassandra-persistence-plugin-upgrade) section,
code snippet for migration tool:
```scala
import scala.util.Failure
import scala.util.Success
-import akka.actor.ActorSystem
-import akka.persistence.cassandra.reconciler.Reconciliation
+import org.apache.pekko.actor.ActorSystem
+import pekko.persistence.cassandra.reconciler.Reconciliation
// System should have the same Cassandra plugin configuration as your application
// but be careful to remove seed nodes so this doesn't join the cluster
@@ -43,6 +43,9 @@ so it is visible if errors occur, or if the process stalled,
and to increase request timeout.
```HOCON
datastax-java-driver {
+ basic.request {
+ timeout = 10 seconds
+ }
basic {
contact-points = ["localhost:9042"]
contact-points = [${?CASSANDRA_CLUSTER_HOSTS}":9042"]
diff --git a/akka.sbt b/akka.sbt
deleted file mode 100644
index c69216224e..0000000000
--- a/akka.sbt
+++ /dev/null
@@ -1,2 +0,0 @@
-ThisBuild / resolvers += "akka-secure-mvn" at sys.env("AKKA_RESOLVER")
-ThisBuild / resolvers += Resolver.url("akka-secure-ivy", url(sys.env("AKKA_RESOLVER")))(Resolver.ivyStylePatterns)
diff --git a/build.sbt b/build.sbt
index 8b486a407a..ae4717f543 100644
--- a/build.sbt
+++ b/build.sbt
@@ -3,12 +3,12 @@ import BuildSettings._
import sbtassembly.AssemblyPlugin.autoImport.assemblyMergeStrategy
import com.typesafe.sbt.packager.docker._
-lazy val commonDeps = Seq(logback, scalaTest, scalaCheck, akkaHttpSprayJson, testContainers, apacheCommonsIO, log4jToSlf4j, kubernetesApi, scalaLogging)
+lazy val commonDeps = Seq(logback, scalaTest, scalaCheck, pekkoHttpSprayJson, testContainers, apacheCommonsIO, log4jToSlf4j, kubernetesApi, scalaLogging)
lazy val sparkDeps =
Seq(
postgres,
- akkaKafkaStreams,
+ pekkoKafkaStreams,
kafkaClients
)
@@ -16,46 +16,45 @@ lazy val authDeps = Seq(keycloakAdmin, jbossLogging, httpClient)
lazy val keycloakServerDeps = Seq(resteasyClient, resteasyJackson, resteasyMulti)
-lazy val akkaDeps = Seq(
- akkaSlf4J,
- akkaCluster,
- akkaTyped,
- akkaClusterTyped,
- akkaStream,
- akkaStreamTyped,
- akkaManagement,
- akkaManagementClusterBootstrap,
- akkaServiceDiscoveryDNS,
- akkaServiceDiscoveryKubernetes,
- akkaClusterHttpManagement,
- akkaClusterHttpManagement,
- akkaTestkitTyped,
- akkaStreamsTestKit,
- akkaCors,
+lazy val pekkoDeps = Seq(
+ pekkoSlf4J,
+ pekkoCluster,
+ pekkoTyped,
+ pekkoClusterTyped,
+ pekkoStream,
+ pekkoStreamTyped,
+ pekkoManagement,
+ pekkoManagementClusterBootstrap,
+ pekkoServiceDiscoveryDNS,
+ pekkoServiceDiscoveryKubernetes,
+ pekkoClusterHttpManagement,
+ pekkoClusterHttpManagement,
+ pekkoTestkitTyped,
+ pekkoStreamsTestKit,
+ pekkoCors,
mskdriver,
- akkaKafkaStreams,
+ pekkoKafkaStreams,
kafkaClients,
- alpakkaS3,
- akkaQuartzScheduler,
- alpakkaFile
+ pekkoS3,
+ pekkoQuartzScheduler,
+ pekkoFile
)
-lazy val akkaPersistenceDeps =
+lazy val pekkoPersistenceDeps =
Seq(
- akkaPersistence,
- akkaClusterSharding,
- akkaPersistenceTyped,
- akkaPersistenceQuery,
- akkaClusterShardingTyped,
- akkaPersistenceCassandra,
+ pekkoPersistence,
+ pekkoClusterSharding,
+ pekkoPersistenceTyped,
+ pekkoPersistenceQuery,
+ pekkoClusterShardingTyped,
+ pekkoPersistenceCassandra,
keyspacedriver
)
-lazy val akkaHttpDeps =
- Seq(akkaHttp, akkaHttp2, akkaHttpXml, akkaHttpTestkit, akkaStreamsTestKit, akkaHttpCirce)
+lazy val pekkoHttpDeps =
+ Seq(pekkoHttp, pekkoHttp2, pekkoHttpXml, pekkoHttpTestkit, pekkoStreamsTestKit, pekkoHttpCirce)
lazy val circeDeps = Seq(circe, circeGeneric, circeParser)
lazy val enumeratumDeps = Seq(enumeratum, enumeratumCirce)
-
lazy val slickDeps = Seq(slick, slickHikariCP, postgres, h2)
lazy val metaInfMatcher = """META-INF/.+\.(SF|DSA|RSA)""".r
lazy val dockerSettings = Seq(
@@ -130,10 +129,12 @@ lazy val common = (project in file("common"))
scalapb.gen() -> (Compile / sourceManaged).value / "protobuf"
),
Seq(
- libraryDependencies ++= commonDeps ++ authDeps ++ akkaDeps ++ akkaPersistenceDeps ++ akkaHttpDeps ++ circeDeps ++ slickDeps ++ List(
+ libraryDependencies ++= commonDeps ++ authDeps ++ pekkoDeps ++ pekkoPersistenceDeps ++ pekkoHttpDeps ++ circeDeps ++ slickDeps ++ List(
cormorant, cormorantGeneric, scalaMock, scalacheckShapeless, diffx
)
),
+ Seq(dependencyOverrides ++= Seq(jacksonDatabind,pekkoSerialization ))
+ ,
// addCompilerPlugin("com.olegpy" %% "better-monadic-for" % "0.3.1")
addCompilerPlugin("com.olegpy" %% "better-monadic-for" % "0.3.1"),
// https://github.com/aws-samples/amazon-keyspaces-java-driver-helpers
@@ -155,6 +156,7 @@ lazy val `hmda-platform` = (project in file("hmda"))
.settings(
Seq(
libraryDependencies ++= List(guava, zeroAllocationHashing),
+ dependencyOverrides ++= Seq(jacksonDatabind,pekkoSerialization ),
Compile / mainClass := Some("hmda.HmdaPlatform"),
assembly / assemblyJarName := "hmda2.jar",
assembly / assemblyMergeStrategy := {
@@ -170,6 +172,24 @@ lazy val `hmda-platform` = (project in file("hmda"))
case PathList(ps @ _*) if ps.last endsWith ".proto" =>
MergeStrategy.first
case "module-info.class" => MergeStrategy.concat
+ case PathList("META-INF", "services", xs @ _*) => MergeStrategy.concat
+ case PathList("net", "jpountz", xs @ _*) => MergeStrategy.last
+ case PathList("org", "lz4", xs @ _*) => MergeStrategy.last
+ case PathList(ps @ _*) if ps.last endsWith ".proto" => MergeStrategy.first
+ case PathList("com", "datastax", xs@_*) => MergeStrategy.first
+ case PathList("org", "apache", xs@_*) => MergeStrategy.first
+ case PathList("org", "glassfish", xs@_*) => MergeStrategy.first
+ case PathList("com", "sun", xs@_*) => MergeStrategy.first
+ case x if x.endsWith("reference-overrides.conf") => MergeStrategy.concat
+ case x if x.endsWith("reference.conf") => MergeStrategy.concat
+ case x if x.endsWith("version.conf") => MergeStrategy.concat
+ case x if x.endsWith("module-info.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
+ case x if x.endsWith("/liblz4-java.so") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4ByteBufferUtils$Match.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
case x if x.endsWith("/module-info.class") => MergeStrategy.concat
case x if x.endsWith("/LineTokenizer.class") => MergeStrategy.concat
case x if x.endsWith("/LogSupport.class") => MergeStrategy.concat
@@ -197,6 +217,7 @@ lazy val `check-digit` = (project in file("check-digit"))
.settings(
Seq(
Compile / mainClass := Some("hmda.uli.HmdaUli"),
+ dependencyOverrides ++= Seq(jacksonDatabind,pekkoSerialization ),
assembly / assemblyJarName := {
s"${name.value}.jar"
},
@@ -212,6 +233,24 @@ lazy val `check-digit` = (project in file("check-digit"))
case PathList(ps @ _*) if ps.last endsWith ".proto" =>
MergeStrategy.first
case "module-info.class" => MergeStrategy.concat
+ case PathList("META-INF", "services", xs @ _*) => MergeStrategy.concat
+ case PathList("net", "jpountz", xs @ _*) => MergeStrategy.last
+ case PathList("org", "lz4", xs @ _*) => MergeStrategy.last
+ case PathList(ps @ _*) if ps.last endsWith ".proto" => MergeStrategy.first
+ case PathList("com", "datastax", xs@_*) => MergeStrategy.first
+ case PathList("org", "apache", xs@_*) => MergeStrategy.first
+ case PathList("org", "glassfish", xs@_*) => MergeStrategy.first
+ case PathList("com", "sun", xs@_*) => MergeStrategy.first
+ case x if x.endsWith("reference-overrides.conf") => MergeStrategy.concat
+ case x if x.endsWith("reference.conf") => MergeStrategy.concat
+ case x if x.endsWith("version.conf") => MergeStrategy.concat
+ case x if x.endsWith("module-info.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
+ case x if x.endsWith("/liblz4-java.so") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4ByteBufferUtils$Match.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
case x if x.endsWith("/module-info.class") => MergeStrategy.concat
case x if x.endsWith("/LineTokenizer.class") => MergeStrategy.concat
case x if x.endsWith("/LogSupport.class") => MergeStrategy.concat
@@ -237,8 +276,9 @@ lazy val `check-digit` = (project in file("check-digit"))
.settings(hmdaBuildSettings: _*)
.settings(
Seq(
- libraryDependencies ++= commonDeps ++ akkaDeps ++ akkaHttpDeps ++ circeDeps ++ slickDeps ++
+ libraryDependencies ++= commonDeps ++ pekkoDeps ++ pekkoHttpDeps ++ circeDeps ++ slickDeps ++
enumeratumDeps :+ monix :+ lettuce :+ scalaMock,
+ dependencyOverrides ++= Seq(jacksonDatabind,pekkoSerialization ),
Compile / mainClass := Some("hmda.proxy.FileProxy"),
assembly / assemblyJarName := {
s"${name.value}.jar"
@@ -254,6 +294,26 @@ lazy val `check-digit` = (project in file("check-digit"))
case PathList(ps @ _*) if ps.last endsWith ".proto" =>
MergeStrategy.first
case "module-info.class" => MergeStrategy.concat
+ case PathList("META-INF", "services", xs @ _*) => MergeStrategy.concat
+ case PathList("net", "jpountz", xs @ _*) => MergeStrategy.last
+ case PathList("org", "lz4", xs @ _*) => MergeStrategy.last
+ case PathList(ps @ _*) if ps.last endsWith ".proto" => MergeStrategy.first
+ case PathList("com", "datastax", xs@_*) => MergeStrategy.first
+ case PathList("org", "apache", xs@_*) => MergeStrategy.first
+ case PathList("org", "glassfish", xs@_*) => MergeStrategy.first
+ case PathList("com", "sun", xs@_*) => MergeStrategy.first
+ case x if x.endsWith("reference-overrides.conf") => MergeStrategy.concat
+ case x if x.endsWith("reference.conf") => MergeStrategy.concat
+ case x if x.endsWith("version.conf") => MergeStrategy.concat
+ case x if x.endsWith("module-info.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
+ case x if x.endsWith("/liblz4-java.so") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4ByteBufferUtils$Match.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
case x if x.endsWith("/module-info.class") => MergeStrategy.concat
case x if x.endsWith("/LineTokenizer.class") => MergeStrategy.concat
case x if x.endsWith("/LogSupport.class") => MergeStrategy.concat
@@ -280,6 +340,7 @@ lazy val `institutions-api` = (project in file("institutions-api"))
.settings(
Seq(
Compile / mainClass := Some("hmda.institution.HmdaInstitutionApi"),
+ dependencyOverrides ++= Seq(jacksonDatabind,pekkoSerialization ),
assembly / assemblyMergeStrategy := {
case "application.conf" => MergeStrategy.concat
case "META-INF/io.netty.versions.properties" => MergeStrategy.concat
@@ -291,6 +352,24 @@ lazy val `institutions-api` = (project in file("institutions-api"))
case PathList(ps @ _*) if ps.last endsWith ".proto" =>
MergeStrategy.first
case "module-info.class" => MergeStrategy.concat
+ case PathList("META-INF", "services", xs @ _*) => MergeStrategy.concat
+ case PathList("net", "jpountz", xs @ _*) => MergeStrategy.last
+ case PathList("org", "lz4", xs @ _*) => MergeStrategy.last
+ case PathList(ps @ _*) if ps.last endsWith ".proto" => MergeStrategy.first
+ case PathList("com", "datastax", xs@_*) => MergeStrategy.first
+ case PathList("org", "apache", xs@_*) => MergeStrategy.first
+ case PathList("org", "glassfish", xs@_*) => MergeStrategy.first
+ case PathList("com", "sun", xs@_*) => MergeStrategy.first
+ case x if x.endsWith("reference-overrides.conf") => MergeStrategy.concat
+ case x if x.endsWith("reference.conf") => MergeStrategy.concat
+ case x if x.endsWith("version.conf") => MergeStrategy.concat
+ case x if x.endsWith("module-info.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
+ case x if x.endsWith("/liblz4-java.so") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4ByteBufferUtils$Match.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
case x if x.endsWith("/module-info.class") => MergeStrategy.concat
case x if x.endsWith("/LineTokenizer.class") => MergeStrategy.concat
case x if x.endsWith("/LogSupport.class") => MergeStrategy.concat
@@ -318,8 +397,9 @@ lazy val `hmda-data-publisher` = (project in file("hmda-data-publisher"))
.settings(hmdaBuildSettings: _*)
.settings(
Seq(
- libraryDependencies ++= commonDeps ++ akkaDeps ++ akkaHttpDeps ++ circeDeps ++ slickDeps ++ enumeratumDeps :+
+ libraryDependencies ++= commonDeps ++ pekkoDeps ++ pekkoHttpDeps ++ circeDeps ++ slickDeps ++ enumeratumDeps :+
scalaMock :+ cormorantGeneric :+ scalacheckShapeless :+ diffx,
+ dependencyOverrides ++= Seq(jacksonDatabind,pekkoSerialization ),
Compile / mainClass := Some("hmda.publisher.HmdaDataPublisherApp"),
assembly / assemblyJarName := {
s"${name.value}.jar"
@@ -335,6 +415,24 @@ lazy val `hmda-data-publisher` = (project in file("hmda-data-publisher"))
case PathList(ps @ _*) if ps.last endsWith ".proto" =>
MergeStrategy.first
case "module-info.class" => MergeStrategy.concat
+ case PathList("META-INF", "services", xs @ _*) => MergeStrategy.concat
+ case PathList("net", "jpountz", xs @ _*) => MergeStrategy.last
+ case PathList("org", "lz4", xs @ _*) => MergeStrategy.last
+ case PathList(ps @ _*) if ps.last endsWith ".proto" => MergeStrategy.first
+ case PathList("com", "datastax", xs@_*) => MergeStrategy.first
+ case PathList("org", "apache", xs@_*) => MergeStrategy.first
+ case PathList("org", "glassfish", xs@_*) => MergeStrategy.first
+ case PathList("com", "sun", xs@_*) => MergeStrategy.first
+ case x if x.endsWith("reference-overrides.conf") => MergeStrategy.concat
+ case x if x.endsWith("reference.conf") => MergeStrategy.concat
+ case x if x.endsWith("version.conf") => MergeStrategy.concat
+ case x if x.endsWith("module-info.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
+ case x if x.endsWith("/liblz4-java.so") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4ByteBufferUtils$Match.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
case x if x.endsWith("/module-info.class") => MergeStrategy.concat
case x if x.endsWith("/LineTokenizer.class") => MergeStrategy.concat
case x if x.endsWith("/LogSupport.class") => MergeStrategy.concat
@@ -361,8 +459,9 @@ lazy val `hmda-dashboard` = (project in file("hmda-dashboard"))
.settings(hmdaBuildSettings: _*)
.settings(
Seq(
- libraryDependencies ++= commonDeps ++ akkaDeps ++ akkaHttpDeps ++ circeDeps ++ slickDeps ++
+ libraryDependencies ++= commonDeps ++ pekkoDeps ++ pekkoHttpDeps ++ circeDeps ++ slickDeps ++
enumeratumDeps :+ monix :+ lettuce :+ scalaMock,
+ dependencyOverrides ++= Seq(jacksonDatabind,pekkoSerialization ),
assembly / assemblyMergeStrategy := {
case "application.conf" => MergeStrategy.concat
case "META-INF/io.netty.versions.properties" => MergeStrategy.concat
@@ -371,14 +470,34 @@ lazy val `hmda-dashboard` = (project in file("hmda-dashboard"))
case PathList("META-INF", xs@_*) => MergeStrategy.concat
case PathList("org", "bouncycastle", xs @_*) => MergeStrategy.first
case PathList("jakarta", xs@_*) => MergeStrategy.last
- case PathList(ps @ _*) if ps.last endsWith ".proto" =>
- MergeStrategy.first
+ case PathList(ps @ _*) if ps.last endsWith ".proto" => MergeStrategy.first
+ case PathList("META-INF", "services", xs @ _*) => MergeStrategy.concat
+ case PathList("net", "jpountz", xs @ _*) => MergeStrategy.last
+ case PathList("org", "lz4", xs @ _*) => MergeStrategy.last
+ case PathList(ps @ _*) if ps.last endsWith ".proto" => MergeStrategy.first
+ case PathList("com", "datastax", xs@_*) => MergeStrategy.first
+ case PathList("org", "apache", xs@_*) => MergeStrategy.first
+ case PathList("org", "glassfish", xs@_*) => MergeStrategy.first
+ case PathList("com", "sun", xs@_*) => MergeStrategy.first
+ case x if x.endsWith("reference-overrides.conf") => MergeStrategy.concat
+ case x if x.endsWith("reference.conf") => MergeStrategy.concat
+ case x if x.endsWith("version.conf") => MergeStrategy.concat
+ case x if x.endsWith("module-info.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
+ case x if x.endsWith("/liblz4-java.so") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4ByteBufferUtils$Match.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
case "module-info.class" => MergeStrategy.concat
case x if x.endsWith("/module-info.class") => MergeStrategy.concat
case x if x.endsWith("/LineTokenizer.class") => MergeStrategy.concat
case x if x.endsWith("/LogSupport.class") => MergeStrategy.concat
case x if x.endsWith("/MailcapFile.class") => MergeStrategy.concat
case x if x.endsWith("/MimeTypeFile.class") => MergeStrategy.concat
+
case x =>
val oldStrategy = (assembly / assemblyMergeStrategy).value
oldStrategy(x)
@@ -401,24 +520,40 @@ lazy val `ratespread-calculator` = (project in file("ratespread-calculator"))
)
.settings(hmdaBuildSettings: _*)
.settings(
- Seq(
- Compile / mainClass := Some("hmda.calculator.HmdaRateSpread"),
+ Seq( dependencyOverrides ++= Seq(jacksonDatabind,pekkoSerialization ),
+ Compile / mainClass := Some("hmda.calculator.HmdaRateSpread"),
assembly / assemblyMergeStrategy := {
case "application.conf" => MergeStrategy.concat
case "META-INF/io.netty.versions.properties" => MergeStrategy.concat
case "META-INF/MANIFEST.MF" => MergeStrategy.discard
+ case "reference.conf" => MergeStrategy.concat
case metaInfMatcher(_) => MergeStrategy.discard
+ case PathList("META-INF", "services", xs @ _*) => MergeStrategy.concat
+
case PathList("META-INF", xs@_*) => MergeStrategy.concat
+ case PathList("net", "jpountz", xs @ _*) => MergeStrategy.last
+ case PathList("org", "lz4", xs @ _*) => MergeStrategy.last
case PathList("org", "bouncycastle", xs @_*) => MergeStrategy.first
case PathList("jakarta", xs@_*) => MergeStrategy.last
- case PathList(ps @ _*) if ps.last endsWith ".proto" =>
- MergeStrategy.first
- case "module-info.class" => MergeStrategy.concat
- case x if x.endsWith("/module-info.class") => MergeStrategy.concat
+ case PathList(ps @ _*) if ps.last endsWith ".proto" => MergeStrategy.first
+ case PathList("com", "datastax", xs@_*) => MergeStrategy.first
+ case PathList("org", "apache", xs@_*) => MergeStrategy.first
+ case PathList("org", "glassfish", xs@_*) => MergeStrategy.first
+ case PathList("com", "sun", xs@_*) => MergeStrategy.first
+ case x if x.endsWith("reference-overrides.conf") => MergeStrategy.concat
+ case x if x.endsWith("reference.conf") => MergeStrategy.concat
+ case x if x.endsWith("version.conf") => MergeStrategy.concat
+ case x if x.endsWith("module-info.class") => MergeStrategy.concat
case x if x.endsWith("/LineTokenizer.class") => MergeStrategy.concat
case x if x.endsWith("/LogSupport.class") => MergeStrategy.concat
case x if x.endsWith("/MailcapFile.class") => MergeStrategy.concat
case x if x.endsWith("/MimeTypeFile.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
+ case x if x.endsWith("/liblz4-java.so") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4ByteBufferUtils$Match.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
case x =>
val oldStrategy = (assembly / assemblyMergeStrategy).value
oldStrategy(x)
@@ -443,6 +578,7 @@ lazy val `modified-lar` = (project in file("modified-lar"))
.settings(
Seq(
Compile / mainClass := Some("hmda.publication.lar.ModifiedLarApp"),
+ dependencyOverrides ++= Seq(jacksonDatabind,pekkoSerialization ),
assembly / assemblyMergeStrategy := {
case "application.conf" => MergeStrategy.concat
case "META-INF/io.netty.versions.properties" => MergeStrategy.concat
@@ -454,6 +590,24 @@ lazy val `modified-lar` = (project in file("modified-lar"))
case PathList(ps @ _*) if ps.last endsWith ".proto" =>
MergeStrategy.first
case "module-info.class" => MergeStrategy.concat
+ case PathList("META-INF", "services", xs @ _*) => MergeStrategy.concat
+ case PathList("net", "jpountz", xs @ _*) => MergeStrategy.last
+ case PathList("org", "lz4", xs @ _*) => MergeStrategy.last
+ case PathList(ps @ _*) if ps.last endsWith ".proto" => MergeStrategy.first
+ case PathList("com", "datastax", xs@_*) => MergeStrategy.first
+ case PathList("org", "apache", xs@_*) => MergeStrategy.first
+ case PathList("org", "glassfish", xs@_*) => MergeStrategy.first
+ case PathList("com", "sun", xs@_*) => MergeStrategy.first
+ case x if x.endsWith("reference-overrides.conf") => MergeStrategy.concat
+ case x if x.endsWith("reference.conf") => MergeStrategy.concat
+ case x if x.endsWith("version.conf") => MergeStrategy.concat
+ case x if x.endsWith("module-info.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
+ case x if x.endsWith("/liblz4-java.so") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4ByteBufferUtils$Match.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
case x if x.endsWith("/module-info.class") => MergeStrategy.concat
case x if x.endsWith("/LineTokenizer.class") => MergeStrategy.concat
case x if x.endsWith("/LogSupport.class") => MergeStrategy.concat
@@ -484,6 +638,7 @@ lazy val `irs-publisher` = (project in file("irs-publisher"))
.settings(
Seq(
Compile / mainClass := Some("hmda.publication.lar.IrsPublisherApp"),
+ dependencyOverrides ++= Seq(jacksonDatabind,pekkoSerialization ),
assembly / assemblyMergeStrategy := {
case "application.conf" => MergeStrategy.concat
case "META-INF/io.netty.versions.properties" => MergeStrategy.concat
@@ -495,6 +650,24 @@ lazy val `irs-publisher` = (project in file("irs-publisher"))
case PathList(ps @ _*) if ps.last endsWith ".proto" =>
MergeStrategy.first
case "module-info.class" => MergeStrategy.concat
+ case PathList("META-INF", "services", xs @ _*) => MergeStrategy.concat
+ case PathList("net", "jpountz", xs @ _*) => MergeStrategy.last
+ case PathList("org", "lz4", xs @ _*) => MergeStrategy.last
+ case PathList(ps @ _*) if ps.last endsWith ".proto" => MergeStrategy.first
+ case PathList("com", "datastax", xs@_*) => MergeStrategy.first
+ case PathList("org", "apache", xs@_*) => MergeStrategy.first
+ case PathList("org", "glassfish", xs@_*) => MergeStrategy.first
+ case PathList("com", "sun", xs@_*) => MergeStrategy.first
+ case x if x.endsWith("reference-overrides.conf") => MergeStrategy.concat
+ case x if x.endsWith("reference.conf") => MergeStrategy.concat
+ case x if x.endsWith("version.conf") => MergeStrategy.concat
+ case x if x.endsWith("module-info.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
+ case x if x.endsWith("/liblz4-java.so") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4ByteBufferUtils$Match.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
case x if x.endsWith("/module-info.class") => MergeStrategy.concat
case x if x.endsWith("/LineTokenizer.class") => MergeStrategy.concat
case x if x.endsWith("/LogSupport.class") => MergeStrategy.concat
@@ -525,6 +698,7 @@ lazy val `hmda-reporting` = (project in file("hmda-reporting"))
.settings(
Seq(
Compile / mainClass := Some("hmda.reporting.HmdaReporting"),
+ dependencyOverrides ++= Seq(jacksonDatabind,pekkoSerialization ),
assembly / assemblyMergeStrategy := {
case "application.conf" => MergeStrategy.concat
case "META-INF/io.netty.versions.properties" => MergeStrategy.concat
@@ -536,6 +710,24 @@ lazy val `hmda-reporting` = (project in file("hmda-reporting"))
case PathList(ps @ _*) if ps.last endsWith ".proto" =>
MergeStrategy.first
case "module-info.class" => MergeStrategy.concat
+ case PathList("META-INF", "services", xs @ _*) => MergeStrategy.concat
+ case PathList("net", "jpountz", xs @ _*) => MergeStrategy.last
+ case PathList("org", "lz4", xs @ _*) => MergeStrategy.last
+ case PathList(ps @ _*) if ps.last endsWith ".proto" => MergeStrategy.first
+ case PathList("com", "datastax", xs@_*) => MergeStrategy.first
+ case PathList("org", "apache", xs@_*) => MergeStrategy.first
+ case PathList("org", "glassfish", xs@_*) => MergeStrategy.first
+ case PathList("com", "sun", xs@_*) => MergeStrategy.first
+ case x if x.endsWith("reference-overrides.conf") => MergeStrategy.concat
+ case x if x.endsWith("reference.conf") => MergeStrategy.concat
+ case x if x.endsWith("version.conf") => MergeStrategy.concat
+ case x if x.endsWith("module-info.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
+ case x if x.endsWith("/liblz4-java.so") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4ByteBufferUtils$Match.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
case x if x.endsWith("/module-info.class") => MergeStrategy.concat
case x if x.endsWith("/LineTokenizer.class") => MergeStrategy.concat
case x if x.endsWith("/LogSupport.class") => MergeStrategy.concat
@@ -561,7 +753,7 @@ lazy val `hmda-protocol` = (project in file("protocol"))
JavaServerAppPackaging,
sbtdocker.DockerPlugin,
AshScriptPlugin,
- AkkaGrpcPlugin
+ PekkoGrpcPlugin
)
.settings(hmdaBuildSettings: _*)
@@ -575,6 +767,7 @@ lazy val `hmda-analytics` = (project in file("hmda-analytics"))
.settings(
Seq(
Compile / mainClass := Some("hmda.analytics.HmdaAnalyticsApp"),
+ dependencyOverrides ++= Seq(jacksonDatabind,pekkoSerialization ),
assembly / assemblyMergeStrategy := {
case "application.conf" => MergeStrategy.concat
case "META-INF/io.netty.versions.properties" => MergeStrategy.concat
@@ -586,6 +779,24 @@ lazy val `hmda-analytics` = (project in file("hmda-analytics"))
case PathList(ps @ _*) if ps.last endsWith ".proto" =>
MergeStrategy.first
case "module-info.class" => MergeStrategy.concat
+ case PathList("META-INF", "services", xs @ _*) => MergeStrategy.concat
+ case PathList("net", "jpountz", xs @ _*) => MergeStrategy.last
+ case PathList("org", "lz4", xs @ _*) => MergeStrategy.last
+ case PathList(ps @ _*) if ps.last endsWith ".proto" => MergeStrategy.first
+ case PathList("com", "datastax", xs@_*) => MergeStrategy.first
+ case PathList("org", "apache", xs@_*) => MergeStrategy.first
+ case PathList("org", "glassfish", xs@_*) => MergeStrategy.first
+ case PathList("com", "sun", xs@_*) => MergeStrategy.first
+ case x if x.endsWith("reference-overrides.conf") => MergeStrategy.concat
+ case x if x.endsWith("reference.conf") => MergeStrategy.concat
+ case x if x.endsWith("version.conf") => MergeStrategy.concat
+ case x if x.endsWith("module-info.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
+ case x if x.endsWith("/liblz4-java.so") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4ByteBufferUtils$Match.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
case x if x.endsWith("/module-info.class") => MergeStrategy.concat
case x if x.endsWith("/LineTokenizer.class") => MergeStrategy.concat
case x if x.endsWith("/LogSupport.class") => MergeStrategy.concat
@@ -615,6 +826,7 @@ lazy val `hmda-analytics` = (project in file("hmda-analytics"))
Seq(
libraryDependencies ++= keycloakServerDeps,
Compile / mainClass := Some("hmda.authService.HmdaAuth"),
+ dependencyOverrides ++= Seq(jacksonDatabind,pekkoSerialization ),
assembly / assemblyJarName := {
s"${name.value}.jar"
},
@@ -630,6 +842,26 @@ lazy val `hmda-analytics` = (project in file("hmda-analytics"))
case PathList(ps @ _*) if ps.last endsWith ".proto" =>
MergeStrategy.first
case "module-info.class" => MergeStrategy.concat
+ case PathList("META-INF", "services", xs @ _*) => MergeStrategy.concat
+ case PathList("net", "jpountz", xs @ _*) => MergeStrategy.last
+ case PathList("org", "lz4", xs @ _*) => MergeStrategy.last
+ case PathList(ps @ _*) if ps.last endsWith ".proto" => MergeStrategy.first
+ case PathList("com", "datastax", xs@_*) => MergeStrategy.first
+ case PathList("org", "apache", xs@_*) => MergeStrategy.first
+ case PathList("org", "glassfish", xs@_*) => MergeStrategy.first
+ case PathList("com", "sun", xs@_*) => MergeStrategy.first
+ case x if x.endsWith("reference-overrides.conf") => MergeStrategy.concat
+ case x if x.endsWith("reference.conf") => MergeStrategy.concat
+ case x if x.endsWith("version.conf") => MergeStrategy.concat
+ case x if x.endsWith("module-info.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
+ case x if x.endsWith("/liblz4-java.so") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4ByteBufferUtils$Match.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
case x if x.endsWith("/module-info.class") => MergeStrategy.concat
case x if x.endsWith("/LineTokenizer.class") => MergeStrategy.concat
case x if x.endsWith("/LogSupport.class") => MergeStrategy.concat
@@ -655,7 +887,8 @@ lazy val `rate-limit` = (project in file("rate-limit"))
.settings(hmdaBuildSettings: _*)
.settings(
Seq(
- libraryDependencies ++= commonDeps ++ akkaDeps ++ akkaHttpDeps :+ guava,
+ libraryDependencies ++= commonDeps ++ pekkoDeps ++ pekkoHttpDeps :+ guava,
+ dependencyOverrides ++= Seq(jacksonDatabind,pekkoSerialization ),
Compile / mainClass := Some("hmda.rateLimit.RateLimitApp"),
assembly / assemblyMergeStrategy := {
case "application.conf" => MergeStrategy.concat
@@ -668,6 +901,24 @@ lazy val `rate-limit` = (project in file("rate-limit"))
case PathList(ps @ _*) if ps.last endsWith ".proto" =>
MergeStrategy.first
case "module-info.class" => MergeStrategy.concat
+ case PathList("META-INF", "services", xs @ _*) => MergeStrategy.concat
+ case PathList("net", "jpountz", xs @ _*) => MergeStrategy.last
+ case PathList("org", "lz4", xs @ _*) => MergeStrategy.last
+ case PathList(ps @ _*) if ps.last endsWith ".proto" => MergeStrategy.first
+ case PathList("com", "datastax", xs@_*) => MergeStrategy.first
+ case PathList("org", "apache", xs@_*) => MergeStrategy.first
+ case PathList("org", "glassfish", xs@_*) => MergeStrategy.first
+ case PathList("com", "sun", xs@_*) => MergeStrategy.first
+ case x if x.endsWith("reference-overrides.conf") => MergeStrategy.concat
+ case x if x.endsWith("reference.conf") => MergeStrategy.concat
+ case x if x.endsWith("version.conf") => MergeStrategy.concat
+ case x if x.endsWith("module-info.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
+ case x if x.endsWith("/liblz4-java.so") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4ByteBufferUtils$Match.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
case x if x.endsWith("/module-info.class") => MergeStrategy.concat
case x if x.endsWith("/LineTokenizer.class") => MergeStrategy.concat
case x if x.endsWith("/LogSupport.class") => MergeStrategy.concat
@@ -696,8 +947,9 @@ lazy val `data-browser` = (project in file("data-browser"))
.settings(hmdaBuildSettings: _*)
.settings(
Seq(
- libraryDependencies ++= commonDeps ++ akkaDeps ++ akkaHttpDeps ++ circeDeps ++ slickDeps ++
+ libraryDependencies ++= commonDeps ++ pekkoDeps ++ pekkoHttpDeps ++ circeDeps ++ slickDeps ++
enumeratumDeps :+ monix :+ lettuce :+ scalaMock,
+ dependencyOverrides ++= Seq(jacksonDatabind,pekkoSerialization ),
assembly / assemblyMergeStrategy := {
case "application.conf" => MergeStrategy.concat
case "META-INF/io.netty.versions.properties" => MergeStrategy.concat
@@ -709,6 +961,24 @@ lazy val `data-browser` = (project in file("data-browser"))
case PathList(ps @ _*) if ps.last endsWith ".proto" =>
MergeStrategy.first
case "module-info.class" => MergeStrategy.concat
+ case PathList("META-INF", "services", xs @ _*) => MergeStrategy.concat
+ case PathList("net", "jpountz", xs @ _*) => MergeStrategy.last
+ case PathList("org", "lz4", xs @ _*) => MergeStrategy.last
+ case PathList(ps @ _*) if ps.last endsWith ".proto" => MergeStrategy.first
+ case PathList("com", "datastax", xs@_*) => MergeStrategy.first
+ case PathList("org", "apache", xs@_*) => MergeStrategy.first
+ case PathList("org", "glassfish", xs@_*) => MergeStrategy.first
+ case PathList("com", "sun", xs@_*) => MergeStrategy.first
+ case x if x.endsWith("reference-overrides.conf") => MergeStrategy.concat
+ case x if x.endsWith("reference.conf") => MergeStrategy.concat
+ case x if x.endsWith("version.conf") => MergeStrategy.concat
+ case x if x.endsWith("module-info.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
+ case x if x.endsWith("/liblz4-java.so") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4ByteBufferUtils$Match.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
case x if x.endsWith("/module-info.class") => MergeStrategy.concat
case x if x.endsWith("/LineTokenizer.class") => MergeStrategy.concat
case x if x.endsWith("/LogSupport.class") => MergeStrategy.concat
@@ -732,7 +1002,8 @@ lazy val `submission-errors` = (project in file("submission-errors"))
.settings(hmdaBuildSettings)
.settings(
Seq(
- libraryDependencies ++= commonDeps ++ akkaDeps ++ akkaHttpDeps ++ circeDeps ++ slickDeps :+ monix :+ slickPostgres,
+ libraryDependencies ++= commonDeps ++ pekkoDeps ++ pekkoHttpDeps ++ circeDeps ++ slickDeps :+ monix :+ slickPostgres,
+ dependencyOverrides ++= Seq(jacksonDatabind,pekkoSerialization ),
assembly / assemblyMergeStrategy := {
case "application.conf" => MergeStrategy.concat
case "META-INF/io.netty.versions.properties" => MergeStrategy.concat
@@ -744,6 +1015,24 @@ lazy val `submission-errors` = (project in file("submission-errors"))
case PathList(ps@_*) if ps.last endsWith ".proto" =>
MergeStrategy.first
case "module-info.class" => MergeStrategy.concat
+ case PathList("META-INF", "services", xs @ _*) => MergeStrategy.concat
+ case PathList("net", "jpountz", xs @ _*) => MergeStrategy.last
+ case PathList("org", "lz4", xs @ _*) => MergeStrategy.last
+ case PathList(ps @ _*) if ps.last endsWith ".proto" => MergeStrategy.first
+ case PathList("com", "datastax", xs@_*) => MergeStrategy.first
+ case PathList("org", "apache", xs@_*) => MergeStrategy.first
+ case PathList("org", "glassfish", xs@_*) => MergeStrategy.first
+ case PathList("com", "sun", xs@_*) => MergeStrategy.first
+ case x if x.endsWith("reference-overrides.conf") => MergeStrategy.concat
+ case x if x.endsWith("reference.conf") => MergeStrategy.concat
+ case x if x.endsWith("version.conf") => MergeStrategy.concat
+ case x if x.endsWith("module-info.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
+ case x if x.endsWith("/liblz4-java.so") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4ByteBufferUtils$Match.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
case x if x.endsWith("/module-info.class") => MergeStrategy.concat
case x if x.endsWith("/LineTokenizer.class") => MergeStrategy.concat
case x if x.endsWith("/LogSupport.class") => MergeStrategy.concat
@@ -765,6 +1054,7 @@ lazy val `email-service` = (project in file("email-service"))
.settings(
Seq(
Compile / mainClass := Some("hmda.publication.lar.EmailReceiptApp"),
+ dependencyOverrides ++= Seq(jacksonDatabind,pekkoSerialization ),
assembly / assemblyMergeStrategy := {
case "application.conf" => MergeStrategy.concat
case "META-INF/io.netty.versions.properties" => MergeStrategy.concat
@@ -776,6 +1066,24 @@ lazy val `email-service` = (project in file("email-service"))
case PathList(ps @ _*) if ps.last endsWith ".proto" =>
MergeStrategy.first
case "module-info.class" => MergeStrategy.concat
+ case PathList("META-INF", "services", xs @ _*) => MergeStrategy.concat
+ case PathList("net", "jpountz", xs @ _*) => MergeStrategy.last
+ case PathList("org", "lz4", xs @ _*) => MergeStrategy.last
+ case PathList(ps @ _*) if ps.last endsWith ".proto" => MergeStrategy.first
+ case PathList("com", "datastax", xs@_*) => MergeStrategy.first
+ case PathList("org", "apache", xs@_*) => MergeStrategy.first
+ case PathList("org", "glassfish", xs@_*) => MergeStrategy.first
+ case PathList("com", "sun", xs@_*) => MergeStrategy.first
+ case x if x.endsWith("reference-overrides.conf") => MergeStrategy.concat
+ case x if x.endsWith("reference.conf") => MergeStrategy.concat
+ case x if x.endsWith("version.conf") => MergeStrategy.concat
+ case x if x.endsWith("module-info.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
+ case x if x.endsWith("/liblz4-java.so") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4ByteBufferUtils$Match.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
case x if x.endsWith("/module-info.class") => MergeStrategy.last
case x if x.endsWith("/LineTokenizer.class") => MergeStrategy.last
case x if x.endsWith("/LogSupport.class") => MergeStrategy.last
@@ -788,7 +1096,7 @@ lazy val `email-service` = (project in file("email-service"))
assembly / assemblyJarName := {
s"${name.value}.jar"
},
- libraryDependencies ++= monix :: akkaKafkaStreams :: kafkaClients :: awsSesSdk :: jakartaMail :: logback :: Nil
+ libraryDependencies ++= monix :: pekkoKafkaStreams :: kafkaClients :: awsSesSdk :: jakartaMail :: logback :: Nil
),
dockerSettings,
packageSettings
@@ -805,8 +1113,9 @@ lazy val `hmda-quarterly-data-service` = (project in file ("hmda-quarterly-data-
.settings(hmdaBuildSettings: _*)
.settings(
Seq(
- libraryDependencies ++= commonDeps ++ akkaDeps ++ akkaHttpDeps ++ circeDeps ++ slickDeps ++
+ libraryDependencies ++= commonDeps ++ pekkoDeps ++ pekkoHttpDeps ++ circeDeps ++ slickDeps ++
enumeratumDeps :+ monix :+ lettuce :+ scalaMock,
+ dependencyOverrides ++= Seq(jacksonDatabind,pekkoSerialization ),
assembly / assemblyMergeStrategy := {
case "application.conf" => MergeStrategy.concat
case "META-INF/io.netty.versions.properties" => MergeStrategy.concat
@@ -818,6 +1127,24 @@ lazy val `hmda-quarterly-data-service` = (project in file ("hmda-quarterly-data-
case PathList(ps @ _*) if ps.last endsWith ".proto" =>
MergeStrategy.first
case "module-info.class" => MergeStrategy.concat
+ case PathList("META-INF", "services", xs @ _*) => MergeStrategy.concat
+ case PathList("net", "jpountz", xs @ _*) => MergeStrategy.last
+ case PathList("org", "lz4", xs @ _*) => MergeStrategy.last
+ case PathList(ps @ _*) if ps.last endsWith ".proto" => MergeStrategy.first
+ case PathList("com", "datastax", xs@_*) => MergeStrategy.first
+ case PathList("org", "apache", xs@_*) => MergeStrategy.first
+ case PathList("org", "glassfish", xs@_*) => MergeStrategy.first
+ case PathList("com", "sun", xs@_*) => MergeStrategy.first
+ case x if x.endsWith("reference-overrides.conf") => MergeStrategy.concat
+ case x if x.endsWith("reference.conf") => MergeStrategy.concat
+ case x if x.endsWith("version.conf") => MergeStrategy.concat
+ case x if x.endsWith("module-info.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
+ case x if x.endsWith("/liblz4-java.so") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4ByteBufferUtils$Match.class") => MergeStrategy.concat
+ case x if x.endsWith("/LZ4BlockInputStream.class") => MergeStrategy.concat
+ case x if x.endsWith("/XXHash64JavaSafe.class") => MergeStrategy.concat
case x if x.endsWith("/module-info.class") => MergeStrategy.concat
case x if x.endsWith("/LineTokenizer.class") => MergeStrategy.concat
case x if x.endsWith("/LogSupport.class") => MergeStrategy.concat
diff --git a/check-digit/src/main/resources/application.conf b/check-digit/src/main/resources/application.conf
index 866072f58d..c31e89707c 100644
--- a/check-digit/src/main/resources/application.conf
+++ b/check-digit/src/main/resources/application.conf
@@ -1,12 +1,12 @@
-akka {
+pekko {
log-level = INFO
http.server.preview.enable-http2 = on
}
-akka.http.parsing {
+pekko.http.parsing {
max-to-strict-bytes = 20m
}
-akka.http.server.parsing {
+pekko.http.server.parsing {
max-content-length = 20m
}
diff --git a/check-digit/src/main/scala/hmda/uli/CheckDigitTest.scala b/check-digit/src/main/scala/hmda/uli/CheckDigitTest.scala
index 6f807cb1d4..2976f394d1 100644
--- a/check-digit/src/main/scala/hmda/uli/CheckDigitTest.scala
+++ b/check-digit/src/main/scala/hmda/uli/CheckDigitTest.scala
@@ -1,8 +1,8 @@
package hmda.uli
-import akka.actor.ActorSystem
-import akka.grpc.GrpcClientSettings
-import akka.stream.Materializer
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.grpc.GrpcClientSettings
+import org.apache.pekko.stream.Materializer
import hmda.grpc.services.{ CheckDigitServiceClient, ValidUliRequest }
import scala.concurrent.Await
diff --git a/check-digit/src/main/scala/hmda/uli/HmdaUli.scala b/check-digit/src/main/scala/hmda/uli/HmdaUli.scala
index 3af1b0473d..36fdeda070 100644
--- a/check-digit/src/main/scala/hmda/uli/HmdaUli.scala
+++ b/check-digit/src/main/scala/hmda/uli/HmdaUli.scala
@@ -1,6 +1,6 @@
package hmda.uli
-import akka.actor.typed.ActorSystem
+import org.apache.pekko.actor.typed.ActorSystem
import hmda.uli.api.http.HmdaUliApi
import org.slf4j.LoggerFactory
diff --git a/check-digit/src/main/scala/hmda/uli/api/grpc/CheckDigitServiceImpl.scala b/check-digit/src/main/scala/hmda/uli/api/grpc/CheckDigitServiceImpl.scala
index 8c89c34461..62e32c9acb 100644
--- a/check-digit/src/main/scala/hmda/uli/api/grpc/CheckDigitServiceImpl.scala
+++ b/check-digit/src/main/scala/hmda/uli/api/grpc/CheckDigitServiceImpl.scala
@@ -1,6 +1,6 @@
package hmda.uli.api.grpc
-import akka.stream.Materializer
+import org.apache.pekko.stream.Materializer
import hmda.grpc.services.{ CheckDigitService, ValidUliRequest, ValidUliResponse }
import hmda.uli.validation.ULI._
import scala.concurrent.Future
diff --git a/check-digit/src/main/scala/hmda/uli/api/http/HmdaUliApi.scala b/check-digit/src/main/scala/hmda/uli/api/http/HmdaUliApi.scala
index 0b0e2da28a..e6c4366bd2 100644
--- a/check-digit/src/main/scala/hmda/uli/api/http/HmdaUliApi.scala
+++ b/check-digit/src/main/scala/hmda/uli/api/http/HmdaUliApi.scala
@@ -1,10 +1,10 @@
package hmda.uli.api.http
-import akka.actor.typed.Behavior
-import akka.actor.typed.scaladsl.Behaviors
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.{ ActorSystem, CoordinatedShutdown }
-import akka.http.scaladsl.server.Directives._
+import org.apache.pekko.actor.typed.Behavior
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.{ ActorSystem, CoordinatedShutdown }
+import org.apache.pekko.http.scaladsl.server.Directives._
import hmda.api.http.routes.BaseHttpApi
import hmda.api.http.directives.HmdaTimeDirectives._
diff --git a/check-digit/src/main/scala/hmda/uli/api/http/ULIHttpApi.scala b/check-digit/src/main/scala/hmda/uli/api/http/ULIHttpApi.scala
index 7d0cffdcdc..4371f4b92a 100644
--- a/check-digit/src/main/scala/hmda/uli/api/http/ULIHttpApi.scala
+++ b/check-digit/src/main/scala/hmda/uli/api/http/ULIHttpApi.scala
@@ -1,17 +1,17 @@
package hmda.uli.api.http
-import akka.NotUsed
-import akka.http.scaladsl.common.{EntityStreamingSupport, JsonEntityStreamingSupport}
-import akka.http.scaladsl.marshalling.ToResponseMarshallable
-import akka.http.scaladsl.model.MediaTypes._
-import akka.http.scaladsl.model.StatusCodes.BadRequest
-import akka.http.scaladsl.model.headers.RawHeader
-import akka.http.scaladsl.model.{HttpCharsets, HttpEntity}
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import akka.stream.scaladsl.{Flow, Source}
-import akka.util.ByteString
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.NotUsed
+import org.apache.pekko.http.scaladsl.common.{EntityStreamingSupport, JsonEntityStreamingSupport}
+import org.apache.pekko.http.scaladsl.marshalling.ToResponseMarshallable
+import org.apache.pekko.http.scaladsl.model.MediaTypes._
+import org.apache.pekko.http.scaladsl.model.StatusCodes.BadRequest
+import org.apache.pekko.http.scaladsl.model.headers.RawHeader
+import org.apache.pekko.http.scaladsl.model.{HttpCharsets, HttpEntity}
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.stream.scaladsl.{Flow, Source}
+import org.apache.pekko.util.ByteString
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.uli.api.model.ULIModel._
import hmda.uli.api.model.ULIValidationErrorMessages.{invalidLoanIdLengthMessage, nonAlpanumericLoanIdMessage}
import hmda.uli.validation.ULI._
diff --git a/check-digit/src/test/resources/application.conf b/check-digit/src/test/resources/application.conf
index abb60e8436..8622744406 100644
--- a/check-digit/src/test/resources/application.conf
+++ b/check-digit/src/test/resources/application.conf
@@ -1,4 +1,4 @@
-akka {
+pekko {
stdout-loglevel = OFF
loglevel = OFF
}
\ No newline at end of file
diff --git a/check-digit/src/test/scala/hmda/uli/api/grpc/CheckDigitServiceImplSpec.scala b/check-digit/src/test/scala/hmda/uli/api/grpc/CheckDigitServiceImplSpec.scala
index 6f02d38c77..b397ea849b 100644
--- a/check-digit/src/test/scala/hmda/uli/api/grpc/CheckDigitServiceImplSpec.scala
+++ b/check-digit/src/test/scala/hmda/uli/api/grpc/CheckDigitServiceImplSpec.scala
@@ -1,7 +1,7 @@
package hmda.uli.api.grpc
-import akka.actor.ActorSystem
-import akka.stream.Materializer
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.stream.Materializer
import hmda.grpc.services.{ ValidUliRequest, ValidUliResponse }
import org.scalatest.concurrent.ScalaFutures
import org.scalatest.time.Span
diff --git a/check-digit/src/test/scala/hmda/uli/api/http/ULIHttpApiSpec.scala b/check-digit/src/test/scala/hmda/uli/api/http/ULIHttpApiSpec.scala
index 00242ed365..f96009e416 100644
--- a/check-digit/src/test/scala/hmda/uli/api/http/ULIHttpApiSpec.scala
+++ b/check-digit/src/test/scala/hmda/uli/api/http/ULIHttpApiSpec.scala
@@ -1,19 +1,19 @@
package hmda.uli.api.http
-import akka.http.scaladsl.model.StatusCodes
-import akka.http.scaladsl.testkit.ScalatestRouteTest
-import akka.util.Timeout
+import org.apache.pekko.http.scaladsl.model.StatusCodes
+import org.apache.pekko.http.scaladsl.testkit.ScalatestRouteTest
+import org.apache.pekko.util.Timeout
import org.scalatest.{BeforeAndAfterAll, MustMatchers, WordSpec}
-import akka.http.scaladsl.model.Uri.Path
-import akka.http.scaladsl.model.headers.{HttpOrigin, Origin}
+import org.apache.pekko.http.scaladsl.model.Uri.Path
+import org.apache.pekko.http.scaladsl.model.headers.{HttpOrigin, Origin}
import com.typesafe.config.ConfigFactory
import hmda.api.http.model.ErrorResponse
import hmda.uli.api.model.ULIModel.{ULIBatchValidated, _}
import hmda.util.http.FileUploadUtils
import hmda.uli.api.model.ULIValidationErrorMessages._
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import io.circe.generic.auto._
-import akka.http.scaladsl.unmarshalling.Unmarshaller._
+import org.apache.pekko.http.scaladsl.unmarshalling.Unmarshaller._
import org.slf4j.{Logger, LoggerFactory}
import scala.concurrent.duration._
diff --git a/commercial-build.txt b/commercial-build.txt
index 7161080deb..eed2fa3142 100644
--- a/commercial-build.txt
+++ b/commercial-build.txt
@@ -11,48 +11,48 @@ lazy val sparkDeps =
sparkStreaming,
sparkKafka,
postgres,
- akkaKafkaStreams
+ pekkoKafkaStreams
)
lazy val authDeps = Seq(keycloakAdapter, keycloak, jbossLogging, httpClient)
-lazy val akkaDeps = Seq(
- akkaSlf4J,
- akkaCluster,
- akkaTyped,
- akkaClusterTyped,
- akkaStream,
- akkaStreamTyped,
- akkaManagement,
- akkaManagementClusterBootstrap,
- akkaServiceDiscoveryDNS,
- akkaServiceDiscoveryKubernetes,
- akkaClusterHttpManagement,
- akkaClusterHttpManagement,
- akkaTestkitTyped,
- akkaStreamsTestKit,
- akkaCors,
- akkaKafkaStreams,
+lazy val pekkoDeps = Seq(
+ pekkoSlf4J,
+ pekkoCluster,
+ pekkoTyped,
+ pekkoClusterTyped,
+ pekkoStream,
+ pekkoStreamTyped,
+ pekkoManagement,
+ pekkoManagementClusterBootstrap,
+ pekkoServiceDiscoveryDNS,
+ pekkoServiceDiscoveryKubernetes,
+ pekkoClusterHttpManagement,
+ pekkoClusterHttpManagement,
+ pekkoTestkitTyped,
+ pekkoStreamsTestKit,
+ pekkoCors,
+ pekkoKafkaStreams,
embeddedKafka,
- alpakkaS3,
- akkaQuartzScheduler,
+ pekkoS3,
+ pekkoQuartzScheduler,
phantomDSL,
phantomJDK8
)
-lazy val akkaPersistenceDeps =
+lazy val pekkoPersistenceDeps =
Seq(
- akkaPersistence,
- akkaClusterSharding,
- akkaPersistenceTyped,
- akkaPersistenceQuery,
- akkaClusterShardingTyped,
- akkaPersistenceCassandra,
+ pekkoPersistence,
+ pekkoClusterSharding,
+ pekkoPersistenceTyped,
+ pekkoPersistenceQuery,
+ pekkoClusterShardingTyped,
+ pekkoPersistenceCassandra,
cassandraLauncher
)
-lazy val akkaHttpDeps =
- Seq(akkaHttp, akkaHttp2, akkaHttpTestkit, akkaStreamsTestKit, akkaHttpCirce)
+lazy val pekkoHttpDeps =
+ Seq(pekkoHttp, pekkoHttp2, pekkoHttpTestkit, pekkoStreamsTestKit, pekkohttpcirce)
lazy val circeDeps = Seq(circe, circeGeneric, circeParser)
lazy val enumeratumDeps = Seq(enumeratum, enumeratumCirce)
@@ -102,7 +102,7 @@ lazy val common = (project in file("common"))
scalapb.gen() -> (sourceManaged in Compile).value
),
Seq(
- libraryDependencies ++= commonDeps ++ authDeps ++ akkaDeps ++ akkaPersistenceDeps ++ akkaHttpDeps ++ circeDeps ++ slickDeps
+ libraryDependencies ++= commonDeps ++ authDeps ++ pekkoDeps ++ pekkoPersistenceDeps ++ pekkoHttpDeps ++ circeDeps ++ slickDeps
)
)
@@ -132,7 +132,7 @@ lazy val `hmda-spark-reporting` = (project in file("hmda-spark-reporting"))
oldStrategy(x)
}
),
- Seq(libraryDependencies ++= sparkDeps ++ circeDeps ++ akkaDeps),
+ Seq(libraryDependencies ++= sparkDeps ++ circeDeps ++ pekkoDeps),
dockerSettings,
packageSettings
)
@@ -256,7 +256,7 @@ lazy val `hmda-dashboard` = (project in file("hmda-dashboard"))
.settings(hmdaBuildSettings: _*)
.settings(
Seq(
- libraryDependencies ++= commonDeps ++ akkaDeps ++ akkaHttpDeps ++ circeDeps ++ slickDeps ++
+ libraryDependencies ++= commonDeps ++ pekkoDeps ++ pekkoHttpDeps ++ circeDeps ++ slickDeps ++
enumeratumDeps :+ monix :+ lettuce :+ scalaJava8Compat :+ scalaMock,
assemblyMergeStrategy in assembly := {
case "application.conf" => MergeStrategy.concat
@@ -391,7 +391,7 @@ lazy val `hmda-protocol` = (project in file("protocol"))
JavaServerAppPackaging,
sbtdocker.DockerPlugin,
AshScriptPlugin,
- AkkaGrpcPlugin
+ pekkoGrpcPlugin
)
.settings(hmdaBuildSettings: _*)
@@ -430,7 +430,7 @@ lazy val `rate-limit` = (project in file("rate-limit"))
.settings(hmdaBuildSettings: _*)
.settings(
Seq(
- libraryDependencies ++= commonDeps ++ akkaDeps ++ akkaHttpDeps :+ guava,
+ libraryDependencies ++= commonDeps ++ pekkoDeps ++ pekkoHttpDeps :+ guava,
mainClass in Compile := Some("hmda.rateLimit.RateLimitApp"),
assemblyMergeStrategy in assembly := {
case "application.conf" => MergeStrategy.concat
@@ -458,7 +458,7 @@ lazy val `data-browser` = (project in file("data-browser"))
.settings(hmdaBuildSettings: _*)
.settings(
Seq(
- libraryDependencies ++= commonDeps ++ akkaDeps ++ akkaHttpDeps ++ circeDeps ++ slickDeps ++
+ libraryDependencies ++= commonDeps ++ pekkoDeps ++ pekkoHttpDeps ++ circeDeps ++ slickDeps ++
enumeratumDeps :+ monix :+ lettuce :+ scalaJava8Compat :+ scalaMock,
assemblyMergeStrategy in assembly := {
case "application.conf" => MergeStrategy.concat
@@ -492,7 +492,7 @@ lazy val `email-service` = (project in file("email-service"))
assemblyJarName in assembly := {
s"${name.value}.jar"
},
- libraryDependencies ++= monix :: akkaKafkaStreams :: awsSesSdk :: logback :: Nil
+ libraryDependencies ++= monix :: pekkoKafkaStreams :: awsSesSdk :: logback :: Nil
),
dockerSettings,
packageSettings
diff --git a/common/src/main/resources/persistence-keyspace-sigv4.conf b/common/src/main/resources/persistence-keyspace-sigv4.conf
index 85dd9fc54f..058606d40f 100644
--- a/common/src/main/resources/persistence-keyspace-sigv4.conf
+++ b/common/src/main/resources/persistence-keyspace-sigv4.conf
@@ -1,13 +1,13 @@
include "serialization.conf"
-akka {
+pekko {
persistence {
- journal.plugin = "akka.persistence.cassandra.journal"
- snapshot-store.plugin = "akka.persistence.cassandra.snapshot"
+ journal.plugin = "pekko.persistence.cassandra.journal"
+ snapshot-store.plugin = "pekko.persistence.cassandra.snapshot"
query {
- journal.id = "akka.persistence.cassandra.query"
+ journal.id = "pekko.persistence.cassandra.query"
}
cassandra {
@@ -16,8 +16,8 @@ akka {
max-message-batch-size = ${?TAG_BATCH_SIZE}
flush-interval = 150ms
flush-interval = ${?TAG_FLUSH_INTERVAL}
- read-profile = "akka-persistence-cassandra-profile-read"
- write-profile = "akka-persistence-cassandra-profile"
+ read-profile = "pekko-persistence-cassandra-profile-read"
+ write-profile = "pekko-persistence-cassandra-profile"
}
journal {
keyspace = "hmda2_journal"
@@ -27,21 +27,21 @@ akka {
events-by-tag.max-message-batch-size = ${?TAG_BATCH_SIZE}
events-by-tag.flush-interval = 150ms
events-by-tag.flush-interval = ${?TAG_FLUSH_INTERVAL}
- # https://doc.akka.io/libraries/akka-persistence-cassandra/current/configuration.html#default-configuration
+ # https://doc.pekko.io/libraries/pekko-persistence-cassandra/current/configuration.html#default-configuration
# default size of target-partition-size = 500000
target-partition-size = 500000
target-partition-size = ${?CASSANDRA_TARGET_PARTITION_SIZE}
- read-profile = "akka-persistence-cassandra-profile-read"
+ read-profile = "pekko-persistence-cassandra-profile-read"
}
query {
- # reference: https://github.com/akka/akka-persistence-cassandra/blob/v0.101/core/src/main/resources/reference.conf
+ # reference: https://github.com/pekko/pekko-persistence-cassandra/blob/v0.101/core/src/main/resources/reference.conf
# Sequence numbers for a persistenceId is assumed to be monotonically increasing
# without gaps. That is used for detecting missing events.
# In early versions of the journal that might not be true and therefore
# this can be relaxed by setting this property to off.
gap-free-sequence-numbers = off
- # https://github.com/akka/akka-persistence-cassandra/blob/main/core/src/main/resources/reference.conf#L210
- read-profile = "akka-persistence-cassandra-profile-read"
+ # https://github.com/pekko/pekko-persistence-cassandra/blob/main/core/src/main/resources/reference.conf#L210
+ read-profile = "pekko-persistence-cassandra-profile-read"
}
snapshot {
keyspace = "hmda2_snapshot"
@@ -53,18 +53,22 @@ akka {
}
datastax-java-driver {
+ basic.request {
+ timeout = 10 seconds
+ }
+
profiles {
- akka-persistence-cassandra-profile {
+ pekko-persistence-cassandra-profile {
basic {
request.consistency = LOCAL_QUORUM
}
}
- akka-persistence-cassandra-snapshot-profile {
+ pekko-persistence-cassandra-snapshot-profile {
basic {
request.consistency = LOCAL_QUORUM
}
}
- akka-persistence-cassandra-profile-read {
+ pekko-persistence-cassandra-profile-read {
basic {
request.consistency = LOCAL_ONE
}
diff --git a/common/src/main/resources/persistence-keyspace.conf b/common/src/main/resources/persistence-keyspace.conf
index cf3f00227e..956c409bd6 100644
--- a/common/src/main/resources/persistence-keyspace.conf
+++ b/common/src/main/resources/persistence-keyspace.conf
@@ -1,13 +1,13 @@
include "serialization.conf"
-akka {
+pekko {
persistence {
- journal.plugin = "akka.persistence.cassandra.journal"
- snapshot-store.plugin = "akka.persistence.cassandra.snapshot"
+ journal.plugin = "pekko.persistence.cassandra.journal"
+ snapshot-store.plugin = "pekko.persistence.cassandra.snapshot"
query {
- journal.id = "akka.persistence.cassandra.query"
+ journal.id = "pekko.persistence.cassandra.query"
}
cassandra {
@@ -27,7 +27,7 @@ akka {
events-by-tag.flush-interval = ${?TAG_FLUSH_INTERVAL}
}
query {
- # reference: https://github.com/akka/akka-persistence-cassandra/blob/v0.101/core/src/main/resources/reference.conf
+ # reference: https://github.com/pekko/pekko-persistence-cassandra/blob/v0.101/core/src/main/resources/reference.conf
# Sequence numbers for a persistenceId is assumed to be monotonically increasing
# without gaps. That is used for detecting missing events.
# In early versions of the journal that might not be true and therefore
@@ -46,9 +46,12 @@ akka {
}
datastax-java-driver {
+ basic.request {
+ timeout = 10 seconds
+ }
profiles {
- akka-persistence-cassandra-profile {
+ pekko-persistence-cassandra-profile {
basic {
request.consistency = LOCAL_QUORUM
}
diff --git a/common/src/main/resources/persistence.conf b/common/src/main/resources/persistence.conf
index 829d3885e6..cfa382d33e 100644
--- a/common/src/main/resources/persistence.conf
+++ b/common/src/main/resources/persistence.conf
@@ -1,13 +1,13 @@
include "serialization.conf"
-akka {
+pekko {
persistence {
- journal.plugin = "akka.persistence.cassandra.journal"
- snapshot-store.plugin = "akka.persistence.cassandra.snapshot"
+ journal.plugin = "pekko.persistence.cassandra.journal"
+ snapshot-store.plugin = "pekko.persistence.cassandra.snapshot"
query {
- journal.id = "akka.persistence.cassandra.query"
+ journal.id = "pekko.persistence.cassandra.query"
}
cassandra {
@@ -16,8 +16,8 @@ akka {
max-message-batch-size = ${?TAG_BATCH_SIZE}
flush-interval = 150ms
flush-interval = ${?TAG_FLUSH_INTERVAL}
- # read-profile = "akka-persistence-cassandra-profile-keyspaces"
- # write-profile = "akka-persistence-cassandra-profile-keyspaces"
+ # read-profile = "pekko-persistence-cassandra-profile-keyspaces"
+ # write-profile = "pekko-persistence-cassandra-profile-keyspaces"
read-profile1 = ${?CASSANDRA_PROFILE}
write-profile = ${?CASSANDRA_PROFILE}
}
@@ -35,7 +35,7 @@ akka {
target-partition-size = ${?CASSANDRA_TARGET_PARTITION_SIZE}
}
query {
- # reference: https://github.com/akka/akka-persistence-cassandra/blob/v0.101/core/src/main/resources/reference.conf
+ # reference: https://github.com/pekko/pekko-persistence-cassandra/blob/v0.101/core/src/main/resources/reference.conf
# Sequence numbers for a persistenceId is assumed to be monotonically increasing
# without gaps. That is used for detecting missing events.
# In early versions of the journal that might not be true and therefore
@@ -56,10 +56,13 @@ akka {
}
datastax-java-driver {
+ basic.request {
+ timeout = 10 seconds
+ }
profiles {
- akka-persistence-cassandra-profile {
- # akka-persistence-cassandra-profile-keyspaces {
+ pekko-persistence-cassandra-profile {
+ # pekko-persistence-cassandra-profile-keyspaces {
basic {
request.consistency = LOCAL_QUORUM
}
diff --git a/common/src/main/resources/reference.conf b/common/src/main/resources/reference.conf
index 60d73dbd00..d3e2b91aa4 100644
--- a/common/src/main/resources/reference.conf
+++ b/common/src/main/resources/reference.conf
@@ -1,11 +1,34 @@
include "serialization.conf"
-akka.persistence.query.journal.id = "cassandra-query-journal"
-akka.test.timefactor = 10.0
-akka.http.server.preview.enable-http2 = on
+pekko.persistence.cassandra {
-akka.http.server.request-timeout = 4888888 seconds
-akka.http.max-open-requests = 512
+ # Configuration for the CassandraReadJournal (Persistence Query)
+ query {
+
+ # Implementation class of the Cassandra Read Journal
+ class = "org.apache.pekko.persistence.cassandra.query.CassandraReadJournalProvider"
+
+ # Dispatcher used by the read journal plugin actors and streams
+ plugin-dispatcher = "pekko.persistence.cassandra.default-dispatcher"
+
+ # Datastax Java Driver profile to use for read operations
+ read-profile = "pekko-persistence-cassandra-profile"
+
+ # Maximum number of persistence ids to return per query page
+ max-buffer-size = 500
+
+ # Interval between polling Cassandra for new persistence ids or new events
+ refresh-interval = 3s
+
+ # How far in the past to look for missed events during a catch-up or refresh
+ gap-timeout = 10s
+ }
+}
+pekko.test.timefactor = 10.0
+pekko.http.server.preview.enable-http2 = on
+
+pekko.http.server.request-timeout = 4888888 seconds
+pekko.http.max-open-requests = 512
hmda {
loader.parallelism = 4
diff --git a/common/src/main/resources/serialization.conf b/common/src/main/resources/serialization.conf
index 0662dc4980..e35a3dbd73 100644
--- a/common/src/main/resources/serialization.conf
+++ b/common/src/main/resources/serialization.conf
@@ -1,4 +1,4 @@
-akka {
+pekko {
actor {
allow-java-serialization = off
diff --git a/common/src/main/scala/hmda/actor/HmdaActor.scala b/common/src/main/scala/hmda/actor/HmdaActor.scala
index 5ffb304f5d..40ebbb559c 100644
--- a/common/src/main/scala/hmda/actor/HmdaActor.scala
+++ b/common/src/main/scala/hmda/actor/HmdaActor.scala
@@ -1,6 +1,6 @@
package hmda.actor
-import akka.actor._
+import org.apache.pekko.actor._
import hmda.messages.CommonMessages.StopActor
abstract class HmdaActor extends Actor with ActorLogging {
diff --git a/common/src/main/scala/hmda/actor/HmdaTypedActor.scala b/common/src/main/scala/hmda/actor/HmdaTypedActor.scala
index f0c2e9c1d3..a3ec565d86 100644
--- a/common/src/main/scala/hmda/actor/HmdaTypedActor.scala
+++ b/common/src/main/scala/hmda/actor/HmdaTypedActor.scala
@@ -1,9 +1,9 @@
package hmda.actor
-import akka.actor.typed.scaladsl.Behaviors
-import akka.actor.typed.{ActorRef, Behavior, SupervisorStrategy}
-import akka.cluster.sharding.typed.ShardingEnvelope
-import akka.cluster.sharding.typed.scaladsl.{ClusterSharding, Entity, EntityTypeKey}
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.{ActorRef, Behavior, SupervisorStrategy}
+import org.apache.pekko.cluster.sharding.typed.ShardingEnvelope
+import org.apache.pekko.cluster.sharding.typed.scaladsl.{ClusterSharding, Entity, EntityTypeKey}
import com.typesafe.config.ConfigFactory
import scala.concurrent.duration._
diff --git a/common/src/main/scala/hmda/api/HmdaServer.scala b/common/src/main/scala/hmda/api/HmdaServer.scala
index 9b3bc0faf1..e58d84043c 100644
--- a/common/src/main/scala/hmda/api/HmdaServer.scala
+++ b/common/src/main/scala/hmda/api/HmdaServer.scala
@@ -2,10 +2,10 @@ package hmda.api
import java.net.InetSocketAddress
-import akka.actor.{ Actor, ActorSystem, Status }
-import akka.http.scaladsl.Http
-import akka.http.scaladsl.Http.ServerBinding
-import akka.stream.Materializer
+import org.apache.pekko.actor.{ Actor, ActorSystem, Status }
+import org.apache.pekko.http.scaladsl.Http
+import org.apache.pekko.http.scaladsl.Http.ServerBinding
+import org.apache.pekko.stream.Materializer
import hmda.actor.HmdaActor
import scala.concurrent.{ ExecutionContext, Future }
diff --git a/common/src/main/scala/hmda/api/grpc/GrpcServer.scala b/common/src/main/scala/hmda/api/grpc/GrpcServer.scala
index d7e29c3365..4aaa3868ec 100644
--- a/common/src/main/scala/hmda/api/grpc/GrpcServer.scala
+++ b/common/src/main/scala/hmda/api/grpc/GrpcServer.scala
@@ -1,6 +1,6 @@
package hmda.api.grpc
-import akka.http.scaladsl.model.{ HttpRequest, HttpResponse }
+import org.apache.pekko.http.scaladsl.model.{ HttpRequest, HttpResponse }
import hmda.api.HmdaServer
import scala.concurrent.Future
diff --git a/common/src/main/scala/hmda/api/http/FlowUtils.scala b/common/src/main/scala/hmda/api/http/FlowUtils.scala
index 0fb999006b..c9ff90b974 100644
--- a/common/src/main/scala/hmda/api/http/FlowUtils.scala
+++ b/common/src/main/scala/hmda/api/http/FlowUtils.scala
@@ -1,12 +1,12 @@
package hmda.api.http
-import akka.NotUsed
-import akka.actor.ActorSystem
-import akka.http.scaladsl.Http
-import akka.http.scaladsl.model.{ HttpMethods, HttpRequest, HttpResponse, Uri }
-import akka.http.scaladsl.unmarshalling.Unmarshal
-import akka.stream.scaladsl.{ Flow, Framing }
-import akka.util.ByteString
+import org.apache.pekko.NotUsed
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.http.scaladsl.Http
+import org.apache.pekko.http.scaladsl.model.{ HttpMethods, HttpRequest, HttpResponse, Uri }
+import org.apache.pekko.http.scaladsl.unmarshalling.Unmarshal
+import org.apache.pekko.stream.scaladsl.{ Flow, Framing }
+import org.apache.pekko.util.ByteString
import scala.concurrent.{ ExecutionContext, Future }
// $COVERAGE-OFF$
diff --git a/common/src/main/scala/hmda/api/http/HttpServer.scala b/common/src/main/scala/hmda/api/http/HttpServer.scala
index eddbfbdb88..33b4078d30 100644
--- a/common/src/main/scala/hmda/api/http/HttpServer.scala
+++ b/common/src/main/scala/hmda/api/http/HttpServer.scala
@@ -1,6 +1,6 @@
package hmda.api.http
-import akka.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.server.Route
import hmda.api.HmdaServer
abstract class HttpServer extends HmdaServer {
diff --git a/common/src/main/scala/hmda/api/http/PathMatchers.scala b/common/src/main/scala/hmda/api/http/PathMatchers.scala
index bc1a85db60..078b387d55 100644
--- a/common/src/main/scala/hmda/api/http/PathMatchers.scala
+++ b/common/src/main/scala/hmda/api/http/PathMatchers.scala
@@ -1,8 +1,8 @@
package hmda.api.http
-import akka.http.scaladsl.server.PathMatcher1
+import org.apache.pekko.http.scaladsl.server.PathMatcher1
import hmda.utils.YearUtils.{ isValidQuarter }
-import akka.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Directives._
object PathMatchers {
val Quarter: PathMatcher1[String] = Segment.flatMap(Option(_).filter(isValidQuarter))
diff --git a/common/src/main/scala/hmda/api/http/directives/CreateFilingAuthorization.scala b/common/src/main/scala/hmda/api/http/directives/CreateFilingAuthorization.scala
index 614434bb58..0015662389 100644
--- a/common/src/main/scala/hmda/api/http/directives/CreateFilingAuthorization.scala
+++ b/common/src/main/scala/hmda/api/http/directives/CreateFilingAuthorization.scala
@@ -1,13 +1,13 @@
package hmda.api.http.directives
import java.time.LocalDate
-import akka.http.scaladsl.model.StatusCodes.BadRequest
+import org.apache.pekko.http.scaladsl.model.StatusCodes.BadRequest
import hmda.util.Filer
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
import com.typesafe.config.ConfigFactory
import hmda.api.http.model.ErrorResponse
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
object CreateFilingAuthorization {
private val config = ConfigFactory.load()
diff --git a/common/src/main/scala/hmda/api/http/directives/HmdaTimeDirectives.scala b/common/src/main/scala/hmda/api/http/directives/HmdaTimeDirectives.scala
index 8072593914..f83394600c 100644
--- a/common/src/main/scala/hmda/api/http/directives/HmdaTimeDirectives.scala
+++ b/common/src/main/scala/hmda/api/http/directives/HmdaTimeDirectives.scala
@@ -1,11 +1,11 @@
package hmda.api.http.directives
-import akka.http.scaladsl.model.{ HttpRequest, HttpResponse, StatusCodes }
-import akka.http.scaladsl.server.{ Directive0, Route, RouteResult }
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.RouteResult.{ Complete, Rejected }
-import akka.stream.scaladsl.Flow
-import akka.util.ByteString
+import org.apache.pekko.http.scaladsl.model.{ HttpRequest, HttpResponse, StatusCodes }
+import org.apache.pekko.http.scaladsl.server.{ Directive0, Route, RouteResult }
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.RouteResult.{ Complete, Rejected }
+import org.apache.pekko.stream.scaladsl.Flow
+import org.apache.pekko.util.ByteString
import org.slf4j.{ Logger, LoggerFactory }
import scala.concurrent.ExecutionContext
@@ -19,7 +19,7 @@ object HmdaTimeDirectives {
private val timeoutResponse = HttpResponse(StatusCodes.NetworkReadTimeout, entity = "Unable to serve response within time limit.")
- // Reference: https://blog.softwaremill.com/measuring-response-time-in-akka-http-7b6312ec70cf
+ // Reference: https://blog.softwaremill.com/measuring-response-time-in-pekko-http-7b6312ec70cf
private def timeRequest(request: HttpRequest): Try[RouteResult] => Unit = {
val start = System.currentTimeMillis()
@@ -37,7 +37,7 @@ object HmdaTimeDirectives {
}
}
- // Reference: https://blog.softwaremill.com/measuring-response-time-in-akka-http-7b6312ec70cf
+ // Reference: https://blog.softwaremill.com/measuring-response-time-in-pekko-http-7b6312ec70cf
private def aroundRequest(onRequest: HttpRequest => Try[RouteResult] => Unit)(implicit ec: ExecutionContext): Directive0 =
extractRequestContext.flatMap { ctx =>
val onDone = onRequest(ctx.request)
@@ -72,7 +72,7 @@ object HmdaTimeDirectives {
case other =>
onDone(Success(other))
other
- }.andThen { // skip this if you use akka.http.scaladsl.server.handleExceptions, put onDone there
+ }.andThen { // skip this if you useorg.apache.pekko.http.scaladsl.server.handleExceptions, put onDone there
case Failure(ex) =>
onDone(Failure(ex))
}
diff --git a/common/src/main/scala/hmda/api/http/model/ErrorResponse.scala b/common/src/main/scala/hmda/api/http/model/ErrorResponse.scala
index 7f8b2efec1..f77497fc27 100644
--- a/common/src/main/scala/hmda/api/http/model/ErrorResponse.scala
+++ b/common/src/main/scala/hmda/api/http/model/ErrorResponse.scala
@@ -1,6 +1,6 @@
package hmda.api.http.model
-import akka.http.scaladsl.model.Uri.Path
+import org.apache.pekko.http.scaladsl.model.Uri.Path
import io.circe.Decoder.Result
import io.circe.{Decoder, Encoder, HCursor, Json}
diff --git a/common/src/main/scala/hmda/api/http/routes/BaseHttpApi.scala b/common/src/main/scala/hmda/api/http/routes/BaseHttpApi.scala
index 7cc4a3395f..3854ef784a 100644
--- a/common/src/main/scala/hmda/api/http/routes/BaseHttpApi.scala
+++ b/common/src/main/scala/hmda/api/http/routes/BaseHttpApi.scala
@@ -3,13 +3,13 @@ package hmda.api.http.routes
import java.net.InetAddress
import java.time.Instant
-import akka.Done
-import akka.actor.{ ActorSystem, CoordinatedShutdown }
-import akka.http.scaladsl.Http
+import org.apache.pekko.Done
+import org.apache.pekko.actor.{ ActorSystem, CoordinatedShutdown }
+import org.apache.pekko.http.scaladsl.Http
import hmda.api.http.directives.HmdaTimeDirectives._
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.model.HmdaServiceStatus
import io.circe.generic.auto._
import org.slf4j.{ Logger, LoggerFactory }
diff --git a/common/src/main/scala/hmda/api/ws/routes/BaseWsApi.scala b/common/src/main/scala/hmda/api/ws/routes/BaseWsApi.scala
index 8d8fb85a02..fc1e8914e4 100644
--- a/common/src/main/scala/hmda/api/ws/routes/BaseWsApi.scala
+++ b/common/src/main/scala/hmda/api/ws/routes/BaseWsApi.scala
@@ -3,12 +3,12 @@ package hmda.api.ws.routes
import java.net.InetAddress
import java.time.Instant
-import akka.NotUsed
-import akka.http.scaladsl.model.ws.{ Message, TextMessage }
-import akka.http.scaladsl.server.Directives.{ get, handleWebSocketMessages, pathSingleSlash }
-import akka.http.scaladsl.server.Route
-import akka.stream.scaladsl.Flow
-import ch.megard.akka.http.cors.scaladsl.CorsDirectives.cors
+import org.apache.pekko.NotUsed
+import org.apache.pekko.http.scaladsl.model.ws.{ Message, TextMessage }
+import org.apache.pekko.http.scaladsl.server.Directives.{ get, handleWebSocketMessages, pathSingleSlash }
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.stream.scaladsl.Flow
+import org.apache.pekko.http.cors.scaladsl.CorsDirectives.cors
import hmda.api.http.model.HmdaServiceStatus
import io.circe.generic.auto._
import io.circe.syntax._
diff --git a/common/src/main/scala/hmda/auth/OAuth2Authorization.scala b/common/src/main/scala/hmda/auth/OAuth2Authorization.scala
index 90bc4352f2..deb0bef2d5 100644
--- a/common/src/main/scala/hmda/auth/OAuth2Authorization.scala
+++ b/common/src/main/scala/hmda/auth/OAuth2Authorization.scala
@@ -1,13 +1,13 @@
package hmda.auth
-import akka.http.scaladsl.model.Uri.Path
-import akka.http.scaladsl.model.headers.{Authorization, OAuth2BearerToken}
-import akka.http.scaladsl.model.{AttributeKey, HttpRequest, StatusCodes, Uri}
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server._
-import akka.http.scaladsl.server.directives.LoggingMagnet
+import org.apache.pekko.http.scaladsl.model.Uri.Path
+import org.apache.pekko.http.scaladsl.model.headers.{Authorization, OAuth2BearerToken}
+import org.apache.pekko.http.scaladsl.model.{AttributeKey, HttpRequest, StatusCodes, Uri}
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server._
+import org.apache.pekko.http.scaladsl.server.directives.LoggingMagnet
import com.typesafe.config.{Config, ConfigFactory}
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.model.ErrorResponse
import org.slf4j.Logger
diff --git a/common/src/main/scala/hmda/messages/HmdaMessageFilter.scala b/common/src/main/scala/hmda/messages/HmdaMessageFilter.scala
index 5cfd79adc1..3ccb5257c1 100644
--- a/common/src/main/scala/hmda/messages/HmdaMessageFilter.scala
+++ b/common/src/main/scala/hmda/messages/HmdaMessageFilter.scala
@@ -1,6 +1,6 @@
package hmda.messages
-import akka.kafka.ConsumerMessage.{CommittableMessage, CommittableOffset}
+import org.apache.pekko.kafka.ConsumerMessage.{CommittableMessage, CommittableOffset}
import com.typesafe.scalalogging.StrictLogging
import hmda.util.LEIValidator
diff --git a/common/src/main/scala/hmda/messages/filing/FilingCommands.scala b/common/src/main/scala/hmda/messages/filing/FilingCommands.scala
index a77053db8a..e0ac335246 100644
--- a/common/src/main/scala/hmda/messages/filing/FilingCommands.scala
+++ b/common/src/main/scala/hmda/messages/filing/FilingCommands.scala
@@ -1,6 +1,6 @@
package hmda.messages.filing
-import akka.actor.typed.ActorRef
+import org.apache.pekko.actor.typed.ActorRef
import hmda.messages.CommonMessages.Command
import hmda.messages.filing.FilingEvents.FilingCreated
import hmda.model.filing.submission.{ Submission, SubmissionId }
diff --git a/common/src/main/scala/hmda/messages/institution/InstitutionCommands.scala b/common/src/main/scala/hmda/messages/institution/InstitutionCommands.scala
index e08341930c..1fc4e0e6a2 100644
--- a/common/src/main/scala/hmda/messages/institution/InstitutionCommands.scala
+++ b/common/src/main/scala/hmda/messages/institution/InstitutionCommands.scala
@@ -1,6 +1,6 @@
package hmda.messages.institution
-import akka.actor.typed.ActorRef
+import org.apache.pekko.actor.typed.ActorRef
import hmda.messages.CommonMessages.Command
import hmda.messages.institution.InstitutionEvents.InstitutionEvent
import hmda.model.filing.Filing
diff --git a/common/src/main/scala/hmda/messages/projection/CommonProjectionMessages.scala b/common/src/main/scala/hmda/messages/projection/CommonProjectionMessages.scala
index d8793229a2..6ba540e37c 100644
--- a/common/src/main/scala/hmda/messages/projection/CommonProjectionMessages.scala
+++ b/common/src/main/scala/hmda/messages/projection/CommonProjectionMessages.scala
@@ -1,7 +1,7 @@
package hmda.messages.projection
-import akka.actor.typed.ActorRef
-import akka.persistence.query.Offset
+import org.apache.pekko.actor.typed.ActorRef
+import org.apache.pekko.persistence.query.Offset
object CommonProjectionMessages {
sealed trait ProjectionCommand
diff --git a/common/src/main/scala/hmda/messages/submission/EditDetailsCommands.scala b/common/src/main/scala/hmda/messages/submission/EditDetailsCommands.scala
index c6f6cf3e81..88c243d7b1 100644
--- a/common/src/main/scala/hmda/messages/submission/EditDetailsCommands.scala
+++ b/common/src/main/scala/hmda/messages/submission/EditDetailsCommands.scala
@@ -1,6 +1,6 @@
package hmda.messages.submission
-import akka.actor.typed.ActorRef
+import org.apache.pekko.actor.typed.ActorRef
import hmda.messages.submission.EditDetailsEvents.{ EditDetailsPersistenceEvent, EditDetailsRowCounted }
import hmda.model.edits.EditDetails
import hmda.model.filing.submission.SubmissionId
diff --git a/common/src/main/scala/hmda/messages/submission/HmdaRawDataCommands.scala b/common/src/main/scala/hmda/messages/submission/HmdaRawDataCommands.scala
index 43ac4a6468..7fbf5c16cc 100644
--- a/common/src/main/scala/hmda/messages/submission/HmdaRawDataCommands.scala
+++ b/common/src/main/scala/hmda/messages/submission/HmdaRawDataCommands.scala
@@ -1,6 +1,6 @@
package hmda.messages.submission
-import akka.actor.typed.ActorRef
+import org.apache.pekko.actor.typed.ActorRef
import hmda.messages.CommonMessages.Command
import hmda.messages.submission.HmdaRawDataReplies.LinesAdded
import hmda.model.filing.submission.SubmissionId
diff --git a/common/src/main/scala/hmda/messages/submission/SubmissionCommands.scala b/common/src/main/scala/hmda/messages/submission/SubmissionCommands.scala
index 01a53b7091..7c58c51aef 100644
--- a/common/src/main/scala/hmda/messages/submission/SubmissionCommands.scala
+++ b/common/src/main/scala/hmda/messages/submission/SubmissionCommands.scala
@@ -1,6 +1,6 @@
package hmda.messages.submission
-import akka.actor.typed.ActorRef
+import org.apache.pekko.actor.typed.ActorRef
import hmda.messages.CommonMessages.Command
import hmda.messages.submission.SubmissionEvents.{ SubmissionCreated, SubmissionEvent }
import hmda.model.filing.submission.{ Submission, SubmissionId }
diff --git a/common/src/main/scala/hmda/messages/submission/SubmissionProcessingCommands.scala b/common/src/main/scala/hmda/messages/submission/SubmissionProcessingCommands.scala
index 0cd9c257c7..cffa6fcba4 100644
--- a/common/src/main/scala/hmda/messages/submission/SubmissionProcessingCommands.scala
+++ b/common/src/main/scala/hmda/messages/submission/SubmissionProcessingCommands.scala
@@ -1,6 +1,6 @@
package hmda.messages.submission
-import akka.actor.typed.ActorRef
+import org.apache.pekko.actor.typed.ActorRef
import hmda.messages.CommonMessages.Command
import hmda.messages.submission.SubmissionProcessingEvents._
import hmda.messages.submission.ValidationProgressTrackerCommands.ValidationProgressTrackerCommand
diff --git a/common/src/main/scala/hmda/messages/submission/ValidationProgressTrackerCommands.scala b/common/src/main/scala/hmda/messages/submission/ValidationProgressTrackerCommands.scala
index 10396503a3..4376c18d92 100644
--- a/common/src/main/scala/hmda/messages/submission/ValidationProgressTrackerCommands.scala
+++ b/common/src/main/scala/hmda/messages/submission/ValidationProgressTrackerCommands.scala
@@ -1,6 +1,6 @@
package hmda.messages.submission
-import akka.actor.typed.ActorRef
+import org.apache.pekko.actor.typed.ActorRef
import hmda.messages.CommonMessages.Command
import hmda.model.processing.state._
diff --git a/common/src/main/scala/hmda/parser/filing/ParserFlow.scala b/common/src/main/scala/hmda/parser/filing/ParserFlow.scala
index 9ebc1ec097..e8d8eafb65 100644
--- a/common/src/main/scala/hmda/parser/filing/ParserFlow.scala
+++ b/common/src/main/scala/hmda/parser/filing/ParserFlow.scala
@@ -1,9 +1,9 @@
package hmda.parser.filing
-import akka.NotUsed
-import akka.stream.FlowShape
-import akka.stream.scaladsl.{ Broadcast, Concat, Flow, GraphDSL }
-import akka.util.ByteString
+import org.apache.pekko.NotUsed
+import org.apache.pekko.stream.FlowShape
+import org.apache.pekko.stream.scaladsl.{ Broadcast, Concat, Flow, GraphDSL }
+import org.apache.pekko.util.ByteString
import hmda.model.filing.PipeDelimited
import hmda.model.filing.lar.LoanApplicationRegister
import hmda.model.filing.ts.TransmittalSheet
diff --git a/common/src/main/scala/hmda/persistence/HmdaTypedPersistentActor.scala b/common/src/main/scala/hmda/persistence/HmdaTypedPersistentActor.scala
index 04d72a73f7..a7ae5ea01b 100644
--- a/common/src/main/scala/hmda/persistence/HmdaTypedPersistentActor.scala
+++ b/common/src/main/scala/hmda/persistence/HmdaTypedPersistentActor.scala
@@ -1,7 +1,7 @@
package hmda.persistence
-import akka.actor.typed.scaladsl.ActorContext
-import akka.persistence.typed.scaladsl.EventSourcedBehavior.CommandHandler
+import org.apache.pekko.actor.typed.scaladsl.ActorContext
+import org.apache.pekko.persistence.typed.scaladsl.EventSourcedBehavior.CommandHandler
import hmda.actor.HmdaTypedActor
trait HmdaTypedPersistentActor[C, E, S] extends HmdaTypedActor[C] {
diff --git a/common/src/main/scala/hmda/projection/ResumableProjection.scala b/common/src/main/scala/hmda/projection/ResumableProjection.scala
index 226d6593c5..efaa5ed492 100644
--- a/common/src/main/scala/hmda/projection/ResumableProjection.scala
+++ b/common/src/main/scala/hmda/projection/ResumableProjection.scala
@@ -1,15 +1,15 @@
package hmda.projection
-import akka.actor.typed.scaladsl.AskPattern._
-import akka.actor.typed.scaladsl.{ ActorContext, Behaviors }
-import akka.actor.typed.{ ActorSystem, Behavior, Scheduler }
-import akka.persistence.query.{ EventEnvelope, NoOffset, Offset }
-import akka.persistence.typed.PersistenceId
-import akka.persistence.typed.scaladsl.EventSourcedBehavior.CommandHandler
-import akka.persistence.typed.scaladsl.{ Effect, EventSourcedBehavior }
-import akka.stream.Materializer
-import akka.stream.scaladsl.Sink
-import akka.util.Timeout
+import org.apache.pekko.actor.typed.scaladsl.AskPattern._
+import org.apache.pekko.actor.typed.scaladsl.{ ActorContext, Behaviors }
+import org.apache.pekko.actor.typed.{ ActorSystem, Behavior, Scheduler }
+import org.apache.pekko.persistence.query.{ EventEnvelope, NoOffset, Offset }
+import org.apache.pekko.persistence.typed.PersistenceId
+import org.apache.pekko.persistence.typed.scaladsl.EventSourcedBehavior.CommandHandler
+import org.apache.pekko.persistence.typed.scaladsl.{ Effect, EventSourcedBehavior }
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.scaladsl.Sink
+import org.apache.pekko.util.Timeout
import hmda.messages.projection.CommonProjectionMessages._
import hmda.query.HmdaQuery._
diff --git a/common/src/main/scala/hmda/publication/KafkaUtils.scala b/common/src/main/scala/hmda/publication/KafkaUtils.scala
index d62612a481..278a6d472b 100644
--- a/common/src/main/scala/hmda/publication/KafkaUtils.scala
+++ b/common/src/main/scala/hmda/publication/KafkaUtils.scala
@@ -1,12 +1,12 @@
package hmda.publication
-import akka.Done
-import akka.actor.typed.ActorSystem
-import akka.actor.typed.scaladsl.adapter._
-import akka.kafka.ProducerSettings
-import akka.kafka.scaladsl.Producer
-import akka.stream.Materializer
-import akka.stream.scaladsl.{Keep, Source}
+import org.apache.pekko.Done
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.kafka.ProducerSettings
+import org.apache.pekko.kafka.scaladsl.Producer
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.scaladsl.{Keep, Source}
import com.typesafe.config.ConfigFactory
import hmda.messages.institution.InstitutionEvents.InstitutionKafkaEvent
import hmda.serialization.kafka.InstitutionKafkaEventsSerializer
@@ -32,7 +32,7 @@ object KafkaUtils {
def getStringKafkaProducer(system: ActorSystem[_]): KafkaProducer[String, String] = {
- val kafkaConfig = system.settings.config.getConfig("akka.kafka.producer")
+ val kafkaConfig = system.settings.config.getConfig("pekko.kafka.producer")
val producerSettings =
ProducerSettings(kafkaConfig, new StringSerializer, new StringSerializer)
.withBootstrapServers(kafkaHosts)
diff --git a/common/src/main/scala/hmda/query/HmdaQuery.scala b/common/src/main/scala/hmda/query/HmdaQuery.scala
index ec353d5652..bc34c41167 100644
--- a/common/src/main/scala/hmda/query/HmdaQuery.scala
+++ b/common/src/main/scala/hmda/query/HmdaQuery.scala
@@ -1,10 +1,10 @@
package hmda.query
-import akka.NotUsed
-import akka.actor.typed.ActorSystem
-import akka.persistence.query.scaladsl._
-import akka.persistence.query.{ EventEnvelope, Offset, PersistenceQuery }
-import akka.stream.scaladsl.Source
+import org.apache.pekko.NotUsed
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.persistence.query.scaladsl._
+import org.apache.pekko.persistence.query.{ EventEnvelope, Offset, PersistenceQuery }
+import org.apache.pekko.stream.scaladsl.Source
import com.typesafe.config.ConfigFactory
import hmda.messages.CommonMessages.Event
import hmda.messages.submission.HmdaRawDataEvents.LineAdded
@@ -24,7 +24,7 @@ object HmdaQuery {
val configuration = ConfigFactory.load()
- val journalId = configuration.getString("akka.persistence.query.journal.id")
+ val journalId = configuration.getString("pekko.persistence.query.journal.id")
def readJournal(system: ActorSystem[_]): RJ =
PersistenceQuery(system).readJournalFor[RJ](journalId)
diff --git a/common/src/main/scala/hmda/serialization/filing/FilingCommandsProtobufConverter.scala b/common/src/main/scala/hmda/serialization/filing/FilingCommandsProtobufConverter.scala
index 9c6d55a0c7..9d317eed19 100644
--- a/common/src/main/scala/hmda/serialization/filing/FilingCommandsProtobufConverter.scala
+++ b/common/src/main/scala/hmda/serialization/filing/FilingCommandsProtobufConverter.scala
@@ -1,6 +1,6 @@
package hmda.serialization.filing
-import akka.actor.typed.ActorRefResolver
+import org.apache.pekko.actor.typed.ActorRefResolver
import hmda.messages.filing.FilingCommands._
import hmda.persistence.serialization.filing.FilingMessage
import hmda.persistence.serialization.filing.commands._
diff --git a/common/src/main/scala/hmda/serialization/filing/FilingCommandsSerializer.scala b/common/src/main/scala/hmda/serialization/filing/FilingCommandsSerializer.scala
index 3fcd55b82f..47b77540ad 100644
--- a/common/src/main/scala/hmda/serialization/filing/FilingCommandsSerializer.scala
+++ b/common/src/main/scala/hmda/serialization/filing/FilingCommandsSerializer.scala
@@ -2,10 +2,10 @@ package hmda.serialization.filing
import java.io.NotSerializableException
-import akka.actor.ExtendedActorSystem
-import akka.actor.typed.ActorRefResolver
-import akka.actor.typed.scaladsl.adapter._
-import akka.serialization.SerializerWithStringManifest
+import org.apache.pekko.actor.ExtendedActorSystem
+import org.apache.pekko.actor.typed.ActorRefResolver
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.serialization.SerializerWithStringManifest
import hmda.messages.filing.FilingCommands._
import hmda.model.filing.Filing
import hmda.persistence.serialization.filing.FilingMessage
diff --git a/common/src/main/scala/hmda/serialization/filing/FilingDetailsSerializer.scala b/common/src/main/scala/hmda/serialization/filing/FilingDetailsSerializer.scala
index e07ba8355e..5138bf3fa3 100644
--- a/common/src/main/scala/hmda/serialization/filing/FilingDetailsSerializer.scala
+++ b/common/src/main/scala/hmda/serialization/filing/FilingDetailsSerializer.scala
@@ -2,7 +2,7 @@ package hmda.serialization.filing
import java.io.NotSerializableException
-import akka.serialization.SerializerWithStringManifest
+import org.apache.pekko.serialization.SerializerWithStringManifest
import hmda.model.filing.FilingDetails
import hmda.persistence.filing.FilingState
import hmda.persistence.serialization.filing.filingdetails.FilingDetailsMessage
diff --git a/common/src/main/scala/hmda/serialization/filing/FilingEventsSerializer.scala b/common/src/main/scala/hmda/serialization/filing/FilingEventsSerializer.scala
index 354523be62..82723b4575 100644
--- a/common/src/main/scala/hmda/serialization/filing/FilingEventsSerializer.scala
+++ b/common/src/main/scala/hmda/serialization/filing/FilingEventsSerializer.scala
@@ -2,7 +2,7 @@ package hmda.serialization.filing
import java.io.NotSerializableException
-import akka.serialization.SerializerWithStringManifest
+import org.apache.pekko.serialization.SerializerWithStringManifest
import hmda.messages.filing.FilingEvents.{ FilingCreated, FilingStatusUpdated, SubmissionAdded, SubmissionUpdated }
import hmda.persistence.serialization.filing.events.{
FilingCreatedMessage,
diff --git a/common/src/main/scala/hmda/serialization/filing/FilingStateSerializer.scala b/common/src/main/scala/hmda/serialization/filing/FilingStateSerializer.scala
index 21782809d3..3c0d3f0286 100644
--- a/common/src/main/scala/hmda/serialization/filing/FilingStateSerializer.scala
+++ b/common/src/main/scala/hmda/serialization/filing/FilingStateSerializer.scala
@@ -2,7 +2,7 @@ package hmda.serialization.filing
import java.io.NotSerializableException
-import akka.serialization.SerializerWithStringManifest
+import org.apache.pekko.serialization.SerializerWithStringManifest
import hmda.persistence.filing.FilingState
import hmda.persistence.serialization.filing.filingstate.FilingStateMessage
import hmda.serialization.filing.FilingStateProtobufConverter._
diff --git a/common/src/main/scala/hmda/serialization/institution/InstitutionCommandsProtobufConverter.scala b/common/src/main/scala/hmda/serialization/institution/InstitutionCommandsProtobufConverter.scala
index a9e7c2d57b..f438505cbf 100644
--- a/common/src/main/scala/hmda/serialization/institution/InstitutionCommandsProtobufConverter.scala
+++ b/common/src/main/scala/hmda/serialization/institution/InstitutionCommandsProtobufConverter.scala
@@ -1,6 +1,6 @@
package hmda.serialization.institution
-import akka.actor.typed.ActorRefResolver
+import org.apache.pekko.actor.typed.ActorRefResolver
import hmda.messages.institution.InstitutionCommands._
import hmda.messages.institution.InstitutionEvents.InstitutionEvent
import hmda.model.institution.InstitutionDetail
diff --git a/common/src/main/scala/hmda/serialization/institution/InstitutionCommandsSerializer.scala b/common/src/main/scala/hmda/serialization/institution/InstitutionCommandsSerializer.scala
index 7ac047626f..33b51b3cc9 100644
--- a/common/src/main/scala/hmda/serialization/institution/InstitutionCommandsSerializer.scala
+++ b/common/src/main/scala/hmda/serialization/institution/InstitutionCommandsSerializer.scala
@@ -2,10 +2,10 @@ package hmda.serialization.institution
import java.io.NotSerializableException
-import akka.actor.ExtendedActorSystem
-import akka.actor.typed.ActorRefResolver
-import akka.actor.typed.scaladsl.adapter._
-import akka.serialization.SerializerWithStringManifest
+import org.apache.pekko.actor.ExtendedActorSystem
+import org.apache.pekko.actor.typed.ActorRefResolver
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.serialization.SerializerWithStringManifest
import hmda.messages.institution.InstitutionCommands.{ GetInstitutionDetails, _ }
import hmda.model.institution.Institution
import hmda.persistence.serialization.institution.InstitutionMessage
diff --git a/common/src/main/scala/hmda/serialization/institution/InstitutionDetailSerializer.scala b/common/src/main/scala/hmda/serialization/institution/InstitutionDetailSerializer.scala
index 0b54735802..584025cf71 100644
--- a/common/src/main/scala/hmda/serialization/institution/InstitutionDetailSerializer.scala
+++ b/common/src/main/scala/hmda/serialization/institution/InstitutionDetailSerializer.scala
@@ -2,7 +2,7 @@ package hmda.serialization.institution
import java.io.NotSerializableException
-import akka.serialization.SerializerWithStringManifest
+import org.apache.pekko.serialization.SerializerWithStringManifest
import hmda.model.institution.InstitutionDetail
import hmda.persistence.serialization.institution.institutiondetail.InstitutionDetailMessage
import hmda.serialization.institution.InstitutionDetailProtobufConverter._
diff --git a/common/src/main/scala/hmda/serialization/institution/InstitutionEventsSerializer.scala b/common/src/main/scala/hmda/serialization/institution/InstitutionEventsSerializer.scala
index 093bff1656..62687d6e33 100644
--- a/common/src/main/scala/hmda/serialization/institution/InstitutionEventsSerializer.scala
+++ b/common/src/main/scala/hmda/serialization/institution/InstitutionEventsSerializer.scala
@@ -2,7 +2,7 @@ package hmda.serialization.institution
import java.io.NotSerializableException
-import akka.serialization.SerializerWithStringManifest
+import org.apache.pekko.serialization.SerializerWithStringManifest
import hmda.messages.institution.InstitutionEvents._
import hmda.persistence.serialization.institution.events._
import hmda.serialization.institution.InstitutionEventsProtobufConverter._
diff --git a/common/src/main/scala/hmda/serialization/institution/InstitutionStateSerializer.scala b/common/src/main/scala/hmda/serialization/institution/InstitutionStateSerializer.scala
index af94bd095e..39c5010f7f 100644
--- a/common/src/main/scala/hmda/serialization/institution/InstitutionStateSerializer.scala
+++ b/common/src/main/scala/hmda/serialization/institution/InstitutionStateSerializer.scala
@@ -2,7 +2,7 @@ package hmda.serialization.institution
import java.io.NotSerializableException
-import akka.serialization.SerializerWithStringManifest
+import org.apache.pekko.serialization.SerializerWithStringManifest
import hmda.persistence.institution.InstitutionState
import hmda.persistence.serialization.institution.institutionstate.InstitutionStateMessage
import hmda.serialization.institution.InstitutionStateProtobufConverter._
diff --git a/common/src/main/scala/hmda/serialization/projection/ProjectionMessagesSerializer.scala b/common/src/main/scala/hmda/serialization/projection/ProjectionMessagesSerializer.scala
index 5b5777688d..e3795c5902 100644
--- a/common/src/main/scala/hmda/serialization/projection/ProjectionMessagesSerializer.scala
+++ b/common/src/main/scala/hmda/serialization/projection/ProjectionMessagesSerializer.scala
@@ -1,9 +1,9 @@
package hmda.serialization.projection
-import akka.actor.ExtendedActorSystem
-import akka.actor.typed.ActorRefResolver
-import akka.actor.typed.scaladsl.adapter._
-import akka.serialization.SerializerWithStringManifest
+import org.apache.pekko.actor.ExtendedActorSystem
+import org.apache.pekko.actor.typed.ActorRefResolver
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.serialization.SerializerWithStringManifest
import hmda.messages.projection.CommonProjectionMessages.{ GetOffset, OffsetSaved, SaveOffset }
import hmda.messages.projection.projection.OffsetSavedMessage
import hmda.serialization.projection.ProjectionProtobufConverter._
diff --git a/common/src/main/scala/hmda/serialization/projection/ProjectionProtobufConverter.scala b/common/src/main/scala/hmda/serialization/projection/ProjectionProtobufConverter.scala
index 6db1a1b4dc..181146f734 100644
--- a/common/src/main/scala/hmda/serialization/projection/ProjectionProtobufConverter.scala
+++ b/common/src/main/scala/hmda/serialization/projection/ProjectionProtobufConverter.scala
@@ -2,8 +2,8 @@ package hmda.serialization.projection
import java.util.UUID
-import akka.actor.typed.ActorRefResolver
-import akka.persistence.query.TimeBasedUUID
+import org.apache.pekko.actor.typed.ActorRefResolver
+import org.apache.pekko.persistence.query.TimeBasedUUID
import hmda.messages.projection.CommonProjectionMessages.{ GetOffset, OffsetSaved, SaveOffset }
import hmda.messages.projection.projection.{ GetOffsetMessage, OffsetSavedMessage, SaveOffsetMessage }
diff --git a/common/src/main/scala/hmda/serialization/submission/EditDetailsCommandsProtobufConverter.scala b/common/src/main/scala/hmda/serialization/submission/EditDetailsCommandsProtobufConverter.scala
index 9c7a933e1d..2c5622b5fb 100644
--- a/common/src/main/scala/hmda/serialization/submission/EditDetailsCommandsProtobufConverter.scala
+++ b/common/src/main/scala/hmda/serialization/submission/EditDetailsCommandsProtobufConverter.scala
@@ -1,6 +1,6 @@
package hmda.serialization.submission
-import akka.actor.typed.ActorRefResolver
+import org.apache.pekko.actor.typed.ActorRefResolver
import hmda.messages.submission.EditDetailsCommands.{ GetEditDetails, GetEditRowCount, PersistEditDetails }
import hmda.persistence.serialization.edit.details.EditDetailsMessage
import hmda.persistence.serialization.edit.details.commands.{ GetEditDetailsMessage, GetEditRowCountMessage, PersistEditDetailsMessage }
diff --git a/common/src/main/scala/hmda/serialization/submission/EditDetailsCommandsSerializer.scala b/common/src/main/scala/hmda/serialization/submission/EditDetailsCommandsSerializer.scala
index b311478e2f..c2471ff8dc 100644
--- a/common/src/main/scala/hmda/serialization/submission/EditDetailsCommandsSerializer.scala
+++ b/common/src/main/scala/hmda/serialization/submission/EditDetailsCommandsSerializer.scala
@@ -2,10 +2,10 @@ package hmda.serialization.submission
import java.io.NotSerializableException
-import akka.actor.ExtendedActorSystem
-import akka.actor.typed.ActorRefResolver
-import akka.actor.typed.scaladsl.adapter._
-import akka.serialization.SerializerWithStringManifest
+import org.apache.pekko.actor.ExtendedActorSystem
+import org.apache.pekko.actor.typed.ActorRefResolver
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.serialization.SerializerWithStringManifest
import hmda.messages.submission.EditDetailsCommands.{ GetEditDetails, GetEditRowCount, PersistEditDetails }
import hmda.persistence.serialization.edit.details.commands.{ GetEditDetailsMessage, GetEditRowCountMessage, PersistEditDetailsMessage }
import hmda.serialization.submission.EditDetailsCommandsProtobufConverter._
diff --git a/common/src/main/scala/hmda/serialization/submission/EditDetailsEventsSerializer.scala b/common/src/main/scala/hmda/serialization/submission/EditDetailsEventsSerializer.scala
index 201f8a07e3..bccc1cbfa0 100644
--- a/common/src/main/scala/hmda/serialization/submission/EditDetailsEventsSerializer.scala
+++ b/common/src/main/scala/hmda/serialization/submission/EditDetailsEventsSerializer.scala
@@ -2,7 +2,7 @@ package hmda.serialization.submission
import java.io.NotSerializableException
-import akka.serialization.SerializerWithStringManifest
+import org.apache.pekko.serialization.SerializerWithStringManifest
import hmda.messages.submission.EditDetailsEvents.{ EditDetailsAdded, EditDetailsRowCounted }
import hmda.persistence.serialization.edit.details.events.{ EditDetailsAddedMessage, EditDetailsRowCountedMessage }
import hmda.serialization.submission.EditDetailsEventsProtobufConverter._
diff --git a/common/src/main/scala/hmda/serialization/submission/HmdaRawDataCommandsProtobufConverter.scala b/common/src/main/scala/hmda/serialization/submission/HmdaRawDataCommandsProtobufConverter.scala
index ef0efaa4a2..f50d7e8c8d 100644
--- a/common/src/main/scala/hmda/serialization/submission/HmdaRawDataCommandsProtobufConverter.scala
+++ b/common/src/main/scala/hmda/serialization/submission/HmdaRawDataCommandsProtobufConverter.scala
@@ -1,6 +1,6 @@
package hmda.serialization.submission
-import akka.actor.typed.ActorRefResolver
+import org.apache.pekko.actor.typed.ActorRefResolver
import hmda.messages.submission.HmdaRawDataCommands.AddLines
import hmda.persistence.serialization.raw.data.commands.{AddLineMessage, AddLinesMessage}
import hmda.persistence.serialization.submission.SubmissionIdMessage
diff --git a/common/src/main/scala/hmda/serialization/submission/HmdaRawDataCommandsSerializer.scala b/common/src/main/scala/hmda/serialization/submission/HmdaRawDataCommandsSerializer.scala
index ee2d5ac1c6..e2aa8ea25c 100644
--- a/common/src/main/scala/hmda/serialization/submission/HmdaRawDataCommandsSerializer.scala
+++ b/common/src/main/scala/hmda/serialization/submission/HmdaRawDataCommandsSerializer.scala
@@ -1,10 +1,10 @@
package hmda.serialization.submission
import java.io.NotSerializableException
-import akka.actor.ExtendedActorSystem
-import akka.actor.typed.ActorRefResolver
-import akka.actor.typed.scaladsl.adapter._
-import akka.serialization.SerializerWithStringManifest
+import org.apache.pekko.actor.ExtendedActorSystem
+import org.apache.pekko.actor.typed.ActorRefResolver
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.serialization.SerializerWithStringManifest
import hmda.messages.submission.HmdaRawDataCommands.AddLines
import hmda.persistence.serialization.raw.data.commands.{AddLineMessage, AddLinesMessage}
import hmda.serialization.submission.HmdaRawDataCommandsProtobufConverter._
diff --git a/common/src/main/scala/hmda/serialization/submission/HmdaRawDataEventsSerializer.scala b/common/src/main/scala/hmda/serialization/submission/HmdaRawDataEventsSerializer.scala
index 9af463e151..db039b026c 100644
--- a/common/src/main/scala/hmda/serialization/submission/HmdaRawDataEventsSerializer.scala
+++ b/common/src/main/scala/hmda/serialization/submission/HmdaRawDataEventsSerializer.scala
@@ -2,7 +2,7 @@ package hmda.serialization.submission
import java.io.NotSerializableException
-import akka.serialization.SerializerWithStringManifest
+import org.apache.pekko.serialization.SerializerWithStringManifest
import hmda.messages.submission.HmdaRawDataEvents.LineAdded
import hmda.model.processing.state.HmdaRawDataState
import hmda.persistence.serialization.raw.data.events.{ HmdaRawDataStateMessage, LineAddedMessage }
diff --git a/common/src/main/scala/hmda/serialization/submission/HmdaRawDataRepliesSerializer.scala b/common/src/main/scala/hmda/serialization/submission/HmdaRawDataRepliesSerializer.scala
index 6a2857eac4..e481d61e16 100644
--- a/common/src/main/scala/hmda/serialization/submission/HmdaRawDataRepliesSerializer.scala
+++ b/common/src/main/scala/hmda/serialization/submission/HmdaRawDataRepliesSerializer.scala
@@ -1,6 +1,6 @@
package hmda.serialization.submission
-import akka.serialization.SerializerWithStringManifest
+import org.apache.pekko.serialization.SerializerWithStringManifest
import hmda.messages.submission.HmdaRawDataReplies.LinesAdded
import hmda.persistence.serialization.raw.data.replies.LinesAddedMessage
import hmda.serialization.submission.HmdaRawDataRepliesProtobufConverter._
diff --git a/common/src/main/scala/hmda/serialization/submission/SubmissionCommandsProtobufConverter.scala b/common/src/main/scala/hmda/serialization/submission/SubmissionCommandsProtobufConverter.scala
index 413df5c613..d02062c22e 100644
--- a/common/src/main/scala/hmda/serialization/submission/SubmissionCommandsProtobufConverter.scala
+++ b/common/src/main/scala/hmda/serialization/submission/SubmissionCommandsProtobufConverter.scala
@@ -1,6 +1,6 @@
package hmda.serialization.submission
-import akka.actor.typed.ActorRefResolver
+import org.apache.pekko.actor.typed.ActorRefResolver
import hmda.messages.submission.SubmissionCommands.{ CreateSubmission, GetSubmission, ModifySubmission, SubmissionStop }
import hmda.persistence.serialization.submission.commands.{
CreateSubmissionMessage,
diff --git a/common/src/main/scala/hmda/serialization/submission/SubmissionCommandsSerializer.scala b/common/src/main/scala/hmda/serialization/submission/SubmissionCommandsSerializer.scala
index c4e38e3924..8aa1d7c30f 100644
--- a/common/src/main/scala/hmda/serialization/submission/SubmissionCommandsSerializer.scala
+++ b/common/src/main/scala/hmda/serialization/submission/SubmissionCommandsSerializer.scala
@@ -2,10 +2,10 @@ package hmda.serialization.submission
import java.io.NotSerializableException
-import akka.actor.ExtendedActorSystem
-import akka.actor.typed.ActorRefResolver
-import akka.actor.typed.scaladsl.adapter._
-import akka.serialization.SerializerWithStringManifest
+import org.apache.pekko.actor.ExtendedActorSystem
+import org.apache.pekko.actor.typed.ActorRefResolver
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.serialization.SerializerWithStringManifest
import hmda.messages.submission.SubmissionCommands.{ CreateSubmission, GetSubmission, ModifySubmission, SubmissionStop }
import hmda.model.filing.submission.Submission
import hmda.persistence.serialization.submission.SubmissionMessage
diff --git a/common/src/main/scala/hmda/serialization/submission/SubmissionEventsSerializer.scala b/common/src/main/scala/hmda/serialization/submission/SubmissionEventsSerializer.scala
index c6b9e58c46..c673b70770 100644
--- a/common/src/main/scala/hmda/serialization/submission/SubmissionEventsSerializer.scala
+++ b/common/src/main/scala/hmda/serialization/submission/SubmissionEventsSerializer.scala
@@ -2,7 +2,7 @@ package hmda.serialization.submission
import java.io.NotSerializableException
-import akka.serialization.SerializerWithStringManifest
+import org.apache.pekko.serialization.SerializerWithStringManifest
import hmda.messages.submission.SubmissionEvents.{ SubmissionCreated, SubmissionModified, SubmissionNotExists }
import hmda.persistence.serialization.submission.events.{ SubmissionCreatedMessage, SubmissionModifiedMessage, SubmissionNotExistsMessage }
import hmda.serialization.submission.SubmissionEventsProtobufConverter._
diff --git a/common/src/main/scala/hmda/serialization/submission/SubmissionManagerCommandsSerializer.scala b/common/src/main/scala/hmda/serialization/submission/SubmissionManagerCommandsSerializer.scala
index 6fa2fd10ee..aed4ff2399 100644
--- a/common/src/main/scala/hmda/serialization/submission/SubmissionManagerCommandsSerializer.scala
+++ b/common/src/main/scala/hmda/serialization/submission/SubmissionManagerCommandsSerializer.scala
@@ -2,7 +2,7 @@ package hmda.serialization.submission
import java.io.NotSerializableException
-import akka.serialization.SerializerWithStringManifest
+import org.apache.pekko.serialization.SerializerWithStringManifest
import hmda.messages.submission.SubmissionManagerCommands.{ UpdateSubmissionStatus, WrappedSubmissionEventResponse }
import hmda.serialization.submission.SubmissionManagerCommandsProtobufConverter._
diff --git a/common/src/main/scala/hmda/serialization/submission/SubmissionProcessingCommandsProtobufConverter.scala b/common/src/main/scala/hmda/serialization/submission/SubmissionProcessingCommandsProtobufConverter.scala
index 9fca21e440..40e98c38e5 100644
--- a/common/src/main/scala/hmda/serialization/submission/SubmissionProcessingCommandsProtobufConverter.scala
+++ b/common/src/main/scala/hmda/serialization/submission/SubmissionProcessingCommandsProtobufConverter.scala
@@ -1,6 +1,6 @@
package hmda.serialization.submission
-import akka.actor.typed.ActorRefResolver
+import org.apache.pekko.actor.typed.ActorRefResolver
import hmda.messages.submission.SubmissionProcessingCommands._
import hmda.model.validation.MacroValidationError
import hmda.persistence.serialization.submission.SubmissionIdMessage
diff --git a/common/src/main/scala/hmda/serialization/submission/SubmissionProcessingCommandsSerializer.scala b/common/src/main/scala/hmda/serialization/submission/SubmissionProcessingCommandsSerializer.scala
index 532d841e43..35c10a7f9d 100644
--- a/common/src/main/scala/hmda/serialization/submission/SubmissionProcessingCommandsSerializer.scala
+++ b/common/src/main/scala/hmda/serialization/submission/SubmissionProcessingCommandsSerializer.scala
@@ -2,10 +2,10 @@ package hmda.serialization.submission
import java.io.NotSerializableException
-import akka.actor.ExtendedActorSystem
-import akka.actor.typed.ActorRefResolver
-import akka.actor.typed.scaladsl.adapter._
-import akka.serialization.SerializerWithStringManifest
+import org.apache.pekko.actor.ExtendedActorSystem
+import org.apache.pekko.actor.typed.ActorRefResolver
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.serialization.SerializerWithStringManifest
import hmda.messages.submission.SubmissionProcessingCommands.{ CompleteSyntacticalValidity, GetHmdaValidationErrorState, _ }
import hmda.persistence.serialization.submission.processing.commands._
import hmda.serialization.submission.SubmissionProcessingCommandsProtobufConverter._
diff --git a/common/src/main/scala/hmda/serialization/submission/SubmissionProcessingEventsSerializer.scala b/common/src/main/scala/hmda/serialization/submission/SubmissionProcessingEventsSerializer.scala
index f2734afa93..19f5728920 100644
--- a/common/src/main/scala/hmda/serialization/submission/SubmissionProcessingEventsSerializer.scala
+++ b/common/src/main/scala/hmda/serialization/submission/SubmissionProcessingEventsSerializer.scala
@@ -2,7 +2,7 @@ package hmda.serialization.submission
import java.io.NotSerializableException
-import akka.serialization.SerializerWithStringManifest
+import org.apache.pekko.serialization.SerializerWithStringManifest
import hmda.messages.submission.SubmissionProcessingEvents._
import hmda.model.filing.submission.VerificationStatus
import hmda.model.processing.state.{ HmdaParserErrorState, HmdaValidationErrorState }
diff --git a/common/src/main/scala/hmda/serialization/validation/ValidationProgressTrackerCommandsProtobufConverter.scala b/common/src/main/scala/hmda/serialization/validation/ValidationProgressTrackerCommandsProtobufConverter.scala
index c874c3a3c3..64cde10c72 100644
--- a/common/src/main/scala/hmda/serialization/validation/ValidationProgressTrackerCommandsProtobufConverter.scala
+++ b/common/src/main/scala/hmda/serialization/validation/ValidationProgressTrackerCommandsProtobufConverter.scala
@@ -1,6 +1,6 @@
package hmda.serialization.validation
-import akka.actor.typed.ActorRefResolver
+import org.apache.pekko.actor.typed.ActorRefResolver
import hmda.messages.submission.ValidationProgressTrackerCommands
import hmda.model.processing.state.{ValidationProgress, ValidationProgressTrackerState}
import hmda.persistence.serialization.validationProgressTracker.{ValidationProgressMessage, ValidationProgressTrackerPollMessage, ValidationProgressTrackerStateMessage, ValidationProgressTrackerSubscribeMessage}
diff --git a/common/src/main/scala/hmda/serialization/validation/ValidationProgressTrackerCommandsSerializer.scala b/common/src/main/scala/hmda/serialization/validation/ValidationProgressTrackerCommandsSerializer.scala
index 61770f3a8a..41a730d6f2 100644
--- a/common/src/main/scala/hmda/serialization/validation/ValidationProgressTrackerCommandsSerializer.scala
+++ b/common/src/main/scala/hmda/serialization/validation/ValidationProgressTrackerCommandsSerializer.scala
@@ -1,9 +1,9 @@
package hmda.serialization.validation
-import akka.actor.ExtendedActorSystem
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.typed.ActorRefResolver
-import akka.serialization.SerializerWithStringManifest
+import org.apache.pekko.actor.ExtendedActorSystem
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.typed.ActorRefResolver
+import org.apache.pekko.serialization.SerializerWithStringManifest
import hmda.messages.submission.ValidationProgressTrackerCommands
import hmda.model.processing.state.ValidationProgressTrackerState
import hmda.persistence.serialization.validationProgressTracker.{ValidationProgressTrackerPollMessage, ValidationProgressTrackerStateMessage, ValidationProgressTrackerSubscribeMessage}
diff --git a/common/src/main/scala/hmda/util/http/FileUploadUtils.scala b/common/src/main/scala/hmda/util/http/FileUploadUtils.scala
index 7116365619..e8783d56d8 100644
--- a/common/src/main/scala/hmda/util/http/FileUploadUtils.scala
+++ b/common/src/main/scala/hmda/util/http/FileUploadUtils.scala
@@ -1,7 +1,7 @@
package hmda.util.http
-import akka.http.scaladsl.model.Multipart.FormData
-import akka.http.scaladsl.model.{ ContentTypes, HttpEntity, Multipart }
+import org.apache.pekko.http.scaladsl.model.Multipart.FormData
+import org.apache.pekko.http.scaladsl.model.{ ContentTypes, HttpEntity, Multipart }
trait FileUploadUtils {
diff --git a/common/src/main/scala/hmda/util/http/FilingResponseUtils.scala b/common/src/main/scala/hmda/util/http/FilingResponseUtils.scala
index e7a19c3f17..1d66db287a 100644
--- a/common/src/main/scala/hmda/util/http/FilingResponseUtils.scala
+++ b/common/src/main/scala/hmda/util/http/FilingResponseUtils.scala
@@ -1,10 +1,10 @@
package hmda.util.http
-import akka.http.scaladsl.marshalling.ToResponseMarshallable
-import akka.http.scaladsl.model.{ StatusCode, StatusCodes, Uri }
-import akka.http.scaladsl.server.Directives.complete
-import akka.http.scaladsl.server.Route
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.http.scaladsl.marshalling.ToResponseMarshallable
+import org.apache.pekko.http.scaladsl.model.{ StatusCode, StatusCodes, Uri }
+import org.apache.pekko.http.scaladsl.server.Directives.complete
+import org.apache.pekko.http.scaladsl.server.Route
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.model.ErrorResponse
import hmda.model.filing.submission.SubmissionId
diff --git a/common/src/main/scala/hmda/util/streams/FlowUtils.scala b/common/src/main/scala/hmda/util/streams/FlowUtils.scala
index b036d4fed7..e478d4b4d1 100644
--- a/common/src/main/scala/hmda/util/streams/FlowUtils.scala
+++ b/common/src/main/scala/hmda/util/streams/FlowUtils.scala
@@ -1,8 +1,8 @@
package hmda.util.streams
-import akka.NotUsed
-import akka.stream.scaladsl.{ Flow, Framing }
-import akka.util.ByteString
+import org.apache.pekko.NotUsed
+import org.apache.pekko.stream.scaladsl.{ Flow, Framing }
+import org.apache.pekko.util.ByteString
object FlowUtils {
diff --git a/common/src/test/resources/application.conf b/common/src/test/resources/application.conf
index d8f91a4c65..fb012dbedd 100644
--- a/common/src/test/resources/application.conf
+++ b/common/src/test/resources/application.conf
@@ -1,9 +1,63 @@
-akka {
+pekko {
+ test {
+ filter-leeway = 20s
+ default-timeout = 20s
+ }
stdout-loglevel = OFF
loglevel = OFF
-}
+ persistence {
+ journal.plugin = "pekko.persistence.cassandra.journal"
+ snapshot-store.plugin = "pekko.persistence.cassandra.snapshot"
+
+ query {
+ journal.id = "pekko.persistence.cassandra.query"
+ }
+
+ cassandra {
+ events-by-tag {
+ max-message-batch-size = 30
+ max-message-batch-size = ${?TAG_BATCH_SIZE}
+ flush-interval = 150ms
+ flush-interval = ${?TAG_FLUSH_INTERVAL}
+ # read-profile = "pekko-persistence-cassandra-profile-keyspaces"
+ # write-profile = "pekko-persistence-cassandra-profile-keyspaces"
+ read-profile1 = ${?CASSANDRA_PROFILE}
+ write-profile = ${?CASSANDRA_PROFILE}
+ }
+ journal {
+ keyspace = "hmda2_journal"
+ keyspace = ${?CASSANDRA_JOURNAL_KEYSPACE}
+ table = "journal"
+ events-by-tag.max-message-batch-size = 30
+ events-by-tag.max-message-batch-size = ${?TAG_BATCH_SIZE}
+ events-by-tag.flush-interval = 150ms
+ events-by-tag.flush-interval = ${?TAG_FLUSH_INTERVAL}
+ keyspace-autocreate = true
+ tables-autocreate = true
+ target-partition-size = 500000
+ target-partition-size = ${?CASSANDRA_TARGET_PARTITION_SIZE}
+ }
+ query {
+ # reference: https://github.com/pekko/pekko-persistence-cassandra/blob/v0.101/core/src/main/resources/reference.conf
+ # Sequence numbers for a persistenceId is assumed to be monotonically increasing
+ # without gaps. That is used for detecting missing events.
+ # In early versions of the journal that might not be true and therefore
+ # this can be relaxed by setting this property to off.
+ gap-free-sequence-numbers = off
+ }
+ snapshot {
+ keyspace = "hmda2_snapshot"
+ keyspace = ${?CASSANDRA_SNAPSHOT_KEYSPACE}
+ table = "snapshot"
+ keyspace-autocreate = true
+ tables-autocreate = true
+ }
+ }
+ }
+}
+
kafka {
servers = "localhost:6001"
}
\ No newline at end of file
diff --git a/common/src/test/scala/hmda/api/http/codec/ErrorResponseCodecSpec.scala b/common/src/test/scala/hmda/api/http/codec/ErrorResponseCodecSpec.scala
index ff18d8fab7..2c06509cbd 100644
--- a/common/src/test/scala/hmda/api/http/codec/ErrorResponseCodecSpec.scala
+++ b/common/src/test/scala/hmda/api/http/codec/ErrorResponseCodecSpec.scala
@@ -1,6 +1,6 @@
package hmda.api.http.codec
-import akka.http.scaladsl.model.Uri.Path
+import org.apache.pekko.http.scaladsl.model.Uri.Path
import hmda.api.http.model.ErrorResponse
import io.circe.syntax._
import org.scalatest.{ MustMatchers, WordSpec }
diff --git a/common/src/test/scala/hmda/api/http/routes/BaseHttpApiSpec.scala b/common/src/test/scala/hmda/api/http/routes/BaseHttpApiSpec.scala
index 86b6946207..729dbe2e24 100644
--- a/common/src/test/scala/hmda/api/http/routes/BaseHttpApiSpec.scala
+++ b/common/src/test/scala/hmda/api/http/routes/BaseHttpApiSpec.scala
@@ -1,10 +1,10 @@
package hmda.api.http.routes
-import akka.http.scaladsl.model.StatusCodes
-import akka.http.scaladsl.model.headers.HttpEncodings._
-import akka.http.scaladsl.model.headers._
-import akka.http.scaladsl.testkit.ScalatestRouteTest
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.http.scaladsl.model.StatusCodes
+import org.apache.pekko.http.scaladsl.model.headers.HttpEncodings._
+import org.apache.pekko.http.scaladsl.model.headers._
+import org.apache.pekko.http.scaladsl.testkit.ScalatestRouteTest
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.model.HmdaServiceStatus
import hmda.api.http.routes.BaseHttpApi._
import io.circe.generic.auto._
diff --git a/common/src/test/scala/hmda/api/ws/routes/BaseWSApiSpec.scala b/common/src/test/scala/hmda/api/ws/routes/BaseWSApiSpec.scala
index 66e25f8809..e938adaf75 100644
--- a/common/src/test/scala/hmda/api/ws/routes/BaseWSApiSpec.scala
+++ b/common/src/test/scala/hmda/api/ws/routes/BaseWSApiSpec.scala
@@ -1,7 +1,7 @@
package hmda.api.ws.routes
-import akka.http.scaladsl.model.headers.{ HttpOrigin, Origin }
-import akka.http.scaladsl.testkit.{ ScalatestRouteTest, WSProbe }
+import org.apache.pekko.http.scaladsl.model.headers.{ HttpOrigin, Origin }
+import org.apache.pekko.http.scaladsl.testkit.{ ScalatestRouteTest, WSProbe }
import hmda.api.http.model.HmdaServiceStatus
import io.circe.Json
import io.circe.generic.auto._
diff --git a/common/src/test/scala/hmda/parser/filing/ParserFlowSpec.scala b/common/src/test/scala/hmda/parser/filing/ParserFlowSpec.scala
index 38bdea841d..07cdadf6c8 100644
--- a/common/src/test/scala/hmda/parser/filing/ParserFlowSpec.scala
+++ b/common/src/test/scala/hmda/parser/filing/ParserFlowSpec.scala
@@ -1,10 +1,10 @@
package hmda.parser.filing
-import akka.actor.ActorSystem
-import akka.stream.Materializer
-import akka.stream.scaladsl.Source
-import akka.stream.testkit.scaladsl.TestSink
-import akka.util.ByteString
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.scaladsl.Source
+import org.apache.pekko.stream.testkit.scaladsl.TestSink
+import org.apache.pekko.util.ByteString
import hmda.model.filing.PipeDelimited
import hmda.model.filing.lar.LarGenerators._
import hmda.model.filing.lar.LoanApplicationRegister
diff --git a/common/src/test/scala/hmda/persistence/AkkaCassandraPersistenceSpec.scala b/common/src/test/scala/hmda/persistence/PekkoCassandraPersistenceSpec.scala
similarity index 76%
rename from common/src/test/scala/hmda/persistence/AkkaCassandraPersistenceSpec.scala
rename to common/src/test/scala/hmda/persistence/PekkoCassandraPersistenceSpec.scala
index ff2e586ccd..83f7beab0c 100644
--- a/common/src/test/scala/hmda/persistence/AkkaCassandraPersistenceSpec.scala
+++ b/common/src/test/scala/hmda/persistence/PekkoCassandraPersistenceSpec.scala
@@ -2,20 +2,20 @@ package hmda.persistence
import java.time.Instant
import java.util.concurrent.TimeUnit
-import akka.actor
-import akka.actor.testkit.typed.scaladsl.TestProbe
-import akka.actor.typed.scaladsl.Behaviors
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.typed.{ActorRef, ActorSystem, Behavior, TypedActorContext}
-import akka.persistence.typed.PersistenceId
-import akka.persistence.typed.scaladsl.EventSourcedBehavior.CommandHandler
-import akka.persistence.typed.scaladsl.{Effect, EventSourcedBehavior}
+import org.apache.pekko.actor
+import org.apache.pekko.actor.testkit.typed.scaladsl.TestProbe
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.typed.{ActorRef, ActorSystem, Behavior, TypedActorContext}
+import org.apache.pekko.persistence.typed.PersistenceId
+import org.apache.pekko.persistence.typed.scaladsl.EventSourcedBehavior.CommandHandler
+import org.apache.pekko.persistence.typed.scaladsl.{Effect, EventSourcedBehavior}
import org.scalacheck.Gen
import org.scalatest.{BeforeAndAfterAll, WordSpec}
import scala.concurrent.duration._
-abstract class AkkaCassandraPersistenceSpec extends WordSpec with BeforeAndAfterAll {
+abstract class PekkoCassandraPersistenceSpec extends WordSpec with BeforeAndAfterAll {
sealed trait Command
sealed trait Event
@@ -40,12 +40,12 @@ abstract class AkkaCassandraPersistenceSpec extends WordSpec with BeforeAndAfter
val probe = TestProbe[Event](s"probe-$id")
val t0 = System.nanoTime()
- probe.within(45.seconds) {
+ probe.within(90.seconds) {
probe.awaitAssert {
val actor =
system.spawn(AwaitPersistenceInit.behavior, actorName)
actor ! Request(probe.ref)
- probe.expectMessage(5.seconds, Response)
+ probe.expectMessage(120.seconds, Response)
system.log.debug("awaitPersistenceInit took {} ms {}", TimeUnit.NANOSECONDS.toMillis(System.nanoTime() - t0), system.name)
}
}
diff --git a/common/src/test/scala/hmda/serialization/projection/ProjectionProtobufConverterSpec.scala b/common/src/test/scala/hmda/serialization/projection/ProjectionProtobufConverterSpec.scala
index da32ef1a29..b50e1ac027 100644
--- a/common/src/test/scala/hmda/serialization/projection/ProjectionProtobufConverterSpec.scala
+++ b/common/src/test/scala/hmda/serialization/projection/ProjectionProtobufConverterSpec.scala
@@ -1,10 +1,10 @@
package hmda.serialization.projection
-import akka.actor.ActorSystem
-import akka.actor.testkit.typed.scaladsl.TestProbe
-import akka.actor.typed.ActorRefResolver
-import akka.actor.typed.scaladsl.adapter._
-import akka.persistence.query.TimeBasedUUID
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.actor.testkit.typed.scaladsl.TestProbe
+import org.apache.pekko.actor.typed.ActorRefResolver
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.persistence.query.TimeBasedUUID
import com.datastax.oss.driver.api.core.uuid.Uuids
import hmda.messages.projection.CommonProjectionMessages.{ GetOffset, OffsetSaved, SaveOffset }
import hmda.serialization.projection.ProjectionProtobufConverter._
diff --git a/common/src/test/scala/hmda/serialization/submission/SubmissionProcessingCommandsProtobufConverterSpec.scala b/common/src/test/scala/hmda/serialization/submission/SubmissionProcessingCommandsProtobufConverterSpec.scala
index f2539b51b2..ea0f63ed43 100644
--- a/common/src/test/scala/hmda/serialization/submission/SubmissionProcessingCommandsProtobufConverterSpec.scala
+++ b/common/src/test/scala/hmda/serialization/submission/SubmissionProcessingCommandsProtobufConverterSpec.scala
@@ -1,9 +1,9 @@
package hmda.serialization.submission
-import akka.actor.ActorSystem
-import akka.actor.testkit.typed.scaladsl.TestProbe
-import akka.actor.typed.ActorRefResolver
-import akka.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.actor.testkit.typed.scaladsl.TestProbe
+import org.apache.pekko.actor.typed.ActorRefResolver
+import org.apache.pekko.actor.typed.scaladsl.adapter._
import hmda.generators.CommonGenerators.emailGen
import hmda.messages.submission.SubmissionProcessingCommands._
import hmda.messages.submission.SubmissionProcessingEvents.{SubmissionProcessingEvent, SubmissionSignedEvent}
diff --git a/data-browser/src/main/resources/application.conf b/data-browser/src/main/resources/application.conf
index 61ccaf2337..87f5947e06 100644
--- a/data-browser/src/main/resources/application.conf
+++ b/data-browser/src/main/resources/application.conf
@@ -1,12 +1,12 @@
include "cors.conf"
-akka {
+pekko {
loglevel = info
log-dead-letters = off
log-dead-letters-during-shutdown = off
}
-akka.http.server.request-timeout = 4 minutes
+pekko.http.server.request-timeout = 4 minutes
server {
bindings {
diff --git a/data-browser/src/main/resources/cors.conf b/data-browser/src/main/resources/cors.conf
index 34c2d4b74f..b35c7f634b 100644
--- a/data-browser/src/main/resources/cors.conf
+++ b/data-browser/src/main/resources/cors.conf
@@ -1,4 +1,4 @@
-akka-http-cors {
+pekko-http-cors {
allowed-methods = ["GET"]
allowed-origins = "*"
}
diff --git a/data-browser/src/main/scala/hmda/dataBrowser/DataBrowser.scala b/data-browser/src/main/scala/hmda/dataBrowser/DataBrowser.scala
index fa28cca1fd..4395d3cf14 100644
--- a/data-browser/src/main/scala/hmda/dataBrowser/DataBrowser.scala
+++ b/data-browser/src/main/scala/hmda/dataBrowser/DataBrowser.scala
@@ -1,6 +1,6 @@
package hmda.dataBrowser
-import akka.actor.typed.ActorSystem
+import org.apache.pekko.actor.typed.ActorSystem
import hmda.dataBrowser.api.DataBrowserApi
import org.slf4j.LoggerFactory
diff --git a/data-browser/src/main/scala/hmda/dataBrowser/api/DataBrowserApi.scala b/data-browser/src/main/scala/hmda/dataBrowser/api/DataBrowserApi.scala
index a0da3e2ecd..0ce914b2ad 100644
--- a/data-browser/src/main/scala/hmda/dataBrowser/api/DataBrowserApi.scala
+++ b/data-browser/src/main/scala/hmda/dataBrowser/api/DataBrowserApi.scala
@@ -1,14 +1,14 @@
package hmda.dataBrowser.api
-import akka.actor
-import akka.actor.CoordinatedShutdown
-import akka.actor.typed.scaladsl.Behaviors
-import akka.actor.typed.{ ActorSystem, Behavior, SupervisorStrategy }
-import akka.actor.typed.scaladsl.adapter._
-import akka.http.scaladsl.server.Directives._
+import org.apache.pekko.actor
+import org.apache.pekko.actor.CoordinatedShutdown
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.{ ActorSystem, Behavior, SupervisorStrategy }
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.http.scaladsl.server.Directives._
import hmda.api.http.directives.HmdaTimeDirectives._
import hmda.api.http.routes.BaseHttpApi
-import akka.stream.Materializer
+import org.apache.pekko.stream.Materializer
import hmda.dataBrowser.Settings
import hmda.dataBrowser.repositories.{ PostgresModifiedLarRepository, PostgresModifiedLarRepository2017, RedisModifiedLarAggregateCache }
import hmda.dataBrowser.services.{ DataBrowserQueryService, HealthCheckService, QueryService, S3FileService }
@@ -17,7 +17,7 @@ import io.lettuce.core.{ ClientOptions, RedisClient }
import monix.eval.Task
import slick.basic.DatabaseConfig
import slick.jdbc.JdbcProfile
-import ch.megard.akka.http.cors.scaladsl.CorsDirectives.cors
+import org.apache.pekko.http.cors.scaladsl.CorsDirectives.cors
import scala.concurrent.ExecutionContext
import scala.concurrent.duration._
diff --git a/data-browser/src/main/scala/hmda/dataBrowser/api/DataBrowserDirectives.scala b/data-browser/src/main/scala/hmda/dataBrowser/api/DataBrowserDirectives.scala
index 974f899a97..54d647849c 100644
--- a/data-browser/src/main/scala/hmda/dataBrowser/api/DataBrowserDirectives.scala
+++ b/data-browser/src/main/scala/hmda/dataBrowser/api/DataBrowserDirectives.scala
@@ -1,16 +1,16 @@
package hmda.dataBrowser.api
-import akka.NotUsed
-import akka.http.scaladsl.common.{ CsvEntityStreamingSupport, EntityStreamingSupport }
-import akka.http.scaladsl.model.StatusCodes.BadRequest
-import akka.http.scaladsl.model.headers.ContentDispositionTypes.attachment
-import akka.http.scaladsl.model.headers.`Content-Disposition`
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server._
-import akka.http.scaladsl.server.directives.RouteDirectives.complete
-import akka.http.scaladsl.unmarshalling.PredefinedFromStringUnmarshallers._
-import akka.stream.scaladsl.Source
-import akka.util.ByteString
+import org.apache.pekko.NotUsed
+import org.apache.pekko.http.scaladsl.common.{ CsvEntityStreamingSupport, EntityStreamingSupport }
+import org.apache.pekko.http.scaladsl.model.StatusCodes.BadRequest
+import org.apache.pekko.http.scaladsl.model.headers.ContentDispositionTypes.attachment
+import org.apache.pekko.http.scaladsl.model.headers.`Content-Disposition`
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server._
+import org.apache.pekko.http.scaladsl.server.directives.RouteDirectives.complete
+import org.apache.pekko.http.scaladsl.unmarshalling.PredefinedFromStringUnmarshallers._
+import org.apache.pekko.stream.scaladsl.Source
+import org.apache.pekko.util.ByteString
import hmda.dataBrowser.models.ActionTaken._
import hmda.dataBrowser.models.AgeApplicant._
import hmda.dataBrowser.models.ConstructionMethod._
@@ -30,7 +30,7 @@ import hmda.dataBrowser.models.TotalUnits._
import hmda.dataBrowser.models._
import hmda.util.LEIValidator._
import Delimiter.fileEnding
-import akka.http.scaladsl.marshalling.ToResponseMarshallable
+import org.apache.pekko.http.scaladsl.marshalling.ToResponseMarshallable
import hmda.dataBrowser.services._
import monix.eval.Task
import hmda.dataBrowser.Settings
@@ -158,7 +158,7 @@ trait DataBrowserDirectives extends Settings {
parameters("leis".as(CsvSeq[String]) ? Nil).flatMap {
case Nil => provide(None)
case xs if xs.exists(lei => !isValidLEIFormat(lei)) =>
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete((BadRequest, s"A Valid LEI should be 20 characters and Alphanumeric (${xs.mkString(", ")})"))
case xs =>
provide(Option(QueryField(name = "lei", xs.map(_.toString), dbName = "lei", isAllSelected = false)))
@@ -175,11 +175,11 @@ trait DataBrowserDirectives extends Settings {
private def extractYears: Directive1[Option[QueryField]] =
parameters("years".as(CsvSeq[Int]) ? Nil).flatMap {
case Nil =>
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete((BadRequest, "must provide years value parameter"))
case xs if xs.exists(year => (year < 2018) || (year > 2025)) => // TODO: Change this to 2017 when 2017 is released
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete((BadRequest, s"must provide years in the range of 2018-2023, you have provided (${xs.mkString(", ")})"))
case xs => provide(Option(QueryField(name = "year", xs.map(_.toString), dbName = "filing_year", isAllSelected = false)))
@@ -198,7 +198,7 @@ trait DataBrowserDirectives extends Settings {
case _ =>
validateStates(rawStates) match {
case Left(invalidStates) =>
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete((BadRequest, InvalidStates(invalidStates)))
case Right(states) if states.nonEmpty =>
@@ -231,7 +231,7 @@ trait DataBrowserDirectives extends Settings {
val dbName = "action_taken_type"
validateActionsTaken(rawAction) match {
case Left(invalidActionsTaken) =>
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete(ToResponseMarshallable((BadRequest, InvalidActions(invalidActionsTaken))))
case Right(actionsTaken) if actionsTaken.nonEmpty && actionsTaken.size == ActionTaken.values.size =>
@@ -252,7 +252,7 @@ trait DataBrowserDirectives extends Settings {
val dbName = "age_applicant"
validateAgeApplicant(rawAgeApplicant) match {
case Left(invalidAgeApplicant) =>
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete(ToResponseMarshallable((BadRequest, InvalidAgeApplicant(invalidAgeApplicant))))
case Right(ageApplicant) if ageApplicant.nonEmpty && ageApplicant.size == AgeApplicant.values.size =>
@@ -273,7 +273,7 @@ trait DataBrowserDirectives extends Settings {
val dbName = "ethnicity_categorization"
validateEthnicities(rawEthnicities) match {
case Left(invalidAgeApplicant) =>
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete(ToResponseMarshallable((BadRequest, InvalidAgeApplicant(invalidAgeApplicant))))
case Right(ethnicities) if ethnicities.nonEmpty && ethnicities.size == Ethnicity.values.size =>
provide(Option(QueryField(name, ethnicities.map(_.entryName), dbName, isAllSelected = true)))
@@ -292,7 +292,7 @@ trait DataBrowserDirectives extends Settings {
val dbName = name
validateTotalUnits(rawTotalUnits) match {
case Left(invalidTotalUnits) =>
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete(ToResponseMarshallable((BadRequest, InvalidTotalUnits(invalidTotalUnits))))
case Right(totalUnits) if totalUnits.nonEmpty && totalUnits.size == TotalUnits.values.size =>
@@ -312,7 +312,7 @@ trait DataBrowserDirectives extends Settings {
val dbName = "race_categorization"
validateRaces(rawRaces) match {
case Left(invalidRaces) =>
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete(ToResponseMarshallable((BadRequest, InvalidRaces(invalidRaces))))
case Right(races) if races.nonEmpty && races.size == Race.values.size =>
@@ -331,7 +331,7 @@ trait DataBrowserDirectives extends Settings {
val dbName = "construction_method"
validateConstructionMethods(rawConstructionMethods) match {
case Left(invalidConstructionMethods) =>
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete(ToResponseMarshallable((BadRequest, InvalidConstructionMethods(invalidConstructionMethods))))
case Right(constructionMethods) if constructionMethods.nonEmpty && constructionMethods.size == ConstructionMethod.values.size =>
@@ -350,7 +350,7 @@ trait DataBrowserDirectives extends Settings {
val dbName = "dwelling_category"
validateDwellingCategories(rawDwellingCategories) match {
case Left(invalidDwellingCategories) =>
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete(ToResponseMarshallable((BadRequest, InvalidDwellingCategories(invalidDwellingCategories))))
case Right(dwellingCategories) if dwellingCategories.nonEmpty && dwellingCategories.size == DwellingCategory.values.size =>
@@ -372,7 +372,7 @@ trait DataBrowserDirectives extends Settings {
parameters("lien_statuses".as(CsvSeq[String]) ? Nil).flatMap { rawLienStatuses =>
validateLienStatusFunction(rawLienStatuses) match {
case Left(invalidLienStatuses) =>
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete(ToResponseMarshallable((BadRequest, InvalidLienStatuses(invalidLienStatuses))))
case Right(lienStatuses) if lienStatuses.nonEmpty && lienStatuses.size == LienStatus.values.size =>
@@ -391,7 +391,7 @@ trait DataBrowserDirectives extends Settings {
parameters("loan_products".as(CsvSeq[String]) ? Nil).flatMap { rawLoanProducts =>
validateLoanProducts(rawLoanProducts) match {
case Left(invalidLoanProducts) =>
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete(ToResponseMarshallable((BadRequest, InvalidLoanProducts(invalidLoanProducts))))
case Right(loanProducts) if loanProducts.nonEmpty && loanProducts.size == LoanProduct.values.size =>
@@ -414,7 +414,7 @@ trait DataBrowserDirectives extends Settings {
parameters("loan_purposes".as(CsvSeq[String]) ? Nil).flatMap { rawLoanPurposes =>
validateLoanPurposeFunction(rawLoanPurposes) match {
case Left(invalidLoanPurposes) =>
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete(ToResponseMarshallable((BadRequest, InvalidLoanPurposes(invalidLoanPurposes))))
case Right(loanPurposes) if loanPurposes.nonEmpty && loanPurposes.size == LoanPurpose.values.size =>
@@ -433,7 +433,7 @@ trait DataBrowserDirectives extends Settings {
parameters("loan_types".as(CsvSeq[String]) ? Nil).flatMap { rawLoanTypes =>
validateLoanType(rawLoanTypes) match {
case Left(invalidLoanTypes) =>
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete(ToResponseMarshallable((BadRequest, InvalidLoanTypes(invalidLoanTypes))))
case Right(loanTypes) if loanTypes.nonEmpty && loanTypes.size == LoanType.values.size =>
@@ -451,7 +451,7 @@ trait DataBrowserDirectives extends Settings {
parameters("sexes".as(CsvSeq[String]) ? Nil).flatMap { rawSexes =>
validateSexes(rawSexes) match {
case Left(invalidSexes) =>
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete(ToResponseMarshallable((BadRequest, InvalidSexes(invalidSexes))))
case Right(sexes) if sexes.nonEmpty && sexes.size == Sex.values.size =>
@@ -469,7 +469,7 @@ trait DataBrowserDirectives extends Settings {
parameters("property_types".as(CsvSeq[String]) ? Nil).flatMap { rawPropertyTypes =>
validateLoanType(rawPropertyTypes) match {
case Left(invalidPropertyTypes) =>
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete((BadRequest, InvalidLoanTypes(invalidPropertyTypes)))
case Right(propertyTypes) if propertyTypes.nonEmpty && propertyTypes.size == PropertyType.values.size =>
@@ -489,7 +489,7 @@ trait DataBrowserDirectives extends Settings {
case "2017" => extractNonMandatoryQueryFields2017(year)(innerRoute)
case yearStr if Try(yearStr.toInt).filter(_ >= 2018).isSuccess => extractNonMandatoryQueryFieldsLatest(year)(innerRoute)
case invalidYear =>
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete((BadRequest, InvalidYear(invalidYear)))
}
@@ -528,7 +528,7 @@ trait DataBrowserDirectives extends Settings {
ageApplicant
).flatten
if (filteredfields.size > 2) {
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete((BadRequest, TooManyFilterCriterias()))
} else innerRoute(QueryFields(year, filteredfields))
}
@@ -552,7 +552,7 @@ trait DataBrowserDirectives extends Settings {
loanType
).flatten
if (filteredfields.size > 2) {
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete((BadRequest, TooManyFilterCriterias()))
} else innerRoute(QueryFields(year, filteredfields))
}
@@ -563,14 +563,14 @@ trait DataBrowserDirectives extends Settings {
if (years.nonEmpty && (msaMds.nonEmpty || states.nonEmpty)) {
extractNonMandatoryQueryFields(years.head.values.head) { nonMandatoryFields =>
if (nonMandatoryFields.queryFields.nonEmpty) {
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete((BadRequest, NoMandatoryFieldsInCount()))
} else {
innerRoute((QueryFields(years.head.values.head, List(years, msaMds, states).flatten)))
}
}
} else {
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete((BadRequest, ProvideYearAndStatesOrMsaMds()))
}
}
@@ -580,12 +580,12 @@ trait DataBrowserDirectives extends Settings {
(extractYears) { (years) =>
(extractMsaMds & extractStates(years.head.values.head) & extractCounties(years.head.values.head)) { (msaMds, states, counties) =>
if (msaMds.nonEmpty && states.nonEmpty && counties.nonEmpty) {
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete(ToResponseMarshallable((BadRequest, OnlyStatesOrMsaMdsOrCountiesOrLEIs())))
} else if (years.nonEmpty)
innerRoute(QueryFields(years.head.values.head, List(years, msaMds, states, counties).flatten))
else {
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete(ToResponseMarshallable((BadRequest, ProvideYearAndStatesOrMsaMdsOrCounties())))
}
}
@@ -603,7 +603,7 @@ trait DataBrowserDirectives extends Settings {
def extractMsaAndStateAndCountyAndLEIBrowserFields(year: String, innerRoute: QueryFields => Route): Route =
(extractMsaMds & extractStates(year) & extractCounties(year) & extractLEIs ) { (msaMds, states, counties, leis) =>
if ((msaMds.nonEmpty && states.nonEmpty && counties.nonEmpty && leis.nonEmpty) || (msaMds.isEmpty && states.isEmpty && counties.isEmpty && leis.isEmpty )) {
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete((BadRequest, OnlyStatesOrMsaMdsOrCountiesOrLEIs()))
} else
innerRoute(QueryFields(year, List(msaMds, states, counties, leis).flatten))
@@ -612,7 +612,7 @@ trait DataBrowserDirectives extends Settings {
def extractMsaAndStateAndCountyAndARIDBrowserFields(year: String, innerRoute: QueryFields => Route): Route =
(extractMsaMds & extractStates(year) & extractCounties(year) & extractARIDs) { (msaMds, states, counties, arids) =>
if ((msaMds.nonEmpty && states.nonEmpty && counties.nonEmpty && arids.nonEmpty) || (msaMds.isEmpty && states.isEmpty && counties.isEmpty && arids.isEmpty)) {
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete((BadRequest, OnlyStatesOrMsaMdsOrCountiesOrLEIs()))
} else
innerRoute(QueryFields(year, List(msaMds, states, counties, arids).flatten))
@@ -623,7 +623,7 @@ trait DataBrowserDirectives extends Settings {
if (years.nonEmpty)
innerRoute(QueryFields(years.head.values.head, List(years).flatten))
else {
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete((BadRequest, ProvideYear()))
}
}
@@ -632,7 +632,7 @@ trait DataBrowserDirectives extends Settings {
extractNonMandatoryQueryFields(year) { browserFields =>
if (browserFields.queryFields.nonEmpty) innerRoute(browserFields)
else {
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete((BadRequest, NotEnoughFilterCriterias()))
}
}
@@ -641,7 +641,7 @@ trait DataBrowserDirectives extends Settings {
extractNonMandatoryQueryFields(year) { browserFields =>
if (browserFields.queryFields.nonEmpty) innerRoute(browserFields)
else {
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete((BadRequest, NotEnoughFilterCriterias()))
}
}
diff --git a/data-browser/src/main/scala/hmda/dataBrowser/api/DataBrowserHttpApi.scala b/data-browser/src/main/scala/hmda/dataBrowser/api/DataBrowserHttpApi.scala
index 13b2998c7f..151150b20a 100644
--- a/data-browser/src/main/scala/hmda/dataBrowser/api/DataBrowserHttpApi.scala
+++ b/data-browser/src/main/scala/hmda/dataBrowser/api/DataBrowserHttpApi.scala
@@ -1,11 +1,11 @@
package hmda.dataBrowser.api
-import akka.http.scaladsl.model.ContentTypes._
-import akka.http.scaladsl.model.{HttpEntity, StatusCodes, Uri}
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import akka.http.scaladsl.server.directives.RouteDirectives.complete
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.http.scaladsl.model.ContentTypes._
+import org.apache.pekko.http.scaladsl.model.{HttpEntity, StatusCodes, Uri}
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.server.directives.RouteDirectives.complete
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.dataBrowser.api.DataBrowserDirectives._
import hmda.dataBrowser.models.HealthCheckStatus.Up
import hmda.dataBrowser.models._
diff --git a/data-browser/src/main/scala/hmda/dataBrowser/repositories/ModifiedLarRepository.scala b/data-browser/src/main/scala/hmda/dataBrowser/repositories/ModifiedLarRepository.scala
index fb6dd1b4ba..7066fbe669 100644
--- a/data-browser/src/main/scala/hmda/dataBrowser/repositories/ModifiedLarRepository.scala
+++ b/data-browser/src/main/scala/hmda/dataBrowser/repositories/ModifiedLarRepository.scala
@@ -1,7 +1,7 @@
package hmda.dataBrowser.repositories
-import akka.NotUsed
-import akka.stream.scaladsl.Source
+import org.apache.pekko.NotUsed
+import org.apache.pekko.stream.scaladsl.Source
import hmda.dataBrowser.models._
import monix.eval.Task
diff --git a/data-browser/src/main/scala/hmda/dataBrowser/repositories/PostgresModifiedLarRepository.scala b/data-browser/src/main/scala/hmda/dataBrowser/repositories/PostgresModifiedLarRepository.scala
index e936b84c76..f06e054f64 100644
--- a/data-browser/src/main/scala/hmda/dataBrowser/repositories/PostgresModifiedLarRepository.scala
+++ b/data-browser/src/main/scala/hmda/dataBrowser/repositories/PostgresModifiedLarRepository.scala
@@ -1,7 +1,7 @@
package hmda.dataBrowser.repositories
-import akka.NotUsed
-import akka.stream.scaladsl.Source
+import org.apache.pekko.NotUsed
+import org.apache.pekko.stream.scaladsl.Source
import hmda.dataBrowser.models.{ FilerInformationLatest, ModifiedLarEntity, ModifiedLarTable, QueryField, LarQueryField, Statistic }
import monix.eval.Task
import slick.basic.DatabaseConfig
diff --git a/data-browser/src/main/scala/hmda/dataBrowser/repositories/PostgresModifiedLarRepository2017.scala b/data-browser/src/main/scala/hmda/dataBrowser/repositories/PostgresModifiedLarRepository2017.scala
index 179e5bab3f..dda0052f06 100644
--- a/data-browser/src/main/scala/hmda/dataBrowser/repositories/PostgresModifiedLarRepository2017.scala
+++ b/data-browser/src/main/scala/hmda/dataBrowser/repositories/PostgresModifiedLarRepository2017.scala
@@ -1,7 +1,7 @@
package hmda.dataBrowser.repositories
-import akka.NotUsed
-import akka.stream.scaladsl.Source
+import org.apache.pekko.NotUsed
+import org.apache.pekko.stream.scaladsl.Source
import hmda.dataBrowser.models.{ FilerInformation2017, ModifiedLarEntity2017, QueryField, LarQueryField, Statistic }
import monix.eval.Task
import slick.basic.DatabaseConfig
diff --git a/data-browser/src/main/scala/hmda/dataBrowser/services/DataBrowserQueryService.scala b/data-browser/src/main/scala/hmda/dataBrowser/services/DataBrowserQueryService.scala
index 4f63c86867..a4f837fa53 100644
--- a/data-browser/src/main/scala/hmda/dataBrowser/services/DataBrowserQueryService.scala
+++ b/data-browser/src/main/scala/hmda/dataBrowser/services/DataBrowserQueryService.scala
@@ -1,6 +1,6 @@
package hmda.dataBrowser.services
-import akka.NotUsed
-import akka.stream.scaladsl.Source
+import org.apache.pekko.NotUsed
+import org.apache.pekko.stream.scaladsl.Source
import hmda.dataBrowser.models._
import hmda.dataBrowser.models.Aggregation._
import hmda.dataBrowser.repositories._
diff --git a/data-browser/src/main/scala/hmda/dataBrowser/services/FileService.scala b/data-browser/src/main/scala/hmda/dataBrowser/services/FileService.scala
index e98b3cc08e..179c0badba 100644
--- a/data-browser/src/main/scala/hmda/dataBrowser/services/FileService.scala
+++ b/data-browser/src/main/scala/hmda/dataBrowser/services/FileService.scala
@@ -1,8 +1,8 @@
package hmda.dataBrowser.services
-import akka.NotUsed
-import akka.stream.scaladsl.Source
-import akka.util.ByteString
+import org.apache.pekko.NotUsed
+import org.apache.pekko.stream.scaladsl.Source
+import org.apache.pekko.util.ByteString
import hmda.dataBrowser.models.{Delimiter, QueryField}
import monix.eval.Task
diff --git a/data-browser/src/main/scala/hmda/dataBrowser/services/QueryService.scala b/data-browser/src/main/scala/hmda/dataBrowser/services/QueryService.scala
index 377aefc6ba..07bd9285c4 100644
--- a/data-browser/src/main/scala/hmda/dataBrowser/services/QueryService.scala
+++ b/data-browser/src/main/scala/hmda/dataBrowser/services/QueryService.scala
@@ -1,7 +1,7 @@
package hmda.dataBrowser.services
-import akka.NotUsed
-import akka.stream.scaladsl.Source
+import org.apache.pekko.NotUsed
+import org.apache.pekko.stream.scaladsl.Source
import hmda.dataBrowser.models._
import monix.eval.Task
diff --git a/data-browser/src/main/scala/hmda/dataBrowser/services/S3FileService.scala b/data-browser/src/main/scala/hmda/dataBrowser/services/S3FileService.scala
index 5f83357eb8..d1ab697f3d 100644
--- a/data-browser/src/main/scala/hmda/dataBrowser/services/S3FileService.scala
+++ b/data-browser/src/main/scala/hmda/dataBrowser/services/S3FileService.scala
@@ -1,12 +1,12 @@
package hmda.dataBrowser.services
-import akka.NotUsed
-import akka.actor.typed.ActorSystem
-import akka.http.scaladsl.model.ContentTypes
-import akka.stream.alpakka.s3.S3Headers
-import akka.stream.alpakka.s3.scaladsl.S3
-import akka.stream.scaladsl.{ Sink, Source }
-import akka.util.ByteString
+import org.apache.pekko.NotUsed
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.http.scaladsl.model.ContentTypes
+import org.apache.pekko.stream.connectors.s3.S3Headers
+import org.apache.pekko.stream.connectors.s3.scaladsl.S3
+import org.apache.pekko.stream.scaladsl.{ Sink, Source }
+import org.apache.pekko.util.ByteString
import cats.implicits._
import hmda.dataBrowser.Settings
import hmda.dataBrowser.models.Delimiter.fileEnding
@@ -15,7 +15,7 @@ import monix.eval.Task
import org.slf4j.LoggerFactory
// $COVERAGE-OFF$
-// All this does is use the Alpakka S3 APIs
+// All this does is use the pekko S3 APIs
class S3FileService(implicit system: ActorSystem[Nothing]) extends FileService with Settings {
private final val log = LoggerFactory.getLogger(getClass)
diff --git a/data-browser/src/test/scala/hmda/dataBrowser/DataBrowserIntegrationSpec.scala b/data-browser/src/test/scala/hmda/dataBrowser/DataBrowserIntegrationSpec.scala
index c9eda15d42..7a640f57b7 100644
--- a/data-browser/src/test/scala/hmda/dataBrowser/DataBrowserIntegrationSpec.scala
+++ b/data-browser/src/test/scala/hmda/dataBrowser/DataBrowserIntegrationSpec.scala
@@ -1,9 +1,9 @@
package hmda.dataBrowser
-import akka.http.scaladsl.model.StatusCodes
-import akka.http.scaladsl.server.Route
-import akka.http.scaladsl.testkit.ScalatestRouteTest
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport
+import org.apache.pekko.http.scaladsl.model.StatusCodes
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.testkit.ScalatestRouteTest
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport
import hmda.dataBrowser.api.DataBrowserHttpApi
import hmda.dataBrowser.models.HealthCheckStatus.{ Down, Up }
import hmda.dataBrowser.models.{ AggregationResponse, HealthCheckResponse, Statistic }
diff --git a/data-browser/src/test/scala/hmda/dataBrowser/DataBrowserQueryServiceSpec.scala b/data-browser/src/test/scala/hmda/dataBrowser/DataBrowserQueryServiceSpec.scala
index f003ce731b..34d74fc63d 100644
--- a/data-browser/src/test/scala/hmda/dataBrowser/DataBrowserQueryServiceSpec.scala
+++ b/data-browser/src/test/scala/hmda/dataBrowser/DataBrowserQueryServiceSpec.scala
@@ -1,9 +1,9 @@
package hmda.dataBrowser
-import akka.actor.ActorSystem
-import akka.stream.Materializer
-import akka.stream.scaladsl._
-import akka.testkit.TestKit
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.scaladsl._
+import org.apache.pekko.testkit.TestKit
import hmda.dataBrowser.models._
import hmda.dataBrowser.repositories._
import hmda.dataBrowser.services.DataBrowserQueryService
diff --git a/data-browser/src/test/scala/hmda/dataBrowser/HealthCheckServiceSpec.scala b/data-browser/src/test/scala/hmda/dataBrowser/HealthCheckServiceSpec.scala
index cd43d27769..349e346a6b 100644
--- a/data-browser/src/test/scala/hmda/dataBrowser/HealthCheckServiceSpec.scala
+++ b/data-browser/src/test/scala/hmda/dataBrowser/HealthCheckServiceSpec.scala
@@ -1,8 +1,8 @@
package hmda.dataBrowser
-import akka.actor.ActorSystem
-import akka.stream.Materializer
-import akka.testkit.TestKit
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.testkit.TestKit
import hmda.dataBrowser.models.HealthCheckStatus.Up
import hmda.dataBrowser.models.{ Commas, HealthCheckResponse, QueryField }
import hmda.dataBrowser.models.State.AK
diff --git a/data-browser/src/test/scala/hmda/dataBrowser/api/DataBrowserDirectivesSpec.scala b/data-browser/src/test/scala/hmda/dataBrowser/api/DataBrowserDirectivesSpec.scala
index 8da5a71d4b..85889bc5ae 100644
--- a/data-browser/src/test/scala/hmda/dataBrowser/api/DataBrowserDirectivesSpec.scala
+++ b/data-browser/src/test/scala/hmda/dataBrowser/api/DataBrowserDirectivesSpec.scala
@@ -1,10 +1,10 @@
package hmda.dataBrowser.api
-import akka.http.scaladsl.model.StatusCodes
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import akka.http.scaladsl.testkit.ScalatestRouteTest
-import akka.stream.scaladsl.Source
+import org.apache.pekko.http.scaladsl.model.StatusCodes
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.testkit.ScalatestRouteTest
+import org.apache.pekko.stream.scaladsl.Source
import cats.implicits._
import hmda.dataBrowser.api.DataBrowserDirectives._
import hmda.dataBrowser.models._
diff --git a/data/2018/clean_test_files/bank_1/clean_file_10k_rows_Bank1_syntax_validity.txt b/data/2018/clean_test_files/bank_1/clean_file_10k_rows_Bank1_syntax_validity.txt
index 937ed27dad..eb0abb907a 100644
--- a/data/2018/clean_test_files/bank_1/clean_file_10k_rows_Bank1_syntax_validity.txt
+++ b/data/2018/clean_test_files/bank_1/clean_file_10k_rows_Bank1_syntax_validity.txt
@@ -5646,7 +5646,7 @@
2|BANK1LEIFORTEST12345|BANK1LEIFORTEST12345GALRSNDV84LF42APDFGRLTJ09|NA|2|1|2|2|3|375045|6|20180907|1234 Hocus Potato Way|Tatertown|CA|33261|06001|06001432501|3|||||B348M0HZOVMCOGNX634EM7P3H8983AJKJY0WF64SSSRP1X6RMBRZWH9QUU7L4UOCXJC0I7WPNVC3B|4|||||4NGCFAS6W5IWDKR76DW0R0ELPJJE11R0DL573RNOBD9XR9BZVHLBKYKI85163XM3439XGZU0DJ1A5M9WLYP0|2|3|26|||||6Q8PQRAPEJGMUBFD6EE38J70QUEQ9L792|9JFCLMMPBDTFKMGTFW3ED4DUR1SKDI9OG1B2F0EW0SNMTXWRBWC3G073OFXX3RGI81A|CT5AYMEHJVCI7YU8DBT0UVXWKYT6424Y2VN|6|||||HSDBAMCN0CT1UQJHEMV54BEE98B88VFDTC8VYRF9KY5|4WNS3V5FF4I92Z2J9NEZCI37FI51WCKL4SNJO05F966ZP9SXRA9|UULFVE6HUPSCA462KSMESCMFLTY8KUN|2|3|3|1|2|1|30|47|NA|0|NA|3|2|8888|8888|9||9||10|||||NA|NA|NA|NA|NA|NA|NA|NA|NA|261|11|1111|1111|1111|1111|NA|3|5|8|8|3|3|NA|6||||||17||||||2|1111|2
2|BANK1LEIFORTEST12345|BANK1LEIFORTEST12345VFPOCK8UMWW1VRDWQ8761ZL22|20181006|3|5|2|2|2|28958|5|20181122|1234 Hocus Potato Way|Tatertown|NH|44372|33005|33005970600|1|||||QRVEWCBDIOFC0RCRC7TDFKVTF22TMVL3DINKQ4BIY47GHR5VHN8FKI2S1RG1SUI6528XQZL80PUY|1|2||||HN89XEHSXDJY30Z9HISM5N6YQI70LJIE29D9VX797I8STMG0HKQT80VWCLV4W2E9C83LQRFOMX|2|1|5|1|4|3|2|MZ11KDCXRD4XZHEI2E0420FW62WAE5JBGBB|QQ52G6CR9CJZHWCJDCGOULOUUJP3RRQCWMTY8Q43QK7R|X3T1QROZ2UDZ7MB1ODRY5YDFOZHM4IGI2PIA8NKCZEV192Z0ARCRXDA1Y3KNEMPL0HVN4YU05P5HKB09WPLFLTZNZPVQP|4||||1|R57I6TECF0L7VDJV0SCO2FZOD5AGALDUZFO7V|XXETGRR4FLFJP9TPH878Y69N7OY4DJOBP3NP75UPO3SLRVXH43V8U4FKVOO|XH1IU3VBBVYPJNDBMTAMK9Z|1|2|1|1|1|2|56|27|114|0|NA|3|2|8888|8888|9||9||10|||||NA|NA|NA|NA|NA|NA|NA|NA|NA|NA|29|1111|1111|1111|1111|NA|2|2|22|NA|2|2|NA|1||2||||1||8||||1|1111|2
2|BANK1LEIFORTEST12345|BANK1LEIFORTEST123450AU8BW2CFKZUQLVA5275KVW82|NA|1|32|2|1|1|432147|6|20180826|1234 Hocus Potato Way|Tatertown|NY|31093|36047|36047013400|1|||||VLEYV2W73CHLBFHSZA7DWR8478YZM8YTAKK5F21M|4|||||57DSDBESCZP329ZS|1|3|4|1|3|5|2|V8JI4A4S8IC9AJ39O2LC|Z3E6CQS7ONVBHGWHU85PHWAE4JLHT5UOEGVYYKAY3CY93OLC9YC5FOE1M8DSPPIUPKCY955X5|2|8|||||SGLGYDCBI72L2RI8J|NIVMYROH8VNXQYFXEPBCGHVLEAZ46T28D7RVT8Q0CV7765POE4RGKNTXKPB6JCA8MHCRLIWIHGNE98SLZ551GQDOZ0YSA|E4UOT74CXCODN98NNMFN1R5XUOBW62AR|1|4|6|2|2|1|14|101|NA|0|NA|3|2|8888|8888|9||9||10|||||NA|NA|NA|NA|NA|NA|NA|NA|NA|NA|4|1111|1111|1111|1111|483336|3|5|13|12|3|3|NA|6||||||17||||||1|1|1111
-2|BANK1LEIFORTEST12345|BANK1LEIFORTEST12345LAR84AKKAEDM7W3WRZTXU4K76|20180504|2|4|2|2|1|346201|4|20180504|1234 Hocus Potato Way|Tatertown|TX|49969|48479|48479001201|2|||||QNDS4UZN6RAT9EFHPA0SA3DHTHM3RE8DYB80HTFR3UP7CL446NVI3VJ1U1W8K5VA2B|3|||||NJLU9W0GFR7G3CU262CLIDTO3UM1O3T8KRNCX4XX9N84DHZZFMOC6WO7TEVNRBTSOLTZTLU0UBQQ8WPS6J8B|1|3|7|||||OMG2KNX83NAZMSIQO3785T9A3CN66UWNI|5LH91DEXD7XGKOPE4OKAE298QNF9IZNQ19FEB4UR2CNKWIE0YXH45K9T2YJ76BNNQAN8P53Z8I2MIQSY0|YAFVVJ88RTVCZRXVGIFR87JCDBDUZ39BOHQ06XW562NXALH52WMG3J8ASQZXKPCPLE50IKFEY4|8|||||VHWJ43BTDSS15D81640228YUSZMGXYCUR8KNZ18JIFNCTFP3RLDRF3UN81GD21V0TSH1B2810B9|P550WQ3MOJ6PKQOF74JY3KUJF3S|CG9K8KRO6KN|3|4|2|4|1|3|44|36|NA|0|NA|3|2|8888|8888|9||9||10|||||NA|NA|NA|NA|NA|NA|NA|NA|NA|NA|32|2|2|2|1|NA|3|5|8|8|2|1|NA|1||||||4||||||1|1|1111
+2|BANK1LEIFORTEST12345|BANK1LEIFORTEST12345LAR84pekkoEDM7W3WRZTXU4K76|20180504|2|4|2|2|1|346201|4|20180504|1234 Hocus Potato Way|Tatertown|TX|49969|48479|48479001201|2|||||QNDS4UZN6RAT9EFHPA0SA3DHTHM3RE8DYB80HTFR3UP7CL446NVI3VJ1U1W8K5VA2B|3|||||NJLU9W0GFR7G3CU262CLIDTO3UM1O3T8KRNCX4XX9N84DHZZFMOC6WO7TEVNRBTSOLTZTLU0UBQQ8WPS6J8B|1|3|7|||||OMG2KNX83NAZMSIQO3785T9A3CN66UWNI|5LH91DEXD7XGKOPE4OKAE298QNF9IZNQ19FEB4UR2CNKWIE0YXH45K9T2YJ76BNNQAN8P53Z8I2MIQSY0|YAFVVJ88RTVCZRXVGIFR87JCDBDUZ39BOHQ06XW562NXALH52WMG3J8ASQZXKPCPLE50IKFEY4|8|||||VHWJ43BTDSS15D81640228YUSZMGXYCUR8KNZ18JIFNCTFP3RLDRF3UN81GD21V0TSH1B2810B9|P550WQ3MOJ6PKQOF74JY3KUJF3S|CG9K8KRO6KN|3|4|2|4|1|3|44|36|NA|0|NA|3|2|8888|8888|9||9||10|||||NA|NA|NA|NA|NA|NA|NA|NA|NA|NA|32|2|2|2|1|NA|3|5|8|8|2|1|NA|1||||||4||||||1|1|1111
2|BANK1LEIFORTEST12345|BANK1LEIFORTEST12345KILL9L8TBXROAVB4YOYGYK873|20181201|3|31|2|2|2|50194|2|20181201|Exempt|Exempt|LA|Exempt|22019|22019001700|1|||||HXVDZ25Y4RJZRDXSJKB3XF47C1ASVY5NL25PIRBBAMI7UMM9L1IZH695GB7X8MZQ8EXK1|2|1||||HBYMFMS2FGZFQ5W1FZXAPN39JDD1L5UX411ZB99BO0OT3TCGL4I24S3E1L640KSMZUCRS4TQV499WOZBNOZJEQ2K65HS|1|1|1|5|2|4|3|86QXLVOWXJAG9RC842905JKB4XAWTNITCGWB5HQL032KX5R92F|MJFRJ84G7I1RE8C04|0VSGRH6O1V5FRA5GIB619GK85QE6RYNZTF5Q5H1XRMG88NJH9WPFRI6RHTOT54GZOJ68YMH60NPDQK2UIXHL730UGER4SB|5|||||WA12E5MTPQTI743N1ABLJL0G9VRNVJT0JHI70IPKVU7ICZFSCG6EXWHMEEWR3KBKBQ3KULD5WPKW8038MPHIPP7Z|3AE6537S6K61685I5RVBWPPV00B37N99AVMG766QYAAJKUR3ZOPSNYNQUQ3L|O7BJ4IRFNJLK3VASUR3KSEM5SW039YS3758FITFEDR|1|1|2|3|1|3|106|109|NA|0|92.92|3|1|710|687|6||8|02BE2LS64GUMIMQMMDICQ7RDXHIMBTOHSAC3FXAPU9XQFIQ4C96RY10846MJY0L59QUGDXHK6SXRA639FDO9EZZ|10|||||NA|NA|NA|NA|NA|7.07|6|NA|33|297|20|1111|1111|1111|1111|573010|3|5|3|NA|1|3|NA|2||||||10||||||1111|1|2
2|BANK1LEIFORTEST12345|BANK1LEIFORTEST12345QA3657SVHZQ677VM3K9M1I974|NA|2|32|2|2|3|51839|6|20180325|Exempt|Exempt|MD|Exempt|24021|24021750802|3|||||LQ81Z4G6HRKU7X4P92IHPGFTSLJA2O5R4SQLPIK1OBE5UEI24R6695X6W6|3|||||W2WVVEBPCWJFQUYUEYHVO94V3GKCN1I1PLZ6ZUKOERU895BSYXY05JOAEATYMO|3|3|5|3|2|1|4|ZFJVGBKW263E318M48FN3YZVN058SGEIQ6HX1SF56T9FEY6ZVLNAJ5OVDNBDFXPNAT5BFIXIVP6ZW23PU2F0|W7O1GYZL8R4YPU1KOAZ5ZAHGDAOHZMFY34YXBG0T0C8GC7ADEO7GGYYJU1IYRVLC|BKJ2KDT2UNKDGND9Q2CI6EM4QON37ILELK5R|8|||||2CSDPC2O7AQA0E3GPTKQLVG9NED7HAJUVYWU8K9AUTTWPUUL5SU273VI0OHOJZOGXTVI3UUVA7|A8AKSUW9SPEQZDHHDCW4XCQP8OP5WESLTCS8XX6ON4173Y0K5FMVM0YTFK2|RN69Y98|1|4|1|1|2|1|104|71|NA|8|NA|3|1|8888|8888|9||9||10|||||NA|NA|NA|NA|NA|22.22|NA|NA|NA|NA|13|1111|1111|1111|1111|143309|3|5|17|15|3|3|NA|6||||||17||||||1|1|1
2|BANK1LEIFORTEST12345|BANK1LEIFORTEST12345DCE6OXBJYMB6PPW2HCJZPMP65|20180723|4|4|2|2|2|220502|1|20180723|1234 Hocus Potato Way|Tatertown|AZ|48806|04019|04019002400|1|||||JWA4WQSW2WZNDVXF46V08YIKD4HZ7SD|2|1||||EG1467L0OIBN6FZ0MBFCU8X927U42Q7UJZULN03G3JNYJMMB4B1E3HUTWQCHY5M29BHFWIPFYYPVJSMYW1NU3|1|1|6|||||TOF07GGO2EKXX2IETQLVJKARK58G0I1XCLO989CT3YFVB3TMHJGBGBW8OHU7BSOXAEND4CQW6KCPK87IFU2HXEE5ZH661MW4|B2JY1ZGXQP6|4HC6LV|2|||||JAER2ZJWYWFJGZTS35HD6BE2SKYT9HA124D2ZBRP4U2L6AXA59ABET1Q2KCXMTERGALOP8W7C6EMVVS81Q1JAFDC54ERN4SLJB|DM4S96H1Y04DRNZJK7BDLOSCCBXKMUSI9KXFEJJFHDICJ6Y1CEY4N61XCQW4N5|NDTK8A817DYBPFIDP3PUABPWUI06ZBSRPU3TLBYE8KG9CZ6A1V2W10VJ0QFZ8|3|1|1|1|1|1|43|107|NA|1|66.66|2|2|784|750|7||1||10|||||NA|NA|NA|NA|NA|21.21|NA|NA|61|321|5|1111|1111|1111|1111|134382|3|5|23|8|2|2|NA|1||||||2||||||1111|1111|1
diff --git a/docs/v1/2016_Data_load.md b/docs/v1/2016_Data_load.md
index b05fd76366..299c49f688 100644
--- a/docs/v1/2016_Data_load.md
+++ b/docs/v1/2016_Data_load.md
@@ -60,7 +60,7 @@ and Loan Application Register data, as per the [2017 Filing Instruction Guide](h
By default, the loader will use `localhost` as the host where the HMDA Platform cluster is running. For remote systems, use the `HMDA_CLUSTER_HOST` environment variable.
-When starting the cluster, take note of the port that Akka uses to communicate (i.e. 2551). This value needs to be set in an environment variable.
+When starting the cluster, take note of the port that pekko uses to communicate (i.e. 2551). This value needs to be set in an environment variable.
The persistence cluster role needs to be active, and its dependencies (`Zookeeper`, `Cassandra`) running and properly configured.
```shell
@@ -75,7 +75,7 @@ This will connect to the running cluster and send the contents of each file in t
## Troubleshooting
* In cases where there is no connection, make sure that the `HmdaSupervisor` and `HmdaQuerySupervisor` are receiving messages from the cluster client. Both of these actors
-need to have the Cluster Receptionist enabled. For more information please consult the current Akka documentation on [Cluster Client](https://doc.akka.io/docs/akka/current/scala/cluster-client.html)
+need to have the Cluster Receptionist enabled. For more information please consult the current pekko documentation on [Cluster Client](https://doc.pekko.io/docs/pekko/current/scala/cluster-client.html)
* When loading large number of files, it might be necessary to increase the `hmda.persistent-actor-timeout` in the `Persistence-model` project's configuration file (or by passing the relevant
runtime flag in a deployed application).
diff --git a/docs/v1/README.md b/docs/v1/README.md
index ed4481d07f..98b17a352b 100644
--- a/docs/v1/README.md
+++ b/docs/v1/README.md
@@ -8,8 +8,8 @@ For more information on HMDA, checkout the [About HMDA page](http://www.consumer
This repository contains the code for the entirety of the HMDA platform backend. This platform has been designed to accommodate the needs of the HMDA filing process by financial institutions, as well as the data management and publication needs of the HMDA data asset.
-The HMDA Platform uses sbt's multi-project builds, each project representing a specific task. The platform is an Akka Cluster
-application that can be deployed on a single node or as a distributed application. For more information on how Akka Cluster
+The HMDA Platform uses sbt's multi-project builds, each project representing a specific task. The platform is an pekko Cluster
+application that can be deployed on a single node or as a distributed application. For more information on how pekko Cluster
is used, see the documentation [here](Documents/cluster.md)
The HMDA Platform is composed of the following modules:
@@ -217,7 +217,7 @@ The Filing API will run on `$(docker-machine ip):8080`
The Public API will run on `$(docker-machine ip):8082`
By default, the `HDMA Platform` runs with a log level of `INFO`. This can be changed by establishing a different log level in the `HMDA_LOGLEVEL` environment variable.
-For the different logging options, see the [reference.conf](https://github.com/akka/akka/blob/master/akka-actor/src/main/resources/reference.conf#L38) default configuration file for `Akka`.
+For the different logging options, see the [reference.conf](https://github.com/pekko/pekko/blob/master/pekko-actor/src/main/resources/reference.conf#L38) default configuration file for `pekko`.
#### API Load Testing
diff --git a/email-service/src/main/resources/application.conf b/email-service/src/main/resources/application.conf
index 616ae6a437..c853038f7c 100644
--- a/email-service/src/main/resources/application.conf
+++ b/email-service/src/main/resources/application.conf
@@ -1,39 +1,55 @@
-akka {
+pekko {
loglevel = info
log-dead-letters = off
log-dead-letters-during-shutdown = off
}
+kafka{
+ hosts = "localhost:9092"
+ hosts = ${?KAFKA_CLUSTER_HOSTS}
+ idle-timeout = 5
+ idle-timeout = ${?KAFKA_IDLE_TIMEOUT}
+ security.protocol=""
+ security.protocol=${?KAFKA_SECURITY}
+ // ssl.truststore.location = ""
+ // ssl.truststore.location = ${?TRUSTSTORE_PATH}
+ // ssl.truststore.password = ""
+ // ssl.truststore.password = ${?TRUSTSTORE_PASSWORD}
+ // ssl.endpoint = ""
+ // ssl.endpoint = ${?KAFKA_SSL_ENDPOINT_IDENTIFICATION_ALGORITHM_CONFIG}
+ sasl.mechanism="AWS_MSK_IAM"
+ //sasl.mechanism=${?KAFKA_SASL_MECHANISM}
+ sasl.jaas.config="software.amazon.msk.auth.iam.IAMLoginModule required;"
+ //sasl.jaas.config="{?KAFKA_SASL_JAAS_CONFIG}"
+ sasl.client.callback.handler.class="software.amazon.msk.auth.iam.IAMClientCallbackHandler"
+ //sasl.client.callback.handler.class="{?KAFKA_SASL_CLASS}"
-kafka {
- hosts = "localhost:9092"
- hosts = ${?KAFKA_CLUSTER_HOSTS}
- idle-timeout = 5
- idle-timeout = ${?KAFKA_IDLE_TIMEOUT}
- security.protocol=""
- security.protocol=${?KAFKA_SECURITY}
- // ssl.truststore.location = ""
- // ssl.truststore.location = ${?TRUSTSTORE_PATH}
- // ssl.truststore.password = ""
- // ssl.truststore.password = ${?TRUSTSTORE_PASSWORD}
- // ssl.endpoint = ""
- // ssl.endpoint = ${?KAFKA_SSL_ENDPOINT_IDENTIFICATION_ALGORITHM_CONFIG}
- sasl.mechanism="AWS_MSK_IAM"
- //sasl.mechanism=${?KAFKA_SASL_MECHANISM}
- sasl.jaas.config="software.amazon.msk.auth.iam.IAMLoginModule required;"
- //sasl.jaas.config="{?KAFKA_SASL_JAAS_CONFIG}"
- sasl.client.callback.handler.class="software.amazon.msk.auth.iam.IAMClientCallbackHandler"
- //sasl.client.callback.handler.class="{?KAFKA_SASL_CLASS}"
+ group-id = "email-consumer"
+ group-id = ${?KAFKA_EMAIL_CONSUMER_GROUP_ID}
- group-id = "email-consumer"
- group-id = ${?KAFKA_EMAIL_CONSUMER_GROUP_ID}
+ committer {
+ # Maximum number of messages in a single commit batch
+ max-batch = 30
+
+ # Maximum interval between commits
+ max-interval = 1
- commit {
+ # Parallelsim for async committing
parallelism = 2
- max-batch = 30
- max-interval = 1.second
+
+ # API may change.
+ # Delivery of commits to the internal actor
+ # WaitForAck: Expect replies for commits, and backpressure the stream if replies do not arrive.
+ # SendAndForget: Send off commits to the internal actor without expecting replies (experimental feature since Alpakka Kafka 1.1)
delivery = WaitForAck
+
+ # API may change.
+ # Controls when a `Committable` message is queued to be committed.
+ # OffsetFirstObserved: When the offset of a message has been successfully produced.
+ # NextOffsetObserved: When the next offset is observed.
+ when = OffsetFirstObserved
}
+
}
aws {
diff --git a/email-service/src/main/scala/hmda/publication/lar/EmailGuardian.scala b/email-service/src/main/scala/hmda/publication/lar/EmailGuardian.scala
index c8f74239b8..6641a4ad87 100644
--- a/email-service/src/main/scala/hmda/publication/lar/EmailGuardian.scala
+++ b/email-service/src/main/scala/hmda/publication/lar/EmailGuardian.scala
@@ -1,12 +1,12 @@
package hmda.publication.lar
-import akka.actor.typed.Behavior
-import akka.actor.typed.scaladsl._
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.{ ActorSystem => UntypedActorSystem }
-import akka.kafka.CommitterSettings
-import akka.stream.{ ActorMaterializer, Materializer }
-import akka.stream.scaladsl.Keep
+import org.apache.pekko.actor.typed.Behavior
+import org.apache.pekko.actor.typed.scaladsl._
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.{ ActorSystem => UntypedActorSystem }
+import org.apache.pekko.kafka.CommitterSettings
+import org.apache.pekko.stream.{ ActorMaterializer, Materializer }
+import org.apache.pekko.stream.scaladsl.Keep
import com.amazonaws.regions.Regions
import com.amazonaws.services.simpleemail.{ AmazonSimpleEmailService, AmazonSimpleEmailServiceClientBuilder }
import hmda.publication.lar.config.Settings
diff --git a/email-service/src/main/scala/hmda/publication/lar/EmailReceiptApp.scala b/email-service/src/main/scala/hmda/publication/lar/EmailReceiptApp.scala
index 28dce6e387..12442fb806 100644
--- a/email-service/src/main/scala/hmda/publication/lar/EmailReceiptApp.scala
+++ b/email-service/src/main/scala/hmda/publication/lar/EmailReceiptApp.scala
@@ -1,6 +1,6 @@
package hmda.publication.lar
-import akka.actor.typed.ActorSystem
+import org.apache.pekko.actor.typed.ActorSystem
import hmda.publication.lar.EmailGuardian.GuardianProtocol
object EmailReceiptApp {
diff --git a/email-service/src/main/scala/hmda/publication/lar/config/Settings.scala b/email-service/src/main/scala/hmda/publication/lar/config/Settings.scala
index d29c9e25c1..cb7b6ffd96 100644
--- a/email-service/src/main/scala/hmda/publication/lar/config/Settings.scala
+++ b/email-service/src/main/scala/hmda/publication/lar/config/Settings.scala
@@ -1,6 +1,6 @@
package hmda.publication.lar.config
-import akka.actor.{ActorSystem => UntypedActorSystem}
+import org.apache.pekko.actor.{ActorSystem => UntypedActorSystem}
import com.typesafe.config.Config
import hmda.util.BankFilterUtils._
@@ -23,7 +23,7 @@ class Settings(config: Config) {
object kafka {
val bootstrapServers: String = config.getString("kafka.hosts")
- val commitSettings: Config = config.getConfig("kafka.commit")
+ val commitSettings: Config = config.getConfig("kafka.committer")
}
object client {
diff --git a/email-service/src/main/scala/hmda/publication/lar/streams/AdminStream.scala b/email-service/src/main/scala/hmda/publication/lar/streams/AdminStream.scala
index a7d0c5e839..a5555e6f6a 100644
--- a/email-service/src/main/scala/hmda/publication/lar/streams/AdminStream.scala
+++ b/email-service/src/main/scala/hmda/publication/lar/streams/AdminStream.scala
@@ -1,11 +1,11 @@
package hmda.publication.lar.streams
-import akka.actor.ActorSystem
-import akka.kafka.ConsumerMessage.{CommittableMessage, CommittableOffset}
-import akka.kafka.scaladsl._
-import akka.kafka.{CommitterSettings, ConsumerSettings, Subscriptions}
-import akka.stream.scaladsl._
-import akka.{Done, NotUsed}
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.kafka.ConsumerMessage.{CommittableMessage, CommittableOffset}
+import org.apache.pekko.kafka.scaladsl._
+import org.apache.pekko.kafka.{CommitterSettings, ConsumerSettings, Subscriptions}
+import org.apache.pekko.stream.scaladsl._
+import org.apache.pekko.{Done, NotUsed}
import cats.implicits._
import hmda.messages.pubsub.{HmdaGroups, HmdaTopics}
import hmda.publication.lar.email.{Email, EmailService}
diff --git a/email-service/src/main/scala/hmda/publication/lar/streams/SubmissionStream.scala b/email-service/src/main/scala/hmda/publication/lar/streams/SubmissionStream.scala
index 960e47d518..eb32fc7b79 100644
--- a/email-service/src/main/scala/hmda/publication/lar/streams/SubmissionStream.scala
+++ b/email-service/src/main/scala/hmda/publication/lar/streams/SubmissionStream.scala
@@ -2,12 +2,12 @@ package hmda.publication.lar.streams
import java.text.SimpleDateFormat
-import akka.actor.ActorSystem
-import akka.kafka.ConsumerMessage.{CommittableMessage, CommittableOffset}
-import akka.kafka.scaladsl._
-import akka.kafka.{CommitterSettings, ConsumerSettings, Subscriptions}
-import akka.stream.scaladsl._
-import akka.{Done, NotUsed}
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.kafka.ConsumerMessage.{CommittableMessage, CommittableOffset}
+import org.apache.pekko.kafka.scaladsl._
+import org.apache.pekko.kafka.{CommitterSettings, ConsumerSettings, Subscriptions}
+import org.apache.pekko.stream.scaladsl._
+import org.apache.pekko.{Done, NotUsed}
import cats.implicits._
import hmda.messages.pubsub.{HmdaGroups, HmdaTopics}
import hmda.model.filing.submission.{Submission, SubmissionId}
diff --git a/file-proxy/src/main/resources/application.conf b/file-proxy/src/main/resources/application.conf
index 99fb293c6a..bdf3d00925 100644
--- a/file-proxy/src/main/resources/application.conf
+++ b/file-proxy/src/main/resources/application.conf
@@ -1,16 +1,16 @@
-akka {
+pekko {
log-level = INFO
http.server.preview.enable-http2 = on
}
-akka.http.parsing {
+pekko.http.parsing {
max-to-strict-bytes = 20m
}
-akka.http.server.parsing {
+pekko.http.server.parsing {
max-content-length = 20m
}
-akka.http.server.request-timeout = 4888888 seconds
+pekko.http.server.request-timeout = 4888888 seconds
hmda {
publication {
diff --git a/file-proxy/src/main/scala/hmda/uli/FileProxy.scala b/file-proxy/src/main/scala/hmda/uli/FileProxy.scala
index 14d58c01bd..e0de575e8b 100644
--- a/file-proxy/src/main/scala/hmda/uli/FileProxy.scala
+++ b/file-proxy/src/main/scala/hmda/uli/FileProxy.scala
@@ -1,10 +1,10 @@
package hmda.proxy
-import akka.actor.typed.ActorSystem
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.{ActorSystem => ClassicActorSystem}
-import akka.stream.Materializer
-import akka.util.Timeout
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.{ActorSystem => ClassicActorSystem}
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.util.Timeout
import scala.concurrent.ExecutionContext
import hmda.proxy.api.http.HmdaProxyApi
import org.slf4j.LoggerFactory
diff --git a/file-proxy/src/main/scala/hmda/uli/api/http/HmdaProxyApi.scala b/file-proxy/src/main/scala/hmda/uli/api/http/HmdaProxyApi.scala
index a7a4aecc11..9f47353259 100644
--- a/file-proxy/src/main/scala/hmda/uli/api/http/HmdaProxyApi.scala
+++ b/file-proxy/src/main/scala/hmda/uli/api/http/HmdaProxyApi.scala
@@ -1,14 +1,14 @@
package hmda.proxy.api.http
-import akka.actor.typed.Behavior
-import akka.actor.typed.scaladsl.Behaviors
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.{ ActorSystem, CoordinatedShutdown }
-import akka.http.scaladsl.server.Directives._
+import org.apache.pekko.actor.typed.Behavior
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.{ ActorSystem, CoordinatedShutdown }
+import org.apache.pekko.http.scaladsl.server.Directives._
import hmda.api.http.routes.BaseHttpApi
import hmda.api.http.directives.HmdaTimeDirectives._
import hmda.auth.OAuth2Authorization
-import akka.util.Timeout
+import org.apache.pekko.util.Timeout
import scala.concurrent.ExecutionContext
import scala.concurrent.duration._
diff --git a/file-proxy/src/main/scala/hmda/uli/api/http/ProxyHttpApi.scala b/file-proxy/src/main/scala/hmda/uli/api/http/ProxyHttpApi.scala
index 53634de985..08b17ca745 100644
--- a/file-proxy/src/main/scala/hmda/uli/api/http/ProxyHttpApi.scala
+++ b/file-proxy/src/main/scala/hmda/uli/api/http/ProxyHttpApi.scala
@@ -1,35 +1,35 @@
package hmda.proxy.api.http
-import akka.NotUsed
-import akka.http.scaladsl.model.{ HttpEntity, StatusCodes }
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.directives.RouteDirectives.complete
-import akka.http.scaladsl.server.{ Directive, Directive0 }
-import akka.http.scaladsl.server.Route
-import akka.util.ByteString
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.NotUsed
+import org.apache.pekko.http.scaladsl.model.{ HttpEntity, StatusCodes }
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.directives.RouteDirectives.complete
+import org.apache.pekko.http.scaladsl.server.{ Directive, Directive0 }
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.util.ByteString
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import io.circe.generic.auto._
import org.slf4j.Logger
-import akka.stream.alpakka.s3.scaladsl.S3
-import akka.stream.scaladsl.{ Sink, Source }
+import org.apache.pekko.stream.connectors.s3.scaladsl.S3
+import org.apache.pekko.stream.scaladsl.{ Sink, Source }
import scala.concurrent.Future
-import akka.stream.alpakka.s3._
+import org.apache.pekko.stream.connectors.s3._
import com.typesafe.config.ConfigFactory
import software.amazon.awssdk.auth.credentials.{ AwsBasicCredentials, StaticCredentialsProvider }
import software.amazon.awssdk.regions.Region
import software.amazon.awssdk.regions.providers.AwsRegionProvider
import software.amazon.awssdk.regions.providers._
-import akka.stream.alpakka.s3.ApiVersion.ListBucketVersion2
-import akka.actor.ActorSystem
+import org.apache.pekko.stream.connectors.s3.ApiVersion.ListBucketVersion2
+import org.apache.pekko.actor.ActorSystem
import scala.concurrent._
-import akka.http.scaladsl.model.ContentTypes
+import org.apache.pekko.http.scaladsl.model.ContentTypes
import scala.util.{ Failure, Success, Try }
-import akka.http.scaladsl.model.StatusCodes.BadRequest
+import org.apache.pekko.http.scaladsl.model.StatusCodes.BadRequest
import hmda.auth.OAuth2Authorization
-import akka.util.Timeout
+import org.apache.pekko.util.Timeout
import hmda.util.RealTimeConfig
import scala.concurrent.duration._
diff --git a/hmda-analytics/src/main/resources/application.conf b/hmda-analytics/src/main/resources/application.conf
index 8f6e5ee3b3..f7bae169ed 100644
--- a/hmda-analytics/src/main/resources/application.conf
+++ b/hmda-analytics/src/main/resources/application.conf
@@ -5,7 +5,7 @@
# AWS Keyspace with SigV4AuthProvider
# include "persistence-keyspace-sigv4.conf"
-akka {
+pekko {
loglevel = info
log-dead-letters = off
log-dead-letters-during-shutdown = off
diff --git a/hmda-analytics/src/main/scala/hmda/analytics/HmdaAnalyticsApp.scala b/hmda-analytics/src/main/scala/hmda/analytics/HmdaAnalyticsApp.scala
index b4d8bd216e..2f0c54b395 100644
--- a/hmda-analytics/src/main/scala/hmda/analytics/HmdaAnalyticsApp.scala
+++ b/hmda-analytics/src/main/scala/hmda/analytics/HmdaAnalyticsApp.scala
@@ -1,14 +1,14 @@
package hmda.analytics
-import akka.Done
-import akka.actor.{ActorSystem, typed}
-import akka.actor.typed.scaladsl.adapter._
-import akka.kafka.scaladsl.Consumer.DrainingControl
-import akka.kafka.scaladsl.{Committer, Consumer}
-import akka.kafka.{CommitterSettings, ConsumerSettings, Subscriptions}
-import akka.stream.Materializer
-import akka.stream.scaladsl.{Keep, Sink, Source}
-import akka.util.{ByteString, Timeout}
+import org.apache.pekko.Done
+import org.apache.pekko.actor.{ActorSystem, typed}
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.kafka.scaladsl.Consumer.DrainingControl
+import org.apache.pekko.kafka.scaladsl.{Committer, Consumer}
+import org.apache.pekko.kafka.{CommitterSettings, ConsumerSettings, Subscriptions}
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.scaladsl.{Keep, Sink, Source}
+import org.apache.pekko.util.{ByteString, Timeout}
import com.typesafe.config.ConfigFactory
import hmda.analytics.query._
import hmda.messages.HmdaMessageFilter
@@ -52,9 +52,9 @@ object HmdaAnalyticsApp extends App with TransmittalSheetComponent with LarCompo
implicit val materializer: Materializer = Materializer(system)
implicit val ec: ExecutionContextExecutor = system.dispatcher
- implicit val timeout: Timeout = Timeout(5.seconds)
+ implicit val timeout: Timeout = Timeout(10.seconds)
- val kafkaConfig = system.settings.config.getConfig("akka.kafka.consumer")
+ val kafkaConfig = system.settings.config.getConfig("pekko.kafka.consumer")
val config = ConfigFactory.load()
val parallelism = config.getInt("hmda.analytics.parallelism")
val larDeletion = config.getBoolean("hmda.analytics.larDeletion")
@@ -114,7 +114,9 @@ object HmdaAnalyticsApp extends App with TransmittalSheetComponent with LarCompo
processData(msg.record.value()).map(_ => msg.committableOffset)
})
.toMat(Committer.sink(CommitterSettings(system).withParallelism(2)))(Keep.both)
- .mapMaterializedValue(DrainingControl.apply)
+ .mapMaterializedValue {
+ case (control, future) => DrainingControl.apply(control, future)
+ }
.run()
def processData(msg: String): Future[Done] =
@@ -305,7 +307,7 @@ object HmdaAnalyticsApp extends App with TransmittalSheetComponent with LarCompo
result.recover {
case t: Throwable =>
log.error("Error happened in inserting: ", t)
- akka.Done.done()
+ Done.done()
}
}
diff --git a/hmda-analytics/src/test/resources/application.conf b/hmda-analytics/src/test/resources/application.conf
index 3db78717c2..ee58989b33 100644
--- a/hmda-analytics/src/test/resources/application.conf
+++ b/hmda-analytics/src/test/resources/application.conf
@@ -1,4 +1,4 @@
-akka {
+pekko {
stdout-loglevel = OFF
loglevel = OFF
}
diff --git a/hmda-analytics/src/test/scala/hmda/analytics/query/TransmittalSheetSetup.scala b/hmda-analytics/src/test/scala/hmda/analytics/query/TransmittalSheetSetup.scala
index 5174847b17..603833dbb3 100644
--- a/hmda-analytics/src/test/scala/hmda/analytics/query/TransmittalSheetSetup.scala
+++ b/hmda-analytics/src/test/scala/hmda/analytics/query/TransmittalSheetSetup.scala
@@ -16,7 +16,7 @@ trait TransmittalSheetSetup extends TransmittalSheetComponent {
new TransmittalSheetRepository(dbConfig, "transmittalsheet2019")
val db = transmittalSheetRepository.db
- val duration = 5.seconds
+ val duration = 30.seconds
val ts0 = TransmittalSheetConverter(tsGen.sample
.getOrElse(TransmittalSheet())
diff --git a/hmda-auth/src/main/resources/application.conf b/hmda-auth/src/main/resources/application.conf
index 6d4b50d42f..cf2b99c324 100644
--- a/hmda-auth/src/main/resources/application.conf
+++ b/hmda-auth/src/main/resources/application.conf
@@ -1,16 +1,16 @@
-akka {
+pekko {
log-level = INFO
http.server.preview.enable-http2 = on
}
-akka.http.parsing {
+pekko.http.parsing {
max-to-strict-bytes = 20m
}
-akka.http.server.parsing {
+pekko.http.server.parsing {
max-content-length = 20m
}
-akka.http.server.request-timeout = 4888888 seconds
+pekko.http.server.request-timeout = 4888888 seconds
hmda {
auth {
diff --git a/hmda-auth/src/main/scala/HmdaAuth.scala b/hmda-auth/src/main/scala/HmdaAuth.scala
index 7218170f3c..3c5c331cad 100644
--- a/hmda-auth/src/main/scala/HmdaAuth.scala
+++ b/hmda-auth/src/main/scala/HmdaAuth.scala
@@ -1,9 +1,9 @@
package hmda.authService
-import akka.actor.typed.ActorSystem
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.{ActorSystem => ClassicActorSystem}
-import akka.stream.Materializer
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.{ActorSystem => ClassicActorSystem}
+import org.apache.pekko.stream.Materializer
import scala.concurrent.ExecutionContext
import hmda.authService.api.HmdaAuthApi
import org.slf4j.LoggerFactory
diff --git a/hmda-auth/src/main/scala/api/AuthHttpApi.scala b/hmda-auth/src/main/scala/api/AuthHttpApi.scala
index dcf7c38425..64578d517d 100644
--- a/hmda-auth/src/main/scala/api/AuthHttpApi.scala
+++ b/hmda-auth/src/main/scala/api/AuthHttpApi.scala
@@ -1,12 +1,12 @@
package hmda.authService.api
-import akka.http.scaladsl.marshalling.ToResponseMarshallable
-import akka.http.scaladsl.model.StatusCodes
-import akka.http.scaladsl.model.StatusCodes.BadRequest
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.directives.RouteDirectives.complete
-import akka.http.scaladsl.server.Route
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.http.scaladsl.marshalling.ToResponseMarshallable
+import org.apache.pekko.http.scaladsl.model.StatusCodes
+import org.apache.pekko.http.scaladsl.model.StatusCodes.BadRequest
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.directives.RouteDirectives.complete
+import org.apache.pekko.http.scaladsl.server.Route
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import io.circe.generic.auto._
import org.slf4j.Logger
diff --git a/hmda-auth/src/main/scala/api/HmdaAuthApi.scala b/hmda-auth/src/main/scala/api/HmdaAuthApi.scala
index d50b0df5b7..3b96ec9d13 100644
--- a/hmda-auth/src/main/scala/api/HmdaAuthApi.scala
+++ b/hmda-auth/src/main/scala/api/HmdaAuthApi.scala
@@ -1,14 +1,14 @@
package hmda.authService.api
-import akka.actor.typed.Behavior
-import akka.actor.typed.scaladsl.Behaviors
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.{ ActorSystem, CoordinatedShutdown }
-import akka.http.scaladsl.server.Directives._
+import org.apache.pekko.actor.typed.Behavior
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.{ ActorSystem, CoordinatedShutdown }
+import org.apache.pekko.http.scaladsl.server.Directives._
import hmda.api.http.routes.BaseHttpApi
import hmda.api.http.directives.HmdaTimeDirectives._
import hmda.auth.OAuth2Authorization
-import akka.util.Timeout
+import org.apache.pekko.util.Timeout
import scala.concurrent.ExecutionContext
import scala.concurrent.duration._
diff --git a/hmda-dashboard/src/main/resources/application.conf b/hmda-dashboard/src/main/resources/application.conf
index 7372aedcf4..330a807258 100644
--- a/hmda-dashboard/src/main/resources/application.conf
+++ b/hmda-dashboard/src/main/resources/application.conf
@@ -1,14 +1,14 @@
include "cors.conf"
-akka {
+pekko {
loglevel = info
log-dead-letters = off
log-dead-letters-during-shutdown = off
}
-akka.http.server.request-timeout = infinite
-akka.http.server.idle-timeout = 500 seconds
-akka.http.host-connection-pool.idle-timeout = 500 seconds
+pekko.http.server.request-timeout = infinite
+pekko.http.server.idle-timeout = 500 seconds
+pekko.http.host-connection-pool.idle-timeout = 500 seconds
filter {
bank-filter-list="BANK1LEIFORTEST12345,BANK3LEIFORTEST12345,BANK4LEIFORTEST12345,999999LE3ZOZXUS7W648,28133080042813308004,B90YWS6AFX2LGWOXJ1LD"
diff --git a/hmda-dashboard/src/main/resources/cors.conf b/hmda-dashboard/src/main/resources/cors.conf
index df754817d2..c2f487352a 100644
--- a/hmda-dashboard/src/main/resources/cors.conf
+++ b/hmda-dashboard/src/main/resources/cors.conf
@@ -1,3 +1,3 @@
-akka-http-cors {
+pekko-http-cors {
allowed-methods = ["GET"]
}
diff --git a/hmda-dashboard/src/main/scala/hmda/dashboard/HmdaDashboard.scala b/hmda-dashboard/src/main/scala/hmda/dashboard/HmdaDashboard.scala
index 6070056c81..9f8f0a37e8 100644
--- a/hmda-dashboard/src/main/scala/hmda/dashboard/HmdaDashboard.scala
+++ b/hmda-dashboard/src/main/scala/hmda/dashboard/HmdaDashboard.scala
@@ -1,6 +1,6 @@
package hmda.dashboard
-import akka.actor.typed.ActorSystem
+import org.apache.pekko.actor.typed.ActorSystem
import hmda.dashboard.api.HmdaDashboardApi
import org.slf4j.LoggerFactory
diff --git a/hmda-dashboard/src/main/scala/hmda/dashboard/api/DashboardDirectives.scala b/hmda-dashboard/src/main/scala/hmda/dashboard/api/DashboardDirectives.scala
index 73ba7bbe5a..d4151fdbdf 100644
--- a/hmda-dashboard/src/main/scala/hmda/dashboard/api/DashboardDirectives.scala
+++ b/hmda-dashboard/src/main/scala/hmda/dashboard/api/DashboardDirectives.scala
@@ -1,9 +1,9 @@
package hmda.dashboard.api
-import akka.http.scaladsl.model.StatusCodes.BadRequest
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server._
-import akka.http.scaladsl.server.directives.RouteDirectives.complete
+import org.apache.pekko.http.scaladsl.model.StatusCodes.BadRequest
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server._
+import org.apache.pekko.http.scaladsl.server.directives.RouteDirectives.complete
import hmda.dashboard.Settings
import hmda.dashboard.models._
@@ -13,7 +13,7 @@ trait DashboardDirectives extends Settings {
private def extractDatetime: Directive1[String] =
parameters("late_date" ).flatMap {
case "" =>
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete((BadRequest, "must provide late_date"))
case x => provide(x)
@@ -24,7 +24,7 @@ trait DashboardDirectives extends Settings {
if (datetime.nonEmpty)
innerRoute(datetime)
else {
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
complete((BadRequest, ProvideDatetime()))
}
}
diff --git a/hmda-dashboard/src/main/scala/hmda/dashboard/api/HmdaDashboardApi.scala b/hmda-dashboard/src/main/scala/hmda/dashboard/api/HmdaDashboardApi.scala
index 98973c0dc5..a775af043c 100644
--- a/hmda-dashboard/src/main/scala/hmda/dashboard/api/HmdaDashboardApi.scala
+++ b/hmda-dashboard/src/main/scala/hmda/dashboard/api/HmdaDashboardApi.scala
@@ -1,11 +1,11 @@
package hmda.dashboard.api
-import akka.actor.typed.scaladsl.Behaviors
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.typed.{ActorSystem, Behavior}
-import akka.actor.{CoordinatedShutdown, ActorSystem => ClassicActorSystem}
-import akka.stream.Materializer
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.typed.{ActorSystem, Behavior}
+import org.apache.pekko.actor.{CoordinatedShutdown, ActorSystem => ClassicActorSystem}
+import org.apache.pekko.stream.Materializer
import hmda.api.http.directives.HmdaTimeDirectives._
import hmda.api.http.routes.BaseHttpApi
import hmda.auth.OAuth2Authorization
diff --git a/hmda-dashboard/src/main/scala/hmda/dashboard/api/HmdaDashboardHttpApi.scala b/hmda-dashboard/src/main/scala/hmda/dashboard/api/HmdaDashboardHttpApi.scala
index 495e54037f..975756fee2 100644
--- a/hmda-dashboard/src/main/scala/hmda/dashboard/api/HmdaDashboardHttpApi.scala
+++ b/hmda-dashboard/src/main/scala/hmda/dashboard/api/HmdaDashboardHttpApi.scala
@@ -1,12 +1,12 @@
package hmda.dashboard.api
-import akka.http.scaladsl.model.StatusCodes
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import akka.http.scaladsl.server.directives.RouteDirectives.complete
-import ch.megard.akka.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
+import org.apache.pekko.http.scaladsl.model.StatusCodes
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.server.directives.RouteDirectives.complete
+import org.apache.pekko.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
import com.typesafe.config.{Config, ConfigFactory}
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.auth.OAuth2Authorization
import hmda.dashboard.api.DashboardDirectives._
import hmda.dashboard.models.HealthCheckStatus.Up
diff --git a/hmda-data-publisher/src/main/resources/application.conf b/hmda-data-publisher/src/main/resources/application.conf
index fcf9abc83a..9190ba10a8 100644
--- a/hmda-data-publisher/src/main/resources/application.conf
+++ b/hmda-data-publisher/src/main/resources/application.conf
@@ -1,4 +1,4 @@
-akka {
+pekko {
log-level = INFO
http.server.preview.enable-http2 = on
http.server.request-timeout=20800s
diff --git a/hmda-data-publisher/src/main/scala/hmda/publisher/HmdaDataPublisherApp.scala b/hmda-data-publisher/src/main/scala/hmda/publisher/HmdaDataPublisherApp.scala
index 1b81324e13..61a85d2ea1 100644
--- a/hmda-data-publisher/src/main/scala/hmda/publisher/HmdaDataPublisherApp.scala
+++ b/hmda-data-publisher/src/main/scala/hmda/publisher/HmdaDataPublisherApp.scala
@@ -1,7 +1,7 @@
package hmda.publisher
-import akka.actor.typed.scaladsl.adapter.ClassicActorSystemOps
-import akka.actor.{ ActorSystem, Props }
+import org.apache.pekko.actor.typed.scaladsl.adapter.ClassicActorSystemOps
+import org.apache.pekko.actor.{ ActorSystem, Props }
import hmda.publisher.api.HmdaDataPublisherApi
import hmda.publisher.helper.PGTableNameLoader
import hmda.publisher.scheduler._
@@ -40,7 +40,7 @@ object HmdaDataPublisherApp extends App with PGTableNameLoader {
/**
* Only 1 scheduler should be created
* QuartzSchedulerExtension in the current version is not thread safe, look into updating dep
- * https://github.com/enragedginger/akka-quartz-scheduler/issues/33
+ * https://github.com/enragedginger/pekko-quartz-scheduler/issues/33
* */
private val scheduleCoordinator = actorSystem.spawn(ScheduleCoordinator.behaviors, "ScheduleCoordinator")
diff --git a/hmda-data-publisher/src/main/scala/hmda/publisher/api/DataPublisherHttpApi.scala b/hmda-data-publisher/src/main/scala/hmda/publisher/api/DataPublisherHttpApi.scala
index 2220555ae6..ac6dbc99d9 100644
--- a/hmda-data-publisher/src/main/scala/hmda/publisher/api/DataPublisherHttpApi.scala
+++ b/hmda-data-publisher/src/main/scala/hmda/publisher/api/DataPublisherHttpApi.scala
@@ -1,10 +1,10 @@
package hmda.publisher.api
-import akka.http.scaladsl.model.headers.RawHeader
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import ch.megard.akka.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.http.scaladsl.model.headers.RawHeader
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.publisher.scheduler.AllSchedulers
import hmda.publisher.scheduler.schedules.{ Schedule, ScheduleWithYear, Schedules }
diff --git a/hmda-data-publisher/src/main/scala/hmda/publisher/api/HmdaDataPublisherApi.scala b/hmda-data-publisher/src/main/scala/hmda/publisher/api/HmdaDataPublisherApi.scala
index abbd6bbecf..8dfd9dcd5c 100644
--- a/hmda-data-publisher/src/main/scala/hmda/publisher/api/HmdaDataPublisherApi.scala
+++ b/hmda-data-publisher/src/main/scala/hmda/publisher/api/HmdaDataPublisherApi.scala
@@ -1,10 +1,10 @@
package hmda.publisher.api
-import akka.actor.typed.Behavior
-import akka.actor.typed.scaladsl.Behaviors
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.{ActorSystem, CoordinatedShutdown}
-import akka.http.scaladsl.server.Directives._
+import org.apache.pekko.actor.typed.Behavior
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.{ActorSystem, CoordinatedShutdown}
+import org.apache.pekko.http.scaladsl.server.Directives._
import hmda.api.http.directives.HmdaTimeDirectives._
import hmda.api.http.routes.BaseHttpApi
import hmda.publisher.scheduler.AllSchedulers
diff --git a/hmda-data-publisher/src/main/scala/hmda/publisher/helper/CronConfigLoader.scala b/hmda-data-publisher/src/main/scala/hmda/publisher/helper/CronConfigLoader.scala
index 6eefdb95de..5626c44d57 100644
--- a/hmda-data-publisher/src/main/scala/hmda/publisher/helper/CronConfigLoader.scala
+++ b/hmda-data-publisher/src/main/scala/hmda/publisher/helper/CronConfigLoader.scala
@@ -9,7 +9,7 @@ import scala.concurrent.duration._
object CronConfigLoader {
private val log = LoggerFactory.getLogger(getClass)
- private val dynamicQuartzScheduleConfig: Config = ConfigFactory.load().getConfig("akka.quartz.dynamic")
+ private val dynamicQuartzScheduleConfig: Config = ConfigFactory.load().getConfig("pekko.quartz.dynamic")
val larPublicCron: String = dynamicQuartzScheduleConfig.getString("LarPublicSchedule.expression")
val larPublicYears: Seq[Int] = dynamicQuartzScheduleConfig.getString("LarPublicSchedule.years").split(",").map(s => s.toInt)
val larCron: String = dynamicQuartzScheduleConfig.getString("LarSchedule.expression")
diff --git a/hmda-data-publisher/src/main/scala/hmda/publisher/helper/S3Archiver.scala b/hmda-data-publisher/src/main/scala/hmda/publisher/helper/S3Archiver.scala
index 31f249364b..bf1a2bd304 100644
--- a/hmda-data-publisher/src/main/scala/hmda/publisher/helper/S3Archiver.scala
+++ b/hmda-data-publisher/src/main/scala/hmda/publisher/helper/S3Archiver.scala
@@ -2,10 +2,10 @@ package hmda.publisher.helper
// $COVERAGE-OFF$
import java.time.Instant
-import akka.stream.Materializer
-import akka.stream.alpakka.s3.{ S3Attributes, S3Settings }
-import akka.stream.alpakka.s3.scaladsl.S3
-import akka.stream.scaladsl.Sink
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.connectors.s3.{ S3Attributes, S3Settings }
+import org.apache.pekko.stream.connectors.s3.scaladsl.S3
+import org.apache.pekko.stream.scaladsl.Sink
import com.typesafe.scalalogging.LazyLogging
import scala.concurrent.{ ExecutionContext, Future }
diff --git a/hmda-data-publisher/src/main/scala/hmda/publisher/helper/S3Utils.scala b/hmda-data-publisher/src/main/scala/hmda/publisher/helper/S3Utils.scala
index 7d515365d2..dd729415e8 100644
--- a/hmda-data-publisher/src/main/scala/hmda/publisher/helper/S3Utils.scala
+++ b/hmda-data-publisher/src/main/scala/hmda/publisher/helper/S3Utils.scala
@@ -1,10 +1,10 @@
package hmda.publisher.helper
-import akka.NotUsed
-import akka.stream.Materializer
-import akka.stream.alpakka.s3.MultipartUploadResult
-import akka.stream.scaladsl.{ Sink, Source }
-import akka.util.ByteString
+import org.apache.pekko.NotUsed
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.connectors.s3.MultipartUploadResult
+import org.apache.pekko.stream.scaladsl.{ Sink, Source }
+import org.apache.pekko.util.ByteString
import scala.concurrent.duration.DurationInt
import scala.concurrent.{ ExecutionContext, Future }
diff --git a/hmda-data-publisher/src/main/scala/hmda/publisher/qa/QAFilePersistor.scala b/hmda-data-publisher/src/main/scala/hmda/publisher/qa/QAFilePersistor.scala
index e880be9f7c..115d5a3afc 100644
--- a/hmda-data-publisher/src/main/scala/hmda/publisher/qa/QAFilePersistor.scala
+++ b/hmda-data-publisher/src/main/scala/hmda/publisher/qa/QAFilePersistor.scala
@@ -1,11 +1,11 @@
package hmda.publisher.qa
-import akka.NotUsed
-import akka.stream.Materializer
-import akka.stream.alpakka.s3.S3Attributes
-import akka.stream.alpakka.s3.scaladsl.S3
-import akka.stream.scaladsl.{ Framing, Source }
-import akka.util.ByteString
+import org.apache.pekko.NotUsed
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.connectors.s3.S3Attributes
+import org.apache.pekko.stream.connectors.s3.scaladsl.S3
+import org.apache.pekko.stream.scaladsl.{ Framing, Source }
+import org.apache.pekko.util.ByteString
import cats.instances.future._
import cats.syntax.all._
import com.typesafe.scalalogging.StrictLogging
diff --git a/hmda-data-publisher/src/main/scala/hmda/publisher/qa/QAFileSpec.scala b/hmda-data-publisher/src/main/scala/hmda/publisher/qa/QAFileSpec.scala
index 4d673e98aa..ddbb3daf6b 100644
--- a/hmda-data-publisher/src/main/scala/hmda/publisher/qa/QAFileSpec.scala
+++ b/hmda-data-publisher/src/main/scala/hmda/publisher/qa/QAFileSpec.scala
@@ -1,6 +1,6 @@
package hmda.publisher.qa
-import akka.stream.alpakka.s3.S3Settings
+import org.apache.pekko.stream.connectors.s3.S3Settings
case class QAFileSpec[T](
bucket: String,
diff --git a/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/AllSchedulers.scala b/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/AllSchedulers.scala
index 49d366c81d..62791e3311 100644
--- a/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/AllSchedulers.scala
+++ b/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/AllSchedulers.scala
@@ -1,6 +1,6 @@
package hmda.publisher.scheduler
-import akka.actor.ActorRef
+import org.apache.pekko.actor.ActorRef
// $COVERAGE-OFF$
case class AllSchedulers(
combinedMLarPublicScheduler: ActorRef,
diff --git a/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/CombinedMLarPublicScheduler.scala b/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/CombinedMLarPublicScheduler.scala
index d469b9734e..f6ee194399 100644
--- a/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/CombinedMLarPublicScheduler.scala
+++ b/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/CombinedMLarPublicScheduler.scala
@@ -1,14 +1,14 @@
package hmda.publisher.scheduler
-import akka.actor.typed.ActorRef
-import akka.stream.Materializer
-import akka.stream.alpakka.file.ArchiveMetadata
-import akka.stream.alpakka.file.scaladsl.Archive
-import akka.stream.alpakka.s3.ApiVersion.ListBucketVersion2
-import akka.stream.alpakka.s3._
-import akka.stream.alpakka.s3.scaladsl.S3
-import akka.stream.scaladsl.Source
-import akka.util.ByteString
+import org.apache.pekko.actor.typed.ActorRef
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.connectors.file.ArchiveMetadata
+import org.apache.pekko.stream.connectors.file.scaladsl.Archive
+import org.apache.pekko.stream.connectors.s3.ApiVersion.ListBucketVersion2
+import org.apache.pekko.stream.connectors.s3._
+import org.apache.pekko.stream.connectors.s3.scaladsl.S3
+import org.apache.pekko.stream.scaladsl.Source
+import org.apache.pekko.util.ByteString
import hmda.actor.HmdaActor
import hmda.publisher.helper.CronConfigLoader.{CronString, combinedMlarCron, combinedMlarYears}
import hmda.publisher.helper._
diff --git a/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/LarPublicScheduler.scala b/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/LarPublicScheduler.scala
index 2c2cb091f9..92f09caf09 100644
--- a/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/LarPublicScheduler.scala
+++ b/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/LarPublicScheduler.scala
@@ -1,15 +1,15 @@
package hmda.publisher.scheduler
import java.time.Instant
-import akka.actor.typed.ActorRef
-import akka.stream.Materializer
-import akka.stream.alpakka.file.ArchiveMetadata
-import akka.stream.alpakka.file.scaladsl.Archive
-import akka.stream.alpakka.s3.ApiVersion.ListBucketVersion2
-import akka.stream.alpakka.s3._
-import akka.stream.alpakka.s3.scaladsl.S3
-import akka.stream.scaladsl.Source
-import akka.util.ByteString
+import org.apache.pekko.actor.typed.ActorRef
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.connectors.file.ArchiveMetadata
+import org.apache.pekko.stream.connectors.file.scaladsl.Archive
+import org.apache.pekko.stream.connectors.s3.ApiVersion.ListBucketVersion2
+import org.apache.pekko.stream.connectors.s3._
+import org.apache.pekko.stream.connectors.s3.scaladsl.S3
+import org.apache.pekko.stream.scaladsl.Source
+import org.apache.pekko.util.ByteString
import hmda.actor.HmdaActor
import hmda.publisher.helper.CronConfigLoader.{ CronString, larPublicCron, larPublicYears }
import hmda.publisher.helper._
diff --git a/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/LarScheduler.scala b/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/LarScheduler.scala
index 8e3762138f..8ee05129f0 100644
--- a/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/LarScheduler.scala
+++ b/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/LarScheduler.scala
@@ -1,13 +1,13 @@
package hmda.publisher.scheduler
-import akka.NotUsed
-import akka.actor.typed.ActorRef
-import akka.stream.Materializer
-import akka.stream.alpakka.s3.ApiVersion.ListBucketVersion2
-import akka.stream.alpakka.s3.scaladsl.S3
-import akka.stream.alpakka.s3.{MemoryBufferType, MetaHeaders, S3Attributes, S3Settings}
-import akka.stream.scaladsl.Source
-import akka.util.ByteString
+import org.apache.pekko.NotUsed
+import org.apache.pekko.actor.typed.ActorRef
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.connectors.s3.ApiVersion.ListBucketVersion2
+import org.apache.pekko.stream.connectors.s3.scaladsl.S3
+import org.apache.pekko.stream.connectors.s3.{MemoryBufferType, MetaHeaders, S3Attributes, S3Settings}
+import org.apache.pekko.stream.scaladsl.Source
+import org.apache.pekko.util.ByteString
import hmda.actor.HmdaActor
import hmda.census.records.CensusRecords
import hmda.model.census.Census
diff --git a/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/PanelScheduler.scala b/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/PanelScheduler.scala
index 5f5cb193b9..9487bfa72b 100644
--- a/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/PanelScheduler.scala
+++ b/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/PanelScheduler.scala
@@ -3,13 +3,13 @@ package hmda.publisher.scheduler
import java.time.LocalDateTime
import java.time.Instant
import java.time.format.DateTimeFormatter
-import akka.actor.typed.ActorRef
-import akka.stream.Materializer
-import akka.stream.alpakka.s3.ApiVersion.ListBucketVersion2
-import akka.stream.alpakka.s3.scaladsl.S3
-import akka.stream.alpakka.s3.{MemoryBufferType, MultipartUploadResult, S3Attributes, S3Settings}
-import akka.stream.scaladsl.Source
-import akka.util.ByteString
+import org.apache.pekko.actor.typed.ActorRef
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.connectors.s3.ApiVersion.ListBucketVersion2
+import org.apache.pekko.stream.connectors.s3.scaladsl.S3
+import org.apache.pekko.stream.connectors.s3.{MemoryBufferType, MultipartUploadResult, S3Attributes, S3Settings}
+import org.apache.pekko.stream.scaladsl.Source
+import org.apache.pekko.util.ByteString
import com.typesafe.config.ConfigFactory
import hmda.actor.HmdaActor
import hmda.publisher.helper.CronConfigLoader.{CronString, panelCron, panelYears, specificPanelCron, specificPanelYears}
diff --git a/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/TsPublicScheduler.scala b/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/TsPublicScheduler.scala
index 8ec2042995..04fd8d9c23 100644
--- a/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/TsPublicScheduler.scala
+++ b/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/TsPublicScheduler.scala
@@ -1,12 +1,12 @@
package hmda.publisher.scheduler
-import akka.actor.typed.ActorRef
-import akka.stream.Materializer
-import akka.stream.alpakka.s3.ApiVersion.ListBucketVersion2
-import akka.stream.alpakka.s3._
-import akka.stream.alpakka.s3.scaladsl.S3
-import akka.stream.scaladsl.Source
-import akka.util.ByteString
+import org.apache.pekko.actor.typed.ActorRef
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.connectors.s3.ApiVersion.ListBucketVersion2
+import org.apache.pekko.stream.connectors.s3._
+import org.apache.pekko.stream.connectors.s3.scaladsl.S3
+import org.apache.pekko.stream.scaladsl.Source
+import org.apache.pekko.util.ByteString
import hmda.actor.HmdaActor
import hmda.publisher.helper.{ PrivateAWSConfigLoader, PublicAWSConfigLoader, S3Archiver, S3Utils, SnapshotCheck, TSHeader }
import hmda.publisher.query.component.{ PublisherComponent, PublisherComponent2018, PublisherComponent2019, PublisherComponent2020, PublisherComponent2021, PublisherComponent2022, PublisherComponent2023, TransmittalSheetTable, TsRepository, YearPeriod }
@@ -14,8 +14,8 @@ import hmda.publisher.scheduler.schedules.Schedules.{ TsPublicSchedule }
import hmda.query.DbConfiguration.dbConfig
import hmda.query.ts._
import hmda.util.BankFilterUtils._
-import akka.stream.alpakka.file.scaladsl.Archive
-import akka.stream.alpakka.file.ArchiveMetadata
+import org.apache.pekko.stream.connectors.file.scaladsl.Archive
+import org.apache.pekko.stream.connectors.file.ArchiveMetadata
import hmda.publisher.helper.CronConfigLoader.{ CronString, tsPublicCron, tsPublicYears }
import hmda.publisher.scheduler.schedules.{ Schedule, ScheduleWithYear }
import hmda.publisher.util.{ PublishingReporter, ScheduleCoordinator }
diff --git a/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/TsScheduler.scala b/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/TsScheduler.scala
index fa04207344..759c1d4376 100644
--- a/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/TsScheduler.scala
+++ b/hmda-data-publisher/src/main/scala/hmda/publisher/scheduler/TsScheduler.scala
@@ -2,13 +2,13 @@ package hmda.publisher.scheduler
import java.time.{Clock, Instant, LocalDateTime}
import java.time.format.DateTimeFormatter
-import akka.actor.typed.ActorRef
-import akka.stream.Materializer
-import akka.stream.alpakka.s3.ApiVersion.ListBucketVersion2
-import akka.stream.alpakka.s3._
-import akka.stream.alpakka.s3.scaladsl.S3
-import akka.stream.scaladsl.{Sink, Source}
-import akka.util.ByteString
+import org.apache.pekko.actor.typed.ActorRef
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.connectors.s3.ApiVersion.ListBucketVersion2
+import org.apache.pekko.stream.connectors.s3._
+import org.apache.pekko.stream.connectors.s3.scaladsl.S3
+import org.apache.pekko.stream.scaladsl.{Sink, Source}
+import org.apache.pekko.util.ByteString
import com.typesafe.config.ConfigFactory
import hmda.actor.HmdaActor
import hmda.publisher.helper.CronConfigLoader.{CronString, specificTsAltCron, specificTsAltYears, specificTsCron, specificTsYears, tsAltCron, tsAltYears, tsCron, tsQuarterlyCron, tsQuarterlyYears, tsYears}
diff --git a/hmda-data-publisher/src/main/scala/hmda/publisher/util/MattermostNotifier.scala b/hmda-data-publisher/src/main/scala/hmda/publisher/util/MattermostNotifier.scala
index 7c4d8b9016..1079a1c5ea 100644
--- a/hmda-data-publisher/src/main/scala/hmda/publisher/util/MattermostNotifier.scala
+++ b/hmda-data-publisher/src/main/scala/hmda/publisher/util/MattermostNotifier.scala
@@ -1,8 +1,8 @@
package hmda.publisher.util
-import akka.actor.ActorSystem
-import akka.http.scaladsl.Http
-import akka.http.scaladsl.model.{HttpEntity, HttpMethods, HttpRequest}
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.http.scaladsl.Http
+import org.apache.pekko.http.scaladsl.model.{HttpEntity, HttpMethods, HttpRequest}
import com.typesafe.scalalogging.LazyLogging
import io.circe.Json
import io.circe.syntax._
diff --git a/hmda-data-publisher/src/main/scala/hmda/publisher/util/PublishingReporter.scala b/hmda-data-publisher/src/main/scala/hmda/publisher/util/PublishingReporter.scala
index 772e97a4f1..1abe337bba 100644
--- a/hmda-data-publisher/src/main/scala/hmda/publisher/util/PublishingReporter.scala
+++ b/hmda-data-publisher/src/main/scala/hmda/publisher/util/PublishingReporter.scala
@@ -2,8 +2,8 @@ package hmda.publisher.util
import java.time.Instant
-import akka.actor.typed.Behavior
-import akka.actor.typed.scaladsl.{ AbstractBehavior, ActorContext, Behaviors }
+import org.apache.pekko.actor.typed.Behavior
+import org.apache.pekko.actor.typed.scaladsl.{ AbstractBehavior, ActorContext, Behaviors }
import hmda.publisher.scheduler.schedules.{ Schedule, Schedules }
import hmda.publisher.util.PublishingReporter.Command
import hmda.publisher.util.PublishingReporter.Command.FilePublishingCompleted
diff --git a/hmda-data-publisher/src/main/scala/hmda/publisher/util/ScheduleCoordinator.scala b/hmda-data-publisher/src/main/scala/hmda/publisher/util/ScheduleCoordinator.scala
index 539a1a02d5..a202518da8 100644
--- a/hmda-data-publisher/src/main/scala/hmda/publisher/util/ScheduleCoordinator.scala
+++ b/hmda-data-publisher/src/main/scala/hmda/publisher/util/ScheduleCoordinator.scala
@@ -1,9 +1,9 @@
package hmda.publisher.util
-import akka.actor.ActorRef
-import akka.actor.typed.Behavior
-import akka.actor.typed.scaladsl.{ ActorContext, Behaviors }
-import com.typesafe.akka.extension.quartz.QuartzSchedulerExtension
+import org.apache.pekko.actor.ActorRef
+import org.apache.pekko.actor.typed.Behavior
+import org.apache.pekko.actor.typed.scaladsl.{ ActorContext, Behaviors }
+import org.apache.pekko.extension.quartz.QuartzSchedulerExtension
import hmda.publisher.scheduler.schedules.ScheduleWithYear
import org.slf4j.LoggerFactory
diff --git a/hmda-data-publisher/src/main/scala/hmda/publisher/validation/PublishingGuard.scala b/hmda-data-publisher/src/main/scala/hmda/publisher/validation/PublishingGuard.scala
index a2f6f17e2b..27825eeca5 100644
--- a/hmda-data-publisher/src/main/scala/hmda/publisher/validation/PublishingGuard.scala
+++ b/hmda-data-publisher/src/main/scala/hmda/publisher/validation/PublishingGuard.scala
@@ -1,6 +1,6 @@
package hmda.publisher.validation
-import akka.actor.ActorSystem
+import org.apache.pekko.actor.ActorSystem
import cats.data.{ Validated, ValidatedNel }
import com.typesafe.config.ConfigFactory
import com.typesafe.scalalogging.LazyLogging
diff --git a/hmda-data-publisher/src/test/resources/application.conf b/hmda-data-publisher/src/test/resources/application.conf
index b40bfabf09..12d35ed2fa 100644
--- a/hmda-data-publisher/src/test/resources/application.conf
+++ b/hmda-data-publisher/src/test/resources/application.conf
@@ -1,27 +1,27 @@
-akka {
+pekko {
log-level = INFO
http.server.preview.enable-http2 = on
http.server.request-timeout=20800s
- PanelScheduler2018 = "akka.quartz.schedules.PanelScheduler2018.expression = 0 30 00 * * ?"
- LarScheduler2018 = "akka.quartz.schedules.LARScheduler2018.expression = 0 30 00 * * ?"
- TsScheduler2018 = "akka.quartz.schedules.TsScheduler2018.expression = 0 30 00 * * ?"
+ PanelScheduler2018 = "pekko.quartz.schedules.PanelScheduler2018.expression = 0 30 00 * * ?"
+ LarScheduler2018 = "pekko.quartz.schedules.LARScheduler2018.expression = 0 30 00 * * ?"
+ TsScheduler2018 = "pekko.quartz.schedules.TsScheduler2018.expression = 0 30 00 * * ?"
//2019 Publisher Schedules
- PanelScheduler2019 = "akka.quartz.schedules.PanelScheduler2019.expression,0 30 00 * * ?"
- LarScheduler2019 = "akka.quartz.schedules.LARScheduler2019.expression,0 30 00 * * ?"
- LarSchedulerLoanLimit2019 = "akka.quartz.schedules.LARSchedulerLoanLimit2019.expression,0 30 00 * * ?"
- TsScheduler2019 = "akka.quartz.schedules.TsScheduler2019.expression,0 30 00 * * ?"
+ PanelScheduler2019 = "pekko.quartz.schedules.PanelScheduler2019.expression,0 30 00 * * ?"
+ LarScheduler2019 = "pekko.quartz.schedules.LARScheduler2019.expression,0 30 00 * * ?"
+ LarSchedulerLoanLimit2019 = "pekko.quartz.schedules.LARSchedulerLoanLimit2019.expression,0 30 00 * * ?"
+ TsScheduler2019 = "pekko.quartz.schedules.TsScheduler2019.expression,0 30 00 * * ?"
//2018 Public Dynamic Data Schedules
- PanelPublicScheduler2018 = "akka.quartz.schedules.PanelPublicScheduler2018.expression = 0 30 00 * * ?"
- LarPublicScheduler2018 = "akka.quartz.schedules.LarPublicScheduler2018.expression = 0 30 00 * * ?"
- TsPublicScheduler2018 = "akka.quartz.schedules.TsPublicScheduler2018.expression = 0 30 00 * * ?"
+ PanelPublicScheduler2018 = "pekko.quartz.schedules.PanelPublicScheduler2018.expression = 0 30 00 * * ?"
+ LarPublicScheduler2018 = "pekko.quartz.schedules.LarPublicScheduler2018.expression = 0 30 00 * * ?"
+ TsPublicScheduler2018 = "pekko.quartz.schedules.TsPublicScheduler2018.expression = 0 30 00 * * ?"
//2020 Public Dynamic Data Schedules
- LarSchedulerQuarterly2020 = "akka.quartz.schedules.LarSchedulerQuarterly2020.expression,0 30 00 * * ?"
- TsSchedulerQuarterly2020 = "akka.quartz.schedules.TsSchedulerQuarterly2020.expression,0 30 00 * * ?"
- LarSchedulerLoanLimit2020 = "akka.quartz.schedules.LARSchedulerLoanLimit2020.expression,0 30 00 * * ?"
+ LarSchedulerQuarterly2020 = "pekko.quartz.schedules.LarSchedulerQuarterly2020.expression,0 30 00 * * ?"
+ TsSchedulerQuarterly2020 = "pekko.quartz.schedules.TsSchedulerQuarterly2020.expression,0 30 00 * * ?"
+ LarSchedulerLoanLimit2020 = "pekko.quartz.schedules.LARSchedulerLoanLimit2020.expression,0 30 00 * * ?"
// This is what is being used in tests
quartz {
@@ -119,7 +119,7 @@ public-aws {
public-year ="2018"
}
-alpakka.s3 {
+pekko.s3 {
endpoint-url = "http://localhost:9090"
aws {
credentials {
diff --git a/hmda-data-publisher/src/test/scala/hmda/publisher/api/DataPublisherHttpApiSpec.scala b/hmda-data-publisher/src/test/scala/hmda/publisher/api/DataPublisherHttpApiSpec.scala
index 734d8b7480..eb77cb8f58 100644
--- a/hmda-data-publisher/src/test/scala/hmda/publisher/api/DataPublisherHttpApiSpec.scala
+++ b/hmda-data-publisher/src/test/scala/hmda/publisher/api/DataPublisherHttpApiSpec.scala
@@ -1,10 +1,10 @@
package hmda.publisher.api
-import akka.actor.ActorRef
-import akka.http.scaladsl.model.StatusCodes
-import akka.http.scaladsl.testkit.ScalatestRouteTest
-import akka.testkit.TestProbe
-import akka.util.Timeout
+import org.apache.pekko.actor.ActorRef
+import org.apache.pekko.http.scaladsl.model.StatusCodes
+import org.apache.pekko.http.scaladsl.testkit.ScalatestRouteTest
+import org.apache.pekko.testkit.TestProbe
+import org.apache.pekko.util.Timeout
import hmda.publisher.scheduler.AllSchedulers
import hmda.publisher.scheduler.schedules.{ Schedule, ScheduleWithYear, Schedules }
import org.scalatest.{ MustMatchers, WordSpec }
@@ -12,7 +12,7 @@ import org.scalatest.{ MustMatchers, WordSpec }
import scala.concurrent.duration.DurationInt
class DataPublisherHttpApiSpec extends WordSpec with MustMatchers with ScalatestRouteTest {
- implicit val timeout = Timeout(15.seconds)
+ implicit val timeout = Timeout(120.seconds)
"DataPublisherHttpApi" must {
"trigger right scheduler" in {
diff --git a/hmda-data-publisher/src/test/scala/hmda/publisher/checks/TSLinesCheckTest.scala b/hmda-data-publisher/src/test/scala/hmda/publisher/checks/TSLinesCheckTest.scala
index 9017997f5e..02bd82aa6c 100644
--- a/hmda-data-publisher/src/test/scala/hmda/publisher/checks/TSLinesCheckTest.scala
+++ b/hmda-data-publisher/src/test/scala/hmda/publisher/checks/TSLinesCheckTest.scala
@@ -1,7 +1,7 @@
package hmda.publisher.validation
-import akka.actor.ActorSystem
-import akka.testkit.TestKit
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.testkit.TestKit
import hmda.publisher.query.component.{ PublisherComponent2018, TransmittalSheetTable, TsRepository }
import hmda.publisher.query.lar.{ LarEntityImpl2018, LarPartFive2018, LarPartFour2018, LarPartOne2018, LarPartSix2018, LarPartThree2018, LarPartTwo2018 }
import hmda.query.ts.TransmittalSheetEntity
diff --git a/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2018Spec.scala b/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2018Spec.scala
index 7dfe6996aa..39a18491a1 100644
--- a/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2018Spec.scala
+++ b/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2018Spec.scala
@@ -1,8 +1,8 @@
package hmda.publisher.query.component
-import akka.actor.ActorSystem
-import akka.stream.scaladsl.{ Sink, Source }
-import akka.testkit.TestKit
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.stream.scaladsl.{ Sink, Source }
+import org.apache.pekko.testkit.TestKit
import hmda.publisher.query.lar._
import hmda.publisher.query.panel.InstitutionEntity
import hmda.query.ts.TransmittalSheetEntity
diff --git a/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2019Spec.scala b/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2019Spec.scala
index 5b467d7718..45029e3624 100644
--- a/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2019Spec.scala
+++ b/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2019Spec.scala
@@ -1,8 +1,8 @@
package hmda.publisher.query.component
-import akka.actor.ActorSystem
-import akka.stream.scaladsl.{ Sink, Source }
-import akka.testkit.TestKit
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.stream.scaladsl.{ Sink, Source }
+import org.apache.pekko.testkit.TestKit
import hmda.publisher.query.lar._
import hmda.publisher.query.panel.InstitutionEntity
import hmda.query.ts.TransmittalSheetEntity
diff --git a/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2020Spec.scala b/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2020Spec.scala
index 84f5c11215..69d3f35b92 100644
--- a/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2020Spec.scala
+++ b/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2020Spec.scala
@@ -1,8 +1,8 @@
package hmda.publisher.query.component
-import akka.actor.ActorSystem
-import akka.stream.scaladsl.{ Sink, Source }
-import akka.testkit.TestKit
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.stream.scaladsl.{ Sink, Source }
+import org.apache.pekko.testkit.TestKit
import hmda.publisher.query.lar._
import hmda.publisher.query.panel.InstitutionEntity
import hmda.query.ts.TransmittalSheetEntity
diff --git a/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2021Spec.scala b/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2021Spec.scala
index 0de017e189..0dde5f56b8 100644
--- a/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2021Spec.scala
+++ b/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2021Spec.scala
@@ -1,8 +1,8 @@
package hmda.publisher.query.component
-import akka.actor.ActorSystem
-import akka.stream.scaladsl.{Sink, Source}
-import akka.testkit.TestKit
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.stream.scaladsl.{Sink, Source}
+import org.apache.pekko.testkit.TestKit
import hmda.publisher.query.lar._
import hmda.publisher.query.panel.InstitutionEntity
import hmda.query.ts.TransmittalSheetEntity
diff --git a/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2022Spec.scala b/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2022Spec.scala
index 208ca23929..1a0230cf1a 100644
--- a/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2022Spec.scala
+++ b/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2022Spec.scala
@@ -1,8 +1,8 @@
package hmda.publisher.query.component
-import akka.actor.ActorSystem
-import akka.stream.scaladsl.{Sink, Source}
-import akka.testkit.TestKit
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.stream.scaladsl.{Sink, Source}
+import org.apache.pekko.testkit.TestKit
import hmda.publisher.query.lar._
import hmda.publisher.query.panel.InstitutionEntity
import hmda.query.ts.TransmittalSheetEntity
diff --git a/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2023Spec.scala b/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2023Spec.scala
index fea1b5a1cb..a8fde1aa41 100644
--- a/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2023Spec.scala
+++ b/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2023Spec.scala
@@ -1,8 +1,8 @@
package hmda.publisher.query.component
-import akka.actor.ActorSystem
-import akka.stream.scaladsl.{Sink, Source}
-import akka.testkit.TestKit
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.stream.scaladsl.{Sink, Source}
+import org.apache.pekko.testkit.TestKit
import hmda.publisher.query.lar._
import hmda.publisher.query.panel.InstitutionEntity
import hmda.query.ts.TransmittalSheetEntity
diff --git a/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2024Spec.scala b/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2024Spec.scala
index 57d20b7d27..d8d860120a 100644
--- a/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2024Spec.scala
+++ b/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2024Spec.scala
@@ -1,8 +1,8 @@
package hmda.publisher.query.component
-import akka.actor.ActorSystem
-import akka.stream.scaladsl.{Sink, Source}
-import akka.testkit.TestKit
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.stream.scaladsl.{Sink, Source}
+import org.apache.pekko.testkit.TestKit
import hmda.publisher.query.lar._
import hmda.publisher.query.panel.InstitutionEntity
import hmda.query.ts.TransmittalSheetEntity
diff --git a/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2025Spec.scala b/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2025Spec.scala
index 00d536a9fe..9938f1d081 100644
--- a/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2025Spec.scala
+++ b/hmda-data-publisher/src/test/scala/hmda/publisher/query/component/PublisherComponent2025Spec.scala
@@ -1,8 +1,8 @@
package hmda.publisher.query.component
-import akka.actor.ActorSystem
-import akka.stream.scaladsl.{Sink, Source}
-import akka.testkit.TestKit
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.stream.scaladsl.{Sink, Source}
+import org.apache.pekko.testkit.TestKit
import hmda.publisher.query.lar._
import hmda.publisher.query.panel.InstitutionEntity
import hmda.query.ts.TransmittalSheetEntity
diff --git a/hmda-data-publisher/src/test/scala/hmda/publisher/util/ScheduleCoordinatorSpec.scala b/hmda-data-publisher/src/test/scala/hmda/publisher/util/ScheduleCoordinatorSpec.scala
index 28eee0fb26..33cef2951e 100644
--- a/hmda-data-publisher/src/test/scala/hmda/publisher/util/ScheduleCoordinatorSpec.scala
+++ b/hmda-data-publisher/src/test/scala/hmda/publisher/util/ScheduleCoordinatorSpec.scala
@@ -1,6 +1,6 @@
package hmda.publisher.util
-import akka.http.scaladsl.testkit.ScalatestRouteTest
+import org.apache.pekko.http.scaladsl.testkit.ScalatestRouteTest
import org.scalatest.{MustMatchers, WordSpec}
import scala.concurrent.ExecutionContext
diff --git a/hmda-quarterly-data-service/src/main/resources/cors.conf b/hmda-quarterly-data-service/src/main/resources/cors.conf
index 34c2d4b74f..b35c7f634b 100644
--- a/hmda-quarterly-data-service/src/main/resources/cors.conf
+++ b/hmda-quarterly-data-service/src/main/resources/cors.conf
@@ -1,4 +1,4 @@
-akka-http-cors {
+pekko-http-cors {
allowed-methods = ["GET"]
allowed-origins = "*"
}
diff --git a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/HmdaQuarterlyDataApp.scala b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/HmdaQuarterlyDataApp.scala
index d9e72f582d..093f270824 100644
--- a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/HmdaQuarterlyDataApp.scala
+++ b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/HmdaQuarterlyDataApp.scala
@@ -1,6 +1,6 @@
package hmda.quarterly.data
-import akka.actor.typed.ActorSystem
+import org.apache.pekko.actor.typed.ActorSystem
import hmda.quarterly.data.api.HmdaQuarterlyDataApi
import org.slf4j.LoggerFactory
diff --git a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/HmdaQuarterlyDataApi.scala b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/HmdaQuarterlyDataApi.scala
index 49e6db86d1..cf18587e58 100644
--- a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/HmdaQuarterlyDataApi.scala
+++ b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/HmdaQuarterlyDataApi.scala
@@ -1,13 +1,13 @@
package hmda.quarterly.data.api
-import akka.actor
-import akka.actor.CoordinatedShutdown
-import akka.actor.typed.scaladsl.Behaviors
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.typed.{ ActorSystem, Behavior }
-import akka.http.scaladsl.server.Directives._
-import akka.stream.Materializer
-import ch.megard.akka.http.cors.scaladsl.CorsDirectives.cors
+import org.apache.pekko.actor
+import org.apache.pekko.actor.CoordinatedShutdown
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.typed.{ ActorSystem, Behavior }
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.http.cors.scaladsl.CorsDirectives.cors
import hmda.api.http.directives.HmdaTimeDirectives.timed
import hmda.api.http.routes.BaseHttpApi
import slick.basic.DatabaseConfig
diff --git a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/HmdaQuarterlyGraphRequestHandler.scala b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/HmdaQuarterlyGraphRequestHandler.scala
index b8b7f2ff6e..b31cbae184 100644
--- a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/HmdaQuarterlyGraphRequestHandler.scala
+++ b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/HmdaQuarterlyGraphRequestHandler.scala
@@ -1,7 +1,7 @@
package hmda.quarterly.data.api
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server._
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server._
import hmda.quarterly.data.api.route._
import hmda.quarterly.data.api.serde.JsonSupport
diff --git a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/dto/QuarterGraphData.scala b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/dto/QuarterGraphData.scala
index e3e92e5b3b..126e5593b2 100644
--- a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/dto/QuarterGraphData.scala
+++ b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/dto/QuarterGraphData.scala
@@ -1,6 +1,6 @@
package hmda.quarterly.data.api.dto
-import akka.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.server.Route
import hmda.quarterly.data.api.route.lib.Verbiage.DEFAULT_DECIMAL_PRECISION
object QuarterGraphData {
diff --git a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/AllApplicationsVolume.scala b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/AllApplicationsVolume.scala
index 7848d8f60a..b71bd762c7 100644
--- a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/AllApplicationsVolume.scala
+++ b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/AllApplicationsVolume.scala
@@ -1,7 +1,7 @@
package hmda.quarterly.data.api.route.counts.loans
-import akka.http.scaladsl.server.Directives.{ complete, path, pathPrefix }
-import akka.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.server.Directives.{ complete, path, pathPrefix }
+import org.apache.pekko.http.scaladsl.server.Route
import hmda.quarterly.data.api.dao.repo.QuarterlyGraphRepo
import hmda.quarterly.data.api.dto.QuarterGraphData.{ GraphRoute, GraphSeriesInfo, GraphSeriesSummary }
import Loans._
diff --git a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/AllApplicationsVolumeLoanPurposeHome.scala b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/AllApplicationsVolumeLoanPurposeHome.scala
index 97909df153..0c1ce5d7e2 100644
--- a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/AllApplicationsVolumeLoanPurposeHome.scala
+++ b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/AllApplicationsVolumeLoanPurposeHome.scala
@@ -1,7 +1,7 @@
package hmda.quarterly.data.api.route.counts.loans
-import akka.http.scaladsl.server.Directives.{complete, path, pathPrefix}
-import akka.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.server.Directives.{complete, path, pathPrefix}
+import org.apache.pekko.http.scaladsl.server.Route
import hmda.quarterly.data.api.dao.repo.QuarterlyGraphRepo
import hmda.quarterly.data.api.dto.QuarterGraphData.{GraphRoute, GraphSeriesInfo, GraphSeriesSummary}
import hmda.quarterly.data.api.route.counts.loans.Loans._
diff --git a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/AllApplicationsVolumeLoanPurposeRefinance.scala b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/AllApplicationsVolumeLoanPurposeRefinance.scala
index 080ccf9e7f..6c2c870b66 100644
--- a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/AllApplicationsVolumeLoanPurposeRefinance.scala
+++ b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/AllApplicationsVolumeLoanPurposeRefinance.scala
@@ -1,7 +1,7 @@
package hmda.quarterly.data.api.route.counts.loans
-import akka.http.scaladsl.server.Directives.{complete, path, pathPrefix}
-import akka.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.server.Directives.{complete, path, pathPrefix}
+import org.apache.pekko.http.scaladsl.server.Route
import hmda.quarterly.data.api.dao.repo.QuarterlyGraphRepo
import hmda.quarterly.data.api.dto.QuarterGraphData.{GraphRoute, GraphSeriesInfo, GraphSeriesSummary}
import hmda.quarterly.data.api.route.counts.loans.Loans._
diff --git a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/ApplicationsVolume.scala b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/ApplicationsVolume.scala
index 8f2e60ed5b..89687f577f 100644
--- a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/ApplicationsVolume.scala
+++ b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/ApplicationsVolume.scala
@@ -1,7 +1,7 @@
package hmda.quarterly.data.api.route.counts.loans
-import akka.http.scaladsl.server.Directives.{ complete, path, pathPrefix }
-import akka.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.server.Directives.{ complete, path, pathPrefix }
+import org.apache.pekko.http.scaladsl.server.Route
import hmda.model.filing.lar.enums._
import hmda.quarterly.data.api.dao.repo.QuarterlyGraphRepo
import hmda.quarterly.data.api.dto.QuarterGraphData.{ GraphRoute, GraphSeriesInfo, GraphSeriesSummary }
diff --git a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/ApplicationsVolumeLoanPurposeHome.scala b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/ApplicationsVolumeLoanPurposeHome.scala
index 61d9ba22c7..904e8ab012 100644
--- a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/ApplicationsVolumeLoanPurposeHome.scala
+++ b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/ApplicationsVolumeLoanPurposeHome.scala
@@ -1,7 +1,7 @@
package hmda.quarterly.data.api.route.counts.loans
-import akka.http.scaladsl.server.Directives.{complete, path, pathPrefix}
-import akka.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.server.Directives.{complete, path, pathPrefix}
+import org.apache.pekko.http.scaladsl.server.Route
import hmda.model.filing.lar.enums._
import hmda.quarterly.data.api.dao.repo.QuarterlyGraphRepo
import hmda.quarterly.data.api.dto.QuarterGraphData.{GraphRoute, GraphSeriesInfo, GraphSeriesSummary}
diff --git a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/ApplicationsVolumeLoanPurposeRefinance.scala b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/ApplicationsVolumeLoanPurposeRefinance.scala
index b688f8ce11..16134842b6 100644
--- a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/ApplicationsVolumeLoanPurposeRefinance.scala
+++ b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/ApplicationsVolumeLoanPurposeRefinance.scala
@@ -1,7 +1,7 @@
package hmda.quarterly.data.api.route.counts.loans
-import akka.http.scaladsl.server.Directives.{complete, path, pathPrefix}
-import akka.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.server.Directives.{complete, path, pathPrefix}
+import org.apache.pekko.http.scaladsl.server.Route
import hmda.model.filing.lar.enums._
import hmda.quarterly.data.api.dao.repo.QuarterlyGraphRepo
import hmda.quarterly.data.api.dto.QuarterGraphData.{GraphRoute, GraphSeriesInfo, GraphSeriesSummary}
diff --git a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/LoansVolume.scala b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/LoansVolume.scala
index ad201c9072..f914da773b 100644
--- a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/LoansVolume.scala
+++ b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/LoansVolume.scala
@@ -1,7 +1,7 @@
package hmda.quarterly.data.api.route.counts.loans
-import akka.http.scaladsl.server.Directives.{ complete, path, pathPrefix }
-import akka.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.server.Directives.{ complete, path, pathPrefix }
+import org.apache.pekko.http.scaladsl.server.Route
import hmda.model.filing.lar.enums._
import hmda.quarterly.data.api.dao.repo.QuarterlyGraphRepo
import hmda.quarterly.data.api.dto.QuarterGraphData.{ GraphRoute, GraphSeriesInfo, GraphSeriesSummary }
diff --git a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/LoansVolumeLoanPurposeHome.scala b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/LoansVolumeLoanPurposeHome.scala
index 3a9b4e7ccc..999a857dfd 100644
--- a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/LoansVolumeLoanPurposeHome.scala
+++ b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/LoansVolumeLoanPurposeHome.scala
@@ -1,7 +1,7 @@
package hmda.quarterly.data.api.route.counts.loans
-import akka.http.scaladsl.server.Directives.{complete, path, pathPrefix}
-import akka.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.server.Directives.{complete, path, pathPrefix}
+import org.apache.pekko.http.scaladsl.server.Route
import hmda.model.filing.lar.enums._
import hmda.quarterly.data.api.dao.repo.QuarterlyGraphRepo
import hmda.quarterly.data.api.dto.QuarterGraphData.{GraphRoute, GraphSeriesInfo, GraphSeriesSummary}
diff --git a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/LoansVolumeLoanPurposeRefinance.scala b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/LoansVolumeLoanPurposeRefinance.scala
index 53732d7d7a..fae819785f 100644
--- a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/LoansVolumeLoanPurposeRefinance.scala
+++ b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/counts/loans/LoansVolumeLoanPurposeRefinance.scala
@@ -1,7 +1,7 @@
package hmda.quarterly.data.api.route.counts.loans
-import akka.http.scaladsl.server.Directives.{complete, path, pathPrefix}
-import akka.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.server.Directives.{complete, path, pathPrefix}
+import org.apache.pekko.http.scaladsl.server.Route
import hmda.model.filing.lar.enums._
import hmda.quarterly.data.api.dao.repo.QuarterlyGraphRepo
import hmda.quarterly.data.api.dto.QuarterGraphData.{GraphRoute, GraphSeriesInfo, GraphSeriesSummary}
diff --git a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/rates/RatesGraph.scala b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/rates/RatesGraph.scala
index 851bc34955..ff59f86ecf 100644
--- a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/rates/RatesGraph.scala
+++ b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/route/rates/RatesGraph.scala
@@ -1,7 +1,7 @@
package hmda.quarterly.data.api.route.rates
-import akka.http.scaladsl.server.Directives.{complete, path, pathPrefix}
-import akka.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.server.Directives.{complete, path, pathPrefix}
+import org.apache.pekko.http.scaladsl.server.Route
import hmda.model.filing.lar.enums._
import hmda.quarterly.data.api.dto.QuarterGraphData.{GraphRoute, GraphSeriesInfo, GraphSeriesSummary}
import hmda.quarterly.data.api.route.TitleSuffixAppender.addSuffix
diff --git a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/serde/JsonSupport.scala b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/serde/JsonSupport.scala
index 49275113c2..3528c94ae8 100644
--- a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/serde/JsonSupport.scala
+++ b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/serde/JsonSupport.scala
@@ -1,6 +1,6 @@
package hmda.quarterly.data.api.serde
-import akka.http.scaladsl.marshallers.sprayjson.SprayJsonSupport
+import org.apache.pekko.http.scaladsl.marshallers.sprayjson.SprayJsonSupport
import hmda.quarterly.data.api.dao.DataPoint
import hmda.quarterly.data.api.dto.QuarterGraphData._
import spray.json.{ DefaultJsonProtocol, RootJsonFormat }
diff --git a/hmda-reporting/src/main/resources/application.conf b/hmda-reporting/src/main/resources/application.conf
index 1d9a05b424..9346b4cae2 100644
--- a/hmda-reporting/src/main/resources/application.conf
+++ b/hmda-reporting/src/main/resources/application.conf
@@ -1,9 +1,9 @@
-akka {
+pekko {
log-level = INFO
http.server.preview.enable-http2 = on
}
-akka.http.server.request-timeout = infinite
+pekko.http.server.request-timeout = infinite
hmda {
reporting {
diff --git a/hmda-reporting/src/main/scala/hmda/reporting/HmdaReporting.scala b/hmda-reporting/src/main/scala/hmda/reporting/HmdaReporting.scala
index 0a4b174fec..f4ef2b317c 100644
--- a/hmda-reporting/src/main/scala/hmda/reporting/HmdaReporting.scala
+++ b/hmda-reporting/src/main/scala/hmda/reporting/HmdaReporting.scala
@@ -1,6 +1,6 @@
package hmda.reporting
-import akka.actor.typed.ActorSystem
+import org.apache.pekko.actor.typed.ActorSystem
import hmda.reporting.api.http.HmdaReportingApi
import org.slf4j.LoggerFactory
diff --git a/hmda-reporting/src/main/scala/hmda/reporting/api/http/HmdaReportingApi.scala b/hmda-reporting/src/main/scala/hmda/reporting/api/http/HmdaReportingApi.scala
index 71ebe9487c..4812ecec68 100644
--- a/hmda-reporting/src/main/scala/hmda/reporting/api/http/HmdaReportingApi.scala
+++ b/hmda-reporting/src/main/scala/hmda/reporting/api/http/HmdaReportingApi.scala
@@ -1,10 +1,10 @@
package hmda.reporting.api.http
-import akka.actor.typed.Behavior
-import akka.actor.typed.scaladsl.Behaviors
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.{ ActorSystem, CoordinatedShutdown }
-import akka.http.scaladsl.server.Directives._
+import org.apache.pekko.actor.typed.Behavior
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.{ ActorSystem, CoordinatedShutdown }
+import org.apache.pekko.http.scaladsl.server.Directives._
import hmda.api.http.directives.HmdaTimeDirectives._
import hmda.api.http.routes.BaseHttpApi
diff --git a/hmda-reporting/src/main/scala/hmda/reporting/api/http/ReportingHttpApi.scala b/hmda-reporting/src/main/scala/hmda/reporting/api/http/ReportingHttpApi.scala
index 0073f86088..989654180b 100644
--- a/hmda-reporting/src/main/scala/hmda/reporting/api/http/ReportingHttpApi.scala
+++ b/hmda-reporting/src/main/scala/hmda/reporting/api/http/ReportingHttpApi.scala
@@ -1,11 +1,11 @@
package hmda.reporting.api.http
-import akka.http.scaladsl.model.StatusCodes
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import ch.megard.akka.http.cors.scaladsl.CorsDirectives.{ cors, corsRejectionHandler }
+import org.apache.pekko.http.scaladsl.model.StatusCodes
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.http.cors.scaladsl.CorsDirectives.{ cors, corsRejectionHandler }
import com.typesafe.config.Config
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.model.institution.{ HmdaFiler, HmdaFilerResponse, MsaMd, MsaMdResponse }
import hmda.query.repository.ModifiedLarRepository
import hmda.reporting.repository.InstitutionComponent
diff --git a/hmda-reporting/src/test/resources/application.conf b/hmda-reporting/src/test/resources/application.conf
index cb7156af9b..5ef517f46b 100644
--- a/hmda-reporting/src/test/resources/application.conf
+++ b/hmda-reporting/src/test/resources/application.conf
@@ -1,9 +1,9 @@
-akka {
+pekko {
log-level = INFO
http.server.preview.enable-http2 = on
}
-akka.http.server.request-timeout = infinite
+pekko.http.server.request-timeout = infinite
hmda {
reporting {
diff --git a/hmda-reporting/src/test/scala/hmda/reporting/api/http/ReportingHttpApiSpec.scala b/hmda-reporting/src/test/scala/hmda/reporting/api/http/ReportingHttpApiSpec.scala
index 1fb9f3f748..ca19daf18e 100644
--- a/hmda-reporting/src/test/scala/hmda/reporting/api/http/ReportingHttpApiSpec.scala
+++ b/hmda-reporting/src/test/scala/hmda/reporting/api/http/ReportingHttpApiSpec.scala
@@ -1,9 +1,9 @@
package hmda.reporting.api.http
-import akka.http.scaladsl.model.StatusCodes.OK
-import akka.http.scaladsl.server.Route
-import akka.http.scaladsl.testkit.ScalatestRouteTest
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport
+import org.apache.pekko.http.scaladsl.model.StatusCodes.OK
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.testkit.ScalatestRouteTest
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport
import hmda.model.institution.{ HmdaFiler, HmdaFilerResponse, MsaMd, MsaMdResponse }
import hmda.query.institution.InstitutionEntity
import hmda.query.repository.ModifiedLarRepository
diff --git a/hmda/build.sbt b/hmda/build.sbt
index 3a266d0774..77f673bade 100644
--- a/hmda/build.sbt
+++ b/hmda/build.sbt
@@ -8,8 +8,8 @@ packageName in Docker := "hmda-platform"
dockerExposedPorts := Vector(8080, 8081, 8082, 19999, 9080, 1099)
dockerEntrypoint ++= Seq(
- """-Dakka.remote.netty.tcp.hostname="$(eval "echo $AKKA_REMOTING_BIND_HOST")"""",
- """-Dakka.management.http.hostname="$(eval "echo $AKKA_REMOTING_BIND_HOST")""""
+ """-Dpekko.remote.artery.bind.hostname="$(eval "echo $PEKKO_REMOTING_BIND_HOST")"""",
+ """-Dpekko.management.http.hostname="$(eval "echo $PEKKO_REMOTING_BIND_HOST")""""
)
//Add Yourkit profiler
diff --git a/hmda/commercial-build.txt b/hmda/commercial-build.txt
index 7160474280..b0b1e2b58e 100644
--- a/hmda/commercial-build.txt
+++ b/hmda/commercial-build.txt
@@ -8,8 +8,8 @@ packageName in Docker := "hmda-platform"
dockerExposedPorts := Vector(8080, 8081, 8082, 19999, 9080, 1099)
dockerEntrypoint ++= Seq(
- """-Dakka.remote.netty.tcp.hostname="$(eval "echo $AKKA_REMOTING_BIND_HOST")"""",
- """-Dakka.management.http.hostname="$(eval "echo $AKKA_REMOTING_BIND_HOST")""""
+ """-Dpekko.remote.netty.tcp.hostname="$(eval "echo $PEKKO_REMOTING_BIND_HOST")"""",
+ """-Dpekko.management.http.hostname="$(eval "echo $PEKKO_REMOTING_BIND_HOST")""""
)
//Add Yourkit profiler
@@ -40,14 +40,14 @@ cinnamonLogLevel := "INFO"
cinnamon in run := true
cinnamon in test := true
-libraryDependencies += Cinnamon.library.cinnamonAkka
-libraryDependencies += Cinnamon.library.cinnamonAkkaHttp
-libraryDependencies += Cinnamon.library.cinnamonAkkaStream
+libraryDependencies += Cinnamon.library.cinnamonpekko
+libraryDependencies += Cinnamon.library.cinnamonpekkoHttp
+libraryDependencies += Cinnamon.library.cinnamonpekkoStream
libraryDependencies += Cinnamon.library.cinnamonPrometheus
libraryDependencies += Cinnamon.library.cinnamonPrometheusHttpServer
libraryDependencies += Cinnamon.library.cinnamonJvmMetricsProducer
-libraryDependencies += Cinnamon.library.cinnamonAkkaPersistence
-libraryDependencies += "com.lightbend.akka" %% "akka-diagnostics" % "1.1.12"
+libraryDependencies += Cinnamon.library.cinnamonpekkoPersistence
+libraryDependencies += "com.lightbend.pekko" %% "pekko-diagnostics" % "1.1.12"
**/
javaOptions in Universal ++= Seq(
diff --git a/hmda/src/main/resources/application-dcos.conf b/hmda/src/main/resources/application-dcos.conf
index 4d6b5d1848..c5ce7bf546 100644
--- a/hmda/src/main/resources/application-dcos.conf
+++ b/hmda/src/main/resources/application-dcos.conf
@@ -1,6 +1,6 @@
include "application.conf"
-akka {
+pekko {
remote {
netty.tcp {
@@ -20,11 +20,11 @@ akka {
# This defines the interface to use.
# InetAddress.getLocalHost.getHostAddress is used not overriden or empty
hostname = ${?HOST}
- port = 8558
+ port = 7626
port = ${?PORT_19999}
bind-hostname = 0.0.0.0
- bind-port = 8558
+ bind-port = 7626
}
cluster.bootstrap {
@@ -54,7 +54,7 @@ akka {
# Configured how we communicate with the contact point once it is discovered
contact-point {
# If no port is discovered along with the host/ip of a contact point this port will be used as fallback
- fallback-port = 8558
+ fallback-port = 7626
fallback-port = ${?PORT_19999}
}
diff --git a/hmda/src/main/resources/application-dev.conf b/hmda/src/main/resources/application-dev.conf
index e3866274d1..34251c4d22 100644
--- a/hmda/src/main/resources/application-dev.conf
+++ b/hmda/src/main/resources/application-dev.conf
@@ -4,10 +4,10 @@ include "application.conf"
APP_PORT = 2551
APP_PORT = ${?APP_PORT}
-akka {
+pekko {
cluster {
- seed-nodes = ["akka://hmda2@127.0.0.1:"${APP_PORT}]
+ seed-nodes = ["pekko://hmda2@127.0.0.1:"${APP_PORT}]
}
}
\ No newline at end of file
diff --git a/hmda/src/main/resources/application-kind.conf b/hmda/src/main/resources/application-kind.conf
index a57c90d9ba..caa094acb4 100644
--- a/hmda/src/main/resources/application-kind.conf
+++ b/hmda/src/main/resources/application-kind.conf
@@ -2,14 +2,14 @@ include "persistence.conf"
include "hmda.conf"
include "cors.conf"
-akka.log-config-on-start = on
+pekko.log-config-on-start = on
-akka {
+pekko {
remote {
artery {
transport = tcp
- canonical.port = 0 //https://discuss.lightbend.com/t/scalatestroutetest-and-artery-bindexception/5838/2
+ canonical.port = 17355
// canonical.hostname = ${HOSTNAME} // pick default which is InetAddress.getLocalHost.getHostAddress
large-message-destinations = ["/temp/*"]
advanced {
@@ -92,13 +92,13 @@ akka {
sharding {
number-of-shards = 500
passivate-idle-entity-after = 65 minutes
- passivate-idle-entity-after = ${?AKKA_CLUSTER_IDLE_ENTITY_TIMEOUT}
+ passivate-idle-entity-after = ${?PEKKO_CLUSTER_IDLE_ENTITY_TIMEOUT}
}
}
management {
http {
- port = 8558
+ port = 7626
}
cluster.bootstrap {
diff --git a/hmda/src/main/resources/application-kubernetes.conf b/hmda/src/main/resources/application-kubernetes.conf
index f8105d9c79..8e291ce2b6 100644
--- a/hmda/src/main/resources/application-kubernetes.conf
+++ b/hmda/src/main/resources/application-kubernetes.conf
@@ -7,12 +7,13 @@ include "persistence.conf"
include "hmda.conf"
include "cors.conf"
-akka {
+pekko {
remote {
artery {
+ enabled = true
transport = tcp
- canonical.port = 0 //https://discuss.lightbend.com/t/scalatestroutetest-and-artery-bindexception/5838/2
+ canonical.port = 25521 //https://discuss.lightbend.com/t/scalatestroutetest-and-artery-bindexception/5838/2
// canonical.hostname = ${HOSTNAME} // pick default which is InetAddress.getLocalHost.getHostAddress
large-message-destinations = ["/temp/*"]
advanced {
@@ -45,10 +46,7 @@ akka {
}
throughput = 1000
}
- actor {
- provider = "cluster"
- timeout = 8
- }
+
blocking-parser-dispatcher {
type = Dispatcher
@@ -60,7 +58,7 @@ akka {
throughput = 1000
}
actor {
- provider = "cluster"
+ provider = cluster
timeout = 8
}
@@ -73,13 +71,6 @@ akka {
}
throughput = 1000
}
- actor {
- provider = "cluster"
- timeout = 8
- }
-
-
-
discovery {
kubernetes-api {
@@ -94,13 +85,13 @@ akka {
sharding {
number-of-shards = 500
passivate-idle-entity-after = 65 minutes
- passivate-idle-entity-after = ${?AKKA_CLUSTER_IDLE_ENTITY_TIMEOUT}
+ passivate-idle-entity-after = ${?PEKKO_CLUSTER_IDLE_ENTITY_TIMEOUT}
}
}
management {
http {
- port = 8558
+ port = 7626
}
cluster.bootstrap {
diff --git a/hmda/src/main/resources/application.conf b/hmda/src/main/resources/application.conf
index bd27d24b67..fe881f71d0 100644
--- a/hmda/src/main/resources/application.conf
+++ b/hmda/src/main/resources/application.conf
@@ -9,7 +9,7 @@ include "hmda.conf"
include "cors.conf"
include "edits.conf"
-akka {
+pekko {
diagnostics {
starvation-detector {
@@ -56,9 +56,9 @@ akka {
}
log-config-on-start = off
- log-config-on-start = ${?AKKA_COFIG_ON_START}
+ log-config-on-start = ${?PEKKO_COFIG_ON_START}
loglevel = INFO
- loglevel = ${?AKKA_LOG_LEVEL}
+ loglevel = ${?PEKKO_LOG_LEVEL}
log-dead-letters = off
log-dead-letters-during-shutdown = off
@@ -68,7 +68,7 @@ akka {
http.server.websocket.periodic-keep-alive-max-idle = 1 second
http.server.idle-timeout = infinite
- discovery.method = akka-dns
+ discovery.method = pekko-dns
io.dns.resolver = async-dns
actor {
@@ -82,13 +82,13 @@ akka {
sharding {
number-of-shards = 500
passivation.default-idle-strategy.idle-entity.timeout = 35 minutes
- passivation.default-idle-strategy.idle-entity.timeout = ${?AKKA_CLUSTER_IDLE_ENTITY_TIMEOUT}
+ passivation.default-idle-strategy.idle-entity.timeout = ${?PEKKO_CLUSTER_IDLE_ENTITY_TIMEOUT}
}
}
remote.artery {
transport = tcp
- canonical.port = 2551
+ canonical.port = 17355
canonical.port = ${?APP_PORT}
canonical.hostname = "127.0.0.1"
maximum-frame-size = 30000000b
@@ -99,11 +99,11 @@ akka {
management {
http {
hostname = "127.0.0.1"
- port = 8558
+ port = 7626
port = ${?MANAGEMENT_PORT}
bind-hostname = 0.0.0.0
- bind-port = 8558
+ bind-port = 7626
bind-port = ${?MANAGEMENT_PORT}
}
}
@@ -113,9 +113,9 @@ akka {
cinnamon.application = "hmda-platform"
-cinnamon.akka {
+cinnamon.pekko {
// monitor all actors
- // see https://developer.lightbend.com/docs/telemetry/current/instrumentations/akka/akka.html
+ // see https://developer.lightbend.com/docs/telemetry/current/instrumentations/pekko/pekko.html
actors {
"hmda.*" {
report-by = class
@@ -123,15 +123,15 @@ cinnamon.akka {
}
// monitor the named-example stream that we have explicitly instrumented
- // see https://developer.lightbend.com/docs/telemetry/current/instrumentations/akka-streams/akka-streams.html
+ // see https://developer.lightbend.com/docs/telemetry/current/instrumentations/pekko-streams/pekko-streams.html
streams {
"hmda.*" {
report-by = name
}
}
- // monitor akka http paths
- // see https://developer.lightbend.com/docs/telemetry/current/instrumentations/akka-http/akka-http-configuration.html#example-configuration-1
+ // monitor pekko http paths
+ // see https://developer.lightbend.com/docs/telemetry/current/instrumentations/pekko-http/pekko-http-configuration.html#example-configuration-1
http {
servers {
"*:*" {
diff --git a/hmda/src/main/resources/cors.conf b/hmda/src/main/resources/cors.conf
index 22f0540543..0f3d13f5b4 100644
--- a/hmda/src/main/resources/cors.conf
+++ b/hmda/src/main/resources/cors.conf
@@ -1,3 +1,3 @@
-akka-http-cors {
+pekko-http-cors {
allowed-methods = ["GET", "POST", "PUT", "DELETE", "HEAD", "OPTIONS"]
}
\ No newline at end of file
diff --git a/hmda/src/main/resources/logback.xml b/hmda/src/main/resources/logback.xml
index 16f20b3930..d25219bbf8 100644
--- a/hmda/src/main/resources/logback.xml
+++ b/hmda/src/main/resources/logback.xml
@@ -25,5 +25,5 @@
-
+
\ No newline at end of file
diff --git a/hmda/src/main/scala/hmda/HmdaPlatform.scala b/hmda/src/main/scala/hmda/HmdaPlatform.scala
index 5f99b60b73..d7b956e76a 100644
--- a/hmda/src/main/scala/hmda/HmdaPlatform.scala
+++ b/hmda/src/main/scala/hmda/HmdaPlatform.scala
@@ -2,13 +2,13 @@ package hmda
import java.net.InetAddress
-import akka.actor.typed.ActorSystem
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.{ActorSystem => ClassicActorSystem}
-import akka.cluster.typed.Cluster
-import akka.management.cluster.bootstrap.ClusterBootstrap
-import akka.management.scaladsl.AkkaManagement
-import akka.stream.Materializer
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.{ActorSystem => ClassicActorSystem}
+import org.apache.pekko.cluster.typed.Cluster
+import org.apache.pekko.management.cluster.bootstrap.ClusterBootstrap
+import org.apache.pekko.management.scaladsl.PekkoManagement
+import org.apache.pekko.stream.Materializer
import com.typesafe.config.ConfigFactory
import hmda.api.HmdaApi
import hmda.persistence.HmdaPersistence
@@ -71,7 +71,7 @@ object HmdaPlatform extends App {
implicit val cluster = Cluster(system)
ClusterBootstrap(system).start()
- AkkaManagement(system).start()
+ PekkoManagement(system).start()
// TODO: Fix this as initializing it here is not a good idea, this should be initialized in HmdaPersistence and passed into HmdaValidationError
val stringKafkaProducer = KafkaUtils.getStringKafkaProducer(system)
diff --git a/hmda/src/main/scala/hmda/api/HmdaApi.scala b/hmda/src/main/scala/hmda/api/HmdaApi.scala
index 6ac9a9bf44..920c99c2c3 100644
--- a/hmda/src/main/scala/hmda/api/HmdaApi.scala
+++ b/hmda/src/main/scala/hmda/api/HmdaApi.scala
@@ -1,7 +1,7 @@
package hmda.api
-import akka.actor.typed.Behavior
-import akka.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.Behavior
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
import hmda.api.http.{ HmdaAdminApi, HmdaFilingApi, HmdaPublicApi }
import hmda.api.ws.HmdaWSApi
diff --git a/hmda/src/main/scala/hmda/api/http/HmdaAdminApi.scala b/hmda/src/main/scala/hmda/api/http/HmdaAdminApi.scala
index fb750e2890..309b49c3e5 100644
--- a/hmda/src/main/scala/hmda/api/http/HmdaAdminApi.scala
+++ b/hmda/src/main/scala/hmda/api/http/HmdaAdminApi.scala
@@ -1,13 +1,13 @@
package hmda.api.http
-import akka.actor.typed.scaladsl.Behaviors
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.typed.{ActorSystem, Behavior}
-import akka.actor.{CoordinatedShutdown, ActorSystem => ClassicActorSystem}
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.http.scaladsl.server.Directives._
-import akka.stream.Materializer
-import akka.util.Timeout
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.typed.{ActorSystem, Behavior}
+import org.apache.pekko.actor.{CoordinatedShutdown, ActorSystem => ClassicActorSystem}
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.util.Timeout
import hmda.api.http.admin.{InstitutionAdminHttpApi, PublishAdminHttpApi, StatsAdminHttpApi, SubmissionAdminHttpApi}
import hmda.api.http.directives.HmdaTimeDirectives._
import hmda.api.http.routes.BaseHttpApi
diff --git a/hmda/src/main/scala/hmda/api/http/HmdaFilingApi.scala b/hmda/src/main/scala/hmda/api/http/HmdaFilingApi.scala
index cfb7ebbea8..c9ef5e520f 100644
--- a/hmda/src/main/scala/hmda/api/http/HmdaFilingApi.scala
+++ b/hmda/src/main/scala/hmda/api/http/HmdaFilingApi.scala
@@ -1,14 +1,14 @@
package hmda.api.http
-import akka.actor.typed.scaladsl.Behaviors
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.typed.{ ActorSystem, Behavior }
-import akka.actor.{ CoordinatedShutdown, ActorSystem => ClassicActorSystem }
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import akka.stream.Materializer
-import akka.util.Timeout
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.typed.{ ActorSystem, Behavior }
+import org.apache.pekko.actor.{ CoordinatedShutdown, ActorSystem => ClassicActorSystem }
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.util.Timeout
import hmda.api.http.filing.submissions._
import hmda.api.http.filing.{ FilingHttpApi, InstitutionHttpApi }
import hmda.api.http.routes.BaseHttpApi
diff --git a/hmda/src/main/scala/hmda/api/http/HmdaPublicApi.scala b/hmda/src/main/scala/hmda/api/http/HmdaPublicApi.scala
index 43d247a2c3..d188d60cbb 100644
--- a/hmda/src/main/scala/hmda/api/http/HmdaPublicApi.scala
+++ b/hmda/src/main/scala/hmda/api/http/HmdaPublicApi.scala
@@ -1,17 +1,17 @@
package hmda.api.http
-import akka.actor.typed.{ActorSystem, Behavior}
-import akka.actor.{CoordinatedShutdown, ActorSystem => ClassicActorSystem}
-import akka.actor.typed.scaladsl.Behaviors
-import akka.stream.Materializer
+import org.apache.pekko.actor.typed.{ActorSystem, Behavior}
+import org.apache.pekko.actor.{CoordinatedShutdown, ActorSystem => ClassicActorSystem}
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.stream.Materializer
import hmda.api.http.public.{HmdaFileParsingHttpApi, HmdaFileValidationHttpApi, LarValidationHttpApi, TsValidationHttpApi}
import hmda.api.http.routes.BaseHttpApi
import hmda.api.http.directives.HmdaTimeDirectives._
import scala.concurrent.ExecutionContext
-import akka.http.scaladsl.server.Directives._
-import akka.actor.typed.scaladsl.adapter._
-import ch.megard.akka.http.cors.scaladsl.CorsDirectives.cors
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.http.cors.scaladsl.CorsDirectives.cors
// This is just a Guardian for starting up the API
// $COVERAGE-OFF$
diff --git a/hmda/src/main/scala/hmda/api/http/admin/InstitutionAdminHttpApi.scala b/hmda/src/main/scala/hmda/api/http/admin/InstitutionAdminHttpApi.scala
index abeebc727d..47fc0c778f 100644
--- a/hmda/src/main/scala/hmda/api/http/admin/InstitutionAdminHttpApi.scala
+++ b/hmda/src/main/scala/hmda/api/http/admin/InstitutionAdminHttpApi.scala
@@ -1,14 +1,14 @@
package hmda.api.http.admin
-import akka.cluster.sharding.typed.scaladsl.{ClusterSharding, EntityRef}
-import akka.http.scaladsl.model.headers.RawHeader
-import akka.http.scaladsl.model.{StatusCodes, Uri}
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import akka.util.Timeout
-import ch.megard.akka.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
+import org.apache.pekko.cluster.sharding.typed.scaladsl.{ ClusterSharding, EntityRef }
+import org.apache.pekko.http.scaladsl.model.headers.RawHeader
+import org.apache.pekko.http.scaladsl.model.{ StatusCodes, Uri }
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.util.Timeout
+import org.apache.pekko.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
import com.typesafe.config.Config
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.PathMatchers._
import hmda.api.http.model.ErrorResponse
import hmda.api.http.model.admin.InstitutionDeletedResponse
diff --git a/hmda/src/main/scala/hmda/api/http/admin/PublishAdminHttpApi.scala b/hmda/src/main/scala/hmda/api/http/admin/PublishAdminHttpApi.scala
index f0a9df1215..157c5247d4 100644
--- a/hmda/src/main/scala/hmda/api/http/admin/PublishAdminHttpApi.scala
+++ b/hmda/src/main/scala/hmda/api/http/admin/PublishAdminHttpApi.scala
@@ -1,16 +1,16 @@
package hmda.api.http.admin
// $COVERAGE-OFF$
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.http.scaladsl.model.StatusCodes
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import ch.megard.akka.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.http.scaladsl.model.StatusCodes
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
import com.typesafe.config.Config
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.auth.OAuth2Authorization
import hmda.publication.KafkaUtils._
-import akka.Done
-import akka.actor.typed.ActorSystem
+import org.apache.pekko.Done
+import org.apache.pekko.actor.typed.ActorSystem
import org.apache.kafka.clients.producer.{ Producer => KafkaProducer }
import hmda.messages.pubsub.HmdaTopics._
import hmda.util.http.FilingResponseUtils._
diff --git a/hmda/src/main/scala/hmda/api/http/admin/RequestReplicationClient.scala b/hmda/src/main/scala/hmda/api/http/admin/RequestReplicationClient.scala
index cc390ca898..9407ccebcb 100644
--- a/hmda/src/main/scala/hmda/api/http/admin/RequestReplicationClient.scala
+++ b/hmda/src/main/scala/hmda/api/http/admin/RequestReplicationClient.scala
@@ -1,11 +1,11 @@
package hmda.api.http.admin
// $COVERAGE-OFF$
-import akka.actor.ActorSystem
-import akka.http.scaladsl.model.headers.{Authorization, RawHeader}
-import akka.http.scaladsl.Http
-import akka.http.scaladsl.model.{HttpRequest, Uri}
-import akka.http.scaladsl.server.{Directive, Directive0, Directives, RouteResult}
-import akka.http.scaladsl.server.Directives._
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.http.scaladsl.model.headers.{Authorization, RawHeader}
+import org.apache.pekko.http.scaladsl.Http
+import org.apache.pekko.http.scaladsl.model.{HttpRequest, Uri}
+import org.apache.pekko.http.scaladsl.server.{Directive, Directive0, Directives, RouteResult}
+import org.apache.pekko.http.scaladsl.server.Directives._
import hmda.api.http.admin.RequestReplicationClient.{InternalReplicationErrorResultCode, ResultCodeHeaderName}
import org.slf4j.LoggerFactory
import cats.syntax.all._
diff --git a/hmda/src/main/scala/hmda/api/http/admin/StatsAdminHttpApi.scala b/hmda/src/main/scala/hmda/api/http/admin/StatsAdminHttpApi.scala
index 6623ac401b..4b03d47092 100644
--- a/hmda/src/main/scala/hmda/api/http/admin/StatsAdminHttpApi.scala
+++ b/hmda/src/main/scala/hmda/api/http/admin/StatsAdminHttpApi.scala
@@ -1,15 +1,15 @@
package hmda.api.http.admin
-import akka.NotUsed
-import akka.actor.typed.ActorSystem
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import akka.stream.Materializer
-import akka.stream.scaladsl.{ Sink, Source }
-import akka.util.Timeout
+import org.apache.pekko.NotUsed
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.scaladsl.{ Sink, Source }
+import org.apache.pekko.util.Timeout
import com.typesafe.config.Config
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.model.{ SignedLeiCountResponse, SignedLeiListResponse, TotalLeiCountResponse, TotalLeiListResponse }
import hmda.auth.OAuth2Authorization
import hmda.messages.filing.FilingCommands.GetLatestSignedSubmission
diff --git a/hmda/src/main/scala/hmda/api/http/admin/SubmissionAdminHttpApi.scala b/hmda/src/main/scala/hmda/api/http/admin/SubmissionAdminHttpApi.scala
index da32ceb675..cf4ddc75c3 100644
--- a/hmda/src/main/scala/hmda/api/http/admin/SubmissionAdminHttpApi.scala
+++ b/hmda/src/main/scala/hmda/api/http/admin/SubmissionAdminHttpApi.scala
@@ -1,26 +1,26 @@
package hmda.api.http.admin
// $COVERAGE-OFF$
-import akka.NotUsed
-import akka.actor.typed.ActorSystem
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.http.scaladsl.common.{CsvEntityStreamingSupport, EntityStreamingSupport}
-import akka.http.scaladsl.marshalling.ToResponseMarshallable
-import akka.http.scaladsl.model.ContentTypes.`text/csv(UTF-8)`
-import akka.http.scaladsl.model.StatusCodes.{InternalServerError, NotFound, OK}
-import akka.http.scaladsl.model.headers.ContentDispositionTypes.attachment
-import akka.http.scaladsl.model.headers.`Content-Disposition`
-import akka.http.scaladsl.model.{HttpEntity, StatusCodes}
-import akka.http.scaladsl.unmarshalling.Unmarshaller
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.{Directive1, Route}
-import akka.stream.Materializer
-import akka.stream.scaladsl.{Keep, Sink, Source}
-import akka.util.{ByteString, Timeout}
+import org.apache.pekko.NotUsed
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.http.scaladsl.common.{CsvEntityStreamingSupport, EntityStreamingSupport}
+import org.apache.pekko.http.scaladsl.marshalling.ToResponseMarshallable
+import org.apache.pekko.http.scaladsl.model.ContentTypes.`text/csv(UTF-8)`
+import org.apache.pekko.http.scaladsl.model.StatusCodes.{InternalServerError, NotFound, OK}
+import org.apache.pekko.http.scaladsl.model.headers.ContentDispositionTypes.attachment
+import org.apache.pekko.http.scaladsl.model.headers.`Content-Disposition`
+import org.apache.pekko.http.scaladsl.model.{HttpEntity, StatusCodes}
+import org.apache.pekko.http.scaladsl.unmarshalling.Unmarshaller
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.{Directive1, Route}
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.scaladsl.{Keep, Sink, Source}
+import org.apache.pekko.util.{ByteString, Timeout}
import cats.data.Validated.{Invalid, Valid}
import cats.data.ValidatedNec
import cats.implicits._
import com.typesafe.config.Config
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.admin.SubmissionAdminHttpApi.{lineCount, pipeDelimitedFileStream, validateRawSubmissionId}
import hmda.api.http.model.admin.{LeiLatestSubmissionSummaryResponse, LeiSubmissionSummaryResponse, SubmissionSummaryResponse, YearlySubmissionSummaryResponse}
import hmda.auth.OAuth2Authorization
diff --git a/hmda/src/main/scala/hmda/api/http/directives/QuarterlyFilingAuthorization.scala b/hmda/src/main/scala/hmda/api/http/directives/QuarterlyFilingAuthorization.scala
index 91dc3d946b..e5e9b51fb6 100644
--- a/hmda/src/main/scala/hmda/api/http/directives/QuarterlyFilingAuthorization.scala
+++ b/hmda/src/main/scala/hmda/api/http/directives/QuarterlyFilingAuthorization.scala
@@ -1,12 +1,12 @@
package hmda.api.http.directives
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.http.scaladsl.model.StatusCodes
-import akka.http.scaladsl.model.StatusCodes.{ BadRequest, Forbidden }
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server._
-import akka.util.Timeout
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.http.scaladsl.model.StatusCodes
+import org.apache.pekko.http.scaladsl.model.StatusCodes.{ BadRequest, Forbidden }
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server._
+import org.apache.pekko.util.Timeout
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.model.ErrorResponse
import hmda.messages.institution.InstitutionCommands.GetInstitution
import hmda.model.institution.Institution
diff --git a/hmda/src/main/scala/hmda/api/http/filing/FilingHttpApi.scala b/hmda/src/main/scala/hmda/api/http/filing/FilingHttpApi.scala
index 57016d1ce2..67fa468fc2 100644
--- a/hmda/src/main/scala/hmda/api/http/filing/FilingHttpApi.scala
+++ b/hmda/src/main/scala/hmda/api/http/filing/FilingHttpApi.scala
@@ -2,14 +2,14 @@ package hmda.api.http.filing
import java.time.Instant
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.http.scaladsl.model.headers.RawHeader
-import akka.http.scaladsl.model.{StatusCodes, Uri}
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import akka.util.Timeout
-import ch.megard.akka.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.http.scaladsl.model.headers.RawHeader
+import org.apache.pekko.http.scaladsl.model.{StatusCodes, Uri}
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.util.Timeout
+import org.apache.pekko.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.PathMatchers._
import hmda.api.http.directives.CreateFilingAuthorization._
import hmda.api.http.directives.QuarterlyFilingAuthorization.quarterlyFilingAllowed
diff --git a/hmda/src/main/scala/hmda/api/http/filing/InstitutionHttpApi.scala b/hmda/src/main/scala/hmda/api/http/filing/InstitutionHttpApi.scala
index 1fe8b878b3..ff477055d3 100644
--- a/hmda/src/main/scala/hmda/api/http/filing/InstitutionHttpApi.scala
+++ b/hmda/src/main/scala/hmda/api/http/filing/InstitutionHttpApi.scala
@@ -1,13 +1,13 @@
package hmda.api.http.filing
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.http.scaladsl.model.StatusCodes._
-import akka.http.scaladsl.model.Uri
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import akka.util.Timeout
-import ch.megard.akka.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.http.scaladsl.model.StatusCodes._
+import org.apache.pekko.http.scaladsl.model.Uri
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.util.Timeout
+import org.apache.pekko.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.PathMatchers._
import hmda.api.http.directives.QuarterlyFilingAuthorization.quarterlyFilingAllowed
import hmda.api.http.model.ErrorResponse
diff --git a/hmda/src/main/scala/hmda/api/http/filing/submissions/EditsHttpApi.scala b/hmda/src/main/scala/hmda/api/http/filing/submissions/EditsHttpApi.scala
index 46901691c4..12e46a0c44 100644
--- a/hmda/src/main/scala/hmda/api/http/filing/submissions/EditsHttpApi.scala
+++ b/hmda/src/main/scala/hmda/api/http/filing/submissions/EditsHttpApi.scala
@@ -1,18 +1,18 @@
package hmda.api.http.filing.submissions
-import akka.NotUsed
-import akka.actor.typed.ActorSystem
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.http.scaladsl.marshalling.ToResponseMarshallable
-import akka.http.scaladsl.model.headers.{ContentDispositionTypes, `Content-Disposition`}
-import akka.http.scaladsl.model.{ContentTypes, HttpEntity, HttpResponse, StatusCodes, Uri}
-import akka.http.scaladsl.server.Directives.{encodeResponse, handleRejections, _}
-import akka.http.scaladsl.server.Route
-import akka.stream.Materializer
-import akka.stream.scaladsl.{Sink, Source}
-import akka.util.{ByteString, Timeout}
-import ch.megard.akka.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.NotUsed
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.http.scaladsl.marshalling.ToResponseMarshallable
+import org.apache.pekko.http.scaladsl.model.headers.{ContentDispositionTypes, `Content-Disposition`}
+import org.apache.pekko.http.scaladsl.model.{ContentTypes, HttpEntity, HttpResponse, StatusCodes, Uri}
+import org.apache.pekko.http.scaladsl.server.Directives.{encodeResponse, handleRejections, _}
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.scaladsl.{Sink, Source}
+import org.apache.pekko.util.{ByteString, Timeout}
+import org.apache.pekko.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.PathMatchers._
import hmda.api.http.directives.QuarterlyFilingAuthorization._
import hmda.api.http.model.filing.submissions._
diff --git a/hmda/src/main/scala/hmda/api/http/filing/submissions/ParseErrorHttpApi.scala b/hmda/src/main/scala/hmda/api/http/filing/submissions/ParseErrorHttpApi.scala
index 895f8b9326..4184bd3bfe 100644
--- a/hmda/src/main/scala/hmda/api/http/filing/submissions/ParseErrorHttpApi.scala
+++ b/hmda/src/main/scala/hmda/api/http/filing/submissions/ParseErrorHttpApi.scala
@@ -1,12 +1,12 @@
package hmda.api.http.filing.submissions
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.http.scaladsl.model.{StatusCodes, Uri}
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import akka.util.Timeout
-import ch.megard.akka.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.http.scaladsl.model.{StatusCodes, Uri}
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.util.Timeout
+import org.apache.pekko.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.PathMatchers._
import hmda.api.http.directives.QuarterlyFilingAuthorization._
import hmda.api.http.model.filing.submissions.ParsingErrorSummary
diff --git a/hmda/src/main/scala/hmda/api/http/filing/submissions/SignHttpApi.scala b/hmda/src/main/scala/hmda/api/http/filing/submissions/SignHttpApi.scala
index ee05a981b5..1fa2c96b59 100644
--- a/hmda/src/main/scala/hmda/api/http/filing/submissions/SignHttpApi.scala
+++ b/hmda/src/main/scala/hmda/api/http/filing/submissions/SignHttpApi.scala
@@ -1,16 +1,18 @@
package hmda.api.http.filing.submissions
-import akka.actor.typed.ActorSystem
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.http.scaladsl.marshalling.ToResponseMarshallable
-import akka.http.scaladsl.model.headers.RawHeader
-import akka.http.scaladsl.model.{ StatusCodes, Uri }
-import akka.http.scaladsl.server.Directives.{ encodeResponse, handleRejections, _ }
-import akka.http.scaladsl.server.Route
-import akka.stream.scaladsl.Sink
-import akka.util.{ ByteString, Timeout }
-import ch.megard.akka.http.cors.scaladsl.CorsDirectives.{ cors, corsRejectionHandler }
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import scala.concurrent.{ExecutionContext, Future}
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.http.scaladsl.marshalling.ToResponseMarshallable
+import org.apache.pekko.http.scaladsl.model.headers.RawHeader
+import org.apache.pekko.http.scaladsl.model.{ StatusCodes, Uri }
+import org.apache.pekko.http.scaladsl.server.Directives.{ encodeResponse, handleRejections, _ }
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.util.Timeout
+import org.apache.pekko.http.cors.scaladsl.CorsDirectives.{ cors, corsRejectionHandler }
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
+import org.apache.pekko.stream.scaladsl.{Keep, Sink, Source}
+import org.apache.pekko.util.ByteString
import hmda.api.http.model.filing.submissions.{ EditsSign, SignedResponse }
import hmda.auth.OAuth2Authorization
import hmda.messages.institution.InstitutionCommands.{ GetInstitution, ModifyInstitution }
diff --git a/hmda/src/main/scala/hmda/api/http/filing/submissions/SubmissionHttpApi.scala b/hmda/src/main/scala/hmda/api/http/filing/submissions/SubmissionHttpApi.scala
index f96ca10530..e451ec7c6e 100644
--- a/hmda/src/main/scala/hmda/api/http/filing/submissions/SubmissionHttpApi.scala
+++ b/hmda/src/main/scala/hmda/api/http/filing/submissions/SubmissionHttpApi.scala
@@ -1,18 +1,18 @@
package hmda.api.http.filing.submissions
-import akka.actor.typed.ActorSystem
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.http.scaladsl.marshalling.ToResponseMarshallable
-import akka.http.scaladsl.model.headers.RawHeader
-import akka.http.scaladsl.model.{ HttpResponse, StatusCodes, Uri }
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import akka.stream.Materializer
-import akka.stream.scaladsl.Sink
-import akka.util.{ ByteString, Timeout }
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.http.scaladsl.marshalling.ToResponseMarshallable
+import org.apache.pekko.http.scaladsl.model.headers.RawHeader
+import org.apache.pekko.http.scaladsl.model.{ HttpResponse, StatusCodes, Uri }
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.scaladsl.Sink
+import org.apache.pekko.util.{ ByteString, Timeout }
import com.typesafe.config.Config
-import ch.megard.akka.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.PathMatchers._
import hmda.api.http.directives.CreateFilingAuthorization._
import hmda.api.http.directives.QuarterlyFilingAuthorization._
diff --git a/hmda/src/main/scala/hmda/api/http/filing/submissions/UploadHttpApi.scala b/hmda/src/main/scala/hmda/api/http/filing/submissions/UploadHttpApi.scala
index eca861e011..6c1df049ae 100644
--- a/hmda/src/main/scala/hmda/api/http/filing/submissions/UploadHttpApi.scala
+++ b/hmda/src/main/scala/hmda/api/http/filing/submissions/UploadHttpApi.scala
@@ -1,19 +1,19 @@
package hmda.api.http.filing.submissions
import java.time.Instant
-import akka.NotUsed
-import akka.actor.typed.ActorSystem
-import akka.cluster.sharding.typed.scaladsl.{ClusterSharding, EntityRef}
-import akka.http.scaladsl.model.headers.RawHeader
-import akka.http.scaladsl.model.{StatusCodes, Uri}
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import akka.stream.Materializer
-import akka.stream.scaladsl.{Flow, Framing, Sink}
-import akka.util.{ByteString, Timeout}
-import ch.megard.akka.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
+import org.apache.pekko.NotUsed
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.cluster.sharding.typed.scaladsl.{ClusterSharding, EntityRef}
+import org.apache.pekko.http.scaladsl.model.headers.RawHeader
+import org.apache.pekko.http.scaladsl.model.{StatusCodes, Uri}
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.scaladsl.{Flow, Framing, Sink}
+import org.apache.pekko.util.{ByteString, Timeout}
+import org.apache.pekko.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
import com.typesafe.config.ConfigFactory
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.PathMatchers._
import hmda.api.http.directives.QuarterlyFilingAuthorization._
import hmda.api.http.model.ErrorResponse
diff --git a/hmda/src/main/scala/hmda/api/http/filing/submissions/VerifyHttpApi.scala b/hmda/src/main/scala/hmda/api/http/filing/submissions/VerifyHttpApi.scala
index 4af0954cd6..91a5e48efd 100644
--- a/hmda/src/main/scala/hmda/api/http/filing/submissions/VerifyHttpApi.scala
+++ b/hmda/src/main/scala/hmda/api/http/filing/submissions/VerifyHttpApi.scala
@@ -1,14 +1,14 @@
package hmda.api.http.filing.submissions
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.http.scaladsl.marshalling.ToResponseMarshallable
-import akka.http.scaladsl.model.headers.RawHeader
-import akka.http.scaladsl.model.{ StatusCodes, Uri }
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import akka.util.Timeout
-import ch.megard.akka.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.http.scaladsl.marshalling.ToResponseMarshallable
+import org.apache.pekko.http.scaladsl.model.headers.RawHeader
+import org.apache.pekko.http.scaladsl.model.{ StatusCodes, Uri }
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.util.Timeout
+import org.apache.pekko.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.PathMatchers._
import hmda.api.http.directives.QuarterlyFilingAuthorization._
import hmda.api.http.model.filing.submissions.{ EditsVerification, EditsVerificationResponse }
diff --git a/hmda/src/main/scala/hmda/api/http/public/FilingValidationHttpDirectives.scala b/hmda/src/main/scala/hmda/api/http/public/FilingValidationHttpDirectives.scala
index c88b644838..75bf987fb7 100644
--- a/hmda/src/main/scala/hmda/api/http/public/FilingValidationHttpDirectives.scala
+++ b/hmda/src/main/scala/hmda/api/http/public/FilingValidationHttpDirectives.scala
@@ -1,9 +1,9 @@
package hmda.api.http.public
-import akka.http.scaladsl.model.StatusCodes.BadRequest
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.http.scaladsl.model.StatusCodes.BadRequest
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.model.public.{ SingleValidationErrorResult, ValidationErrorSummary, ValidationSingleErrorSummary }
import hmda.api.http.utils.ParserErrorUtils._
import hmda.model.filing.EditDescriptionLookup
diff --git a/hmda/src/main/scala/hmda/api/http/public/HmdaFileParsingHttpApi.scala b/hmda/src/main/scala/hmda/api/http/public/HmdaFileParsingHttpApi.scala
index 9a737b68d2..5d3550a919 100644
--- a/hmda/src/main/scala/hmda/api/http/public/HmdaFileParsingHttpApi.scala
+++ b/hmda/src/main/scala/hmda/api/http/public/HmdaFileParsingHttpApi.scala
@@ -1,16 +1,16 @@
package hmda.api.http.public
-import akka.NotUsed
-import akka.http.scaladsl.marshalling.ToResponseMarshallable
-import akka.http.scaladsl.model.headers.RawHeader
-import akka.http.scaladsl.model.{ ContentTypes, HttpEntity, StatusCodes }
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import akka.stream.scaladsl.{ Broadcast, Concat, Flow, GraphDSL, Sink, Source }
-import akka.stream.{ FlowShape, Materializer }
-import akka.util.ByteString
-import ch.megard.akka.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.NotUsed
+import org.apache.pekko.http.scaladsl.marshalling.ToResponseMarshallable
+import org.apache.pekko.http.scaladsl.model.headers.RawHeader
+import org.apache.pekko.http.scaladsl.model.{ ContentTypes, HttpEntity, StatusCodes }
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.stream.scaladsl.{ Broadcast, Concat, Flow, GraphDSL, Sink, Source }
+import org.apache.pekko.stream.{ FlowShape, Materializer }
+import org.apache.pekko.util.ByteString
+import org.apache.pekko.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.model.filing.submissions.HmdaRowParsedErrorSummary
import hmda.api.http.utils.ParserErrorUtils
import hmda.parser.filing.lar.LarCsvParser
diff --git a/hmda/src/main/scala/hmda/api/http/public/HmdaFileValidationHttpApi.scala b/hmda/src/main/scala/hmda/api/http/public/HmdaFileValidationHttpApi.scala
index 65e8debe73..833acb4a88 100644
--- a/hmda/src/main/scala/hmda/api/http/public/HmdaFileValidationHttpApi.scala
+++ b/hmda/src/main/scala/hmda/api/http/public/HmdaFileValidationHttpApi.scala
@@ -1,15 +1,15 @@
package hmda.api.http.public
-import akka.NotUsed
-import akka.http.scaladsl.marshalling.ToResponseMarshallable
-import akka.http.scaladsl.model.StatusCodes
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import akka.stream.scaladsl.{ Broadcast, Concat, Flow, GraphDSL, Sink, Source }
-import akka.stream.{ FlowShape, Materializer }
-import akka.util.ByteString
-import ch.megard.akka.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.NotUsed
+import org.apache.pekko.http.scaladsl.marshalling.ToResponseMarshallable
+import org.apache.pekko.http.scaladsl.model.StatusCodes
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.stream.scaladsl.{ Broadcast, Concat, Flow, GraphDSL, Sink, Source }
+import org.apache.pekko.stream.{ FlowShape, Materializer }
+import org.apache.pekko.util.ByteString
+import org.apache.pekko.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.model.validation.ValidationError
import hmda.model.validation.LarValidationError
import hmda.api.http.model.filing.submissions.HmdaRowParsedErrorSummary
diff --git a/hmda/src/main/scala/hmda/api/http/public/LarValidationHttpApi.scala b/hmda/src/main/scala/hmda/api/http/public/LarValidationHttpApi.scala
index eb3a742682..f2e0bb1d2c 100644
--- a/hmda/src/main/scala/hmda/api/http/public/LarValidationHttpApi.scala
+++ b/hmda/src/main/scala/hmda/api/http/public/LarValidationHttpApi.scala
@@ -1,11 +1,11 @@
package hmda.api.http.public
-import akka.http.scaladsl.marshalling.ToResponseMarshallable
-import akka.http.scaladsl.model.headers.RawHeader
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import ch.megard.akka.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.http.scaladsl.marshalling.ToResponseMarshallable
+import org.apache.pekko.http.scaladsl.model.headers.RawHeader
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.PathMatchers._
import hmda.api.http.model.public.LarValidateRequest
import hmda.api.http.public.FilingValidationHttpDirectives._
diff --git a/hmda/src/main/scala/hmda/api/http/public/TsValidationHttpApi.scala b/hmda/src/main/scala/hmda/api/http/public/TsValidationHttpApi.scala
index aaf9f400c0..4550cea344 100644
--- a/hmda/src/main/scala/hmda/api/http/public/TsValidationHttpApi.scala
+++ b/hmda/src/main/scala/hmda/api/http/public/TsValidationHttpApi.scala
@@ -1,11 +1,11 @@
package hmda.api.http.public
-import akka.http.scaladsl.marshalling.ToResponseMarshallable
-import akka.http.scaladsl.model.headers.RawHeader
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import ch.megard.akka.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.http.scaladsl.marshalling.ToResponseMarshallable
+import org.apache.pekko.http.scaladsl.model.headers.RawHeader
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.PathMatchers._
import hmda.api.http.model.public.TsValidateRequest
import hmda.api.http.public.FilingValidationHttpDirectives._
diff --git a/hmda/src/main/scala/hmda/api/ws/HmdaWSApi.scala b/hmda/src/main/scala/hmda/api/ws/HmdaWSApi.scala
index 6b58e05f88..e8be1eac65 100644
--- a/hmda/src/main/scala/hmda/api/ws/HmdaWSApi.scala
+++ b/hmda/src/main/scala/hmda/api/ws/HmdaWSApi.scala
@@ -1,14 +1,14 @@
package hmda.api.ws
-import akka.actor.CoordinatedShutdown
-import akka.actor.typed.scaladsl.Behaviors
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.typed.{ ActorSystem, Behavior }
-import akka.http.scaladsl.Http
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import akka.stream.Materializer
-import akka.{ actor, Done }
+import org.apache.pekko.actor.CoordinatedShutdown
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.typed.{ ActorSystem, Behavior }
+import org.apache.pekko.http.scaladsl.Http
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.{ actor, Done }
import hmda.api.ws.filing.submissions.SubmissionWsApi
import hmda.api.ws.routes.BaseWsApi
diff --git a/hmda/src/main/scala/hmda/api/ws/WebSocketProgressTracker.scala b/hmda/src/main/scala/hmda/api/ws/WebSocketProgressTracker.scala
index e30d957119..b67086bf27 100644
--- a/hmda/src/main/scala/hmda/api/ws/WebSocketProgressTracker.scala
+++ b/hmda/src/main/scala/hmda/api/ws/WebSocketProgressTracker.scala
@@ -1,14 +1,14 @@
package hmda.api.ws
// $COVERAGE-OFF$
-import akka.Done
-import akka.actor.typed.scaladsl.Behaviors
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.typed.{ ActorRef, ActorSystem, Behavior }
-import akka.cluster.sharding.typed.scaladsl.{ ClusterSharding, EntityRef }
-import akka.http.scaladsl.model.ws.{ BinaryMessage, Message, TextMessage }
-import akka.stream.scaladsl.{ Flow, Sink, Source, SourceQueueWithComplete }
-import akka.stream.{ Materializer, OverflowStrategy }
-import akka.util.Timeout
+import org.apache.pekko.Done
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.typed.{ ActorRef, ActorSystem, Behavior }
+import org.apache.pekko.cluster.sharding.typed.scaladsl.{ ClusterSharding, EntityRef }
+import org.apache.pekko.http.scaladsl.model.ws.{ BinaryMessage, Message, TextMessage }
+import org.apache.pekko.stream.scaladsl.{ Flow, Sink, Source, SourceQueueWithComplete }
+import org.apache.pekko.stream.{ Materializer, OverflowStrategy }
+import org.apache.pekko.util.Timeout
import hmda.api.ws.WebSocketProgressTracker.Protocol._
import hmda.api.ws.model.TrackerResponse
import hmda.messages.submission.SubmissionProcessingCommands
diff --git a/hmda/src/main/scala/hmda/api/ws/filing/submissions/SubmissionWsApi.scala b/hmda/src/main/scala/hmda/api/ws/filing/submissions/SubmissionWsApi.scala
index 0c37064bff..dd007fdb1b 100644
--- a/hmda/src/main/scala/hmda/api/ws/filing/submissions/SubmissionWsApi.scala
+++ b/hmda/src/main/scala/hmda/api/ws/filing/submissions/SubmissionWsApi.scala
@@ -2,13 +2,13 @@ package hmda.api.ws.filing.submissions
import java.time.Instant
-import akka.NotUsed
-import akka.actor.typed.ActorSystem
-import akka.http.scaladsl.model.ws.{ Message, TextMessage }
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import akka.stream.scaladsl.{ Flow, Source }
-import ch.megard.akka.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
+import org.apache.pekko.NotUsed
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.http.scaladsl.model.ws.{ Message, TextMessage }
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.stream.scaladsl.{ Flow, Source }
+import org.apache.pekko.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
import hmda.api.ws.model.{ KeepAliveWsResponse, ServerPing, SubmissionStatus, SubmissionStatusWSResponse }
import hmda.messages.submission.SubmissionEvents.{ SubmissionCreated, SubmissionEvent, SubmissionModified }
import hmda.model.filing.submission.SubmissionId
diff --git a/hmda/src/main/scala/hmda/persistence/HmdaPersistence.scala b/hmda/src/main/scala/hmda/persistence/HmdaPersistence.scala
index a78e90dd46..061a4ad51c 100644
--- a/hmda/src/main/scala/hmda/persistence/HmdaPersistence.scala
+++ b/hmda/src/main/scala/hmda/persistence/HmdaPersistence.scala
@@ -1,8 +1,8 @@
package hmda.persistence
-import akka.actor.typed.scaladsl.Behaviors
-import akka.actor.typed.{ Behavior, PostStop, PreRestart }
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.{ Behavior, PostStop, PreRestart }
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
import com.typesafe.config.ConfigFactory
import hmda.persistence.filing.FilingPersistence
import hmda.persistence.institution.InstitutionPersistence
diff --git a/hmda/src/main/scala/hmda/persistence/filing/FilingPersistence.scala b/hmda/src/main/scala/hmda/persistence/filing/FilingPersistence.scala
index 11aab498f5..9b6328fe89 100644
--- a/hmda/src/main/scala/hmda/persistence/filing/FilingPersistence.scala
+++ b/hmda/src/main/scala/hmda/persistence/filing/FilingPersistence.scala
@@ -1,12 +1,12 @@
package hmda.persistence.filing
-import akka.actor.typed.scaladsl.{ ActorContext, Behaviors }
-import akka.actor.typed.{ ActorRef, Behavior }
-import akka.cluster.sharding.typed.ShardingEnvelope
-import akka.cluster.sharding.typed.scaladsl.{ ClusterSharding, EntityRef, EntityTypeKey }
-import akka.persistence.typed.PersistenceId
-import akka.persistence.typed.scaladsl.EventSourcedBehavior.CommandHandler
-import akka.persistence.typed.scaladsl.{ Effect, EventSourcedBehavior, RetentionCriteria }
+import org.apache.pekko.actor.typed.scaladsl.{ ActorContext, Behaviors }
+import org.apache.pekko.actor.typed.{ ActorRef, Behavior }
+import org.apache.pekko.cluster.sharding.typed.ShardingEnvelope
+import org.apache.pekko.cluster.sharding.typed.scaladsl.{ ClusterSharding, EntityRef, EntityTypeKey }
+import org.apache.pekko.persistence.typed.PersistenceId
+import org.apache.pekko.persistence.typed.scaladsl.EventSourcedBehavior.CommandHandler
+import org.apache.pekko.persistence.typed.scaladsl.{ Effect, EventSourcedBehavior, RetentionCriteria }
import com.typesafe.scalalogging.LazyLogging
import hmda.messages.filing.FilingCommands._
import hmda.messages.filing.FilingEvents.{ FilingCreated, FilingEvent, SubmissionAdded, SubmissionUpdated }
diff --git a/hmda/src/main/scala/hmda/persistence/institution/InstitutionPersistence.scala b/hmda/src/main/scala/hmda/persistence/institution/InstitutionPersistence.scala
index 8343bb887e..45b7cfb945 100644
--- a/hmda/src/main/scala/hmda/persistence/institution/InstitutionPersistence.scala
+++ b/hmda/src/main/scala/hmda/persistence/institution/InstitutionPersistence.scala
@@ -1,14 +1,14 @@
package hmda.persistence.institution
-import akka.Done
-import akka.actor.typed.scaladsl.{ActorContext, Behaviors}
-import akka.actor.typed.{ActorRef, ActorSystem, Behavior}
-import akka.cluster.sharding.typed.ShardingEnvelope
-import akka.cluster.sharding.typed.scaladsl.{ClusterSharding, EntityRef}
-import akka.persistence.typed.PersistenceId
-import akka.persistence.typed.scaladsl.EventSourcedBehavior.CommandHandler
-import akka.persistence.typed.scaladsl.{Effect, EventSourcedBehavior, RetentionCriteria}
-import akka.stream.Materializer
+import org.apache.pekko.Done
+import org.apache.pekko.actor.typed.scaladsl.{ActorContext, Behaviors}
+import org.apache.pekko.actor.typed.{ActorRef, ActorSystem, Behavior}
+import org.apache.pekko.cluster.sharding.typed.ShardingEnvelope
+import org.apache.pekko.cluster.sharding.typed.scaladsl.{ClusterSharding, EntityRef}
+import org.apache.pekko.persistence.typed.PersistenceId
+import org.apache.pekko.persistence.typed.scaladsl.EventSourcedBehavior.CommandHandler
+import org.apache.pekko.persistence.typed.scaladsl.{Effect, EventSourcedBehavior, RetentionCriteria}
+import org.apache.pekko.stream.Materializer
import com.typesafe.config.Config
import hmda.HmdaPlatform.{institutionKafkaProducer, log}
import hmda.messages.institution.InstitutionCommands._
diff --git a/hmda/src/main/scala/hmda/persistence/submission/EditDetailsPersistence.scala b/hmda/src/main/scala/hmda/persistence/submission/EditDetailsPersistence.scala
index 014bc92672..0138ef68e1 100644
--- a/hmda/src/main/scala/hmda/persistence/submission/EditDetailsPersistence.scala
+++ b/hmda/src/main/scala/hmda/persistence/submission/EditDetailsPersistence.scala
@@ -1,12 +1,12 @@
package hmda.persistence.submission
-import akka.actor.typed.scaladsl.{ ActorContext, Behaviors }
-import akka.actor.typed.{ ActorRef, Behavior }
-import akka.cluster.sharding.typed.ShardingEnvelope
-import akka.cluster.sharding.typed.scaladsl.{ ClusterSharding, EntityRef }
-import akka.persistence.typed.PersistenceId
-import akka.persistence.typed.scaladsl.EventSourcedBehavior.CommandHandler
-import akka.persistence.typed.scaladsl.{ Effect, EventSourcedBehavior }
+import org.apache.pekko.actor.typed.scaladsl.{ ActorContext, Behaviors }
+import org.apache.pekko.actor.typed.{ ActorRef, Behavior }
+import org.apache.pekko.cluster.sharding.typed.ShardingEnvelope
+import org.apache.pekko.cluster.sharding.typed.scaladsl.{ ClusterSharding, EntityRef }
+import org.apache.pekko.persistence.typed.PersistenceId
+import org.apache.pekko.persistence.typed.scaladsl.EventSourcedBehavior.CommandHandler
+import org.apache.pekko.persistence.typed.scaladsl.{ Effect, EventSourcedBehavior }
import hmda.messages.submission.EditDetailsCommands.{ EditDetailsPersistenceCommand, GetEditRowCount, PersistEditDetails, StopEditDetails }
import hmda.messages.submission.EditDetailsEvents.{ EditDetailsAdded, EditDetailsPersistenceEvent, EditDetailsRowCounted }
import hmda.model.filing.submission.SubmissionId
diff --git a/hmda/src/main/scala/hmda/persistence/submission/HmdaParserError.scala b/hmda/src/main/scala/hmda/persistence/submission/HmdaParserError.scala
index fefd62bc66..028415c664 100644
--- a/hmda/src/main/scala/hmda/persistence/submission/HmdaParserError.scala
+++ b/hmda/src/main/scala/hmda/persistence/submission/HmdaParserError.scala
@@ -1,16 +1,16 @@
package hmda.persistence.submission
-import akka.actor.typed.scaladsl.{ ActorContext, Behaviors }
-import akka.actor.typed.{ ActorRef, ActorSystem, Behavior, DispatcherSelector }
-import akka.cluster.sharding.typed.ShardingEnvelope
-import akka.cluster.sharding.typed.scaladsl.{ ClusterSharding, EntityRef }
-import akka.persistence.typed.PersistenceId
-import akka.persistence.typed.scaladsl.EventSourcedBehavior.CommandHandler
-import akka.persistence.typed.scaladsl.{ Effect, EventSourcedBehavior, RetentionCriteria }
-import akka.stream.Materializer
-import akka.stream.scaladsl.{ Sink, Source }
-import akka.stream.typed.scaladsl.ActorFlow
-import akka.util.{ ByteString, Timeout }
+import org.apache.pekko.actor.typed.scaladsl.{ ActorContext, Behaviors }
+import org.apache.pekko.actor.typed.{ ActorRef, ActorSystem, Behavior, DispatcherSelector }
+import org.apache.pekko.cluster.sharding.typed.ShardingEnvelope
+import org.apache.pekko.cluster.sharding.typed.scaladsl.{ ClusterSharding, EntityRef }
+import org.apache.pekko.persistence.typed.PersistenceId
+import org.apache.pekko.persistence.typed.scaladsl.EventSourcedBehavior.CommandHandler
+import org.apache.pekko.persistence.typed.scaladsl.{ Effect, EventSourcedBehavior, RetentionCriteria }
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.scaladsl.{ Sink, Source }
+import org.apache.pekko.stream.typed.scaladsl.ActorFlow
+import org.apache.pekko.util.{ ByteString, Timeout }
import com.typesafe.config.ConfigFactory
import hmda.api.http.utils.ParserErrorUtils._
import hmda.messages.submission.SubmissionProcessingCommands._
@@ -51,7 +51,7 @@ object HmdaParserError extends HmdaTypedPersistentActor[SubmissionProcessingComm
val log = ctx.log
implicit val system: ActorSystem[_] = ctx.system
implicit val materializer: Materializer = Materializer(ctx)
- implicit val blockingEc: ExecutionContext = system.dispatchers.lookup(DispatcherSelector.fromConfig("akka.blocking-parser-dispatcher"))
+ implicit val blockingEc: ExecutionContext = system.dispatchers.lookup(DispatcherSelector.fromConfig("pekko.blocking-parser-dispatcher"))
val sharding = ClusterSharding(system)
cmd match {
diff --git a/hmda/src/main/scala/hmda/persistence/submission/HmdaProcessingUtils.scala b/hmda/src/main/scala/hmda/persistence/submission/HmdaProcessingUtils.scala
index d7629e0ffa..66985f97d4 100644
--- a/hmda/src/main/scala/hmda/persistence/submission/HmdaProcessingUtils.scala
+++ b/hmda/src/main/scala/hmda/persistence/submission/HmdaProcessingUtils.scala
@@ -1,12 +1,12 @@
package hmda.persistence.submission
-import akka.NotUsed
-import akka.actor.typed.ActorSystem
-import akka.cluster.sharding.typed.scaladsl.{ ClusterSharding, EntityRef }
-import akka.stream.scaladsl.Source
+import org.apache.pekko.NotUsed
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.cluster.sharding.typed.scaladsl.{ ClusterSharding, EntityRef }
+import org.apache.pekko.stream.scaladsl.Source
import hmda.messages.submission.HmdaRawDataEvents.LineAdded
import hmda.query.HmdaQuery._
-import akka.util.Timeout
+import org.apache.pekko.util.Timeout
import hmda.messages.submission.SubmissionCommands.{ GetSubmission, ModifySubmission, SubmissionCommand }
import hmda.messages.submission.SubmissionEvents.SubmissionEvent
import hmda.messages.submission.SubmissionManagerCommands.UpdateSubmissionStatus
diff --git a/hmda/src/main/scala/hmda/persistence/submission/HmdaRawData.scala b/hmda/src/main/scala/hmda/persistence/submission/HmdaRawData.scala
index 428e931417..6739b6f74c 100644
--- a/hmda/src/main/scala/hmda/persistence/submission/HmdaRawData.scala
+++ b/hmda/src/main/scala/hmda/persistence/submission/HmdaRawData.scala
@@ -1,12 +1,12 @@
package hmda.persistence.submission
-import akka.actor.typed.scaladsl.{ActorContext, Behaviors}
-import akka.actor.typed.{ActorRef, Behavior}
-import akka.cluster.sharding.typed.ShardingEnvelope
-import akka.cluster.sharding.typed.scaladsl.{ClusterSharding, EntityRef}
-import akka.persistence.typed.PersistenceId
-import akka.persistence.typed.scaladsl.EventSourcedBehavior.CommandHandler
-import akka.persistence.typed.scaladsl.{Effect, EventSourcedBehavior, RetentionCriteria}
+import org.apache.pekko.actor.typed.scaladsl.{ActorContext, Behaviors}
+import org.apache.pekko.actor.typed.{ActorRef, Behavior}
+import org.apache.pekko.cluster.sharding.typed.ShardingEnvelope
+import org.apache.pekko.cluster.sharding.typed.scaladsl.{ClusterSharding, EntityRef}
+import org.apache.pekko.persistence.typed.PersistenceId
+import org.apache.pekko.persistence.typed.scaladsl.EventSourcedBehavior.CommandHandler
+import org.apache.pekko.persistence.typed.scaladsl.{Effect, EventSourcedBehavior, RetentionCriteria}
import hmda.messages.submission.HmdaRawDataCommands.{AddLines, HmdaRawDataCommand, StopRawData}
import hmda.messages.submission.HmdaRawDataEvents.{HmdaRawDataEvent, LineAdded}
import hmda.messages.submission.HmdaRawDataReplies.LinesAdded
diff --git a/hmda/src/main/scala/hmda/persistence/submission/HmdaValidationError.scala b/hmda/src/main/scala/hmda/persistence/submission/HmdaValidationError.scala
index 19ee7a927e..4aa2fcd9f5 100644
--- a/hmda/src/main/scala/hmda/persistence/submission/HmdaValidationError.scala
+++ b/hmda/src/main/scala/hmda/persistence/submission/HmdaValidationError.scala
@@ -1,20 +1,20 @@
package hmda.persistence.submission
import java.time.Instant
-import akka.actor.typed._
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.typed.scaladsl.{ActorContext, Behaviors}
-import akka.cluster.sharding.typed.ShardingEnvelope
-import akka.cluster.sharding.typed.scaladsl.{ClusterSharding, EntityRef}
-import akka.pattern.ask
-import akka.persistence.typed.scaladsl.EventSourcedBehavior.{CommandHandler, EventHandler}
-import akka.persistence.typed.scaladsl.{Effect, EventSourcedBehavior, RetentionCriteria}
-import akka.persistence.typed.{PersistenceId, RecoveryCompleted}
-import akka.stream.Materializer
-import akka.stream.scaladsl.{Sink, Source, _}
-import akka.stream.typed.scaladsl.ActorFlow
-import akka.util.{ByteString, Timeout}
-import akka.{Done, NotUsed}
+import org.apache.pekko.actor.typed._
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.typed.scaladsl.{ActorContext, Behaviors}
+import org.apache.pekko.cluster.sharding.typed.ShardingEnvelope
+import org.apache.pekko.cluster.sharding.typed.scaladsl.{ClusterSharding, EntityRef}
+import org.apache.pekko.pattern.ask
+import org.apache.pekko.persistence.typed.scaladsl.EventSourcedBehavior.{CommandHandler, EventHandler}
+import org.apache.pekko.persistence.typed.scaladsl.{Effect, EventSourcedBehavior, RetentionCriteria}
+import org.apache.pekko.persistence.typed.{PersistenceId, RecoveryCompleted}
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.scaladsl.{Sink, Source, _}
+import org.apache.pekko.stream.typed.scaladsl.ActorFlow
+import org.apache.pekko.util.{ByteString, Timeout}
+import org.apache.pekko.{Done, NotUsed}
import com.typesafe.config.Config
import com.typesafe.scalalogging.StrictLogging
import hmda.HmdaPlatform.stringKafkaProducer
@@ -90,7 +90,7 @@ object HmdaValidationError
): CommandHandler[SubmissionProcessingCommand, SubmissionProcessingEvent, HmdaValidationErrorState] = { (state, cmd) =>
val log = ctx.log
implicit val system: ActorSystem[_] = ctx.system
- implicit val blockingEc: ExecutionContext = system.dispatchers.lookup(DispatcherSelector.fromConfig("akka.blocking-quality-dispatcher"))
+ implicit val blockingEc: ExecutionContext = system.dispatchers.lookup(DispatcherSelector.fromConfig("pekko.blocking-quality-dispatcher"))
val materializer = implicitly[Materializer]
val config = system.settings.config
diff --git a/hmda/src/main/scala/hmda/persistence/submission/SubmissionManager.scala b/hmda/src/main/scala/hmda/persistence/submission/SubmissionManager.scala
index b219162328..d0187fd24a 100644
--- a/hmda/src/main/scala/hmda/persistence/submission/SubmissionManager.scala
+++ b/hmda/src/main/scala/hmda/persistence/submission/SubmissionManager.scala
@@ -1,9 +1,9 @@
package hmda.persistence.submission
-import akka.actor.typed.scaladsl.Behaviors
-import akka.actor.typed.{ActorRef, Behavior}
-import akka.cluster.sharding.typed.ShardingEnvelope
-import akka.cluster.sharding.typed.scaladsl.{ClusterSharding, EntityRef}
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.{ActorRef, Behavior}
+import org.apache.pekko.cluster.sharding.typed.ShardingEnvelope
+import org.apache.pekko.cluster.sharding.typed.scaladsl.{ClusterSharding, EntityRef}
import hmda.actor.HmdaTypedActor
import hmda.messages.submission.SubmissionCommands.ModifySubmission
import hmda.messages.submission.SubmissionEvents.{SubmissionEvent, SubmissionModified}
diff --git a/hmda/src/main/scala/hmda/persistence/submission/SubmissionPersistence.scala b/hmda/src/main/scala/hmda/persistence/submission/SubmissionPersistence.scala
index 1f3a3f3b43..adbb07e391 100644
--- a/hmda/src/main/scala/hmda/persistence/submission/SubmissionPersistence.scala
+++ b/hmda/src/main/scala/hmda/persistence/submission/SubmissionPersistence.scala
@@ -2,13 +2,13 @@ package hmda.persistence.submission
import java.time.Instant
-import akka.actor.typed.scaladsl.{ ActorContext, Behaviors }
-import akka.actor.typed.{ ActorRef, Behavior }
-import akka.cluster.sharding.typed.ShardingEnvelope
-import akka.cluster.sharding.typed.scaladsl.{ ClusterSharding, EntityRef }
-import akka.persistence.typed.PersistenceId
-import akka.persistence.typed.scaladsl.EventSourcedBehavior.CommandHandler
-import akka.persistence.typed.scaladsl.{ Effect, EventSourcedBehavior, RetentionCriteria }
+import org.apache.pekko.actor.typed.scaladsl.{ ActorContext, Behaviors }
+import org.apache.pekko.actor.typed.{ ActorRef, Behavior }
+import org.apache.pekko.cluster.sharding.typed.ShardingEnvelope
+import org.apache.pekko.cluster.sharding.typed.scaladsl.{ ClusterSharding, EntityRef }
+import org.apache.pekko.persistence.typed.PersistenceId
+import org.apache.pekko.persistence.typed.scaladsl.EventSourcedBehavior.CommandHandler
+import org.apache.pekko.persistence.typed.scaladsl.{ Effect, EventSourcedBehavior, RetentionCriteria }
import hmda.messages.filing.FilingCommands.{ AddSubmission, UpdateSubmission }
import hmda.messages.submission.SubmissionCommands._
import hmda.messages.submission.SubmissionEvents.{ SubmissionCreated, SubmissionEvent, SubmissionModified, SubmissionNotExists }
diff --git a/hmda/src/main/scala/hmda/persistence/submission/ValidationProgressTracker.scala b/hmda/src/main/scala/hmda/persistence/submission/ValidationProgressTracker.scala
index 49ac0bbd46..8d66ba4740 100644
--- a/hmda/src/main/scala/hmda/persistence/submission/ValidationProgressTracker.scala
+++ b/hmda/src/main/scala/hmda/persistence/submission/ValidationProgressTracker.scala
@@ -1,9 +1,9 @@
package hmda.persistence.submission
-import akka.actor.typed.scaladsl.Behaviors
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.typed.{ Behavior, Terminated }
-import akka.actor.{ ActorRef => ClassicActorRef }
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.typed.{ Behavior, Terminated }
+import org.apache.pekko.actor.{ ActorRef => ClassicActorRef }
import hmda.messages.submission.ValidationProgressTrackerCommands._
import hmda.model.processing.state.{ HmdaValidationErrorState, ValidationProgressTrackerState, ValidationType }
// $COVERAGE-OFF$
diff --git a/hmda/src/main/scala/hmda/publication/HmdaPublication.scala b/hmda/src/main/scala/hmda/publication/HmdaPublication.scala
index d500215690..bf5f64f63f 100644
--- a/hmda/src/main/scala/hmda/publication/HmdaPublication.scala
+++ b/hmda/src/main/scala/hmda/publication/HmdaPublication.scala
@@ -1,7 +1,7 @@
package hmda.publication
-import akka.actor.typed.{ Behavior, PostStop, PreRestart }
-import akka.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.{ Behavior, PostStop, PreRestart }
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
object HmdaPublication {
diff --git a/hmda/src/main/scala/hmda/util/SourceUtils.scala b/hmda/src/main/scala/hmda/util/SourceUtils.scala
index 81d5c73963..69720dd088 100644
--- a/hmda/src/main/scala/hmda/util/SourceUtils.scala
+++ b/hmda/src/main/scala/hmda/util/SourceUtils.scala
@@ -1,8 +1,8 @@
package hmda.util
-import akka.NotUsed
-import akka.stream.Materializer
-import akka.stream.scaladsl.{ Sink, Source }
+import org.apache.pekko.NotUsed
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.scaladsl.{ Sink, Source }
import scala.collection.immutable
import scala.concurrent.Future
diff --git a/hmda/src/main/scala/hmda/validation/HmdaValidation.scala b/hmda/src/main/scala/hmda/validation/HmdaValidation.scala
index aefbf114eb..0b5e0b997d 100644
--- a/hmda/src/main/scala/hmda/validation/HmdaValidation.scala
+++ b/hmda/src/main/scala/hmda/validation/HmdaValidation.scala
@@ -1,7 +1,7 @@
package hmda.validation
-import akka.actor.typed.{ Behavior, PostStop, PreRestart }
-import akka.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.{ Behavior, PostStop, PreRestart }
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
object HmdaValidation {
diff --git a/hmda/src/main/scala/hmda/validation/aggregate/DistinctElements.scala b/hmda/src/main/scala/hmda/validation/aggregate/DistinctElements.scala
index 842c56a60c..ec804333a2 100644
--- a/hmda/src/main/scala/hmda/validation/aggregate/DistinctElements.scala
+++ b/hmda/src/main/scala/hmda/validation/aggregate/DistinctElements.scala
@@ -1,9 +1,9 @@
package hmda.validation.aggregate
-import akka.NotUsed
-import akka.stream.Materializer
-import akka.stream.scaladsl.{ Keep, Sink, Source }
-import akka.util.ByteString
+import org.apache.pekko.NotUsed
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.scaladsl.{ Keep, Sink, Source }
+import org.apache.pekko.util.ByteString
import com.typesafe.scalalogging.StrictLogging
import hmda.model.filing.lar.LoanApplicationRegister
import hmda.model.filing.lar.enums.LoanOriginated
diff --git a/hmda/src/main/scala/hmda/validation/engine/ValidationEngine.scala b/hmda/src/main/scala/hmda/validation/engine/ValidationEngine.scala
index e3f78d6939..2972b45f78 100644
--- a/hmda/src/main/scala/hmda/validation/engine/ValidationEngine.scala
+++ b/hmda/src/main/scala/hmda/validation/engine/ValidationEngine.scala
@@ -1,7 +1,7 @@
package hmda.validation.engine
-import akka.stream.Materializer
-import akka.stream.scaladsl.{ Sink, Source }
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.scaladsl.{ Sink, Source }
import cats.data.Validated
import cats.implicits._
import hmda.model.validation._
diff --git a/hmda/src/main/scala/hmda/validation/filing/MacroValidationFlow.scala b/hmda/src/main/scala/hmda/validation/filing/MacroValidationFlow.scala
index 51d32dc87a..5095b0e830 100644
--- a/hmda/src/main/scala/hmda/validation/filing/MacroValidationFlow.scala
+++ b/hmda/src/main/scala/hmda/validation/filing/MacroValidationFlow.scala
@@ -1,9 +1,9 @@
package hmda.validation.filing
-import akka.NotUsed
-import akka.actor.typed.ActorSystem
-import akka.stream.Materializer
-import akka.stream.scaladsl.Source
+import org.apache.pekko.NotUsed
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.scaladsl.Source
import com.typesafe.config.ConfigFactory
import hmda.model.filing.lar.LoanApplicationRegister
import hmda.model.filing.lar.enums._
diff --git a/hmda/src/main/scala/hmda/validation/filing/ValidationFlow.scala b/hmda/src/main/scala/hmda/validation/filing/ValidationFlow.scala
index a7f1ebd155..5266617e7f 100644
--- a/hmda/src/main/scala/hmda/validation/filing/ValidationFlow.scala
+++ b/hmda/src/main/scala/hmda/validation/filing/ValidationFlow.scala
@@ -1,9 +1,9 @@
package hmda.validation.filing
-import akka.NotUsed
-import akka.stream.{ FlowShape, Materializer }
-import akka.stream.scaladsl.{ Broadcast, Concat, Flow, GraphDSL }
-import akka.util.ByteString
+import org.apache.pekko.NotUsed
+import org.apache.pekko.stream.{ FlowShape, Materializer }
+import org.apache.pekko.stream.scaladsl.{ Broadcast, Concat, Flow, GraphDSL }
+import org.apache.pekko.util.ByteString
import cats.Semigroup
import hmda.model.filing.EditDescriptionLookup.config
import hmda.model.filing.{ EditDescriptionLookup, PipeDelimited }
diff --git a/hmda/src/test/resources/application.conf b/hmda/src/test/resources/application.conf
index 80acb71aed..d459bd6f2b 100644
--- a/hmda/src/test/resources/application.conf
+++ b/hmda/src/test/resources/application.conf
@@ -1,6 +1,6 @@
include "persistence.conf"
-akka {
+pekko {
stdout-loglevel = OFF
loglevel = OFF
@@ -35,6 +35,9 @@ akka {
}
datastax-java-driver {
+ basic.request {
+ timeout = 10 seconds
+ }
basic {
contact-points = ["localhost:9042"]
load-balancing-policy.local-datacenter = "datacenter1"
diff --git a/hmda/src/test/scala/hmda/api/http/IntegrationQuarterlySpec.scala b/hmda/src/test/scala/hmda/api/http/IntegrationQuarterlySpec.scala
index e6ecaa1c72..f6c4122d06 100644
--- a/hmda/src/test/scala/hmda/api/http/IntegrationQuarterlySpec.scala
+++ b/hmda/src/test/scala/hmda/api/http/IntegrationQuarterlySpec.scala
@@ -1,14 +1,14 @@
package hmda.api.http
-import akka.actor.typed.ActorSystem
-import akka.actor.typed.scaladsl.adapter._
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.cluster.typed.{Cluster, Join}
-import akka.http.scaladsl.model.StatusCodes
-import akka.http.scaladsl.model.StatusCodes.Created
-import akka.http.scaladsl.testkit.ScalatestRouteTest
-import akka.stream.scaladsl.Sink
-import akka.util.Timeout
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.cluster.typed.{Cluster, Join}
+import org.apache.pekko.http.scaladsl.model.StatusCodes
+import org.apache.pekko.http.scaladsl.model.StatusCodes.Created
+import org.apache.pekko.http.scaladsl.testkit.ScalatestRouteTest
+import org.apache.pekko.stream.scaladsl.Sink
+import org.apache.pekko.util.Timeout
import com.typesafe.config.Config
import hmda.api.http.admin.{ InstitutionAdminHttpApi, SubmissionAdminHttpApi }
import hmda.api.http.filing.submissions._
@@ -20,7 +20,7 @@ import hmda.model.filing.FilingDetails
import hmda.model.filing.submission.{Submission, SubmissionId}
import hmda.model.institution.Institution
import hmda.model.institution.InstitutionGenerators.institutionGen
-import hmda.persistence.AkkaCassandraPersistenceSpec
+import hmda.persistence.PekkoCassandraPersistenceSpec
import hmda.persistence.filing.FilingPersistence
import hmda.persistence.institution.InstitutionPersistence
import hmda.persistence.submission._
@@ -37,7 +37,7 @@ import scala.concurrent.{Await, ExecutionContext}
import scala.util.Random
class IntegrationQuarterlySpec
- extends AkkaCassandraPersistenceSpec
+ extends PekkoCassandraPersistenceSpec
with MustMatchers
with ScalatestRouteTest
with FileUploadUtils
@@ -111,7 +111,7 @@ class IntegrationQuarterlySpec
"IntegrationQuarterlySpec" must {
"run through for a quarterly submission" in {
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
val institution = Post("/institutions", sampleInstitutionQuarterly) ~> institutionAdminRoute(oAuth2Authorization) ~> check {
response.status mustBe Created
responseAs[Institution]
diff --git a/hmda/src/test/scala/hmda/api/http/IntegrationSpec.scala b/hmda/src/test/scala/hmda/api/http/IntegrationSpec.scala
index 818a0fff2f..b41a5022a9 100644
--- a/hmda/src/test/scala/hmda/api/http/IntegrationSpec.scala
+++ b/hmda/src/test/scala/hmda/api/http/IntegrationSpec.scala
@@ -1,15 +1,15 @@
package hmda.api.http
-import akka.actor.typed.ActorSystem
-import akka.actor.typed.scaladsl.adapter._
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.cluster.typed.{Cluster, Join}
-import akka.http.scaladsl.model.StatusCodes
-import akka.http.scaladsl.model.StatusCodes.Created
-import akka.http.scaladsl.model.headers.{ContentDispositionTypes, `Content-Disposition`}
-import akka.http.scaladsl.testkit.{ScalatestRouteTest, WSProbe}
-import akka.stream.scaladsl.Sink
-import akka.util.Timeout
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.cluster.typed.{Cluster, Join}
+import org.apache.pekko.http.scaladsl.model.StatusCodes
+import org.apache.pekko.http.scaladsl.model.StatusCodes.Created
+import org.apache.pekko.http.scaladsl.model.headers.{ContentDispositionTypes, `Content-Disposition`}
+import org.apache.pekko.http.scaladsl.testkit.{ScalatestRouteTest, WSProbe}
+import org.apache.pekko.stream.scaladsl.Sink
+import org.apache.pekko.util.Timeout
import com.typesafe.config.Config
import hmda.api.http.admin.{InstitutionAdminHttpApi, SubmissionAdminHttpApi}
import hmda.api.http.filing.submissions._
@@ -22,7 +22,7 @@ import hmda.model.filing.FilingDetails
import hmda.model.filing.submission.{Submission, SubmissionId}
import hmda.model.institution.Institution
import hmda.model.institution.InstitutionGenerators.institutionGen
-import hmda.persistence.AkkaCassandraPersistenceSpec
+import hmda.persistence.PekkoCassandraPersistenceSpec
import hmda.persistence.filing.FilingPersistence
import hmda.persistence.institution.InstitutionPersistence
import hmda.persistence.submission._
@@ -38,7 +38,7 @@ import scala.concurrent.duration._
import scala.concurrent.{Await, ExecutionContext}
import scala.util.Random
-class IntegrationSpec extends AkkaCassandraPersistenceSpec
+class IntegrationSpec extends PekkoCassandraPersistenceSpec
with MustMatchers
with ScalatestRouteTest
with FileUploadUtils
@@ -113,7 +113,7 @@ class IntegrationSpec extends AkkaCassandraPersistenceSpec
"IntegrationSpec" must {
"run through the process for a yearly submission" in {
- import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+ import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
val institution = Post("/institutions", sampleInstitution) ~> institutionAdminRoute(oAuth2Authorization) ~> check {
response.status mustBe Created
responseAs[Institution]
diff --git a/hmda/src/test/scala/hmda/api/http/admin/InstitutionAdminHttpApiSpec.scala b/hmda/src/test/scala/hmda/api/http/admin/InstitutionAdminHttpApiSpec.scala
index 62c0939550..375153d3e0 100644
--- a/hmda/src/test/scala/hmda/api/http/admin/InstitutionAdminHttpApiSpec.scala
+++ b/hmda/src/test/scala/hmda/api/http/admin/InstitutionAdminHttpApiSpec.scala
@@ -1,21 +1,22 @@
package hmda.api.http.admin
-import akka.actor.typed.ActorSystem
-import akka.actor.typed.scaladsl.adapter._
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.cluster.typed.{ Cluster, Join }
-import akka.http.scaladsl.model.StatusCodes
-import akka.http.scaladsl.server.Route
-import akka.http.scaladsl.testkit.{ RouteTestTimeout, ScalatestRouteTest }
-import akka.testkit._
-import akka.util.Timeout
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.cluster.typed.{ Cluster, Join }
+import org.apache.pekko.http.scaladsl.model.StatusCodes
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.testkit.{ RouteTestTimeout, ScalatestRouteTest }
+import org.apache.pekko.actor.testkit.typed.scaladsl.TestProbe
+import org.apache.pekko.testkit._
+import org.apache.pekko.util.Timeout
import com.typesafe.config.Config
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.model.admin.InstitutionDeletedResponse
import hmda.auth.{ KeycloakTokenVerifier, OAuth2Authorization }
import hmda.model.institution.Institution
import hmda.model.institution.InstitutionGenerators._
-import hmda.persistence.AkkaCassandraPersistenceSpec
+import hmda.persistence.PekkoCassandraPersistenceSpec
import hmda.persistence.institution.InstitutionPersistence
import org.scalatest.MustMatchers
import org.slf4j.{ Logger, LoggerFactory }
@@ -23,7 +24,7 @@ import org.slf4j.{ Logger, LoggerFactory }
import scala.concurrent.duration._
import scala.util.Random
-class InstitutionAdminHttpApiSpec extends AkkaCassandraPersistenceSpec with MustMatchers with ScalatestRouteTest {
+class InstitutionAdminHttpApiSpec extends PekkoCassandraPersistenceSpec with MustMatchers with ScalatestRouteTest {
val duration = 10.seconds
diff --git a/hmda/src/test/scala/hmda/api/http/directives/QuarterlyFilingAuthorizationSpec.scala b/hmda/src/test/scala/hmda/api/http/directives/QuarterlyFilingAuthorizationSpec.scala
index 4bbbde0ebe..0bea97437f 100644
--- a/hmda/src/test/scala/hmda/api/http/directives/QuarterlyFilingAuthorizationSpec.scala
+++ b/hmda/src/test/scala/hmda/api/http/directives/QuarterlyFilingAuthorizationSpec.scala
@@ -1,26 +1,26 @@
package hmda.api.http.directives
-import akka.actor.testkit.typed.scaladsl.TestProbe
-import akka.actor.typed.ActorSystem
-import akka.actor.typed.scaladsl.adapter._
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.cluster.typed.{ Cluster, Join }
-import akka.http.scaladsl.model.StatusCodes._
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import akka.http.scaladsl.testkit.ScalatestRouteTest
-import akka.util.Timeout
+import org.apache.pekko.actor.testkit.typed.scaladsl.TestProbe
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.cluster.typed.{ Cluster, Join }
+import org.apache.pekko.http.scaladsl.model.StatusCodes._
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.testkit.ScalatestRouteTest
+import org.apache.pekko.util.Timeout
import hmda.messages.institution.InstitutionCommands.CreateInstitution
import hmda.messages.institution.InstitutionEvents.{ InstitutionCreated, InstitutionEvent }
import hmda.model.institution.Institution
-import hmda.persistence.AkkaCassandraPersistenceSpec
+import hmda.persistence.PekkoCassandraPersistenceSpec
import hmda.persistence.institution.InstitutionPersistence
import org.scalatest.{ Assertion, MustMatchers }
import org.slf4j.{ Logger, LoggerFactory }
import scala.concurrent.duration._
-class QuarterlyFilingAuthorizationSpec extends AkkaCassandraPersistenceSpec with MustMatchers with ScalatestRouteTest {
+class QuarterlyFilingAuthorizationSpec extends PekkoCassandraPersistenceSpec with MustMatchers with ScalatestRouteTest {
override implicit val typedSystem: ActorSystem[_] = system.toTyped
val sharding = ClusterSharding(typedSystem)
diff --git a/hmda/src/test/scala/hmda/api/http/filing/FileUploadUtils.scala b/hmda/src/test/scala/hmda/api/http/filing/FileUploadUtils.scala
index 3af9ce2116..80849f968b 100644
--- a/hmda/src/test/scala/hmda/api/http/filing/FileUploadUtils.scala
+++ b/hmda/src/test/scala/hmda/api/http/filing/FileUploadUtils.scala
@@ -1,6 +1,6 @@
package hmda.api.http.filing
-import akka.http.scaladsl.model.{ContentTypes, HttpEntity, Multipart}
+import org.apache.pekko.http.scaladsl.model.{ContentTypes, HttpEntity, Multipart}
trait FileUploadUtils {
def multiPartFile(contents: String, fileName: String) =
diff --git a/hmda/src/test/scala/hmda/api/http/filing/FilingHttpApiSpec.scala b/hmda/src/test/scala/hmda/api/http/filing/FilingHttpApiSpec.scala
index 1205ae68b4..16634c5b60 100644
--- a/hmda/src/test/scala/hmda/api/http/filing/FilingHttpApiSpec.scala
+++ b/hmda/src/test/scala/hmda/api/http/filing/FilingHttpApiSpec.scala
@@ -1,22 +1,23 @@
package hmda.api.http.filing
-import akka.actor.testkit.typed.scaladsl.TestProbe
-import akka.actor.typed.ActorSystem
-import akka.actor.typed.scaladsl.adapter._
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.cluster.typed.{ Cluster, Join }
-import akka.http.scaladsl.model.StatusCodes
-import akka.http.scaladsl.testkit.{ RouteTestTimeout, ScalatestRouteTest }
-import akka.testkit._
-import akka.util.Timeout
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.actor.testkit.typed.scaladsl.TestProbe
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.cluster.typed.{ Cluster, Join }
+import org.apache.pekko.http.scaladsl.model.StatusCodes
+import org.apache.pekko.http.scaladsl.testkit.{ RouteTestTimeout, ScalatestRouteTest }
+import org.apache.pekko.actor.testkit.typed.scaladsl.TestProbe
+import org.apache.pekko.testkit._
+import org.apache.pekko.util.Timeout
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.auth.{ KeycloakTokenVerifier, OAuth2Authorization }
import hmda.messages.institution.InstitutionCommands.CreateInstitution
import hmda.messages.institution.InstitutionEvents._
import hmda.model.filing.{ FilingDetails, InProgress }
import hmda.model.institution.Institution
import hmda.model.institution.InstitutionGenerators._
-import hmda.persistence.AkkaCassandraPersistenceSpec
+import hmda.persistence.PekkoCassandraPersistenceSpec
import hmda.persistence.filing.FilingPersistence
import hmda.persistence.institution.InstitutionPersistence
import io.circe.generic.auto._
@@ -26,9 +27,9 @@ import org.slf4j.{ Logger, LoggerFactory }
import scala.concurrent.duration._
import scala.util.Random
-class FilingHttpApiSpec extends AkkaCassandraPersistenceSpec with MustMatchers with ScalatestRouteTest {
+class FilingHttpApiSpec extends PekkoCassandraPersistenceSpec with MustMatchers with ScalatestRouteTest {
- val duration = 90.seconds
+ val duration = 120.seconds
implicit val routeTimeout = RouteTestTimeout(duration.dilated)
diff --git a/hmda/src/test/scala/hmda/api/http/filing/InstitutionHttpApiSpec.scala b/hmda/src/test/scala/hmda/api/http/filing/InstitutionHttpApiSpec.scala
index 67b2390b34..d9d92f11cf 100644
--- a/hmda/src/test/scala/hmda/api/http/filing/InstitutionHttpApiSpec.scala
+++ b/hmda/src/test/scala/hmda/api/http/filing/InstitutionHttpApiSpec.scala
@@ -1,15 +1,16 @@
package hmda.api.http.filing
-import akka.actor.testkit.typed.scaladsl.TestProbe
-import akka.actor.typed.ActorSystem
-import akka.actor.typed.scaladsl.adapter._
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.cluster.typed.{ Cluster, Join }
-import akka.http.scaladsl.model.StatusCodes
-import akka.http.scaladsl.testkit.{ RouteTestTimeout, ScalatestRouteTest }
-import akka.testkit._
-import akka.util.Timeout
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.actor.testkit.typed.scaladsl.TestProbe
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.cluster.typed.{ Cluster, Join }
+import org.apache.pekko.http.scaladsl.model.StatusCodes
+import org.apache.pekko.http.scaladsl.testkit.{ RouteTestTimeout, ScalatestRouteTest }
+import org.apache.pekko.actor.testkit.typed.scaladsl.TestProbe
+import org.apache.pekko.testkit._
+import org.apache.pekko.util.Timeout
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.auth.{ KeycloakTokenVerifier, OAuth2Authorization }
import hmda.messages.filing.FilingCommands.CreateFiling
import hmda.messages.filing.FilingEvents.{ FilingCreated, FilingEvent }
@@ -19,7 +20,7 @@ import hmda.model.filing.Filing
import hmda.model.filing.FilingGenerator._
import hmda.model.institution.InstitutionGenerators._
import hmda.model.institution.{ Institution, InstitutionDetail }
-import hmda.persistence.AkkaCassandraPersistenceSpec
+import hmda.persistence.PekkoCassandraPersistenceSpec
import hmda.persistence.filing.FilingPersistence
import hmda.persistence.institution.InstitutionPersistence
import io.circe.generic.auto._
@@ -29,7 +30,7 @@ import org.slf4j.{ Logger, LoggerFactory }
import scala.concurrent.ExecutionContext
import scala.concurrent.duration._
-class InstitutionHttpApiSpec extends AkkaCassandraPersistenceSpec with MustMatchers with ScalatestRouteTest {
+class InstitutionHttpApiSpec extends PekkoCassandraPersistenceSpec with MustMatchers with ScalatestRouteTest {
val duration = 30.seconds
diff --git a/hmda/src/test/scala/hmda/api/http/filing/submissions/ParseErrorHttpApiSpec.scala b/hmda/src/test/scala/hmda/api/http/filing/submissions/ParseErrorHttpApiSpec.scala
index 6a1db46ebd..a7e35905db 100644
--- a/hmda/src/test/scala/hmda/api/http/filing/submissions/ParseErrorHttpApiSpec.scala
+++ b/hmda/src/test/scala/hmda/api/http/filing/submissions/ParseErrorHttpApiSpec.scala
@@ -1,15 +1,15 @@
package hmda.api.http.filing.submissions
-import akka.actor.testkit.typed.scaladsl.TestProbe
-import akka.actor.typed.ActorSystem
-import akka.actor.typed.scaladsl.adapter._
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.cluster.typed.{ Cluster, Join }
-import akka.http.scaladsl.model.StatusCodes
-import akka.http.scaladsl.server.Route
-import akka.http.scaladsl.testkit.ScalatestRouteTest
-import akka.util.Timeout
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.actor.testkit.typed.scaladsl.TestProbe
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.cluster.typed.{ Cluster, Join }
+import org.apache.pekko.http.scaladsl.model.StatusCodes
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.testkit.ScalatestRouteTest
+import org.apache.pekko.util.Timeout
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.model.filing.submissions.ParsingErrorSummary
import hmda.auth.{ KeycloakTokenVerifier, OAuth2Authorization }
import hmda.messages.filing.FilingCommands.CreateFiling
@@ -27,7 +27,7 @@ import hmda.model.institution.Institution
import hmda.model.institution.InstitutionGenerators.institutionGen
import hmda.model.submission.SubmissionGenerator.submissionGen
import hmda.parser.filing.lar.LarParserErrorModel.InvalidLarId
-import hmda.persistence.AkkaCassandraPersistenceSpec
+import hmda.persistence.PekkoCassandraPersistenceSpec
import hmda.persistence.filing.FilingPersistence
import hmda.persistence.institution.InstitutionPersistence
import hmda.persistence.submission.{ HmdaParserError, SubmissionPersistence }
@@ -39,7 +39,7 @@ import scala.concurrent.ExecutionContext
import scala.concurrent.duration._
import scala.util.Random
-class ParseErrorHttpApiSpec extends AkkaCassandraPersistenceSpec with MustMatchers with ScalatestRouteTest {
+class ParseErrorHttpApiSpec extends PekkoCassandraPersistenceSpec with MustMatchers with ScalatestRouteTest {
val duration = 10.seconds
diff --git a/hmda/src/test/scala/hmda/api/http/filing/submissions/SubmissionHttpApiSpec.scala b/hmda/src/test/scala/hmda/api/http/filing/submissions/SubmissionHttpApiSpec.scala
index f7d5d0c53a..4860a8f1d3 100644
--- a/hmda/src/test/scala/hmda/api/http/filing/submissions/SubmissionHttpApiSpec.scala
+++ b/hmda/src/test/scala/hmda/api/http/filing/submissions/SubmissionHttpApiSpec.scala
@@ -1,16 +1,16 @@
package hmda.api.http.filing.submissions
-import akka.actor.testkit.typed.scaladsl.TestProbe
-import akka.actor.typed.ActorSystem
-import akka.actor.typed.scaladsl.adapter._
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.cluster.typed.{ Cluster, Join }
-import akka.http.scaladsl.model.StatusCodes
-import akka.http.scaladsl.testkit.{ RouteTestTimeout, ScalatestRouteTest }
-import akka.testkit._
-import akka.util.Timeout
+import org.apache.pekko.actor.testkit.typed.scaladsl.TestProbe
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.cluster.typed.{ Cluster, Join }
+import org.apache.pekko.http.scaladsl.model.StatusCodes
+import org.apache.pekko.http.scaladsl.testkit.{ RouteTestTimeout, ScalatestRouteTest }
+import org.apache.pekko.testkit._
+import org.apache.pekko.util.Timeout
import com.typesafe.config.Config
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.model.ErrorResponse
import hmda.auth.{ KeycloakTokenVerifier, OAuth2Authorization }
import hmda.messages.filing.FilingCommands.CreateFiling
@@ -22,7 +22,7 @@ import hmda.model.filing.FilingGenerator._
import hmda.model.filing.submission.{ Submission, SubmissionId, VerificationStatus }
import hmda.model.institution.Institution
import hmda.model.institution.InstitutionGenerators.institutionGen
-import hmda.persistence.AkkaCassandraPersistenceSpec
+import hmda.persistence.PekkoCassandraPersistenceSpec
import hmda.persistence.filing.FilingPersistence
import hmda.persistence.institution.InstitutionPersistence
import hmda.persistence.submission.{ HmdaValidationError, SubmissionPersistence }
@@ -32,7 +32,7 @@ import org.slf4j.{ Logger, LoggerFactory }
import scala.concurrent.duration._
-class SubmissionHttpApiSpec extends AkkaCassandraPersistenceSpec with MustMatchers with ScalatestRouteTest {
+class SubmissionHttpApiSpec extends PekkoCassandraPersistenceSpec with MustMatchers with ScalatestRouteTest {
val duration: FiniteDuration = 30.seconds
val config: Config = system.settings.config
diff --git a/hmda/src/test/scala/hmda/api/http/filing/submissions/UploadHttpApiSpec.scala b/hmda/src/test/scala/hmda/api/http/filing/submissions/UploadHttpApiSpec.scala
index 173018405e..1afdabeed0 100644
--- a/hmda/src/test/scala/hmda/api/http/filing/submissions/UploadHttpApiSpec.scala
+++ b/hmda/src/test/scala/hmda/api/http/filing/submissions/UploadHttpApiSpec.scala
@@ -1,18 +1,19 @@
package hmda.api.http.filing.submissions
-import akka.actor.testkit.typed.scaladsl.TestProbe
-import akka.actor.typed.scaladsl.adapter._
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.cluster.typed.{ Cluster, Join }
-import akka.http.scaladsl.model.StatusCodes
-import akka.http.scaladsl.model.Uri.Path
-import akka.http.scaladsl.server.Route
-import akka.http.scaladsl.testkit.{ RouteTestTimeout, ScalatestRouteTest }
-import akka.stream.scaladsl.Source
-import akka.testkit._
-import akka.util.Timeout
+import org.apache.pekko.actor.testkit.typed.scaladsl.TestProbe
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.cluster.typed.{ Cluster, Join }
+import org.apache.pekko.http.scaladsl.model.StatusCodes
+import org.apache.pekko.http.scaladsl.model.Uri.Path
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.testkit.{ RouteTestTimeout, ScalatestRouteTest }
+import org.apache.pekko.stream.scaladsl.Source
+import org.apache.pekko.actor.testkit.typed.scaladsl.TestProbe
+import org.apache.pekko.testkit._
+import org.apache.pekko.util.Timeout
import com.typesafe.config.Config
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.filing.FileUploadUtils
import hmda.api.http.model.ErrorResponse
import hmda.auth.{ KeycloakTokenVerifier, OAuth2Authorization }
@@ -31,7 +32,7 @@ import hmda.model.filing.ts.TsGenerators._
import hmda.model.institution.Institution
import hmda.model.institution.InstitutionGenerators.institutionGen
import hmda.model.submission.SubmissionGenerator.submissionGen
-import hmda.persistence.AkkaCassandraPersistenceSpec
+import hmda.persistence.PekkoCassandraPersistenceSpec
import hmda.persistence.filing.FilingPersistence
import hmda.persistence.institution.InstitutionPersistence
import hmda.persistence.submission._
@@ -41,7 +42,7 @@ import org.slf4j.{ Logger, LoggerFactory }
import scala.concurrent.duration._
-class UploadHttpApiSpec extends AkkaCassandraPersistenceSpec with MustMatchers with ScalatestRouteTest with FileUploadUtils {
+class UploadHttpApiSpec extends PekkoCassandraPersistenceSpec with MustMatchers with ScalatestRouteTest with FileUploadUtils {
implicit val typedSystem = system.toTyped
val log: Logger = LoggerFactory.getLogger(getClass)
diff --git a/hmda/src/test/scala/hmda/api/http/public/HmdaFileValidationHttpApiSpec.scala b/hmda/src/test/scala/hmda/api/http/public/HmdaFileValidationHttpApiSpec.scala
index acb40dedfc..ddd63c6a8e 100644
--- a/hmda/src/test/scala/hmda/api/http/public/HmdaFileValidationHttpApiSpec.scala
+++ b/hmda/src/test/scala/hmda/api/http/public/HmdaFileValidationHttpApiSpec.scala
@@ -1,11 +1,11 @@
package hmda.api.http.public
-import akka.http.scaladsl.model.StatusCodes
-import akka.http.scaladsl.server.Route
-import akka.http.scaladsl.testkit.{ RouteTestTimeout, ScalatestRouteTest }
-import akka.http.scaladsl.unmarshalling.Unmarshaller._
-import akka.testkit._
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.http.scaladsl.model.StatusCodes
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.testkit.{ RouteTestTimeout, ScalatestRouteTest }
+import org.apache.pekko.http.scaladsl.unmarshalling.Unmarshaller._
+import org.apache.pekko.testkit._
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.model.filing.submissions.HmdaRowParsedErrorSummary
import hmda.model.filing.lar.LarGenerators.larNGen
import hmda.model.filing.ts.TransmittalSheet
diff --git a/hmda/src/test/scala/hmda/api/http/public/LarValidationHttpApiSpec.scala b/hmda/src/test/scala/hmda/api/http/public/LarValidationHttpApiSpec.scala
index 61e9ead53f..0e6f9ca6a7 100644
--- a/hmda/src/test/scala/hmda/api/http/public/LarValidationHttpApiSpec.scala
+++ b/hmda/src/test/scala/hmda/api/http/public/LarValidationHttpApiSpec.scala
@@ -1,9 +1,9 @@
package hmda.api.http.public
-import akka.http.scaladsl.model.StatusCodes
-import akka.http.scaladsl.server.Route
-import akka.http.scaladsl.testkit.ScalatestRouteTest
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.http.scaladsl.model.StatusCodes
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.testkit.ScalatestRouteTest
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.model.filing.submissions.HmdaRowParsedErrorSummary
import hmda.api.http.model.public.{ LarValidateRequest, SingleValidationErrorResult, ValidationErrorSummary, ValidationSingleErrorSummary }
import hmda.model.filing.lar.LarGenerators._
diff --git a/hmda/src/test/scala/hmda/api/http/public/TsValidationHttpApiSpec.scala b/hmda/src/test/scala/hmda/api/http/public/TsValidationHttpApiSpec.scala
index c0076b817a..3ded7bcaa5 100644
--- a/hmda/src/test/scala/hmda/api/http/public/TsValidationHttpApiSpec.scala
+++ b/hmda/src/test/scala/hmda/api/http/public/TsValidationHttpApiSpec.scala
@@ -1,9 +1,9 @@
package hmda.api.http.public
-import akka.http.scaladsl.model.StatusCodes
-import akka.http.scaladsl.testkit.ScalatestRouteTest
-import akka.util.Timeout
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.http.scaladsl.model.StatusCodes
+import org.apache.pekko.http.scaladsl.testkit.ScalatestRouteTest
+import org.apache.pekko.util.Timeout
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.model.filing.submissions.HmdaRowParsedErrorSummary
import hmda.api.http.model.public.{ SingleValidationErrorResult, TsValidateRequest }
import hmda.model.filing.ts.{ Address, Contact, TransmittalSheet }
diff --git a/hmda/src/test/scala/hmda/persistence/filing/FilingPersistenceSpec.scala b/hmda/src/test/scala/hmda/persistence/filing/FilingPersistenceSpec.scala
index e985aedc09..229cef4ce6 100644
--- a/hmda/src/test/scala/hmda/persistence/filing/FilingPersistenceSpec.scala
+++ b/hmda/src/test/scala/hmda/persistence/filing/FilingPersistenceSpec.scala
@@ -1,21 +1,21 @@
package hmda.persistence.filing
-import akka.actor
-import akka.actor.testkit.typed.scaladsl.TestProbe
-import akka.actor.typed.scaladsl.adapter._
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.cluster.typed.{ Cluster, Join }
+import org.apache.pekko.actor
+import org.apache.pekko.actor.testkit.typed.scaladsl.TestProbe
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.cluster.typed.{ Cluster, Join }
import hmda.messages.filing.FilingCommands._
import hmda.messages.filing.FilingEvents.FilingCreated
import hmda.model.filing.{ Filing, FilingDetails, FilingId }
-import hmda.persistence.AkkaCassandraPersistenceSpec
+import hmda.persistence.PekkoCassandraPersistenceSpec
import hmda.model.filing.FilingGenerator._
import hmda.model.filing.submission._
import hmda.model.submission.SubmissionGenerator._
import hmda.persistence.institution.InstitutionPersistence
import hmda.utils.YearUtils.Period
-class FilingPersistenceSpec extends AkkaCassandraPersistenceSpec {
+class FilingPersistenceSpec extends PekkoCassandraPersistenceSpec {
override implicit val system = actor.ActorSystem()
override implicit val typedSystem = system.toTyped
diff --git a/hmda/src/test/scala/hmda/persistence/institution/InstitutionPersistenceSpec.scala b/hmda/src/test/scala/hmda/persistence/institution/InstitutionPersistenceSpec.scala
index fc096e7ff2..212f5b4d54 100644
--- a/hmda/src/test/scala/hmda/persistence/institution/InstitutionPersistenceSpec.scala
+++ b/hmda/src/test/scala/hmda/persistence/institution/InstitutionPersistenceSpec.scala
@@ -1,22 +1,22 @@
package hmda.persistence.institution
-import akka.actor
-import akka.actor.typed.ActorSystem
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.cluster.typed.Cluster
-import akka.cluster.typed.Join
-import akka.actor.testkit.typed.scaladsl.TestProbe
+import org.apache.pekko.actor
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.cluster.typed.Cluster
+import org.apache.pekko.cluster.typed.Join
+import org.apache.pekko.actor.testkit.typed.scaladsl.TestProbe
import hmda.model.institution.Institution
import hmda.model.institution.InstitutionGenerators._
-import hmda.persistence.AkkaCassandraPersistenceSpec
-import akka.actor.typed.scaladsl.adapter._
+import hmda.persistence.PekkoCassandraPersistenceSpec
+import org.apache.pekko.actor.typed.scaladsl.adapter._
import hmda.messages.institution.InstitutionCommands._
import hmda.messages.institution.InstitutionEvents._
import org.scalatest.Tag
object CustomTag extends Tag("actions-ignore")
-class InstitutionPersistenceSpec extends AkkaCassandraPersistenceSpec {
+class InstitutionPersistenceSpec extends PekkoCassandraPersistenceSpec {
override val system = actor.ActorSystem()
override implicit val typedSystem: ActorSystem[_] = system.toTyped
diff --git a/hmda/src/test/scala/hmda/persistence/submission/EditDetailsPersistenceSpec.scala b/hmda/src/test/scala/hmda/persistence/submission/EditDetailsPersistenceSpec.scala
index cd76baeb0e..7e5b0bcc0b 100644
--- a/hmda/src/test/scala/hmda/persistence/submission/EditDetailsPersistenceSpec.scala
+++ b/hmda/src/test/scala/hmda/persistence/submission/EditDetailsPersistenceSpec.scala
@@ -1,11 +1,11 @@
package hmda.persistence.submission
-import akka.actor
-import akka.actor.testkit.typed.scaladsl.TestProbe
-import hmda.persistence.AkkaCassandraPersistenceSpec
-import akka.actor.typed.scaladsl.adapter._
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.cluster.typed.{ Cluster, Join }
+import org.apache.pekko.actor
+import org.apache.pekko.actor.testkit.typed.scaladsl.TestProbe
+import hmda.persistence.PekkoCassandraPersistenceSpec
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.cluster.typed.{ Cluster, Join }
import hmda.messages.submission.EditDetailsCommands.{ GetEditRowCount, PersistEditDetails }
import hmda.messages.submission.EditDetailsEvents.{ EditDetailsAdded, EditDetailsPersistenceEvent, EditDetailsRowCounted }
import hmda.model.edits.{ EditDetails, EditDetailsRow }
@@ -14,7 +14,7 @@ import hmda.utils.YearUtils.Period
import scala.util.Random
-class EditDetailsPersistenceSpec extends AkkaCassandraPersistenceSpec {
+class EditDetailsPersistenceSpec extends PekkoCassandraPersistenceSpec {
override implicit val system = actor.ActorSystem()
override implicit val typedSystem = system.toTyped
diff --git a/hmda/src/test/scala/hmda/persistence/submission/HmdaParserErrorSpec.scala b/hmda/src/test/scala/hmda/persistence/submission/HmdaParserErrorSpec.scala
index 20ccb781e8..1dd982f2a5 100644
--- a/hmda/src/test/scala/hmda/persistence/submission/HmdaParserErrorSpec.scala
+++ b/hmda/src/test/scala/hmda/persistence/submission/HmdaParserErrorSpec.scala
@@ -1,11 +1,11 @@
package hmda.persistence.submission
-import akka.actor
-import akka.actor.testkit.typed.scaladsl.TestProbe
-import hmda.persistence.AkkaCassandraPersistenceSpec
-import akka.actor.typed.scaladsl.adapter._
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.cluster.typed.{ Cluster, Join }
+import org.apache.pekko.actor
+import org.apache.pekko.actor.testkit.typed.scaladsl.TestProbe
+import hmda.persistence.PekkoCassandraPersistenceSpec
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.cluster.typed.{ Cluster, Join }
import hmda.messages.submission.SubmissionProcessingCommands.{ GetParsedWithErrorCount, GetParsingErrors, PersistHmdaRowParsedError }
import hmda.messages.submission.SubmissionProcessingEvents.{ HmdaRowParsedCount, HmdaRowParsedError, SubmissionProcessingEvent }
import hmda.model.filing.submission.SubmissionId
@@ -17,7 +17,7 @@ import hmda.utils.YearUtils.Period
import scala.util.Random
-class HmdaParserErrorSpec extends AkkaCassandraPersistenceSpec {
+class HmdaParserErrorSpec extends PekkoCassandraPersistenceSpec {
override implicit val system = actor.ActorSystem()
override implicit val typedSystem = system.toTyped
diff --git a/hmda/src/test/scala/hmda/persistence/submission/HmdaRawDataSpec.scala b/hmda/src/test/scala/hmda/persistence/submission/HmdaRawDataSpec.scala
index 0a6984de22..6133cc58ee 100644
--- a/hmda/src/test/scala/hmda/persistence/submission/HmdaRawDataSpec.scala
+++ b/hmda/src/test/scala/hmda/persistence/submission/HmdaRawDataSpec.scala
@@ -1,20 +1,20 @@
package hmda.persistence.submission
-import akka.actor
-import akka.actor.testkit.typed.scaladsl.TestProbe
-import akka.actor.typed.scaladsl.adapter._
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.cluster.typed.{Cluster, Join}
+import org.apache.pekko.actor
+import org.apache.pekko.actor.testkit.typed.scaladsl.TestProbe
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.cluster.typed.{Cluster, Join}
import hmda.messages.submission.HmdaRawDataCommands.AddLines
import hmda.messages.submission.HmdaRawDataEvents.LineAdded
import hmda.messages.submission.HmdaRawDataReplies.LinesAdded
import hmda.model.filing.submission.SubmissionId
-import hmda.persistence.AkkaCassandraPersistenceSpec
+import hmda.persistence.PekkoCassandraPersistenceSpec
import hmda.utils.YearUtils.Period
import java.time.Instant
-class HmdaRawDataSpec extends AkkaCassandraPersistenceSpec {
+class HmdaRawDataSpec extends PekkoCassandraPersistenceSpec {
override implicit val system = actor.ActorSystem()
override implicit val typedSystem = system.toTyped
diff --git a/hmda/src/test/scala/hmda/persistence/submission/HmdaValidationErrorSpec.scala b/hmda/src/test/scala/hmda/persistence/submission/HmdaValidationErrorSpec.scala
index 2a14b12b8b..31cb92057d 100644
--- a/hmda/src/test/scala/hmda/persistence/submission/HmdaValidationErrorSpec.scala
+++ b/hmda/src/test/scala/hmda/persistence/submission/HmdaValidationErrorSpec.scala
@@ -1,14 +1,14 @@
package hmda.persistence.submission
-import akka.actor
-import akka.actor.testkit.typed.scaladsl.TestProbe
-import akka.actor.typed.ActorRef
-import akka.actor.typed.scaladsl.adapter._
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.cluster.typed.{Cluster, Join}
-import akka.stream.Materializer
-import akka.stream.scaladsl.StreamConverters
-import akka.util.Timeout
+import org.apache.pekko.actor
+import org.apache.pekko.actor.testkit.typed.scaladsl.TestProbe
+import org.apache.pekko.actor.typed.ActorRef
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.cluster.typed.{Cluster, Join}
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.scaladsl.StreamConverters
+import org.apache.pekko.util.Timeout
import hmda.messages.submission.HmdaRawDataCommands.AddLines
import hmda.messages.submission.HmdaRawDataReplies.LinesAdded
import hmda.messages.submission.SubmissionProcessingCommands._
@@ -18,7 +18,7 @@ import hmda.messages.submission.ValidationProgressTrackerCommands.ValidationProg
import hmda.model.filing.submission.{MacroErrors, SubmissionId, Verified}
import hmda.model.processing.state.{EditSummary, HmdaValidationErrorState, ValidationProgress, ValidationProgressTrackerState}
import hmda.model.validation._
-import hmda.persistence.AkkaCassandraPersistenceSpec
+import hmda.persistence.PekkoCassandraPersistenceSpec
import hmda.persistence.institution.InstitutionPersistence
import hmda.util.streams.FlowUtils.framing
import hmda.utils.YearUtils.Period
@@ -28,7 +28,7 @@ import org.scalatest.concurrent.ScalaFutures
import java.time.Instant
import scala.concurrent.duration._
-class HmdaValidationErrorSpec extends AkkaCassandraPersistenceSpec with ScalaFutures {
+class HmdaValidationErrorSpec extends PekkoCassandraPersistenceSpec with ScalaFutures {
override implicit val system = actor.ActorSystem()
override implicit val typedSystem = system.toTyped
diff --git a/hmda/src/test/scala/hmda/persistence/submission/SubmissionManagerSpec.scala b/hmda/src/test/scala/hmda/persistence/submission/SubmissionManagerSpec.scala
index 477db9e29d..c9c7eaa960 100644
--- a/hmda/src/test/scala/hmda/persistence/submission/SubmissionManagerSpec.scala
+++ b/hmda/src/test/scala/hmda/persistence/submission/SubmissionManagerSpec.scala
@@ -1,11 +1,11 @@
package hmda.persistence.submission
-import akka.actor
-import akka.actor.testkit.typed.scaladsl.TestProbe
-import akka.actor.typed.scaladsl.adapter._
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.cluster.typed.{ Cluster, Join }
-import akka.http.scaladsl.testkit.RouteTestTimeout
+import org.apache.pekko.actor
+import org.apache.pekko.actor.testkit.typed.scaladsl.TestProbe
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.cluster.typed.{ Cluster, Join }
+import org.apache.pekko.http.scaladsl.testkit.RouteTestTimeout
import hmda.messages.filing.FilingCommands.GetLatestSubmission
import hmda.messages.submission.SubmissionCommands.{ CreateSubmission, GetSubmission }
import hmda.messages.submission.SubmissionEvents.{ SubmissionCreated, SubmissionEvent }
@@ -14,19 +14,19 @@ import hmda.model.filing.FilingGenerator.filingGen
import hmda.model.filing.{ Filing, FilingId }
import hmda.model.filing.submission._
import hmda.model.submission.SubmissionGenerator.submissionGen
-import hmda.persistence.AkkaCassandraPersistenceSpec
+import hmda.persistence.PekkoCassandraPersistenceSpec
import hmda.persistence.filing.FilingPersistence
import hmda.utils.YearUtils.Period
import org.scalatest.{ BeforeAndAfterAll, MustMatchers }
-import akka.testkit._
+import org.apache.pekko.testkit._
import scala.concurrent.duration._
-class SubmissionManagerSpec extends AkkaCassandraPersistenceSpec with MustMatchers with BeforeAndAfterAll {
+class SubmissionManagerSpec extends PekkoCassandraPersistenceSpec with MustMatchers with BeforeAndAfterAll {
implicit val system = actor.ActorSystem()
implicit val typedSystem = system.toTyped
- val duration = 10.seconds
+ val duration = 120.seconds
implicit val routeTimeout = RouteTestTimeout(duration.dilated)
diff --git a/hmda/src/test/scala/hmda/persistence/submission/SubmissionPersistenceSpec.scala b/hmda/src/test/scala/hmda/persistence/submission/SubmissionPersistenceSpec.scala
index 2e019b91f6..f6e53290f3 100644
--- a/hmda/src/test/scala/hmda/persistence/submission/SubmissionPersistenceSpec.scala
+++ b/hmda/src/test/scala/hmda/persistence/submission/SubmissionPersistenceSpec.scala
@@ -1,11 +1,11 @@
package hmda.persistence.submission
-import akka.actor
-import akka.actor.testkit.typed.scaladsl.TestProbe
-import hmda.persistence.AkkaCassandraPersistenceSpec
-import akka.actor.typed.scaladsl.adapter._
-import akka.cluster.sharding.typed.scaladsl.ClusterSharding
-import akka.cluster.typed.{ Cluster, Join }
+import org.apache.pekko.actor
+import org.apache.pekko.actor.testkit.typed.scaladsl.TestProbe
+import hmda.persistence.PekkoCassandraPersistenceSpec
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.cluster.sharding.typed.scaladsl.ClusterSharding
+import org.apache.pekko.cluster.typed.{ Cluster, Join }
import hmda.messages.submission.SubmissionCommands.{ CreateSubmission, GetSubmission, ModifySubmission }
import hmda.messages.submission.SubmissionEvents.{ SubmissionCreated, SubmissionEvent, SubmissionModified, SubmissionNotExists }
import hmda.model.filing.submission.{ Created, Submission, SubmissionId, Uploaded }
@@ -15,7 +15,7 @@ import hmda.utils.YearUtils.Period
import scala.concurrent.duration._
-class SubmissionPersistenceSpec extends AkkaCassandraPersistenceSpec {
+class SubmissionPersistenceSpec extends PekkoCassandraPersistenceSpec {
override implicit val system = actor.ActorSystem()
override implicit val typedSystem = system.toTyped
diff --git a/hmda/src/test/scala/hmda/publication/HmdaPublicationSpec.scala b/hmda/src/test/scala/hmda/publication/HmdaPublicationSpec.scala
index 8eb3306f0c..f8bd28d745 100644
--- a/hmda/src/test/scala/hmda/publication/HmdaPublicationSpec.scala
+++ b/hmda/src/test/scala/hmda/publication/HmdaPublicationSpec.scala
@@ -1,8 +1,8 @@
package hmda.publication
-import akka.actor.ActorSystem
-import akka.actor.typed.scaladsl.adapter._
-import akka.testkit.{ ImplicitSender, TestKit }
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.testkit.{ ImplicitSender, TestKit }
import org.scalatest.{ MustMatchers, WordSpecLike }
class HmdaPublicationSpec extends TestKit(ActorSystem("hmda-publication-spec")) with WordSpecLike with MustMatchers with ImplicitSender {
diff --git a/hmda/src/test/scala/hmda/util/SourceUtilsSpec.scala b/hmda/src/test/scala/hmda/util/SourceUtilsSpec.scala
index 8b0fefa909..ceb415ee09 100644
--- a/hmda/src/test/scala/hmda/util/SourceUtilsSpec.scala
+++ b/hmda/src/test/scala/hmda/util/SourceUtilsSpec.scala
@@ -1,8 +1,8 @@
package hmda.util
-import akka.actor.ActorSystem
-import akka.stream.Materializer
-import akka.stream.scaladsl.Source
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.scaladsl.Source
import hmda.util.SourceUtils._
import org.scalatest.{ AsyncWordSpec, MustMatchers }
diff --git a/hmda/src/test/scala/hmda/validation/HmdaValidationSpec.scala b/hmda/src/test/scala/hmda/validation/HmdaValidationSpec.scala
index 7189e7f631..f5d3c91cba 100644
--- a/hmda/src/test/scala/hmda/validation/HmdaValidationSpec.scala
+++ b/hmda/src/test/scala/hmda/validation/HmdaValidationSpec.scala
@@ -1,8 +1,8 @@
package hmda.validation
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.ActorSystem
-import akka.testkit.{ ImplicitSender, TestKit }
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.testkit.{ ImplicitSender, TestKit }
import org.scalatest.{ MustMatchers, WordSpecLike }
class HmdaValidationSpec extends TestKit(ActorSystem("hmda-validation-spec")) with WordSpecLike with MustMatchers with ImplicitSender {
diff --git a/hmda/src/test/scala/hmda/validation/filing/MacroValidationFlowSpec.scala b/hmda/src/test/scala/hmda/validation/filing/MacroValidationFlowSpec.scala
index 73e1c0e975..b9daba9bd1 100644
--- a/hmda/src/test/scala/hmda/validation/filing/MacroValidationFlowSpec.scala
+++ b/hmda/src/test/scala/hmda/validation/filing/MacroValidationFlowSpec.scala
@@ -1,10 +1,10 @@
package hmda.validation.filing
-import akka.NotUsed
-import akka.actor.ActorSystem
-import akka.actor.typed.scaladsl.adapter._
-import akka.stream.Materializer
-import akka.stream.scaladsl.Source
+import org.apache.pekko.NotUsed
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.scaladsl.Source
import hmda.model.filing.lar.LarGenerators._
import hmda.model.filing.lar.enums._
import hmda.model.filing.lar.{ LarAction, LoanApplicationRegister }
diff --git a/hmda/src/test/scala/hmda/validation/filing/ValidationFlowSpec.scala b/hmda/src/test/scala/hmda/validation/filing/ValidationFlowSpec.scala
index a64dd4cca5..4bc25ad15f 100644
--- a/hmda/src/test/scala/hmda/validation/filing/ValidationFlowSpec.scala
+++ b/hmda/src/test/scala/hmda/validation/filing/ValidationFlowSpec.scala
@@ -1,10 +1,10 @@
package hmda.validation.filing
-import akka.actor.ActorSystem
-import akka.stream.Materializer
-import akka.stream.scaladsl.Source
-import akka.stream.testkit.scaladsl.TestSink
-import akka.util.ByteString
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.scaladsl.Source
+import org.apache.pekko.stream.testkit.scaladsl.TestSink
+import org.apache.pekko.util.ByteString
import hmda.model.filing.PipeDelimited
import hmda.model.filing.lar.LoanApplicationRegister
import hmda.model.filing.ts.TransmittalSheet
diff --git a/institutions-api/src/main/resources/application.conf b/institutions-api/src/main/resources/application.conf
index 5f516445ab..212b88ff42 100644
--- a/institutions-api/src/main/resources/application.conf
+++ b/institutions-api/src/main/resources/application.conf
@@ -1,11 +1,11 @@
include "persistence.conf"
-akka {
+pekko {
stdout-loglevel = "WARNING"
loglevel = "INFO"
}
-akka.http.host-connection-pool.response-entity-subscription-timeout = 100.seconds
+pekko.http.host-connection-pool.response-entity-subscription-timeout = 100.seconds
hmda {
loader {
diff --git a/institutions-api/src/main/resources/logback.xml b/institutions-api/src/main/resources/logback.xml
index 2cea9f6507..82f31df418 100644
--- a/institutions-api/src/main/resources/logback.xml
+++ b/institutions-api/src/main/resources/logback.xml
@@ -10,7 +10,7 @@
-
+
diff --git a/institutions-api/src/main/scala/hmda/institution/HmdaInstitutionApi.scala b/institutions-api/src/main/scala/hmda/institution/HmdaInstitutionApi.scala
index 36916de33c..4e40e231bf 100644
--- a/institutions-api/src/main/scala/hmda/institution/HmdaInstitutionApi.scala
+++ b/institutions-api/src/main/scala/hmda/institution/HmdaInstitutionApi.scala
@@ -1,13 +1,13 @@
package hmda.institution
-import akka.Done
-import akka.actor.ActorSystem
-import akka.actor.typed.scaladsl.adapter._
-import akka.kafka.scaladsl.Consumer.DrainingControl
-import akka.kafka.scaladsl.{ Committer, Consumer }
-import akka.kafka.{ CommitterSettings, ConsumerSettings, Subscriptions }
-import akka.stream.Materializer
-import akka.stream.scaladsl.{ Keep, Sink, Source }
+import org.apache.pekko.Done
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.kafka.scaladsl.Consumer.DrainingControl
+import org.apache.pekko.kafka.scaladsl.{ Committer, Consumer }
+import org.apache.pekko.kafka.{ CommitterSettings, ConsumerSettings, Subscriptions }
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.scaladsl.{ Keep, Sink, Source }
import com.typesafe.config.ConfigFactory
import hmda.institution.api.http.HmdaInstitutionQueryApi
import hmda.institution.projection.{ InstitutionDBProjection, ProjectEvent }
@@ -44,7 +44,7 @@ object HmdaInstitutionApi extends App {
val host = config.getString("hmda.institution.http.host")
val port = config.getString("hmda.institution.http.port")
- val kafkaConfig = system.settings.config.getConfig("akka.kafka.consumer")
+ val kafkaConfig = system.settings.config.getConfig("pekko.kafka.consumer")
val jdbcUrl = config.getString("db.db.url")
log.info(s"Connection URL is \n\n$jdbcUrl\n")
@@ -61,7 +61,9 @@ object HmdaInstitutionApi extends App {
.committableSource(consumerSettings, Subscriptions.topics(HmdaTopics.institutionTopic))
.mapAsync(1)(msg => processData(msg.record.value()).map(_ => msg.committableOffset))
.toMat(Committer.sink(CommitterSettings(system).withParallelism(1)))(Keep.both)
- .mapMaterializedValue(DrainingControl.apply)
+ .mapMaterializedValue {
+ case (control, future) => DrainingControl.apply(control, future)
+ }
.run()
val institutionDBProjector =
diff --git a/institutions-api/src/main/scala/hmda/institution/api/http/HmdaInstitutionQueryApi.scala b/institutions-api/src/main/scala/hmda/institution/api/http/HmdaInstitutionQueryApi.scala
index 81f3bd311f..e2c34a6bc7 100644
--- a/institutions-api/src/main/scala/hmda/institution/api/http/HmdaInstitutionQueryApi.scala
+++ b/institutions-api/src/main/scala/hmda/institution/api/http/HmdaInstitutionQueryApi.scala
@@ -1,10 +1,10 @@
package hmda.institution.api.http
-import akka.actor.typed.Behavior
-import akka.actor.typed.scaladsl.Behaviors
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.{ ActorSystem, CoordinatedShutdown }
-import akka.http.scaladsl.server.Directives._
+import org.apache.pekko.actor.typed.Behavior
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.{ ActorSystem, CoordinatedShutdown }
+import org.apache.pekko.http.scaladsl.server.Directives._
import hmda.api.http.directives.HmdaTimeDirectives._
import hmda.api.http.routes.BaseHttpApi
diff --git a/institutions-api/src/main/scala/hmda/institution/api/http/InstitutionConverter.scala b/institutions-api/src/main/scala/hmda/institution/api/http/InstitutionConverter.scala
index 7df437460b..edbaa74444 100644
--- a/institutions-api/src/main/scala/hmda/institution/api/http/InstitutionConverter.scala
+++ b/institutions-api/src/main/scala/hmda/institution/api/http/InstitutionConverter.scala
@@ -39,7 +39,7 @@ object InstitutionConverter {
entity.quarterlyFilerHasFiledQ1,
entity.quarterlyFilerHasFiledQ2,
entity.quarterlyFilerHasFiledQ3,
- entity.notes
+ ""
))
}
diff --git a/institutions-api/src/main/scala/hmda/institution/api/http/InstitutionQueryHttpApi.scala b/institutions-api/src/main/scala/hmda/institution/api/http/InstitutionQueryHttpApi.scala
index 0a2efdbcb3..f58f08abdd 100644
--- a/institutions-api/src/main/scala/hmda/institution/api/http/InstitutionQueryHttpApi.scala
+++ b/institutions-api/src/main/scala/hmda/institution/api/http/InstitutionQueryHttpApi.scala
@@ -1,12 +1,12 @@
package hmda.institution.api.http
-import akka.http.scaladsl.marshalling.ToResponseMarshallable
-import akka.http.scaladsl.model.{StatusCodes, Uri}
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import ch.megard.akka.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
+import org.apache.pekko.http.scaladsl.marshalling.ToResponseMarshallable
+import org.apache.pekko.http.scaladsl.model.{StatusCodes, Uri}
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
import com.typesafe.config.Config
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.api.http.directives.CreateFilingAuthorization._
import hmda.api.http.model.ErrorResponse
import hmda.institution.api.http.model.{InstitutionNoteHistoryResponse, InstitutionsResponse}
diff --git a/institutions-api/src/main/scala/hmda/institution/loader/InstitutionLoader.scala b/institutions-api/src/main/scala/hmda/institution/loader/InstitutionLoader.scala
index 7470744d14..27dae810be 100644
--- a/institutions-api/src/main/scala/hmda/institution/loader/InstitutionLoader.scala
+++ b/institutions-api/src/main/scala/hmda/institution/loader/InstitutionLoader.scala
@@ -2,12 +2,12 @@ package hmda.institution.loader
import java.io.File
-import akka.actor.ActorSystem
-import akka.http.scaladsl.Http
-import akka.http.scaladsl.model._
-import akka.stream.Materializer
-import akka.stream.scaladsl.{FileIO, Sink}
-import akka.util.ByteString
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.http.scaladsl.Http
+import org.apache.pekko.http.scaladsl.model._
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.scaladsl.{FileIO, Sink}
+import org.apache.pekko.util.ByteString
import com.typesafe.config.ConfigFactory
import hmda.api.http.FlowUtils
import hmda.parser.institution.InstitutionCsvParser
@@ -15,8 +15,7 @@ import io.circe.syntax._
import org.slf4j.LoggerFactory
import scala.concurrent.duration._
import hmda.auth.OAuth2Authorization
-import akka.http.scaladsl.model.headers.{Authorization, OAuth2BearerToken}
-
+
import scala.concurrent.ExecutionContext
import scala.util.{ Failure, Success }
// $COVERAGE-OFF$
diff --git a/institutions-api/src/main/scala/hmda/institution/projection/InstitutionDBProjection.scala b/institutions-api/src/main/scala/hmda/institution/projection/InstitutionDBProjection.scala
index 16d7f193a5..050bd50b0c 100644
--- a/institutions-api/src/main/scala/hmda/institution/projection/InstitutionDBProjection.scala
+++ b/institutions-api/src/main/scala/hmda/institution/projection/InstitutionDBProjection.scala
@@ -2,8 +2,8 @@ package hmda.institution.projection
import java.time.Instant
-import akka.actor.typed.Behavior
-import akka.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.Behavior
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
import com.typesafe.config.ConfigFactory
import hmda.institution.api.http.InstitutionConverter
import hmda.institution.query.{InstitutionNoteHistoryEntity, _}
diff --git a/institutions-api/src/test/resources/application-createschema.conf b/institutions-api/src/test/resources/application-createschema.conf
index 70bcb98210..72fc1ca529 100644
--- a/institutions-api/src/test/resources/application-createschema.conf
+++ b/institutions-api/src/test/resources/application-createschema.conf
@@ -1,6 +1,6 @@
include "persistence.conf"
-akka {
+pekko {
stdout-loglevel = OFF
loglevel = OFF
diff --git a/institutions-api/src/test/resources/application.conf b/institutions-api/src/test/resources/application.conf
index 3072c47c7e..0ccdb2f480 100644
--- a/institutions-api/src/test/resources/application.conf
+++ b/institutions-api/src/test/resources/application.conf
@@ -1,6 +1,6 @@
include "persistence.conf"
-akka {
+pekko {
stdout-loglevel = OFF
loglevel = OFF
diff --git a/institutions-api/src/test/scala/hmda/institution/api/http/InstitutionQueryHttpApiSpec.scala b/institutions-api/src/test/scala/hmda/institution/api/http/InstitutionQueryHttpApiSpec.scala
index ad6f597087..e58dd1e51e 100644
--- a/institutions-api/src/test/scala/hmda/institution/api/http/InstitutionQueryHttpApiSpec.scala
+++ b/institutions-api/src/test/scala/hmda/institution/api/http/InstitutionQueryHttpApiSpec.scala
@@ -1,11 +1,11 @@
package hmda.institution.api.http
-import akka.http.scaladsl.model.StatusCodes
-import akka.http.scaladsl.server.Route
-import akka.http.scaladsl.testkit.ScalatestRouteTest
-import akka.util.Timeout
+import org.apache.pekko.http.scaladsl.model.StatusCodes
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.http.scaladsl.testkit.ScalatestRouteTest
+import org.apache.pekko.util.Timeout
import com.typesafe.config.ConfigFactory
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.institution.api.http.model.InstitutionsResponse
import hmda.institution.query.InstitutionSetup
import hmda.model.institution.Institution
diff --git a/institutions-api/src/test/scala/hmda/institution/projection/InstitutionDBProjectionSpec.scala b/institutions-api/src/test/scala/hmda/institution/projection/InstitutionDBProjectionSpec.scala
index 0c7eadf879..9c4d2609dc 100644
--- a/institutions-api/src/test/scala/hmda/institution/projection/InstitutionDBProjectionSpec.scala
+++ b/institutions-api/src/test/scala/hmda/institution/projection/InstitutionDBProjectionSpec.scala
@@ -1,9 +1,9 @@
package hmda.institution.projection
-import akka.actor.ActorSystem
-import akka.actor.typed.scaladsl.adapter._
-import akka.testkit.TestKit
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.testkit.TestKit
import hmda.institution.query.InstitutionEmailComponent
import hmda.messages.institution.InstitutionEvents.{ InstitutionCreated, InstitutionDeleted, InstitutionModified }
import hmda.model.institution.Institution
diff --git a/institutions-api/src/test/scala/hmda/institution/query/InstitutionSetup.scala b/institutions-api/src/test/scala/hmda/institution/query/InstitutionSetup.scala
index 4a43e0459f..2b2e79c5c9 100644
--- a/institutions-api/src/test/scala/hmda/institution/query/InstitutionSetup.scala
+++ b/institutions-api/src/test/scala/hmda/institution/query/InstitutionSetup.scala
@@ -1,6 +1,6 @@
package hmda.institution.query
-import akka.http.scaladsl.testkit.RouteTestTimeout
+import org.apache.pekko.http.scaladsl.testkit.RouteTestTimeout
import hmda.institution.query.InstitutionEntityGenerators.institutionEntityGen
import hmda.query.DbConfiguration.dbConfig
import slick.dbio.DBIOAction
diff --git a/irs-publisher/src/main/resources/application.conf b/irs-publisher/src/main/resources/application.conf
index 92ba4c82e4..aee06c82e9 100644
--- a/irs-publisher/src/main/resources/application.conf
+++ b/irs-publisher/src/main/resources/application.conf
@@ -5,7 +5,7 @@ include "persistence.conf"
# AWS Keyspace with SigV4AuthProvider
# include "persistence-keyspace-sigv4.conf"
-akka {
+pekko {
loglevel = info
log-dead-letters = off
log-dead-letters-during-shutdown = off
@@ -21,7 +21,7 @@ akka {
}
}
-akka.http.host-connection-pool.response-entity-subscription-timeout = 100.seconds
+pekko.http.host-connection-pool.response-entity-subscription-timeout = 100.seconds
cassandra-journal {
contact-points = ["localhost"]
diff --git a/irs-publisher/src/main/scala/hmda/publication/lar/IrsPublisherApp.scala b/irs-publisher/src/main/scala/hmda/publication/lar/IrsPublisherApp.scala
index e9dde4bb8b..ece5eadff7 100644
--- a/irs-publisher/src/main/scala/hmda/publication/lar/IrsPublisherApp.scala
+++ b/irs-publisher/src/main/scala/hmda/publication/lar/IrsPublisherApp.scala
@@ -1,15 +1,15 @@
package hmda.publication.lar
-import akka.Done
-import akka.actor.ActorSystem
-import akka.actor.typed.scaladsl.adapter._
-import akka.kafka.scaladsl.Consumer
-import akka.kafka.scaladsl.Consumer.DrainingControl
-import akka.kafka.{ConsumerSettings, Subscriptions}
-import akka.pattern.ask
-import akka.stream.Materializer
-import akka.stream.scaladsl.{Keep, Sink, Source}
-import akka.util.Timeout
+import org.apache.pekko.Done
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.kafka.scaladsl.Consumer
+import org.apache.pekko.kafka.scaladsl.Consumer.DrainingControl
+import org.apache.pekko.kafka.{ConsumerSettings, Subscriptions}
+import org.apache.pekko.pattern.ask
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.scaladsl.{Keep, Sink, Source}
+import org.apache.pekko.util.Timeout
import com.typesafe.config.ConfigFactory
import hmda.census.records.CensusRecords
import hmda.messages.HmdaMessageFilter
@@ -48,7 +48,7 @@ object IrsPublisherApp extends App {
implicit val timeout = Timeout(5.seconds)
- val kafkaConfig = system.settings.config.getConfig("akka.kafka.consumer")
+ val kafkaConfig = system.settings.config.getConfig("pekko.kafka.consumer")
val config = ConfigFactory.load()
val parallelism = config.getInt("hmda.lar.irs.parallelism")
@@ -67,7 +67,9 @@ object IrsPublisherApp extends App {
.mapAsync(parallelism)(HmdaMessageFilter.processOnlyValidKeys(msg => processData(msg.record.value().stripLineEnd.trim()).map(_ => msg.committableOffset)))
.mapAsync(parallelism * 2)(offset => offset.commitScaladsl())
.toMat(Sink.seq)(Keep.both)
- .mapMaterializedValue(DrainingControl.apply)
+ .mapMaterializedValue {
+ case (control, future) => DrainingControl.apply(control, future)
+ }
.run()
def processData(msg: String): Future[Done] =
diff --git a/irs-publisher/src/main/scala/hmda/publication/lar/publication/IrsPublisher.scala b/irs-publisher/src/main/scala/hmda/publication/lar/publication/IrsPublisher.scala
index 123f738452..97d73d16e2 100644
--- a/irs-publisher/src/main/scala/hmda/publication/lar/publication/IrsPublisher.scala
+++ b/irs-publisher/src/main/scala/hmda/publication/lar/publication/IrsPublisher.scala
@@ -1,15 +1,15 @@
package hmda.publication.lar.publication
-import akka.NotUsed
-import akka.actor.typed.Behavior
-import akka.actor.typed.scaladsl.Behaviors
-import akka.actor.typed.scaladsl.adapter._
-import akka.stream.Materializer
-import akka.stream.alpakka.s3.ApiVersion.ListBucketVersion2
-import akka.stream.alpakka.s3.scaladsl.S3
-import akka.stream.alpakka.s3.{MemoryBufferType, MultipartUploadResult, S3Attributes, S3Settings}
-import akka.stream.scaladsl.{Sink, Source}
-import akka.util.ByteString
+import org.apache.pekko.NotUsed
+import org.apache.pekko.actor.typed.Behavior
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.connectors.s3.ApiVersion.ListBucketVersion2
+import org.apache.pekko.stream.connectors.s3.scaladsl.S3
+import org.apache.pekko.stream.connectors.s3.{MemoryBufferType, MultipartUploadResult, S3Attributes, S3Settings}
+import org.apache.pekko.stream.scaladsl.{Sink, Source}
+import org.apache.pekko.util.ByteString
import com.typesafe.config.ConfigFactory
import hmda.census.records.CensusRecords
import hmda.census.records.CensusRecords._
diff --git a/kubernetes/beta/hmda-platform/templates/deployment.yaml b/kubernetes/beta/hmda-platform/templates/deployment.yaml
index adcb35d687..28a99e43a0 100644
--- a/kubernetes/beta/hmda-platform/templates/deployment.yaml
+++ b/kubernetes/beta/hmda-platform/templates/deployment.yaml
@@ -271,11 +271,11 @@ spec:
# path: /ready
# port: {{ .Values.bootstrap.name }}
ports:
- # akka remoting
+ # pekko remoting
- name: {{ .Values.remoting.name }}
containerPort: {{ .Values.remoting.port }}
protocol: {{ .Values.remoting.protocol }}
- # akka-management bootstrap
+ # pekko-management bootstrap
- name: {{ .Values.bootstrap.name }}
containerPort: {{ .Values.bootstrap.port }}
protocol: {{ .Values.bootstrap.protocol }}
diff --git a/kubernetes/beta/hmda-platform/values.yaml b/kubernetes/beta/hmda-platform/values.yaml
index 942af8a7d8..72cd46fd23 100644
--- a/kubernetes/beta/hmda-platform/values.yaml
+++ b/kubernetes/beta/hmda-platform/values.yaml
@@ -73,12 +73,12 @@ public:
cluster:
name: management
protocol: TCP
- port: 8558
+ port: 7626
bootstrap:
name: bootstrap
protocol: TCP
- port: 8558
+ port: 7626
websockets:
name: websockets
diff --git a/kubernetes/hmda-platform/templates/deployment.yaml b/kubernetes/hmda-platform/templates/deployment.yaml
index 4ac3b3a170..7328da61d7 100644
--- a/kubernetes/hmda-platform/templates/deployment.yaml
+++ b/kubernetes/hmda-platform/templates/deployment.yaml
@@ -275,11 +275,11 @@ spec:
# path: /ready
# port: {{ .Values.bootstrap.name }}
ports:
- # akka remoting
+ # pekko remoting
- name: {{ .Values.remoting.name }}
containerPort: {{ .Values.remoting.port }}
protocol: {{ .Values.remoting.protocol }}
- # akka-management bootstrap
+ # pekko-management bootstrap
- name: {{ .Values.bootstrap.name }}
containerPort: {{ .Values.bootstrap.port }}
protocol: {{ .Values.bootstrap.protocol }}
diff --git a/kubernetes/hmda-platform/values.yaml b/kubernetes/hmda-platform/values.yaml
index 8e8c1a574f..579a8ece4e 100644
--- a/kubernetes/hmda-platform/values.yaml
+++ b/kubernetes/hmda-platform/values.yaml
@@ -73,12 +73,12 @@ public:
cluster:
name: management
protocol: TCP
- port: 8558
+ port: 7626
bootstrap:
name: bootstrap
protocol: TCP
- port: 8558
+ port: 7626
websockets:
name: websockets
diff --git a/kubernetes/kind/hmda-platform/helm/templates/deployment.yaml b/kubernetes/kind/hmda-platform/helm/templates/deployment.yaml
index f7e86f6ae0..1c81e21850 100644
--- a/kubernetes/kind/hmda-platform/helm/templates/deployment.yaml
+++ b/kubernetes/kind/hmda-platform/helm/templates/deployment.yaml
@@ -308,11 +308,11 @@ spec:
# path: /ready
# port: {{ .Values.bootstrap.name }}
ports:
- # akka remoting
+ # pekko remoting
- name: {{ .Values.remoting.name }}
containerPort: {{ .Values.remoting.port }}
protocol: {{ .Values.remoting.protocol }}
- # akka-management bootstrap
+ # pekko-management bootstrap
- name: {{ .Values.bootstrap.name }}
containerPort: {{ .Values.bootstrap.port }}
protocol: {{ .Values.bootstrap.protocol }}
diff --git a/kubernetes/kind/hmda-platform/helm/values-dev.yaml b/kubernetes/kind/hmda-platform/helm/values-dev.yaml
index 064d262942..d229bc2745 100644
--- a/kubernetes/kind/hmda-platform/helm/values-dev.yaml
+++ b/kubernetes/kind/hmda-platform/helm/values-dev.yaml
@@ -67,12 +67,12 @@ public:
cluster:
name: management
protocol: TCP
- port: 8558
+ port: 7626
bootstrap:
name: bootstrap
protocol: TCP
- port: 8558
+ port: 7626
websockets:
name: websockets
diff --git a/kubernetes/kind/hmda-platform/helm/values.yaml b/kubernetes/kind/hmda-platform/helm/values.yaml
index b382513007..592f5d4d9a 100644
--- a/kubernetes/kind/hmda-platform/helm/values.yaml
+++ b/kubernetes/kind/hmda-platform/helm/values.yaml
@@ -68,12 +68,12 @@ public:
cluster:
name: management
protocol: TCP
- port: 8558
+ port: 7626
bootstrap:
name: bootstrap
protocol: TCP
- port: 8558
+ port: 7626
websockets:
name: websockets
diff --git a/kubernetes/project/build.properties b/kubernetes/project/build.properties
new file mode 100644
index 0000000000..ee4c672cd0
--- /dev/null
+++ b/kubernetes/project/build.properties
@@ -0,0 +1 @@
+sbt.version=1.10.1
diff --git a/modified-lar/src/main/resources/application.conf b/modified-lar/src/main/resources/application.conf
index 980d7dd6a3..7174722383 100644
--- a/modified-lar/src/main/resources/application.conf
+++ b/modified-lar/src/main/resources/application.conf
@@ -5,7 +5,7 @@ include "persistence.conf"
# AWS Keyspace with SigV4AuthProvider
# include "persistence-keyspace-sigv4.conf"
-akka {
+pekko {
loglevel = info
log-dead-letters = off
log-dead-letters-during-shutdown = off
diff --git a/modified-lar/src/main/scala/hmda/publication/lar/ModifiedLarApp.scala b/modified-lar/src/main/scala/hmda/publication/lar/ModifiedLarApp.scala
index 1cf8a7791f..3785645b88 100644
--- a/modified-lar/src/main/scala/hmda/publication/lar/ModifiedLarApp.scala
+++ b/modified-lar/src/main/scala/hmda/publication/lar/ModifiedLarApp.scala
@@ -1,15 +1,15 @@
package hmda.publication.lar
-import akka.Done
-import akka.actor.typed.scaladsl.AskPattern._
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.typed.{ActorRef, ActorSystem}
-import akka.actor.{ActorSystem => ClassicActorSystem}
-import akka.kafka.scaladsl.{Committer, Consumer}
-import akka.kafka.{CommitterSettings, ConsumerMessage, ConsumerSettings, Subscriptions}
-import akka.stream.Materializer
-import akka.stream.scaladsl._
-import akka.util.Timeout
+import org.apache.pekko.{Done, pattern}
+import org.apache.pekko.actor.typed.scaladsl.AskPattern._
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.typed.{ActorRef, ActorSystem}
+import org.apache.pekko.actor.{ActorSystem => ClassicActorSystem}
+import org.apache.pekko.kafka.scaladsl.{Committer, Consumer}
+import org.apache.pekko.kafka.{CommitterSettings, ConsumerMessage, ConsumerSettings, Subscriptions}
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.stream.scaladsl._
+import org.apache.pekko.util.Timeout
import com.typesafe.config.ConfigFactory
import hmda.census.records._
import hmda.messages.HmdaMessageFilter
@@ -44,7 +44,7 @@ object ModifiedLarApp extends App {
val futRes: Future[PersistModifiedLarResult] =
modifiedLarPublisher ? ((ref: ActorRef[PersistModifiedLarResult]) => PersistToS3AndPostgres(submissionId, ref))
// bubble up failure if there is any (this is done to prevent a commit to Kafka from happening
- // when used in Kafka consumer Akka Stream
+ // when used in Kafka consumer pekko Stream
futRes.map(result => result.status).flatMap {
case UploadSucceeded => Future.successful(Done.done())
case UploadFailed(exception) => Future.failed(exception)
@@ -73,7 +73,7 @@ object ModifiedLarApp extends App {
implicit val timeout: Timeout = Timeout(1.hour)
val config = ConfigFactory.load()
- val kafkaConfig = config.getConfig("akka.kafka.consumer")
+ val kafkaConfig = config.getConfig("pekko.kafka.consumer")
val parallelism = config.getInt("hmda.lar.modified.parallelism")
val censusTractMap2018: Map[String, Census] =
@@ -127,7 +127,7 @@ object ModifiedLarApp extends App {
log.info(s"Received a message - key: ${msg.record.key().toUpperCase()}, value: ${msg.record.value().toUpperCase()}")
processKafkaRecord(msg.record.value().toUpperCase().trim).map(_ => msg.committableOffset)
}
- akka.pattern.retry(
+ pattern.retry(
attempt = () => processMsg(),
attempts = 2,
delay = 90.seconds
diff --git a/modified-lar/src/main/scala/hmda/publication/lar/publication/ModifiedLarPublisher.scala b/modified-lar/src/main/scala/hmda/publication/lar/publication/ModifiedLarPublisher.scala
index 51e45cbc6b..1021de045b 100644
--- a/modified-lar/src/main/scala/hmda/publication/lar/publication/ModifiedLarPublisher.scala
+++ b/modified-lar/src/main/scala/hmda/publication/lar/publication/ModifiedLarPublisher.scala
@@ -1,15 +1,15 @@
package hmda.publication.lar.publication
-import akka.actor.typed.scaladsl.Behaviors
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.typed.{ActorRef, ActorSystem, Behavior, SupervisorStrategy}
-import akka.stream._
-import akka.stream.alpakka.s3.ApiVersion.ListBucketVersion2
-import akka.stream.alpakka.s3._
-import akka.stream.alpakka.s3.scaladsl.S3
-import akka.stream.scaladsl._
-import akka.util.ByteString
-import akka.{Done, NotUsed}
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.typed.{ActorRef, ActorSystem, Behavior, SupervisorStrategy}
+import org.apache.pekko.stream._
+import org.apache.pekko.stream.connectors.s3.ApiVersion.ListBucketVersion2
+import org.apache.pekko.stream.connectors.s3._
+import org.apache.pekko.stream.connectors.s3.scaladsl.S3
+import org.apache.pekko.stream.scaladsl._
+import org.apache.pekko.util.ByteString
+import org.apache.pekko.{Done, NotUsed}
import com.typesafe.config.ConfigFactory
import hmda.messages.pubsub.HmdaTopics._
import hmda.messages.submission.HmdaRawDataEvents.LineAdded
@@ -144,7 +144,7 @@ object ModifiedLarPublisher {
_ <- s3HeaderMat
_ <- s3NoHeaderMat
_ <- pgMat
- } yield akka.Done.done()
+ } yield Done.done()
) { implicit builder => (source, headerSink, noHeaderSink, pgSink) =>
import GraphDSL.Implicits._
diff --git a/modified-lar/src/test/resources/application.conf b/modified-lar/src/test/resources/application.conf
index 051d447159..223b830d8c 100644
--- a/modified-lar/src/test/resources/application.conf
+++ b/modified-lar/src/test/resources/application.conf
@@ -82,7 +82,7 @@ embedded-pg {
}
}
-alpakka.s3 {
+pekko.s3 {
endpoint-url = "http://localhost:9090"
aws {
credentials {
diff --git a/modified-lar/src/test/scala/hmda/publication/lar/parser/ModifiedLarPublisherSpec.scala b/modified-lar/src/test/scala/hmda/publication/lar/parser/ModifiedLarPublisherSpec.scala
index c19b727d0e..e4c1744e43 100644
--- a/modified-lar/src/test/scala/hmda/publication/lar/parser/ModifiedLarPublisherSpec.scala
+++ b/modified-lar/src/test/scala/hmda/publication/lar/parser/ModifiedLarPublisherSpec.scala
@@ -1,15 +1,15 @@
//package hmda.publication.lar.publication
//
-//import akka.NotUsed
-//import akka.actor.ActorSystem
-//import akka.actor.typed.{ActorSystem => TypedSystem}
-//import akka.actor.typed.scaladsl.AskPattern._
-//import akka.actor.typed.scaladsl.Behaviors
-//import akka.actor.typed.scaladsl.adapter._
-//import akka.actor.typed.{ActorRef, SupervisorStrategy}
-//import akka.stream.scaladsl.Source
-//import akka.testkit.TestKit
-//import akka.util.Timeout
+//import org.apache.pekko.NotUsed
+//import org.apache.pekko.actor.ActorSystem
+//import org.apache.pekko.actor.typed.{ActorSystem => TypedSystem}
+//import org.apache.pekko.actor.typed.scaladsl.AskPattern._
+//import org.apache.pekko.actor.typed.scaladsl.Behaviors
+//import org.apache.pekko.actor.typed.scaladsl.adapter._
+//import org.apache.pekko.actor.typed.{ActorRef, SupervisorStrategy}
+//import org.apache.pekko.stream.scaladsl.Source
+//import org.apache.pekko.testkit.TestKit
+//import org.apache.pekko.util.Timeout
//import com.adobe.testing.s3mock.S3MockApplication
//import hmda.census.records.CensusRecords
//import hmda.messages.submission.HmdaRawDataEvents.LineAdded
diff --git a/project/BuildSettings.scala b/project/BuildSettings.scala
index 4484db00ad..b30908cfcf 100644
--- a/project/BuildSettings.scala
+++ b/project/BuildSettings.scala
@@ -23,7 +23,7 @@ object BuildSettings {
assembly / aggregate := false,
Test / parallelExecution:= false,
Test / fork := true,
- resolvers += "Akka library repository".at("https://repo.akka.io/maven"),
+ resolvers += "pekko library repository".at("https://repo.pekko.io/maven"),
commands += dockerPublishLocalSkipTestsCommand
)
}
\ No newline at end of file
diff --git a/project/Dependencies.scala b/project/Dependencies.scala
index 612884ce9a..a9d2205bea 100644
--- a/project/Dependencies.scala
+++ b/project/Dependencies.scala
@@ -12,65 +12,67 @@ object Dependencies {
val scalaCheck = "org.scalacheck" %% "scalacheck" % Version.scalaCheck % Test
val scalaMock = "org.scalamock" %% "scalamock" % Version.scalaMock % Test
val logback = "ch.qos.logback" % "logback-classic" % Version.logback
- lazy val akkaSlf4J = "com.typesafe.akka" %% "akka-slf4j" % Version.akka
- lazy val akkaTyped = "com.typesafe.akka" %% "akka-actor-typed" % Version.akka
- lazy val akkaCluster = "com.typesafe.akka" %% "akka-cluster" % Version.akka
- lazy val akkaClusterTyped = "com.typesafe.akka" %% "akka-cluster-typed" % Version.akka
- lazy val akkaClusterSharding = "com.typesafe.akka" %% "akka-cluster-sharding" % Version.akka
- lazy val akkaClusterShardingTyped = "com.typesafe.akka" %% "akka-cluster-sharding-typed" % Version.akka
- lazy val akkaPersistence = "com.typesafe.akka" %% "akka-persistence" % Version.akka
- lazy val akkaPersistenceTyped = "com.typesafe.akka" %% "akka-persistence-typed" % Version.akka
- lazy val akkaPersistenceQuery = "com.typesafe.akka" %% "akka-persistence-query" % Version.akka
- lazy val akkaTestkitTyped = "com.typesafe.akka" %% "akka-actor-testkit-typed" % Version.akka % Test
- lazy val akkaStream = "com.typesafe.akka" %% "akka-stream" % Version.akka
- lazy val akkaStreamTyped = "com.typesafe.akka" %% "akka-stream-typed" % Version.akka
- lazy val akkaStreamsTestKit = "com.typesafe.akka" %% "akka-stream-testkit" % Version.akka % Test
- lazy val akkaHttp = "com.typesafe.akka" %% "akka-http" % Version.akkaHttp
- lazy val akkaHttp2 = "com.typesafe.akka" %% "akka-http2-support" % Version.akkaHttp2Support
- lazy val akkaHttpXml = "com.typesafe.akka" %% "akka-http-xml" % Version.akkaHttp
- lazy val akkaHttpTestkit = "com.typesafe.akka" %% "akka-http-testkit" % Version.akkaHttp % Test
- lazy val akkaHttpSprayJson = "com.typesafe.akka" %% "akka-http-spray-json" % Version.akkaHttp
+ lazy val pekkoSlf4J = "org.apache.pekko" %% "pekko-slf4j" % Version.pekkoVersion
+ lazy val pekkoTyped = "org.apache.pekko" %% "pekko-actor-typed" % Version.pekkoVersion
+ lazy val pekkoCluster = "org.apache.pekko" %% "pekko-cluster" % Version.pekkoVersion
+ lazy val pekkoClusterTyped = "org.apache.pekko" %% "pekko-cluster-typed" % Version.pekkoVersion
+ lazy val pekkoClusterSharding = "org.apache.pekko" %% "pekko-cluster-sharding" % Version.pekkoVersion
+ lazy val pekkoClusterShardingTyped = "org.apache.pekko" %% "pekko-cluster-sharding-typed" % Version.pekkoVersion
+ lazy val pekkoPersistence = "org.apache.pekko" %% "pekko-persistence" % Version.pekkoVersion
+ lazy val pekkoPersistenceTyped = "org.apache.pekko" %% "pekko-persistence-typed" % Version.pekkoVersion
+ lazy val pekkoPersistenceQuery = "org.apache.pekko" %% "pekko-persistence-query" % Version.pekkoVersion
+ lazy val pekkoTestkitTyped = "org.apache.pekko" %% "pekko-actor-testkit-typed" % Version.pekkoVersion % Test
+ lazy val pekkoStream = "org.apache.pekko" %% "pekko-stream" % Version.pekkoVersion
+ lazy val pekkoStreamTyped = "org.apache.pekko" %% "pekko-stream-typed" % Version.pekkoVersion
+ lazy val pekkoStreamsTestKit = "org.apache.pekko" %% "pekko-stream-testkit" % Version.pekkoVersion % Test
+ lazy val pekkoHttp = "org.apache.pekko" %% "pekko-http" % Version.pekkoVersion
+ lazy val pekkoHttp2 = "org.playframework" %% "play-pekko-http2-support" % Version.pekkoHttp2Support
+ lazy val pekkoHttpXml = "org.apache.pekko" %% "pekko-http-xml" % Version.pekkoVersion
+ lazy val pekkoHttpTestkit = "org.apache.pekko" %% "pekko-http-testkit" % Version.pekkoVersion % Test
+ lazy val pekkoHttpSprayJson = "org.apache.pekko" %% "pekko-http-spray-json" % Version.pekkoVersion
lazy val scalaLogging = "com.typesafe.scala-logging" %% "scala-logging" % Version.scalaLogging
lazy val slickPostgres = "com.github.tminglei" %% "slick-pg" % Version.slickPostgres
- lazy val akkaHttpCirce = "de.heikoseeberger" %% "akka-http-circe" % Version.akkaHttpJson
- lazy val akkaManagementClusterBootstrap =
- "com.lightbend.akka.management" %% "akka-management-cluster-bootstrap" % Version.akkaClusterManagement exclude ("com.typesafe.akka", "akka-http") exclude ("com.typesafe.akka", "akka-http-xml")
- lazy val akkaServiceDiscoveryDNS =
- "com.typesafe.akka" %% "akka-discovery" % Version.akka exclude ("com.typesafe.akka", "akka-http") exclude ("com.typesafe.akka", "akka-http-xml")
- lazy val akkaServiceDiscoveryKubernetes =
- "com.lightbend.akka.discovery" %% "akka-discovery-kubernetes-api" % Version.akkaClusterManagement exclude ("com.typesafe.akka", "akka-http") exclude ("com.typesafe.akka", "akka-http-xml")
- lazy val akkaManagement =
- "com.lightbend.akka.management" %% "akka-management" % Version.akkaClusterManagement exclude ("com.typesafe.akka", "akka-http") exclude ("com.typesafe.akka", "akka-http-xml")
- lazy val akkaClusterHttpManagement =
- "com.lightbend.akka.management" %% "akka-management-cluster-http" % Version.akkaClusterManagement exclude ("com.typesafe.akka", "akka-http") exclude ("com.typesafe.akka", "akka-http-xml")
- lazy val akkaCors =
- "ch.megard" %% "akka-http-cors" % Version.akkaCors exclude ("com.typesafe.akka", "akka-http") exclude ("com.typesafe.akka", "akka-http-xml")
+ lazy val pekkoHttpCirce = "com.github.pjfanning" %% "pekko-http-circe" % Version.pekkoHttpCirce
+ lazy val pekkoManagementClusterBootstrap =
+ "org.apache.pekko" %% "pekko-management-cluster-bootstrap" % Version.pekkoClusterManagement exclude ("org.apache.pekko", "pekko-http") exclude ("org.apache.pekko", "pekko-http-xml")
+ lazy val pekkoServiceDiscoveryDNS =
+ "org.apache.pekko" %% "pekko-discovery" % Version.pekkoVersion exclude ("org.apache.pekko", "pekko-http") exclude ("org.apache.pekko", "pekko-http-xml")
+ lazy val pekkoServiceDiscoveryKubernetes =
+ "org.apache.pekko" %% "pekko-discovery-kubernetes-api" % Version.pekkoClusterManagement exclude ("org.apache.pekko", "pekko-http") exclude ("org.apache.pekko", "pekko-http-xml")
+ lazy val pekkoManagement =
+ "org.apache.pekko" %% "pekko-management" % Version.pekkoClusterManagement exclude ("org.apache.pekko", "pekko-http") exclude ("org.apache.pekko", "pekko-http-xml")
+ lazy val pekkoClusterHttpManagement =
+ "org.apache.pekko" %% "pekko-management-cluster-http" % Version.pekkoClusterManagement exclude("org.apache.pekko", "pekko-http") exclude ("org.apache.pekko", "pekko-http-xml")
+ lazy val pekkoCors =
+ "org.apache.pekko" %% "pekko-http-cors" % Version.pekkoVersion exclude ("org.apache.pekko", "pekko-http") exclude ("org.apache.pekko", "pekko-http-xml")
lazy val circe = "io.circe" %% "circe-core" % Version.circe
lazy val circeGeneric = "io.circe" %% "circe-generic" % Version.circe
lazy val circeParser = "io.circe" %% "circe-parser" % Version.circe
- lazy val akkaPersistenceCassandra = "com.typesafe.akka" %% "akka-persistence-cassandra" % Version.cassandraPluginVersion
+ lazy val pekkoPersistenceCassandra = "org.apache.pekko" %% "pekko-persistence-cassandra" % Version.cassandraPluginVersion
lazy val slick = "com.typesafe.slick" %% "slick" % Version.slick
lazy val slickHikariCP = "com.typesafe.slick" %% "slick-hikaricp" % Version.slick
- lazy val alpakkaSlick = "com.lightbend.akka" %% "akka-stream-alpakka-slick" % Version.alpakka
+ lazy val pekkoSlick = "org.apache.pekko" %% "pekko-connectors-slick" % Version.pekkoVersion
lazy val postgres = "org.postgresql" % "postgresql" % Version.postgres
lazy val h2 = "com.h2database" % "h2" % Version.h2 % Test
lazy val testContainers = "org.testcontainers" % "testcontainers" % Version.testContainers % Test
lazy val apacheCommonsIO = "commons-io" % "commons-io" % Version.apacheCommons % Test
- lazy val keycloakAdmin = "org.keycloak" % "keycloak-admin-client" % Version.keycloakAdmin exclude("org.jboss.logging", "commons-logging-jboss-logging")
+ lazy val keycloakAdmin = "org.keycloak" % "keycloak-admin-client" % Version.keycloakAdmin exclude("org.jboss.logging", "commons-logging-jboss-logging") exclude ("com.sun.activation","jakarta.activation")
lazy val keycloakCommons = "org.keycloak" % "keycloak-client-common-synced" % Version.keycloakCommons
lazy val resteasyClient = "org.jboss.resteasy" % "resteasy-client" % Version.resteasy % "provided"
lazy val resteasyJackson = "org.jboss.resteasy" % "resteasy-jackson2-provider" % Version.resteasy % "provided"
lazy val resteasyMulti = "org.jboss.resteasy" % "resteasy-multipart-provider" % Version.resteasy % "provided"
lazy val jbossLogging = "org.jboss.logging" % "jboss-logging" % Version.jbossLogging
lazy val httpClient = "org.apache.httpcomponents" % "httpclient" % Version.httpcomponents
- lazy val akkaKafkaStreams = "com.typesafe.akka" %% "akka-stream-kafka" % Version.akkaKafka exclude("org.apache.kafka", "kafka-clients")
+ lazy val pekkoKafkaStreams = "org.apache.pekko" %% "pekko-connectors-kafka" % Version.pekkoKafkaStreams exclude("org.apache.kafka", "kafka-clients")
lazy val kafkaClients = "org.apache.kafka" % "kafka-clients" % Version.kafkaClients
- lazy val alpakkaS3 = "com.lightbend.akka" %% "akka-stream-alpakka-s3" % Version.alpakkaS3
- lazy val akkaQuartzScheduler = "com.enragedginger" %% "akka-quartz-scheduler" % Version.akkaQuartzScheduler
+ lazy val pekkoS3 = "org.apache.pekko" %% "pekko-connectors-s3" % Version.pekkoVersion
+ lazy val pekkoQuartzScheduler = "io.github.samueleresca" %% "pekko-quartz-scheduler" % Version.pekkoQuartzScheduler
lazy val sbtResolver = "io.spray" %% "sbt-revolver" % Version.sprayresolver
lazy val enumeratum = "com.beachape" %% "enumeratum" % Version.enumeratum
lazy val enumeratumCirce = "com.beachape" %% "enumeratum-circe" % Version.enumeratumCirce
lazy val monix = "io.monix" %% "monix" % Version.monix
+ lazy val jacksonDatabind = "com.fasterxml.jackson.core" %% "jackson-databind" % Version.jacksonDatabind
+ lazy val pekkoSerialization = "org.apache.pekko" %% "pekko-serialization-jackson" % Version.pekkoVersion
lazy val lettuce = "io.lettuce" % "lettuce-core" % Version.lettuce
lazy val guava = "com.google.guava" % "guava" % Version.guava
lazy val awsSesSdk = "com.amazonaws" % "aws-java-sdk-ses" % Version.awsSesSdk exclude ("commons-logging", "commons-logging")
@@ -78,7 +80,7 @@ object Dependencies {
lazy val zeroAllocationHashing = "net.openhft" % "zero-allocation-hashing" % Version.zeroAllocation
lazy val cormorant = "io.chrisdavenport" %% "cormorant-parser" % Version.cormorant
lazy val cormorantGeneric = "io.chrisdavenport" %% "cormorant-generic" % Version.cormorant
- lazy val alpakkaFile = "com.lightbend.akka" %% "akka-stream-alpakka-file" % Version.alpakka
+ lazy val pekkoFile = "org.apache.pekko" %% "pekko-connectors-file" % Version.pekkoVersion
lazy val scalacheckShapeless = "com.github.alexarchambault" %% "scalacheck-shapeless_1.14" % Version.scalacheckShapeless % Test
lazy val diffx = "com.softwaremill.diffx" %% "diffx-core" % Version.diffx % Test
lazy val kubernetesApi = "io.kubernetes" % "client-java" % Version.kubernetesApi
diff --git a/project/Version.scala b/project/Version.scala
index 9591191dc9..503b20495c 100644
--- a/project/Version.scala
+++ b/project/Version.scala
@@ -3,16 +3,18 @@ object Version {
val logback = "1.5.18"
val scalaTest = "3.0.8"
val scalaCheck = "1.17.0"
- val akka = "2.9.4"
- val akkaHttp = "10.6.3"
- val akkaHttp2Support = "10.5.3"
- val akkaHttpJson = "1.39.2"
- val akkaClusterManagement = "1.5.2"
- val akkaCors = "1.2.0"
- val akkaKafka = "2.0.2"
+ val pekkoVersion = "1.3.0"
+ val pekkoHttp = "1.3.0"
+ val jacksonDatabind ="2.15.4"
+ val pekkoHttp2Support = "3.0.11"
+ val pekkoHttpJson = "1.3.0"
+ val pekkoClusterManagement = "1.2.1"
+ val pekkoCors = "1.3.0"
+ val pekkoKafkaStreams = "1.1.0"
val kafkaClients = "4.0.0"
val circe = "0.14.5"
- val cassandraPluginVersion = "1.2.1"
+ val pekkoHttpCirce = "3.9.2"
+ val cassandraPluginVersion = "1.1.0"
val cassandraLauncher = "1.1.1"
val slick = "3.4.1"
val slickPostgres = "0.21.1"
@@ -24,9 +26,10 @@ object Version {
val resteasy = "6.2.4.Final"
val jbossLogging = "3.5.1.Final"
val httpcomponents = "4.5.14"
- val alpakka = "6.0.2"
- val alpakkaS3 = "6.0.2"
- val akkaQuartzScheduler = "1.9.3-akka-2.6.x"
+ val pekkoSlick = "1.0.2"
+ val pekkoS3 = "1.3.0"
+ val pekkoFile = "1.3.0"
+ val pekkoQuartzScheduler = "1.3.0-pekko-1.1.x"
val sprayresolver = "0.10.0"
val enumeratum = "1.7.2"
val enumeratumCirce = "1.7.2"
diff --git a/project/grpc.sbt b/project/grpc.sbt
index 5f5cf6a4d9..9726b5f311 100644
--- a/project/grpc.sbt
+++ b/project/grpc.sbt
@@ -1,4 +1 @@
-addSbtPlugin("com.lightbend.akka.grpc" % "sbt-akka-grpc" % "1.2.5")
-addSbtPlugin("com.lightbend.sbt" % "sbt-javaagent" % "0.1.5") // ALPN agent
-
-
+addSbtPlugin("org.apache.pekko" % "pekko-grpc-sbt-plugin" % "1.0.2")
\ No newline at end of file
diff --git a/project/plugins.sbt b/project/plugins.sbt
new file mode 100644
index 0000000000..6ad9694e40
--- /dev/null
+++ b/project/plugins.sbt
@@ -0,0 +1 @@
+addSbtPlugin("com.github.sbt" % "sbt-javaagent" % "0.1.8")
\ No newline at end of file
diff --git a/rate-limit/src/main/resources/application.conf b/rate-limit/src/main/resources/application.conf
index fb88bd027f..166fa13f36 100644
--- a/rate-limit/src/main/resources/application.conf
+++ b/rate-limit/src/main/resources/application.conf
@@ -12,7 +12,7 @@ hmda {
}
}
-akka {
+pekko {
loglevel = info
log-dead-letters = off
log-dead-letters-during-shutdown = off
diff --git a/rate-limit/src/main/scala/hmda/RateLimitApp.scala b/rate-limit/src/main/scala/hmda/RateLimitApp.scala
index a30e9bc5d0..e641ee1e38 100644
--- a/rate-limit/src/main/scala/hmda/RateLimitApp.scala
+++ b/rate-limit/src/main/scala/hmda/RateLimitApp.scala
@@ -1,6 +1,6 @@
package hmda.rateLimit
-import akka.actor.ActorSystem
+import org.apache.pekko.actor.ActorSystem
import org.slf4j.LoggerFactory
object RateLimitApp extends App {
diff --git a/rate-limit/src/main/scala/hmda/api/RateLimitApi.scala b/rate-limit/src/main/scala/hmda/api/RateLimitApi.scala
index a322622d10..16f4d4581a 100644
--- a/rate-limit/src/main/scala/hmda/api/RateLimitApi.scala
+++ b/rate-limit/src/main/scala/hmda/api/RateLimitApi.scala
@@ -1,12 +1,12 @@
package hmda.rateLimit
-import akka.actor.{ ActorSystem, Props }
-import akka.event.Logging
-import akka.http.scaladsl.model.{ HttpRequest, HttpResponse }
-import akka.http.scaladsl.{ Http, HttpConnectionContext }
-import akka.pattern.pipe
-import akka.stream.Materializer
-import akka.util.Timeout
+import org.apache.pekko.actor.{ ActorSystem, Props }
+import org.apache.pekko.event.Logging
+import org.apache.pekko.http.scaladsl.model.{ HttpRequest, HttpResponse }
+import org.apache.pekko.http.scaladsl.{ Http, HttpConnectionContext }
+import org.apache.pekko.pattern.pipe
+import org.apache.pekko.stream.Materializer
+import org.apache.pekko.util.Timeout
import com.typesafe.config.{ Config, ConfigFactory }
import hmda.api.HmdaServer
import hmda.rateLimit.api.grpc.RateLimitServiceImpl
diff --git a/ratespread-calculator/src/main/resources/application.conf b/ratespread-calculator/src/main/resources/application.conf
index 7af9176e0f..1a183cb5f2 100644
--- a/ratespread-calculator/src/main/resources/application.conf
+++ b/ratespread-calculator/src/main/resources/application.conf
@@ -1,6 +1,6 @@
include "cors.conf"
-akka {
+pekko {
log-level = INFO
http.server.preview.enable-http2 = on
diff --git a/ratespread-calculator/src/main/resources/cors.conf b/ratespread-calculator/src/main/resources/cors.conf
index 9e8d4e561c..822acf27f0 100644
--- a/ratespread-calculator/src/main/resources/cors.conf
+++ b/ratespread-calculator/src/main/resources/cors.conf
@@ -1,4 +1,4 @@
-akka-http-cors {
+pekko-http-cors {
allow-credentials = no
allowed-origins = "*"
allowed-headers = ["Origin","Content-Type"]
diff --git a/ratespread-calculator/src/main/scala/hmda/calculator/Guardian/scala.scala b/ratespread-calculator/src/main/scala/hmda/calculator/Guardian/scala.scala
index 74f1062484..9e04977775 100644
--- a/ratespread-calculator/src/main/scala/hmda/calculator/Guardian/scala.scala
+++ b/ratespread-calculator/src/main/scala/hmda/calculator/Guardian/scala.scala
@@ -1,7 +1,7 @@
package hmda.calculator
-import akka.actor.typed.Behavior
-import akka.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.Behavior
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
import hmda.calculator.api.http.RateSpreadAPI
import hmda.calculator.scheduler.APORScheduler
import hmda.calculator.scheduler.APORScheduler.Command
diff --git a/ratespread-calculator/src/main/scala/hmda/calculator/HmdaRateSpread.scala b/ratespread-calculator/src/main/scala/hmda/calculator/HmdaRateSpread.scala
index 001268edbe..fa34fe9c41 100644
--- a/ratespread-calculator/src/main/scala/hmda/calculator/HmdaRateSpread.scala
+++ b/ratespread-calculator/src/main/scala/hmda/calculator/HmdaRateSpread.scala
@@ -1,6 +1,6 @@
package hmda.calculator
-import akka.actor.typed.ActorSystem
+import org.apache.pekko.actor.typed.ActorSystem
import org.slf4j.LoggerFactory
// $COVERAGE-OFF$
object HmdaRateSpread extends App {
diff --git a/ratespread-calculator/src/main/scala/hmda/calculator/api/http/RateSpreadAPI.scala b/ratespread-calculator/src/main/scala/hmda/calculator/api/http/RateSpreadAPI.scala
index f04c40c6c1..47d32fe49a 100644
--- a/ratespread-calculator/src/main/scala/hmda/calculator/api/http/RateSpreadAPI.scala
+++ b/ratespread-calculator/src/main/scala/hmda/calculator/api/http/RateSpreadAPI.scala
@@ -1,10 +1,10 @@
package hmda.calculator.api.http
-import akka.actor.typed.Behavior
-import akka.actor.typed.scaladsl.Behaviors
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.{ ActorSystem, CoordinatedShutdown }
-import akka.http.scaladsl.server.Directives._
+import org.apache.pekko.actor.typed.Behavior
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.{ ActorSystem, CoordinatedShutdown }
+import org.apache.pekko.http.scaladsl.server.Directives._
import hmda.api.http.directives.HmdaTimeDirectives._
import hmda.api.http.routes.BaseHttpApi
diff --git a/ratespread-calculator/src/main/scala/hmda/calculator/api/http/RateSpreadAPIRoutes.scala b/ratespread-calculator/src/main/scala/hmda/calculator/api/http/RateSpreadAPIRoutes.scala
index b0a8a15cb4..85a443e656 100644
--- a/ratespread-calculator/src/main/scala/hmda/calculator/api/http/RateSpreadAPIRoutes.scala
+++ b/ratespread-calculator/src/main/scala/hmda/calculator/api/http/RateSpreadAPIRoutes.scala
@@ -1,14 +1,14 @@
package hmda.calculator.api.http
-import akka.http.scaladsl.model.MediaTypes.`text/csv`
-import akka.http.scaladsl.model.StatusCodes.BadRequest
-import akka.http.scaladsl.model.{ HttpCharsets, HttpEntity }
-import akka.http.scaladsl.server.Directives._
-import akka.http.scaladsl.server.Route
-import akka.stream.scaladsl.Source
-import akka.util.ByteString
-import ch.megard.akka.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import org.apache.pekko.http.scaladsl.model.MediaTypes.`text/csv`
+import org.apache.pekko.http.scaladsl.model.StatusCodes.BadRequest
+import org.apache.pekko.http.scaladsl.model.{ HttpCharsets, HttpEntity }
+import org.apache.pekko.http.scaladsl.server.Directives._
+import org.apache.pekko.http.scaladsl.server.Route
+import org.apache.pekko.stream.scaladsl.Source
+import org.apache.pekko.util.ByteString
+import org.apache.pekko.http.cors.scaladsl.CorsDirectives.{cors, corsRejectionHandler}
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.calculator.api.model.RateSpreadRequest
import hmda.calculator.apor.APORCommands
import hmda.calculator.parser.RateSpreadCSVParser
diff --git a/ratespread-calculator/src/main/scala/hmda/calculator/scheduler/APORScheduler.scala b/ratespread-calculator/src/main/scala/hmda/calculator/scheduler/APORScheduler.scala
index 33af0b2f6c..b79cbec4a8 100644
--- a/ratespread-calculator/src/main/scala/hmda/calculator/scheduler/APORScheduler.scala
+++ b/ratespread-calculator/src/main/scala/hmda/calculator/scheduler/APORScheduler.scala
@@ -1,17 +1,17 @@
package hmda.calculator.scheduler
-import akka.actor.typed.SupervisorStrategy
-import akka.actor.typed.scaladsl.Behaviors
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.typed.{Behavior, PostStop}
-import akka.stream.alpakka.s3.ApiVersion.ListBucketVersion2
-import akka.stream.alpakka.s3.scaladsl.S3
-import akka.stream.alpakka.s3.{MemoryBufferType, ObjectMetadata, S3Attributes, S3Settings}
-import akka.stream.scaladsl.{Flow, Framing, Sink, Source}
-import akka.stream.{Attributes, Materializer}
-import akka.util.ByteString
-import akka.{Done, NotUsed}
-import com.typesafe.akka.extension.quartz.QuartzSchedulerExtension
+import org.apache.pekko.actor.typed.SupervisorStrategy
+import org.apache.pekko.actor.typed.scaladsl.Behaviors
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.typed.{Behavior, PostStop}
+import org.apache.pekko.stream.connectors.s3.ApiVersion.ListBucketVersion2
+import org.apache.pekko.stream.connectors.s3.scaladsl.S3
+import org.apache.pekko.stream.connectors.s3.{MemoryBufferType, ObjectMetadata, S3Attributes, S3Settings}
+import org.apache.pekko.stream.scaladsl.{Flow, Framing, Sink, Source}
+import org.apache.pekko.stream.{Attributes, Materializer}
+import org.apache.pekko.util.ByteString
+import org.apache.pekko.{Done, NotUsed}
+import org.apache.pekko.extension.quartz.QuartzSchedulerExtension
import com.typesafe.config.ConfigFactory
import hmda.calculator.apor.{AporListEntity, FixedRate, RateType, VariableRate}
import hmda.calculator.parser.APORCsvParser
diff --git a/ratespread-calculator/src/test/resources/application.conf b/ratespread-calculator/src/test/resources/application.conf
index 6eba9a1ac8..98c01c832f 100644
--- a/ratespread-calculator/src/test/resources/application.conf
+++ b/ratespread-calculator/src/test/resources/application.conf
@@ -1,6 +1,6 @@
include "cors.conf"
-akka {
+pekko {
log-level = INFO
http.server.preview.enable-http2 = on
quartz {
@@ -40,7 +40,7 @@ aws {
region = "us-east-1"
}
-alpakka.s3 {
+pekko.s3 {
endpoint-url = "http://localhost:9090"
aws {
credentials {
diff --git a/ratespread-calculator/src/test/scala/hmda/calculator/api/http/RateSpreadAPISpec.scala b/ratespread-calculator/src/test/scala/hmda/calculator/api/http/RateSpreadAPISpec.scala
index e034d44282..73b5ada17c 100644
--- a/ratespread-calculator/src/test/scala/hmda/calculator/api/http/RateSpreadAPISpec.scala
+++ b/ratespread-calculator/src/test/scala/hmda/calculator/api/http/RateSpreadAPISpec.scala
@@ -2,12 +2,12 @@ package hmda.uli.api.http
import java.time.LocalDate
import java.time.format.DateTimeFormatter
-import akka.http.scaladsl.model.StatusCodes
-import akka.http.scaladsl.testkit.ScalatestRouteTest
-import akka.http.scaladsl.unmarshalling.Unmarshaller._
-import akka.util.Timeout
+import org.apache.pekko.http.scaladsl.model.StatusCodes
+import org.apache.pekko.http.scaladsl.testkit.ScalatestRouteTest
+import org.apache.pekko.http.scaladsl.unmarshalling.Unmarshaller._
+import org.apache.pekko.util.Timeout
import com.typesafe.config.ConfigFactory
-import de.heikoseeberger.akkahttpcirce.FailFastCirceSupport._
+import com.github.pjfanning.pekkohttpcirce.FailFastCirceSupport._
import hmda.calculator.api.RateSpreadResponse
import hmda.calculator.api.http.RateSpreadAPIRoutes
import hmda.calculator.api.model.RateSpreadRequest
diff --git a/ratespread-calculator/src/test/scala/hmda/calculator/scheduler/APORSchedulerSpec.scala b/ratespread-calculator/src/test/scala/hmda/calculator/scheduler/APORSchedulerSpec.scala
index d421aacd78..cdcbacd550 100644
--- a/ratespread-calculator/src/test/scala/hmda/calculator/scheduler/APORSchedulerSpec.scala
+++ b/ratespread-calculator/src/test/scala/hmda/calculator/scheduler/APORSchedulerSpec.scala
@@ -3,14 +3,14 @@
//import java.time.LocalDate
//import java.time.format.DateTimeFormatter
//
-//import akka.actor.ActorSystem
-//import akka.actor.typed.scaladsl.adapter._
-//import akka.stream.alpakka.s3.ApiVersion.ListBucketVersion2
-//import akka.stream.alpakka.s3.scaladsl.S3
-//import akka.stream.alpakka.s3.{ MemoryBufferType, S3Attributes, S3Settings }
-//import akka.stream.scaladsl.{ Sink, Source }
-//import akka.testkit.{ ImplicitSender, TestKit }
-//import akka.util.ByteString
+//import org.apache.pekko.actor.ActorSystem
+//import org.apache.pekko.actor.typed.scaladsl.adapter._
+//import org.apache.pekko.stream.connectors.s3.ApiVersion.ListBucketVersion2
+//import org.apache.pekko.stream.connectors.s3.scaladsl.S3
+//import org.apache.pekko.stream.connectors.s3.{ MemoryBufferType, S3Attributes, S3Settings }
+//import org.apache.pekko.stream.scaladsl.{ Sink, Source }
+//import org.apache.pekko.testkit.{ ImplicitSender, TestKit }
+//import org.apache.pekko.util.ByteString
//import com.adobe.testing.s3mock.S3MockApplication
//import hmda.calculator.apor.APOR
//import hmda.calculator.scheduler.APORScheduler.Command
diff --git a/submission-errors/src/main/scala/hmda/submissionerrors/SubmissionErrorsApp.scala b/submission-errors/src/main/scala/hmda/submissionerrors/SubmissionErrorsApp.scala
index 1f83ce50f7..f82c6136ad 100644
--- a/submission-errors/src/main/scala/hmda/submissionerrors/SubmissionErrorsApp.scala
+++ b/submission-errors/src/main/scala/hmda/submissionerrors/SubmissionErrorsApp.scala
@@ -1,12 +1,12 @@
package hmda.submissionerrors
-import akka.actor.typed.ActorSystem
-import akka.actor.typed.scaladsl.adapter._
-import akka.actor.{ CoordinatedShutdown, ActorSystem => ClassicActorSystem }
-import akka.kafka.scaladsl.Consumer
-import akka.kafka.{ CommitterSettings, ConsumerMessage, ConsumerSettings, Subscriptions }
-import akka.stream.scaladsl.{ RunnableGraph, Source }
-import akka.stream.{ ActorAttributes, Supervision }
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.actor.typed.scaladsl.adapter._
+import org.apache.pekko.actor.{ CoordinatedShutdown, ActorSystem => ClassicActorSystem }
+import org.apache.pekko.kafka.scaladsl.Consumer
+import org.apache.pekko.kafka.{ CommitterSettings, ConsumerMessage, ConsumerSettings, Subscriptions }
+import org.apache.pekko.stream.scaladsl.{ RunnableGraph, Source }
+import org.apache.pekko.stream.{ ActorAttributes, Supervision }
import com.typesafe.config.ConfigFactory
import hmda.messages.pubsub.HmdaGroups
import hmda.submissionerrors.repositories.PostgresSubmissionErrorRepository
diff --git a/submission-errors/src/main/scala/hmda/submissionerrors/streams/ErrorInformation.scala b/submission-errors/src/main/scala/hmda/submissionerrors/streams/ErrorInformation.scala
index e6b0ce12a1..f55c5818eb 100644
--- a/submission-errors/src/main/scala/hmda/submissionerrors/streams/ErrorInformation.scala
+++ b/submission-errors/src/main/scala/hmda/submissionerrors/streams/ErrorInformation.scala
@@ -1,9 +1,9 @@
package hmda.submissionerrors.streams
-import akka.NotUsed
-import akka.actor.typed.ActorSystem
-import akka.persistence.query.EventEnvelope
-import akka.stream.scaladsl.{ Sink, Source }
+import org.apache.pekko.NotUsed
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.persistence.query.EventEnvelope
+import org.apache.pekko.stream.scaladsl.{ Sink, Source }
import hmda.messages.submission.SubmissionProcessingEvents.HmdaRowValidatedError
import hmda.model.filing.submission.SubmissionId
import hmda.query.HmdaQuery
@@ -27,7 +27,7 @@ object ErrorInformation {
* )
*
* @param submissionId is the submission ID
- * @param system is the actor system needed to run the Akka Stream
+ * @param system is the actor system needed to run the pekko Stream
* @return
*/
def obtainSubmissionErrors(submissionId: SubmissionId)(implicit system: ActorSystem[_]): Task[Map[LineNumber, Set[EditName]]] =
diff --git a/submission-errors/src/main/scala/hmda/submissionerrors/streams/ErrorLines.scala b/submission-errors/src/main/scala/hmda/submissionerrors/streams/ErrorLines.scala
index c10da075b8..c37cc3752b 100644
--- a/submission-errors/src/main/scala/hmda/submissionerrors/streams/ErrorLines.scala
+++ b/submission-errors/src/main/scala/hmda/submissionerrors/streams/ErrorLines.scala
@@ -1,9 +1,9 @@
package hmda.submissionerrors.streams
-import akka.NotUsed
-import akka.actor.typed.ActorSystem
-import akka.persistence.query.EventEnvelope
-import akka.stream.scaladsl.{ Sink, Source }
+import org.apache.pekko.NotUsed
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.persistence.query.EventEnvelope
+import org.apache.pekko.stream.scaladsl.{ Sink, Source }
import hmda.messages.submission.HmdaRawDataEvents.LineAdded
import hmda.model.filing.lar.LoanApplicationRegister
import hmda.model.filing.submission.SubmissionId
diff --git a/submission-errors/src/main/scala/hmda/submissionerrors/streams/SubmissionProcessor.scala b/submission-errors/src/main/scala/hmda/submissionerrors/streams/SubmissionProcessor.scala
index 69ff06078e..73c0c8be22 100644
--- a/submission-errors/src/main/scala/hmda/submissionerrors/streams/SubmissionProcessor.scala
+++ b/submission-errors/src/main/scala/hmda/submissionerrors/streams/SubmissionProcessor.scala
@@ -1,11 +1,11 @@
package hmda.submissionerrors.streams
-import akka.{ Done, NotUsed }
-import akka.actor.typed.ActorSystem
-import akka.kafka.CommitterSettings
-import akka.kafka.ConsumerMessage.{ CommittableMessage, CommittableOffset }
-import akka.kafka.scaladsl.Committer
-import akka.stream.scaladsl.{ Flow, Keep, Sink }
+import org.apache.pekko.{ Done, NotUsed }
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.kafka.CommitterSettings
+import org.apache.pekko.kafka.ConsumerMessage.{ CommittableMessage, CommittableOffset }
+import org.apache.pekko.kafka.scaladsl.Committer
+import org.apache.pekko.stream.scaladsl.{ Flow, Keep, Sink }
import cats.implicits._
import hmda.model.filing.submission.SubmissionId
import hmda.submissionerrors.repositories.{ AddSubmissionError, SubmissionErrorRepository }
diff --git a/submission-errors/src/main/scala/hmda/submissionerrors/streams/Submissions.scala b/submission-errors/src/main/scala/hmda/submissionerrors/streams/Submissions.scala
index 08b2f95d23..59cb2d8b8f 100644
--- a/submission-errors/src/main/scala/hmda/submissionerrors/streams/Submissions.scala
+++ b/submission-errors/src/main/scala/hmda/submissionerrors/streams/Submissions.scala
@@ -1,9 +1,9 @@
package hmda.submissionerrors.streams
-import akka.NotUsed
-import akka.actor.typed.ActorSystem
-import akka.persistence.query.EventEnvelope
-import akka.stream.scaladsl.{ Sink, Source }
+import org.apache.pekko.NotUsed
+import org.apache.pekko.actor.typed.ActorSystem
+import org.apache.pekko.persistence.query.EventEnvelope
+import org.apache.pekko.stream.scaladsl.{ Sink, Source }
import hmda.messages.filing.FilingEvents.{ SubmissionAdded, SubmissionUpdated }
import hmda.model.filing.submission.Submission
import hmda.query.HmdaQuery
diff --git a/submission-errors/src/test/scala/hmda/submissionerrors/repositories/PostgresSubmissionErrorRepositorySpec.scala b/submission-errors/src/test/scala/hmda/submissionerrors/repositories/PostgresSubmissionErrorRepositorySpec.scala
index 1b86f67328..672f95288d 100644
--- a/submission-errors/src/test/scala/hmda/submissionerrors/repositories/PostgresSubmissionErrorRepositorySpec.scala
+++ b/submission-errors/src/test/scala/hmda/submissionerrors/repositories/PostgresSubmissionErrorRepositorySpec.scala
@@ -1,7 +1,7 @@
package hmda.submissionerrors.repositories
-import akka.actor.ActorSystem
-import akka.testkit.TestKit
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.testkit.TestKit
import hmda.model.filing.submission.SubmissionId
import hmda.utils.EmbeddedPostgres
import hmda.utils.YearUtils.Period
diff --git a/submission-errors/src/test/scala/hmda/submissionerrors/streams/ErrorInformationSpec.scala b/submission-errors/src/test/scala/hmda/submissionerrors/streams/ErrorInformationSpec.scala
index e8d493fe65..35e74c9375 100644
--- a/submission-errors/src/test/scala/hmda/submissionerrors/streams/ErrorInformationSpec.scala
+++ b/submission-errors/src/test/scala/hmda/submissionerrors/streams/ErrorInformationSpec.scala
@@ -1,9 +1,9 @@
package hmda.submissionerrors.streams
-import akka.NotUsed
-import akka.actor.ActorSystem
-import akka.stream.scaladsl.Source
-import akka.testkit.TestKit
+import org.apache.pekko.NotUsed
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.stream.scaladsl.Source
+import org.apache.pekko.testkit.TestKit
import hmda.messages.submission.SubmissionProcessingEvents.HmdaRowValidatedError
import hmda.model.validation.{ LarValidationError, MacroValidationError, SyntacticalValidationError }
import hmda.submissionerrors.streams.ErrorInformation._