Skip to content

Commit 86427a1

Browse files
committed
Make everything compatible with Vert.x 4.4.1, Scala 3.2.2
1 parent c23bc7c commit 86427a1

19 files changed

+211
-243
lines changed

.gitignore

+5
Original file line numberDiff line numberDiff line change
@@ -29,3 +29,8 @@ src/test/java/com/acme/**
2929
src/test/scala/io/vertx/scala/codegen/**
3030
src/test/scala/com/acme/**
3131
src/test/asciidoc
32+
.bsp
33+
.bloop
34+
.metals
35+
.vscode
36+
metals.sbt

LICENSE

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
Template license
2+
----------------
3+
Written in 2017 by Jochen Mader <[email protected]>
4+
Oliver Marienfeld [email protected]
5+
6+
To the extent possible under law, the author(s) have dedicated all copyright and related
7+
and neighboring rights to this template to the public domain worldwide.
8+
This template is distributed without any warranty. See <https://creativecommons.org/publicdomain/zero/1.0/>.

build.sbt

+8-6
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
1-
lazy val root = (project in file(".")).
2-
settings(
1+
// To test the template run `g8` or `g8Test` from the sbt session.
2+
lazy val root = (project in file("."))
3+
.enablePlugins(ScriptedPlugin)
4+
.settings(
35
name := "vertx-scala.g8",
4-
test in Test := {
5-
val _ = (g8Test in Test).toTask("").value
6+
Test / test := {
7+
val _ = (Test / g8Test).toTask("").value
68
},
7-
scriptedLaunchOpts ++= List("-Xms1024m", "-Xmx1024m", "-XX:ReservedCodeCacheSize=128m", "-XX:MaxPermSize=256m", "-Xss2m", "-Dfile.encoding=UTF-8"),
8-
resolvers += Resolver.url("typesafe", url("http://repo.typesafe.com/typesafe/ivy-releases/"))(Resolver.ivyStylePatterns)
9+
scriptedLaunchOpts ++= List("-Xms1024m", "-Xmx1024m", "-XX:ReservedCodeCacheSize=128m", "-XX:MaxMetaspaceSize=256m", "-Xss2m", "-Dfile.encoding=UTF-8"),
10+
resolvers += Resolver.url("typesafe", url("https://repo.typesafe.com/typesafe/ivy-releases/"))(Resolver.ivyStylePatterns)
911
)

project/build.properties

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
sbt.version=1.3.3
1+
sbt.version=1.8.2

project/giter8.sbt

-1
This file was deleted.

project/giter8.test

-1
This file was deleted.

project/plugins.sbt

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
addSbtPlugin("org.foundweekends.giter8" %% "sbt-giter8" % "0.16.1")
2+
libraryDependencies += { "org.scala-sbt" %% "scripted-plugin" % sbtVersion.value }

src/main/g8/build.sbt

+17-17
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,23 @@
1-
import sbt.Package._
2-
import sbt._
3-
import Docker.autoImport.exposedPorts
1+
import java.util.jar.Attributes.Name
42

5-
scalaVersion := "2.12.6"
3+
ThisBuild / scalaVersion := "3.2.2"
4+
ThisBuild / resolvers += Resolver.mavenLocal
65

7-
enablePlugins(DockerPlugin)
8-
exposedPorts := Seq(8666)
6+
lazy val mainVerticle = "scala:$package$.HttpVerticle"
97

10-
libraryDependencies ++= Vector (
11-
Library.vertx_lang_scala,
12-
Library.vertx_web,
13-
Library.scalaTest % "test",
14-
// Uncomment for clustering
15-
// Library.vertx_hazelcast,
8+
lazy val root = (project in file("."))
9+
.settings(
10+
libraryDependencies ++= Seq(
11+
Library.vertx_lang_scala,
12+
Library.vertx_web,
13+
Library.vertx_lang_scala_test % Test,
14+
Library.scalaTest % Test,
15+
),
16+
Compile / mainClass := Some("io.vertx.core.Launcher"),
17+
Compile / packageOptions += {
18+
Package.ManifestAttributes(new Name("Main-Verticle") -> s"scala:\$mainVerticle")
19+
}
20+
)
1621

17-
//required to get rid of some warnings emitted by the scala-compile
18-
Library.vertx_codegen
19-
)
2022

21-
packageOptions += ManifestAttributes(
22-
("Main-Verticle", "scala:$package$.HttpVerticle"))
2323

src/main/g8/default.properties

+1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
name = vertx-scala
22
package = vertx.scala.myapp
3+
httpPort = 8666
34
description = Eclipse Vert.x is a tool-kit for building reactive applications on the JVM. This app uses Vert.x-Scala and ScalaTest.

src/main/g8/project/Build.scala

+44-44
Original file line numberDiff line numberDiff line change
@@ -1,48 +1,48 @@
1-
import sbt.{Def, _}
2-
import sbtassembly.AssemblyPlugin.autoImport.{MergeStrategy, assembly, assemblyMergeStrategy}
3-
import sbtassembly.{AssemblyPlugin, PathList}
4-
import Keys._
1+
// import sbt.{Def, _}
2+
// import sbtassembly.AssemblyPlugin.autoImport.{MergeStrategy, assembly, assemblyMergeStrategy}
3+
// import sbtassembly.{AssemblyPlugin, PathList}
4+
// import Keys._
55

6-
object Build extends AutoPlugin {
6+
// object Build extends AutoPlugin {
77

8-
override def trigger = allRequirements
8+
// override def trigger = allRequirements
99

10-
override def requires: Plugins = AssemblyPlugin
10+
// override def requires: Plugins = AssemblyPlugin
1111

12-
override def projectSettings: Seq[Def.Setting[_]] =
13-
Vector(
14-
resolvers ++= Vector(
15-
"Sonatype SNAPSHOTS" at "https://oss.sonatype.org/content/repositories/snapshots/"
16-
),
17-
scalaVersion := Version.Scala,
18-
assemblyMergeStrategy in assembly := {
19-
case PathList("META-INF", "MANIFEST.MF") => MergeStrategy.discard
20-
case PathList("META-INF", xs @ _*) => MergeStrategy.last
21-
case PathList("META-INF", "io.netty.versions.properties") => MergeStrategy.last
22-
case PathList("codegen.json") => MergeStrategy.discard
23-
case x =>
24-
val oldStrategy = (assemblyMergeStrategy in assembly).value
25-
oldStrategy(x)
26-
},
27-
scalacOptions ++= Vector(
28-
"-unchecked",
29-
"-deprecation",
30-
"-language:_",
31-
"-target:jvm-1.8",
32-
"-encoding", "UTF-8"
33-
),
34-
mainClass := Some("io.vertx.core.Launcher"),
35-
unmanagedSourceDirectories in Compile := Vector(scalaSource.in(Compile).value),
36-
unmanagedSourceDirectories in Test := Vector(scalaSource.in(Test).value),
37-
initialCommands in console := """|import io.vertx.lang.scala._
38-
|import io.vertx.lang.scala.ScalaVerticle.nameForVerticle
39-
|import io.vertx.scala.core._
40-
|import scala.concurrent.Future
41-
|import scala.concurrent.Promise
42-
|import scala.util.Success
43-
|import scala.util.Failure
44-
|val vertx = Vertx.vertx
45-
|implicit val executionContext = io.vertx.lang.scala.VertxExecutionContext(vertx.getOrCreateContext)
46-
|""".stripMargin
47-
)
48-
}
12+
// override def projectSettings: Seq[Def.Setting[_]] =
13+
// Vector(
14+
// resolvers ++= Vector(
15+
// "Sonatype SNAPSHOTS" at "https://oss.sonatype.org/content/repositories/snapshots/"
16+
// ),
17+
// scalaVersion := Version.Scala,
18+
// assemblyMergeStrategy in assembly := {
19+
// case PathList("META-INF", "MANIFEST.MF") => MergeStrategy.discard
20+
// case PathList("META-INF", xs @ _*) => MergeStrategy.last
21+
// case PathList("META-INF", "io.netty.versions.properties") => MergeStrategy.last
22+
// case PathList("codegen.json") => MergeStrategy.discard
23+
// case x =>
24+
// val oldStrategy = (assemblyMergeStrategy in assembly).value
25+
// oldStrategy(x)
26+
// },
27+
// scalacOptions ++= Vector(
28+
// "-unchecked",
29+
// "-deprecation",
30+
// "-language:_",
31+
// "-target:jvm-1.8",
32+
// "-encoding", "UTF-8"
33+
// ),
34+
// mainClass := Some("io.vertx.core.Launcher"),
35+
// unmanagedSourceDirectories in Compile := Vector(scalaSource.in(Compile).value),
36+
// unmanagedSourceDirectories in Test := Vector(scalaSource.in(Test).value),
37+
// initialCommands in console := """|import io.vertx.lang.scala._
38+
// |import io.vertx.lang.scala.ScalaVerticle.nameForVerticle
39+
// |import io.vertx.scala.core._
40+
// |import scala.concurrent.Future
41+
// |import scala.concurrent.Promise
42+
// |import scala.util.Success
43+
// |import scala.util.Failure
44+
// |val vertx = Vertx.vertx
45+
// |implicit val executionContext = io.vertx.lang.scala.VertxExecutionContext(vertx.getOrCreateContext)
46+
// |""".stripMargin
47+
// )
48+
// }

src/main/g8/project/Dependencies.scala

+50-49
Original file line numberDiff line numberDiff line change
@@ -1,60 +1,61 @@
11
import sbt._
22

33
object Version {
4-
final val Scala = "2.12.8"
5-
final val ScalaTest = "3.0.1"
6-
final val Vertx = "3.8.0"
4+
final val Scala = "3.2.2"
5+
final val ScalaTest = "3.2.15"
6+
final val Vertx = "4.4.1"
77
}
88

99
object Library {
10-
val vertx_codegen = "io.vertx" % "vertx-codegen" % Version.Vertx % "provided"
11-
val vertx_lang_scala = "io.vertx" %% "vertx-lang-scala" % Version.Vertx
10+
val vertx_codegen = "io.vertx" % "vertx-codegen" % Version.Vertx % "provided"
11+
val vertx_lang_scala = "io.vertx" % "vertx-lang-scala3" % Version.Vertx
12+
val vertx_lang_scala_test = "io.vertx" % "vertx-lang-scala3-test" % Version.Vertx
1213
val vertx_hazelcast = "io.vertx" % "vertx-hazelcast" % Version.Vertx
13-
val vertx_web = "io.vertx" %% "vertx-web-scala" % Version.Vertx
14+
val vertx_web = "io.vertx" % "vertx-web" % Version.Vertx
1415

15-
val vertx_mqtt = "io.vertx" %% "vertx-mqtt-scala" % Version.Vertx
16-
val vertx_sql_common = "io.vertx" %% "vertx-sql-common-scala" % Version.Vertx
17-
val vertx_bridge_common = "io.vertx" %% "vertx-bridge-common-scala" % Version.Vertx
18-
val vertx_jdbc_client = "io.vertx" %% "vertx-jdbc-client-scala" % Version.Vertx
19-
val vertx_mongo_client = "io.vertx" %% "vertx-mongo-client-scala" % Version.Vertx
20-
val vertx_mongo_service = "io.vertx" %% "vertx-mongo-service-scala" % Version.Vertx
21-
val vertx_auth_common = "io.vertx" %% "vertx-auth-common-scala" % Version.Vertx
22-
val vertx_auth_shiro = "io.vertx" %% "vertx-auth-shiro-scala" % Version.Vertx
23-
val vertx_auth_htdigest = "io.vertx" %% "vertx-auth-htdigest-scala" % Version.Vertx
24-
val vertx_auth_oauth2 = "io.vertx" %% "vertx-auth-oauth2-scala" % Version.Vertx
25-
val vertx_auth_mongo = "io.vertx" %% "vertx-auth-mongo-scala" % Version.Vertx
26-
val vertx_auth_jwt = "io.vertx" %% "vertx-auth-jwt-scala" % Version.Vertx
27-
val vertx_auth_jdbc = "io.vertx" %% "vertx-auth-jdbc-scala" % Version.Vertx
28-
val vertx_web_common = "io.vertx" %% "vertx-web-common-scala" % Version.Vertx
29-
val vertx_web_client = "io.vertx" %% "vertx-web-client-scala" % Version.Vertx
30-
val vertx_sockjs_service_proxy = "io.vertx" %% "vertx-sockjs-service-proxy-scala" % Version.Vertx
31-
val vertx_web_templ_freemarker = "io.vertx" %% "vertx-web-templ-freemarker-scala" % Version.Vertx
32-
val vertx_web_templ_handlebars = "io.vertx" %% "vertx-web-templ-handlebars-scala" % Version.Vertx
33-
val vertx_web_templ_jade = "io.vertx" %% "vertx-web-templ-jade-scala" % Version.Vertx
34-
val vertx_web_templ_mvel = "io.vertx" %% "vertx-web-templ-mvel-scala" % Version.Vertx
35-
val vertx_web_templ_pebble = "io.vertx" %% "vertx-web-templ-pebble-scala" % Version.Vertx
36-
val vertx_web_templ_thymeleaf = "io.vertx" %% "vertx-web-templ-thymeleaf-scala" % Version.Vertx
37-
val vertx_mysql_postgresql_client = "io.vertx" %% "vertx-mysql-postgresql-client-scala" % Version.Vertx
38-
val vertx_mail_client = "io.vertx" %% "vertx-mail-client-scala" % Version.Vertx
39-
val vertx_rabbitmq_client = "io.vertx" %% "vertx-rabbitmq-client-scala" % Version.Vertx
40-
val vertx_redis_client = "io.vertx" %% "vertx-redis-client-scala" % Version.Vertx
41-
val vertx_stomp = "io.vertx" %% "vertx-stomp-scala" % Version.Vertx
42-
val vertx_tcp_eventbus_bridge = "io.vertx" %% "vertx-tcp-eventbus-bridge-scala" % Version.Vertx
43-
val vertx_amqp_bridge = "io.vertx" %% "vertx-amqp-bridge-scala" % Version.Vertx
44-
val vertx_dropwizard_metrics = "io.vertx" %% "vertx-dropwizard-metrics-scala" % Version.Vertx
45-
val vertx_hawkular_metrics = "io.vertx" %% "vertx-hawkular-metrics-scala" % Version.Vertx
46-
val vertx_shell = "io.vertx" %% "vertx-shell-scala" % Version.Vertx
47-
val vertx_kafka_client = "io.vertx" %% "vertx-kafka-client-scala" % Version.Vertx
48-
val vertx_circuit_breaker = "io.vertx" %% "vertx-circuit-breaker-scala" % Version.Vertx
49-
val vertx_config = "io.vertx" %% "vertx-config-scala" % Version.Vertx
50-
val vertx_service_discovery = "io.vertx" %% "vertx-service-discovery-scala" % Version.Vertx
51-
val vertx_config_git = "io.vertx" %% "vertx-config-git-scala" % Version.Vertx
52-
val vertx_config_hocon = "io.vertx" %% "vertx-config-hocon-scala" % Version.Vertx
53-
val vertx_config_kubernetes_configmap = "io.vertx" %% "vertx-config-kubernetes-configmap-scala" % Version.Vertx
54-
val vertx_config_redis = "io.vertx" %% "vertx-config-redis-scala" % Version.Vertx
55-
val vertx_config_spring_config_server = "io.vertx" %% "vertx-config-spring-config-server-scala" % Version.Vertx
56-
val vertx_config_yaml = "io.vertx" %% "vertx-config-yaml-scala" % Version.Vertx
57-
val vertx_config_zookeeper = "io.vertx" %% "vertx-config-zookeeper-scala" % Version.Vertx
16+
val vertx_mqtt = "io.vertx" % "vertx-mqtt" % Version.Vertx
17+
val vertx_sql_common = "io.vertx" % "vertx-sql-common" % Version.Vertx
18+
val vertx_bridge_common = "io.vertx" % "vertx-bridge-common" % Version.Vertx
19+
val vertx_jdbc_client = "io.vertx" % "vertx-jdbc-client" % Version.Vertx
20+
val vertx_mongo_client = "io.vertx" % "vertx-mongo-client" % Version.Vertx
21+
val vertx_mongo_service = "io.vertx" % "vertx-mongo-service" % Version.Vertx
22+
val vertx_auth_common = "io.vertx" % "vertx-auth-common" % Version.Vertx
23+
val vertx_auth_shiro = "io.vertx" % "vertx-auth-shiro" % Version.Vertx
24+
val vertx_auth_htdigest = "io.vertx" % "vertx-auth-htdigest" % Version.Vertx
25+
val vertx_auth_oauth2 = "io.vertx" % "vertx-auth-oauth2" % Version.Vertx
26+
val vertx_auth_mongo = "io.vertx" % "vertx-auth-mongo" % Version.Vertx
27+
val vertx_auth_jwt = "io.vertx" % "vertx-auth-jwt" % Version.Vertx
28+
val vertx_auth_jdbc = "io.vertx" % "vertx-auth-jdbc" % Version.Vertx
29+
val vertx_web_common = "io.vertx" % "vertx-web-common" % Version.Vertx
30+
val vertx_web_client = "io.vertx" % "vertx-web-client" % Version.Vertx
31+
val vertx_sockjs_service_proxy = "io.vertx" % "vertx-sockjs-service-proxy" % Version.Vertx
32+
val vertx_web_templ_freemarker = "io.vertx" % "vertx-web-templ-freemarker" % Version.Vertx
33+
val vertx_web_templ_handlebars = "io.vertx" % "vertx-web-templ-handlebars" % Version.Vertx
34+
val vertx_web_templ_jade = "io.vertx" % "vertx-web-templ-jade" % Version.Vertx
35+
val vertx_web_templ_mvel = "io.vertx" % "vertx-web-templ-mvel" % Version.Vertx
36+
val vertx_web_templ_pebble = "io.vertx" % "vertx-web-templ-pebble" % Version.Vertx
37+
val vertx_web_templ_thymeleaf = "io.vertx" % "vertx-web-templ-thymeleaf" % Version.Vertx
38+
val vertx_mysql_postgresql_client = "io.vertx" % "vertx-mysql-postgresql-client" % Version.Vertx
39+
val vertx_mail_client = "io.vertx" % "vertx-mail-client" % Version.Vertx
40+
val vertx_rabbitmq_client = "io.vertx" % "vertx-rabbitmq-client" % Version.Vertx
41+
val vertx_redis_client = "io.vertx" % "vertx-redis-client" % Version.Vertx
42+
val vertx_stomp = "io.vertx" % "vertx-stomp" % Version.Vertx
43+
val vertx_tcp_eventbus_bridge = "io.vertx" % "vertx-tcp-eventbus-bridge" % Version.Vertx
44+
val vertx_amqp_bridge = "io.vertx" % "vertx-amqp-bridge" % Version.Vertx
45+
val vertx_dropwizard_metrics = "io.vertx" % "vertx-dropwizard-metrics" % Version.Vertx
46+
val vertx_hawkular_metrics = "io.vertx" % "vertx-hawkular-metrics" % Version.Vertx
47+
val vertx_shell = "io.vertx" % "vertx-shell" % Version.Vertx
48+
val vertx_kafka_client = "io.vertx" % "vertx-kafka-client" % Version.Vertx
49+
val vertx_circuit_breaker = "io.vertx" % "vertx-circuit-breaker" % Version.Vertx
50+
val vertx_config = "io.vertx" % "vertx-config" % Version.Vertx
51+
val vertx_service_discovery = "io.vertx" % "vertx-service-discovery" % Version.Vertx
52+
val vertx_config_git = "io.vertx" % "vertx-config-git" % Version.Vertx
53+
val vertx_config_hocon = "io.vertx" % "vertx-config-hocon" % Version.Vertx
54+
val vertx_config_kubernetes_configmap = "io.vertx" % "vertx-config-kubernetes-configmap" % Version.Vertx
55+
val vertx_config_redis = "io.vertx" % "vertx-config-redis" % Version.Vertx
56+
val vertx_config_spring_config_server = "io.vertx" % "vertx-config-spring-config-server" % Version.Vertx
57+
val vertx_config_yaml = "io.vertx" % "vertx-config-yaml" % Version.Vertx
58+
val vertx_config_zookeeper = "io.vertx" % "vertx-config-zookeeper" % Version.Vertx
5859

5960
//non-vert.x deps
6061
val scalaTest = "org.scalatest" %% "scalatest" % Version.ScalaTest

0 commit comments

Comments
 (0)