This is an automated email from the ASF dual-hosted git repository. fanningpj pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/incubator-pekko-http-quickstart-scala-g8.git
commit ddf5bdee7bb2baaca2ee7000c52f5b9c0a9ef6ac Author: Johan Andrén <[email protected]> AuthorDate: Tue Oct 24 10:41:36 2023 +0200 chore: Akka HTTP 10.6.0 and refreshing stuff (#97) --- .github/workflows/ci.yml | 29 +++++++++++++++++++--- README.md | 6 ++--- {project => docs/project}/build.properties | 0 project/build.properties | 2 +- project/paradox.sbt | 2 +- src/main/g8/build.sbt | 6 ++--- src/main/g8/default.properties | 6 ++--- .../g8/src/main/scala/$package$/JsonFormats.scala | 4 +-- .../g8/src/main/scala/$package$/UserRoutes.scala | 2 +- 9 files changed, 39 insertions(+), 18 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 49962f1..67152be 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -2,6 +2,9 @@ name: Build and test on: pull_request: + push: + branches: + - main jobs: build-test: @@ -12,14 +15,32 @@ jobs: - name: Checkout uses: actions/checkout@v2 - - name: Set up JDK 11 - uses: olafurpg/setup-scala@v10 + - name: Set up JDK 17 + uses: coursier/[email protected] with: - java-version: [email protected] + jvm: temurin:1.17 - name: Cache Coursier cache - uses: coursier/[email protected] + uses: coursier/[email protected] - name: sbt & Paradox run: sbt test docs/paradox + - name: generate and test, Scala 3 + run: |- + sbt new file://$PWD --name=hello-world --scala_version=3.3.1 --force && pushd hello-world && sbt test + + - name: Email on failure + if: ${{ failure() }} + uses: dawidd6/action-send-mail@v3 + with: + server_address: smtp.gmail.com + server_port: 465 + username: ${{ secrets.MAIL_USERNAME }} + password: ${{ secrets.MAIL_PASSWORD }} + subject: "Failed: ${{ github.workflow }} / ${{ github.job }}" + to: [email protected] + from: Akka CI (GHActions) + body: | + Job ${{ github.job }} in workflow ${{ github.workflow }} of ${{github.repository}} failed! + https://github.com/${{github.repository}}/actions/runs/${{github.run_id}} diff --git a/README.md b/README.md index a63a61e..8f64257 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ walk through the code. You can use [Giter8][g8] to create your own project from the quickstart. Or, download and extract the zip file(https://example.lightbend.com/v1/download/akka-quickstart-scala?name=akka-quickstart-scala) to a convenient location. Prerequisites: -- JDK 11 +- JDK 17 - sbt 1.4.x or higher Open a console and run the following command to apply this template: @@ -17,8 +17,8 @@ sbt new akka/akka-http-quickstart-scala.g8 This template will prompt for the following parameters. Press `Enter` if the default values suit you: - `name`: Becomes the name of the project. - `scala_version`: Specifies the Scala version for this project. -- `akka_http_version`: Specifies which version of Akka HTTP should be used for this project. Must be at least 10.2.0. -- `akka_version`: Specifies which version of Akka should be used for this project. Must be at least 2.6.0. +- `akka_http_version`: Specifies which version of Akka HTTP should be used for this project. Must be at least 10.6.0. +- `akka_version`: Specifies which version of Akka should be used for this project. Must be at least 2.9.0. - `organization`: Specifies the organization for this project. The template comes with the following sources: diff --git a/project/build.properties b/docs/project/build.properties similarity index 100% copy from project/build.properties copy to docs/project/build.properties diff --git a/project/build.properties b/project/build.properties index 563a014..2743082 100644 --- a/project/build.properties +++ b/project/build.properties @@ -1 +1 @@ -sbt.version=1.7.2 +sbt.version=1.9.6 diff --git a/project/paradox.sbt b/project/paradox.sbt index 19d2157..3e62e80 100644 --- a/project/paradox.sbt +++ b/project/paradox.sbt @@ -1,2 +1,2 @@ // sbt-paradox, used for documentation -addSbtPlugin("com.lightbend.paradox" % "sbt-paradox" % "0.9.2") +addSbtPlugin("com.lightbend.paradox" % "sbt-paradox" % "0.10.5") diff --git a/src/main/g8/build.sbt b/src/main/g8/build.sbt index 6eb97f3..7db9f98 100644 --- a/src/main/g8/build.sbt +++ b/src/main/g8/build.sbt @@ -1,14 +1,14 @@ lazy val akkaHttpVersion = "$akka_http_version$" lazy val akkaVersion = "$akka_version$" +resolvers += "Akka library repository".at("https://repo.akka.io/maven") + // Run in a separate JVM, to make sure sbt waits until all threads have // finished before returning. // If you want to keep the application running while executing other // sbt tasks, consider https://github.com/spray/sbt-revolver/ fork := true -resolvers += "Akka library repository".at("https://repo.akka.io/maven") - lazy val root = (project in file(".")). settings( inThisBuild(List( @@ -25,6 +25,6 @@ lazy val root = (project in file(".")). "com.typesafe.akka" %% "akka-http-testkit" % akkaHttpVersion % Test, "com.typesafe.akka" %% "akka-actor-testkit-typed" % akkaVersion % Test, - "org.scalatest" %% "scalatest" % "3.2.9" % Test + "org.scalatest" %% "scalatest" % "3.2.12" % Test ) ) diff --git a/src/main/g8/default.properties b/src/main/g8/default.properties index 6b06a04..a2daf06 100644 --- a/src/main/g8/default.properties +++ b/src/main/g8/default.properties @@ -1,8 +1,8 @@ name=My Akka HTTP Project description=This is a seed project which creates a basic build for an Akka HTTP application using Scala. -scala_version=2.13.4 -akka_http_version=maven(com.typesafe.akka, akka-http-core_2.13, stable) -akka_version=maven(com.typesafe.akka, akka-actor-typed_2.13, stable) +scala_version=2.13.12 +akka_http_version=10.6.0 +akka_version=2.9.0 sbt_version=maven(org.scala-sbt, sbt, stable) organization=com.example package=$organization$ diff --git a/src/main/g8/src/main/scala/$package$/JsonFormats.scala b/src/main/g8/src/main/scala/$package$/JsonFormats.scala index dfb55d9..5b85c7a 100644 --- a/src/main/g8/src/main/scala/$package$/JsonFormats.scala +++ b/src/main/g8/src/main/scala/$package$/JsonFormats.scala @@ -1,9 +1,9 @@ package $package$ import $package$.UserRegistry.ActionPerformed -import spray.json.RootJsonFormat //#json-formats +import spray.json.RootJsonFormat import spray.json.DefaultJsonProtocol object JsonFormats { @@ -13,6 +13,6 @@ object JsonFormats { implicit val userJsonFormat: RootJsonFormat[User] = jsonFormat3(User.apply) implicit val usersJsonFormat: RootJsonFormat[Users] = jsonFormat1(Users.apply) - implicit val actionPerformedJsonFormat: RootJsonFormat[ActionPerformed] = jsonFormat1(ActionPerformed.apply) + implicit val actionPerformedJsonFormat: RootJsonFormat[ActionPerformed] = jsonFormat1(ActionPerformed.apply) } //#json-formats diff --git a/src/main/g8/src/main/scala/$package$/UserRoutes.scala b/src/main/g8/src/main/scala/$package$/UserRoutes.scala index 7169c8d..beefec7 100644 --- a/src/main/g8/src/main/scala/$package$/UserRoutes.scala +++ b/src/main/g8/src/main/scala/$package$/UserRoutes.scala @@ -24,7 +24,7 @@ class UserRoutes(userRegistry: ActorRef[UserRegistry.Command])(implicit val syst private implicit val timeout: Timeout = Timeout.create(system.settings.config.getDuration("my-app.routes.ask-timeout")) def getUsers(): Future[Users] = - userRegistry.ask(GetUsers) + userRegistry.ask(GetUsers.apply) def getUser(name: String): Future[GetUserResponse] = userRegistry.ask(GetUser(name, _)) def createUser(user: User): Future[ActionPerformed] = --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
