From 62c065eb4749dd2b26d88ad28986babeeb4b98de Mon Sep 17 00:00:00 2001 From: Can Yaman Date: Thu, 11 May 2017 16:59:34 +0300 Subject: [PATCH 01/44] Prepare the plugin for sbt 1.0 and scala 2.12 (#158) - Update play version to 2.6.0-M5 - Update sbt version to 0.13.15 - Remove deprecated sbt 0.12 style dependecy operators - Update other libraries and plugins --- build.sbt | 8 ++++---- example/build.sbt | 2 +- example/project/build.properties | 2 +- example/project/plugins.sbt | 4 ++-- project/Dependencies.scala | 4 ++-- project/ScriptedTesting.scala | 2 +- project/build.properties | 2 +- project/plugins.sbt | 6 +++--- .../com/iheart/sbtPlaySwagger/SwaggerPlugin.scala | 10 +++++----- .../sbt-test/sbt-play-swagger/generate-docs/build.sbt | 2 +- .../generate-docs/conf/swagger-custom-mappings.yml | 0 .../generate-docs/project/build.properties | 2 +- .../sbt-play-swagger/generate-docs/project/plugins.sbt | 4 ++-- .../src/sbt-test/sbt-play-swagger/generate-docs/test | 2 +- 14 files changed, 25 insertions(+), 25 deletions(-) mode change 100644 => 100755 project/Dependencies.scala mode change 100644 => 100755 project/build.properties mode change 100644 => 100755 project/plugins.sbt mode change 100644 => 100755 sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerPlugin.scala mode change 100644 => 100755 sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/build.sbt mode change 100644 => 100755 sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/conf/swagger-custom-mappings.yml mode change 100644 => 100755 sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/build.properties diff --git a/build.sbt b/build.sbt index 1f93dec5..151e4d2a 100644 --- a/build.sbt +++ b/build.sbt @@ -24,14 +24,14 @@ lazy val playSwagger = project.in(file("core")) Dependencies.playJson ++ Dependencies.test ++ Dependencies.yaml, - scalaVersion := "2.11.7" + scalaVersion := "2.12.2" ) lazy val sbtPlaySwagger = project.in(file("sbtPlugin")) .settings(Publish.sbtPluginSettings ++ Format.settings ++ ScriptedTesting.settings) .settings( - addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "1.0.6" % Provided), - addSbtPlugin("com.typesafe.sbt" % "sbt-web" % "1.3.0" % Provided)) + addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "1.1.6" % Provided), + addSbtPlugin("com.typesafe.sbt" % "sbt-web" % "1.4.0" % Provided)) .enablePlugins(BuildInfoPlugin) .settings( buildInfoKeys := Seq[BuildInfoKey](name, version), @@ -40,5 +40,5 @@ lazy val sbtPlaySwagger = project.in(file("sbtPlugin")) description := "sbt plugin for play swagger spec generation", sbtPlugin := true, scalaVersion := "2.10.6", - scripted <<= scripted.dependsOn(publishLocal in playSwagger) + scripted := scripted.dependsOn(publishLocal in playSwagger).evaluated ) diff --git a/example/build.sbt b/example/build.sbt index 5c8e6fdb..eeebe31b 100644 --- a/example/build.sbt +++ b/example/build.sbt @@ -4,7 +4,7 @@ version := "1.0-SNAPSHOT" lazy val root = (project in file(".")).enablePlugins(PlayScala, SwaggerPlugin) //enable plugin -scalaVersion := "2.11.7" +scalaVersion := "2.12.2" libraryDependencies ++= Seq( jdbc, diff --git a/example/project/build.properties b/example/project/build.properties index 1dc95b77..3f3f4df0 100644 --- a/example/project/build.properties +++ b/example/project/build.properties @@ -1,4 +1,4 @@ #Activator-generated Properties #Wed Aug 24 09:12:28 EDT 2016 template.uuid=b0d11fa6-d1b3-4963-94aa-319a15612bf3 -sbt.version=0.13.11 +sbt.version=0.13.15 diff --git a/example/project/plugins.sbt b/example/project/plugins.sbt index 7fc0cdff..7c135515 100644 --- a/example/project/plugins.sbt +++ b/example/project/plugins.sbt @@ -1,5 +1,5 @@ // The Play plugin -addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.5.6") +addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.6.0-M5") // web plugins @@ -18,6 +18,6 @@ addSbtPlugin("com.typesafe.sbt" % "sbt-mocha" % "1.1.0") addSbtPlugin("org.irundaia.sbt" % "sbt-sassify" % "1.4.2") // play swagger plugin -addSbtPlugin("com.iheart" % "sbt-play-swagger" % "0.5.3") +addSbtPlugin("com.iheart" % "sbt-play-swagger" % "0.6.1-SNAPSHOT") diff --git a/project/Dependencies.scala b/project/Dependencies.scala old mode 100644 new mode 100755 index 16c39478..f57c7410 --- a/project/Dependencies.scala +++ b/project/Dependencies.scala @@ -2,8 +2,8 @@ import sbt._ object Dependencies { object Versions { - val play = "2.5.3" - val specs2 = "3.6.6" + val play = "2.6.0-M5" + val specs2 = "3.8.9" } val playTest = Seq( diff --git a/project/ScriptedTesting.scala b/project/ScriptedTesting.scala index 1c438856..131a490a 100644 --- a/project/ScriptedTesting.scala +++ b/project/ScriptedTesting.scala @@ -11,6 +11,6 @@ object ScriptedTesting { "-Xmx1024M", "-Dplugin.version=" + version.value ), - test in Test <<= (test in Test).dependsOn(scripted.toTask("")) + test in Test := (test in Test).dependsOn(scripted.toTask("")).value ) } \ No newline at end of file diff --git a/project/build.properties b/project/build.properties old mode 100644 new mode 100755 index 35c88bab..64317fda --- a/project/build.properties +++ b/project/build.properties @@ -1 +1 @@ -sbt.version=0.13.12 +sbt.version=0.13.15 diff --git a/project/plugins.sbt b/project/plugins.sbt old mode 100644 new mode 100755 index b78504d1..78a3676e --- a/project/plugins.sbt +++ b/project/plugins.sbt @@ -2,12 +2,12 @@ libraryDependencies += "org.scala-sbt" % "scripted-plugin" % sbtVersion.value addSbtPlugin("me.lessis" % "bintray-sbt" % "0.3.0") -addSbtPlugin("com.github.gseitz" % "sbt-release" % "1.0.3") +addSbtPlugin("com.github.gseitz" % "sbt-release" % "1.0.5") addSbtPlugin("org.scalariform" % "sbt-scalariform" % "1.6.0") -addSbtPlugin("org.scoverage" % "sbt-scoverage" % "1.3.5") +addSbtPlugin("org.scoverage" % "sbt-scoverage" % "1.5.0") addSbtPlugin("org.scoverage" % "sbt-coveralls" % "1.1.0") -addSbtPlugin("com.eed3si9n" % "sbt-buildinfo" % "0.6.1") +addSbtPlugin("com.eed3si9n" % "sbt-buildinfo" % "0.7.0") diff --git a/sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerPlugin.scala b/sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerPlugin.scala old mode 100644 new mode 100755 index e061044f..e85946bd --- a/sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerPlugin.scala +++ b/sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerPlugin.scala @@ -31,7 +31,7 @@ object SwaggerPlugin extends AutoPlugin { swaggerFileName := "swagger.json", swaggerRoutesFile := "routes", swaggerOutputTransformers := Seq(), - swagger <<= Def.task[File] { + swagger := Def.task[File] { (swaggerTarget.value).mkdirs() val file = swaggerTarget.value / swaggerFileName.value IO.delete(file) @@ -40,12 +40,12 @@ object SwaggerPlugin extends AutoPlugin { val swaggerClasspath = data((fullClasspath in Runtime).value) ++ update.value.select(configurationFilter(swaggerConfig.name)) toError(runner.value.run("com.iheart.playSwagger.SwaggerSpecRunner", swaggerClasspath, args, streams.value.log)) file - }, + }.value, unmanagedResourceDirectories in Assets += swaggerTarget.value, mappings in (Compile, packageBin) += (swaggerTarget.value / swaggerFileName.value) → s"public/${swaggerFileName.value}", //include it in the unmanagedResourceDirectories in Assets doesn't automatically include it package - packageBin in Universal <<= (packageBin in Universal).dependsOn(swagger), - run <<= (run in Compile).dependsOn(swagger), - stage <<= stage.dependsOn(swagger) + packageBin in Universal := (packageBin in Universal).dependsOn(swagger).value, + run := (run in Compile).dependsOn(swagger).evaluated, + stage := stage.dependsOn(swagger).value ) } diff --git a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/build.sbt b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/build.sbt old mode 100644 new mode 100755 index 58b92d58..23a3eda4 --- a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/build.sbt +++ b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/build.sbt @@ -8,7 +8,7 @@ enablePlugins(PlayScala, SwaggerPlugin) name := "app" -scalaVersion := "2.11.7" +scalaVersion := "2.12.2" swaggerDomainNameSpaces := Seq("namespace1", "namespace2") diff --git a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/conf/swagger-custom-mappings.yml b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/conf/swagger-custom-mappings.yml old mode 100644 new mode 100755 diff --git a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/build.properties b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/build.properties old mode 100644 new mode 100755 index 817bc38d..64317fda --- a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/build.properties +++ b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/build.properties @@ -1 +1 @@ -sbt.version=0.13.9 +sbt.version=0.13.15 diff --git a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/plugins.sbt b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/plugins.sbt index dd0eaab5..0adfc19b 100644 --- a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/plugins.sbt +++ b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/plugins.sbt @@ -1,7 +1,7 @@ logLevel in update := sbt.Level.Warn -addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "1.0.1") -addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.5.3") +addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "1.1.6") +addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.6.0-M5") { val pluginVersion = System.getProperty("plugin.version") diff --git a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/test b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/test index 185389d7..a4aeb700 100644 --- a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/test +++ b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/test @@ -6,7 +6,7 @@ $ absent target/jar/public/swagger.json -$ exec unzip -q target/scala-2.11/app_2.11-0.1-SNAPSHOT.jar -d target/jar +$ exec unzip -q target/scala-2.12/app_2.12-0.1-SNAPSHOT.jar -d target/jar $ exists target/jar/public/swagger.json From 655c6aef3eb7fa9894b8cdd30e16014398b5e339 Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Thu, 11 May 2017 10:03:03 -0400 Subject: [PATCH 02/44] Setting version to 0.6.1-PLAY2.6-M5 --- version.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.sbt b/version.sbt index f608fd1d..7443cfa1 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -version in ThisBuild := "0.6.1-SNAPSHOT" +version in ThisBuild := "0.6.1-PLAY2.6-M5" From 767fab87c78df84445d3e050f31b3de55f1e3cdd Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Thu, 11 May 2017 10:03:13 -0400 Subject: [PATCH 03/44] Setting version to 0.6.2-SNAPSHOT --- version.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.sbt b/version.sbt index 7443cfa1..a1875d88 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -version in ThisBuild := "0.6.1-PLAY2.6-M5" +version in ThisBuild := "0.6.2-SNAPSHOT" From 8aa7177c39af975daca6b17d0d4ded5e2857fb43 Mon Sep 17 00:00:00 2001 From: "Kai(luo) Wang" Date: Thu, 11 May 2017 23:06:42 -0400 Subject: [PATCH 04/44] updated scala version (#161) --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 51d3f968..4b6e42a9 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,7 +6,7 @@ services: - docker scala: - - 2.11.7 + - 2.12.2 jdk: - oraclejdk8 From 676836393f435ba9532d6d8ed4edb23d5b6b7b56 Mon Sep 17 00:00:00 2001 From: "Kai(luo) Wang" Date: Sun, 14 May 2017 21:37:58 -0400 Subject: [PATCH 05/44] updated play-swagger version in play2.6 branch (#163) --- example/project/plugins.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/example/project/plugins.sbt b/example/project/plugins.sbt index 7c135515..19277794 100644 --- a/example/project/plugins.sbt +++ b/example/project/plugins.sbt @@ -18,6 +18,6 @@ addSbtPlugin("com.typesafe.sbt" % "sbt-mocha" % "1.1.0") addSbtPlugin("org.irundaia.sbt" % "sbt-sassify" % "1.4.2") // play swagger plugin -addSbtPlugin("com.iheart" % "sbt-play-swagger" % "0.6.1-SNAPSHOT") +addSbtPlugin("com.iheart" % "sbt-play-swagger" % "0.6.1-PLAY2.6-M5") From 81d91fc8837838df69ca54c2344f243ad01598ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Artur=20Ba=C5=84kowski?= Date: Wed, 7 Jun 2017 16:22:19 +0200 Subject: [PATCH 06/44] Update dependencies for Play 2.6 RC2 (#164) * Update dependencies for Play 2.6 RC1 * Change Play version for test app * Update to Play 2.6 RC2 --- project/Dependencies.scala | 7 ++++--- .../sbt-play-swagger/generate-docs/project/plugins.sbt | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/project/Dependencies.scala b/project/Dependencies.scala index f57c7410..69a48ae1 100755 --- a/project/Dependencies.scala +++ b/project/Dependencies.scala @@ -2,7 +2,8 @@ import sbt._ object Dependencies { object Versions { - val play = "2.6.0-M5" + val play = "2.6.0-RC2" + val playJson = "2.6.0-RC2" val specs2 = "3.8.9" } @@ -15,11 +16,11 @@ object Dependencies { ) val playJson = Seq( - "com.typesafe.play" %% "play-json" % Versions.play % "provided" + "com.typesafe.play" %% "play-json" % Versions.playJson % "provided" ) val yaml = Seq( - "org.yaml" % "snakeyaml" % "1.16" + "org.yaml" % "snakeyaml" % "1.18" ) val test = Seq( diff --git a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/plugins.sbt b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/plugins.sbt index 0adfc19b..c1db941d 100644 --- a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/plugins.sbt +++ b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/plugins.sbt @@ -1,7 +1,7 @@ logLevel in update := sbt.Level.Warn addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "1.1.6") -addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.6.0-M5") +addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.6.0-RC2") { val pluginVersion = System.getProperty("plugin.version") From 60b37cc26fd4948219b081f4d00b36c1d7afd352 Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Wed, 7 Jun 2017 10:29:57 -0400 Subject: [PATCH 07/44] Setting version to 0.6.1-PLAY2.6-RC2 --- version.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.sbt b/version.sbt index a1875d88..aeb91a21 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -version in ThisBuild := "0.6.2-SNAPSHOT" +version in ThisBuild := "0.6.1-PLAY2.6-RC2" From 880174282a5c0bd753554c7b490f83240bda29c0 Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Wed, 7 Jun 2017 10:30:22 -0400 Subject: [PATCH 08/44] Setting version to 0.6.1 --- version.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.sbt b/version.sbt index aeb91a21..421f10f2 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -version in ThisBuild := "0.6.1-PLAY2.6-RC2" +version in ThisBuild := "0.6.1" From acded1326703805c5fc7cde2af13712a4f6d1356 Mon Sep 17 00:00:00 2001 From: "Wessel W. Bakker" Date: Wed, 5 Jul 2017 15:08:24 +0200 Subject: [PATCH 09/44] Updated play2.6 branch to 2.6.0 (final) + migrated and fixed example branch (#167) * Update SBT to 0.13.15 (#159) * Remove deprecated sbt 0.12 style dependecy operators * Update libraries and sbt version to 0.13.15 * - Fix tests so they work on Windows (as well as linux). * - Updated dependencies to Play 2.6.0 (final) - Migrated the example project to Play 2.6.0. - Fixed unit tests of example project. * - Added play2.6 version to the documentation. --- README.md | 5 ++++ example/app/controllers/AsyncController.scala | 2 +- example/app/controllers/HomeController.scala | 2 +- .../controllers/math/CountController.scala | 2 +- example/app/views/index.scala.html | 2 +- example/build.sbt | 3 ++- example/conf/application.conf | 2 +- example/project/plugins.sbt | 4 +-- example/test/ApplicationSpec.scala | 9 ++++--- example/test/IntegrationSpec.scala | 3 ++- project/Dependencies.scala | 4 +-- .../sbt-play-swagger/generate-docs/build.sbt | 26 ++++++++++++++++++- .../generate-docs/project/plugins.sbt | 2 +- .../sbt-play-swagger/generate-docs/test | 8 +++--- version.sbt | 2 +- 15 files changed, 54 insertions(+), 22 deletions(-) diff --git a/README.md b/README.md index 46d34c95..0527d7c2 100644 --- a/README.md +++ b/README.md @@ -79,6 +79,11 @@ You can find the setup in the example project as well. #### Step 1 +For play2.6 add Swagger sbt plugin dependency to your plugins.sbt +```scala +addSbtPlugin("com.iheart" % "sbt-play-swagger" % "0.6.1-PLAY2.6") +``` + For play2.5 add Swagger sbt plugin dependency to your plugins.sbt (see [the releases tab](https://github.com/iheartradio/play-swagger/releases) for the latest versions) ```scala diff --git a/example/app/controllers/AsyncController.scala b/example/app/controllers/AsyncController.scala index 4caccd65..848f4e4d 100644 --- a/example/app/controllers/AsyncController.scala +++ b/example/app/controllers/AsyncController.scala @@ -20,7 +20,7 @@ import scala.concurrent.duration._ * asynchronous code. */ @Singleton -class AsyncController @Inject() (actorSystem: ActorSystem)(implicit exec: ExecutionContext) extends Controller { +class AsyncController @Inject() (actorSystem: ActorSystem, components: ControllerComponents)(implicit exec: ExecutionContext) extends AbstractController(components) { implicit val fmt = Json.format[Message] /** * Create an Action that returns a plain text message after a delay diff --git a/example/app/controllers/HomeController.scala b/example/app/controllers/HomeController.scala index fd9288e0..c5d190aa 100644 --- a/example/app/controllers/HomeController.scala +++ b/example/app/controllers/HomeController.scala @@ -9,7 +9,7 @@ import play.api.mvc._ * application's home page. */ @Singleton -class HomeController @Inject() extends Controller { +class HomeController @Inject() (components: ControllerComponents) extends AbstractController(components) { /** * Create an Action to render an HTML page with a welcome message. diff --git a/example/app/controllers/math/CountController.scala b/example/app/controllers/math/CountController.scala index 50953df3..fb0033c2 100644 --- a/example/app/controllers/math/CountController.scala +++ b/example/app/controllers/math/CountController.scala @@ -12,7 +12,7 @@ import services.Counter * object is injected by the Guice dependency injection system. */ @Singleton -class CountController @Inject() (counter: Counter) extends Controller { +class CountController @Inject() (counter: Counter, components: ControllerComponents) extends AbstractController(components) { /** * Create an action that responds with the [[Counter]]'s current diff --git a/example/app/views/index.scala.html b/example/app/views/index.scala.html index da59cbfe..9184bf68 100644 --- a/example/app/views/index.scala.html +++ b/example/app/views/index.scala.html @@ -15,6 +15,6 @@ * Get an `Html` object by calling the built-in Play welcome * template and passing a `String` message. *@ - @play20.welcome(message, style = "Scala") + @message } diff --git a/example/build.sbt b/example/build.sbt index eeebe31b..0a933731 100644 --- a/example/build.sbt +++ b/example/build.sbt @@ -10,7 +10,8 @@ libraryDependencies ++= Seq( jdbc, cache, ws, - "org.scalatestplus.play" %% "scalatestplus-play" % "1.5.1" % Test, + guice, + "org.scalatestplus.play" %% "scalatestplus-play" % "3.0.0" % Test, "org.webjars" % "swagger-ui" % "2.2.0" //play-swagger ui integration ) diff --git a/example/conf/application.conf b/example/conf/application.conf index f7d6fe3c..ae3bb95a 100644 --- a/example/conf/application.conf +++ b/example/conf/application.conf @@ -41,7 +41,7 @@ akka { # The secret key is used to sign Play's session cookie. # This must be changed for production, but we don't recommend you change it in this file. # The following is for the convenience of Play-Swagger development, don't use it for your project! -play.crypto.secret = "QCY?tAnfk?aZ?iwrNwnxIlR6CTf:G3gf:90Latabg@5241AB`R5W:1uDFN];Ik@n" +play.http.secret.key = "QCY?tAnfk?aZ?iwrNwnxIlR6CTf:G3gf:90Latabg@5241AB`R5W:1uDFN];Ik@n" ## Modules diff --git a/example/project/plugins.sbt b/example/project/plugins.sbt index 19277794..5374fe6c 100644 --- a/example/project/plugins.sbt +++ b/example/project/plugins.sbt @@ -1,5 +1,5 @@ // The Play plugin -addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.6.0-M5") +addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.6.0") // web plugins @@ -18,6 +18,6 @@ addSbtPlugin("com.typesafe.sbt" % "sbt-mocha" % "1.1.0") addSbtPlugin("org.irundaia.sbt" % "sbt-sassify" % "1.4.2") // play swagger plugin -addSbtPlugin("com.iheart" % "sbt-play-swagger" % "0.6.1-PLAY2.6-M5") +addSbtPlugin("com.iheart" % "sbt-play-swagger" % "0.6.1-PLAY2.6") diff --git a/example/test/ApplicationSpec.scala b/example/test/ApplicationSpec.scala index 63693b60..15da539c 100644 --- a/example/test/ApplicationSpec.scala +++ b/example/test/ApplicationSpec.scala @@ -1,13 +1,14 @@ import org.scalatestplus.play._ import play.api.test._ import play.api.test.Helpers._ +import org.scalatestplus.play.guice.GuiceOneAppPerTest /** * Add your spec here. * You can mock out a whole application including requests, plugins etc. * For more information, consult the wiki. */ -class ApplicationSpec extends PlaySpec with OneAppPerTest { +class ApplicationSpec extends PlaySpec with GuiceOneAppPerTest { "Routes" should { @@ -32,9 +33,9 @@ class ApplicationSpec extends PlaySpec with OneAppPerTest { "CountController" should { "return an increasing count" in { - contentAsString(route(app, FakeRequest(GET, "/count")).get) mustBe "0" - contentAsString(route(app, FakeRequest(GET, "/count")).get) mustBe "1" - contentAsString(route(app, FakeRequest(GET, "/count")).get) mustBe "2" + contentAsString(route(app, FakeRequest(GET, "/math")).get) mustBe "0" + contentAsString(route(app, FakeRequest(GET, "/math")).get) mustBe "1" + contentAsString(route(app, FakeRequest(GET, "/math")).get) mustBe "2" } } diff --git a/example/test/IntegrationSpec.scala b/example/test/IntegrationSpec.scala index 02637cde..751c8803 100644 --- a/example/test/IntegrationSpec.scala +++ b/example/test/IntegrationSpec.scala @@ -1,12 +1,13 @@ import org.scalatestplus.play._ import play.api.test._ import play.api.test.Helpers._ +import org.scalatestplus.play.guice.GuiceOneServerPerTest /** * add your integration spec here. * An integration test will fire up a whole play application in a real (or headless) browser */ -class IntegrationSpec extends PlaySpec with OneServerPerTest with OneBrowserPerTest with HtmlUnitFactory { +class IntegrationSpec extends PlaySpec with GuiceOneServerPerTest with OneBrowserPerTest with HtmlUnitFactory { "Application" should { diff --git a/project/Dependencies.scala b/project/Dependencies.scala index 69a48ae1..b256689c 100755 --- a/project/Dependencies.scala +++ b/project/Dependencies.scala @@ -2,8 +2,8 @@ import sbt._ object Dependencies { object Versions { - val play = "2.6.0-RC2" - val playJson = "2.6.0-RC2" + val play = "2.6.0" + val playJson = "2.6.0" val specs2 = "3.8.9" } diff --git a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/build.sbt b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/build.sbt index 23a3eda4..4413ec91 100755 --- a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/build.sbt +++ b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/build.sbt @@ -34,7 +34,7 @@ TaskKey[Unit]("check") := { | "summary":"Get the track metadata", | "responses":{ | "200":{ - | "summary": "$pathVal", + | "summary": "${pathVal.replace("\\", "\\\\")}", | "schema":{ | "$$ref":"#/definitions/namespace2.Track" | } @@ -149,3 +149,27 @@ TaskKey[Unit]("check") := { """.stripMargin) } } + +TaskKey[Unit]("unzip1") := { + val from = new File("target/scala-2.12/app_2.12-0.1-SNAPSHOT.jar") + val to = new File("target/jar") + IO.unzip(from, to) +} + +TaskKey[Unit]("unzip2") := { + val from = new File("target/universal/app-0.1-SNAPSHOT.zip") + val to = new File("target/dist") + IO.unzip(from, to) +} + +TaskKey[Unit]("unzip3") := { + val from = new File("target/dist/app-0.1-SNAPSHOT/lib/app.app-0.1-SNAPSHOT-sans-externalized.jar") + val to = new File("target/dist/jar") + IO.unzip(from, to) +} + +TaskKey[Unit]("unzip4") := { + val from = new File("target/universal/stage/lib/app.app-0.1-SNAPSHOT-sans-externalized.jar") + val to = new File("target/jar") + IO.unzip(from, to) +} \ No newline at end of file diff --git a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/plugins.sbt b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/plugins.sbt index c1db941d..0f8b8240 100644 --- a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/plugins.sbt +++ b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/plugins.sbt @@ -1,7 +1,7 @@ logLevel in update := sbt.Level.Warn addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "1.1.6") -addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.6.0-RC2") +addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.6.0") { val pluginVersion = System.getProperty("plugin.version") diff --git a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/test b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/test index a4aeb700..fe088703 100644 --- a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/test +++ b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/test @@ -6,13 +6,13 @@ $ absent target/jar/public/swagger.json -$ exec unzip -q target/scala-2.12/app_2.12-0.1-SNAPSHOT.jar -d target/jar +> unzip1 $ exists target/jar/public/swagger.json $ absent target/dist/jar/public/swagger.json -$ exec unzip -q target/universal/app-0.1-SNAPSHOT.zip -d target/dist -$ exec unzip -q target/dist/app-0.1-SNAPSHOT/lib/app.app-0.1-SNAPSHOT-sans-externalized.jar -d target/dist/jar +> unzip2 +> unzip3 $ exists target/dist/jar/public/swagger.json @@ -20,6 +20,6 @@ $ exists target/dist/jar/public/swagger.json > stage $ absent target/jar/public/swagger.json -$ exec unzip -q target/universal/stage/lib/app.app-0.1-SNAPSHOT-sans-externalized.jar -d target/jar +> unzip4 $ exists target/jar/public/swagger.json diff --git a/version.sbt b/version.sbt index 421f10f2..8c5ae584 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -version in ThisBuild := "0.6.1" +version in ThisBuild := "0.6.1-PLAY2.6" From fd360467a3b3453c7a695d85759d057fe1d82c25 Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Wed, 5 Jul 2017 09:11:54 -0400 Subject: [PATCH 10/44] Setting version to 0.6.2-SNAPSHOT --- version.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.sbt b/version.sbt index 8c5ae584..a1875d88 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -version in ThisBuild := "0.6.1-PLAY2.6" +version in ThisBuild := "0.6.2-SNAPSHOT" From d35bc04b1f95af6cc8ed5c10a49403224c6187f9 Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Tue, 25 Jul 2017 09:43:57 -0400 Subject: [PATCH 11/44] Setting version to 0.6.2-PLAY2.6 --- version.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.sbt b/version.sbt index a1875d88..978d83a0 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -version in ThisBuild := "0.6.2-SNAPSHOT" +version in ThisBuild := "0.6.2-PLAY2.6" From a1930f655788974b9e453585c2e66c6507fe2f33 Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Tue, 25 Jul 2017 09:44:09 -0400 Subject: [PATCH 12/44] Setting version to 0.6.3-SNAPSHOT --- version.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.sbt b/version.sbt index 978d83a0..ad83f2cb 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -version in ThisBuild := "0.6.2-PLAY2.6" +version in ThisBuild := "0.6.3-SNAPSHOT" From db89b970441a2060719210384ff50de7556496ed Mon Sep 17 00:00:00 2001 From: Alex Afanasev Date: Sat, 4 Nov 2017 01:12:52 +0300 Subject: [PATCH 13/44] migrate to sbt 1.0.3 (#187) --- build.sbt | 10 +++++----- project/Dependencies.scala | 2 +- project/ScriptedTesting.scala | 14 -------------- project/build.properties | 2 +- project/plugins.sbt | 4 ++-- .../com/iheart/sbtPlaySwagger/SwaggerPlugin.scala | 2 +- scripted.sbt | 4 ++++ 7 files changed, 14 insertions(+), 24 deletions(-) delete mode 100644 project/ScriptedTesting.scala create mode 100644 scripted.sbt diff --git a/build.sbt b/build.sbt index 151e4d2a..ae2b7cb9 100644 --- a/build.sbt +++ b/build.sbt @@ -24,14 +24,14 @@ lazy val playSwagger = project.in(file("core")) Dependencies.playJson ++ Dependencies.test ++ Dependencies.yaml, - scalaVersion := "2.12.2" + scalaVersion := "2.12.4" ) lazy val sbtPlaySwagger = project.in(file("sbtPlugin")) - .settings(Publish.sbtPluginSettings ++ Format.settings ++ ScriptedTesting.settings) + .settings(Publish.sbtPluginSettings ++ Format.settings) .settings( - addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "1.1.6" % Provided), - addSbtPlugin("com.typesafe.sbt" % "sbt-web" % "1.4.0" % Provided)) + addSbtPlugin("com.typesafe.sbt" %% "sbt-native-packager" % "1.3.1" % Provided), + addSbtPlugin("com.typesafe.sbt" %% "sbt-web" % "1.4.3" % Provided)) .enablePlugins(BuildInfoPlugin) .settings( buildInfoKeys := Seq[BuildInfoKey](name, version), @@ -39,6 +39,6 @@ lazy val sbtPlaySwagger = project.in(file("sbtPlugin")) name := "sbt-play-swagger", description := "sbt plugin for play swagger spec generation", sbtPlugin := true, - scalaVersion := "2.10.6", + scalaVersion := "2.12.4", scripted := scripted.dependsOn(publishLocal in playSwagger).evaluated ) diff --git a/project/Dependencies.scala b/project/Dependencies.scala index 189ee2ba..8728197f 100755 --- a/project/Dependencies.scala +++ b/project/Dependencies.scala @@ -2,7 +2,7 @@ import sbt._ object Dependencies { object Versions { - val play = "2.6.0" + val play = "2.6.6" val playJson = "2.6.0" val specs2 = "3.8.9" } diff --git a/project/ScriptedTesting.scala b/project/ScriptedTesting.scala deleted file mode 100644 index 5d319186..00000000 --- a/project/ScriptedTesting.scala +++ /dev/null @@ -1,14 +0,0 @@ -import sbt.Keys._ -import sbt.ScriptedPlugin -import sbt.ScriptedPlugin._ -import sbt._ - -object ScriptedTesting { - - def settings = ScriptedPlugin.scriptedSettings ++ Seq( - scriptedBufferLog := false, - scriptedLaunchOpts := scriptedLaunchOpts.value ++ Seq( - "-Xmx1024M", - "-Dplugin.version=" + version.value), - test in Test := (test in Test).dependsOn(scripted.toTask("")).value) -} \ No newline at end of file diff --git a/project/build.properties b/project/build.properties index c091b86c..9abea129 100755 --- a/project/build.properties +++ b/project/build.properties @@ -1 +1 @@ -sbt.version=0.13.16 +sbt.version=1.0.3 diff --git a/project/plugins.sbt b/project/plugins.sbt index 2f0ec185..142db8ef 100755 --- a/project/plugins.sbt +++ b/project/plugins.sbt @@ -1,4 +1,4 @@ -libraryDependencies += "org.scala-sbt" % "scripted-plugin" % sbtVersion.value +libraryDependencies += "org.scala-sbt" %% "scripted-plugin" % sbtVersion.value addSbtPlugin("org.foundweekends" % "sbt-bintray" % "0.5.1") @@ -8,6 +8,6 @@ addSbtPlugin("org.scalariform" % "sbt-scalariform" % "1.8.0") addSbtPlugin("org.scoverage" % "sbt-scoverage" % "1.5.1") -addSbtPlugin("org.scoverage" % "sbt-coveralls" % "1.1.0") +addSbtPlugin("org.scoverage" % "sbt-coveralls" % "1.2.2") addSbtPlugin("com.eed3si9n" % "sbt-buildinfo" % "0.7.0") diff --git a/sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerPlugin.scala b/sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerPlugin.scala index e6c8dccb..63cc91af 100755 --- a/sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerPlugin.scala +++ b/sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerPlugin.scala @@ -38,7 +38,7 @@ object SwaggerPlugin extends AutoPlugin { val args: Seq[String] = file.absolutePath :: swaggerRoutesFile.value :: swaggerDomainNameSpaces.value.mkString(",") :: swaggerOutputTransformers.value.mkString(",") :: Nil val swaggerClasspath = data((fullClasspath in Runtime).value) ++ update.value.select(configurationFilter(swaggerConfig.name)) - toError(runner.value.run("com.iheart.playSwagger.SwaggerSpecRunner", swaggerClasspath, args, streams.value.log)) + runner.value.run("com.iheart.playSwagger.SwaggerSpecRunner", swaggerClasspath, args, streams.value.log).failed foreach (sys error _.getMessage) file }.value, unmanagedResourceDirectories in Assets += swaggerTarget.value, diff --git a/scripted.sbt b/scripted.sbt new file mode 100644 index 00000000..596bf77f --- /dev/null +++ b/scripted.sbt @@ -0,0 +1,4 @@ +scriptedLaunchOpts := { scriptedLaunchOpts.value ++ + Seq("-Xmx1024M", "-Dplugin.version=" + version.value) +} +scriptedBufferLog := false \ No newline at end of file From 3f58443404ca72f854fedaaf0cc3e2de7f63d368 Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Tue, 7 Nov 2017 08:13:20 -0500 Subject: [PATCH 14/44] Setting version to 0.6.3 --- version.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.sbt b/version.sbt index ad83f2cb..a40c96ba 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -version in ThisBuild := "0.6.3-SNAPSHOT" +version in ThisBuild := "0.6.3" From 0b82dd0995768099a49a3cfdefbfa29734cb7d2b Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Tue, 7 Nov 2017 08:13:41 -0500 Subject: [PATCH 15/44] Setting version to 0.6.4-SNAPSHOT --- version.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.sbt b/version.sbt index a40c96ba..25ac1ae3 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -version in ThisBuild := "0.6.3" +version in ThisBuild := "0.6.4-SNAPSHOT" From a7259b5289d494a8b88f8ac264eb8d51caebab33 Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Tue, 7 Nov 2017 08:16:01 -0500 Subject: [PATCH 16/44] Setting version to 0.7.0 --- version.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.sbt b/version.sbt index 25ac1ae3..d2475ae7 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -version in ThisBuild := "0.6.4-SNAPSHOT" +version in ThisBuild := "0.7.0" From ba2af9b87d568ef2b917d50446e53ac4c6197297 Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Tue, 7 Nov 2017 08:16:26 -0500 Subject: [PATCH 17/44] Setting version to 0.7.1-SNAPSHOT --- version.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.sbt b/version.sbt index d2475ae7..a163f352 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -version in ThisBuild := "0.7.0" +version in ThisBuild := "0.7.1-SNAPSHOT" From 453aea2c067f93dba10844ded98798925e51f831 Mon Sep 17 00:00:00 2001 From: Alex Afanasev Date: Tue, 7 Nov 2017 21:32:21 +0300 Subject: [PATCH 18/44] fixes `id must be capitalized: swaggerConfig` (#191) --- .../com/iheart/sbtPlaySwagger/SwaggerPlugin.scala | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerPlugin.scala b/sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerPlugin.scala index 63cc91af..14aa7a8b 100755 --- a/sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerPlugin.scala +++ b/sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerPlugin.scala @@ -8,7 +8,7 @@ import sbt.{ AutoPlugin, _ } import com.typesafe.sbt.web.Import._ object SwaggerPlugin extends AutoPlugin { - lazy val swaggerConfig = config("play-swagger").hide + lazy val SwaggerConfig = config("play-swagger").hide lazy val playSwaggerVersion = com.iheart.playSwagger.BuildInfo.version object autoImport extends SwaggerKeys @@ -19,13 +19,13 @@ object SwaggerPlugin extends AutoPlugin { import autoImport._ - override def projectConfigurations: Seq[Configuration] = Seq(swaggerConfig) + override def projectConfigurations: Seq[Configuration] = Seq(SwaggerConfig) override def projectSettings: Seq[Setting[_]] = Seq( - ivyConfigurations += swaggerConfig, + ivyConfigurations += SwaggerConfig, resolvers += Resolver.jcenterRepo, //todo: remove hardcoded org name using BuildInfo - libraryDependencies += "com.iheart" %% "play-swagger" % playSwaggerVersion % swaggerConfig, + libraryDependencies += "com.iheart" %% "play-swagger" % playSwaggerVersion % SwaggerConfig, swaggerDomainNameSpaces := Seq(), swaggerTarget := target.value / "swagger", swaggerFileName := "swagger.json", @@ -37,7 +37,7 @@ object SwaggerPlugin extends AutoPlugin { IO.delete(file) val args: Seq[String] = file.absolutePath :: swaggerRoutesFile.value :: swaggerDomainNameSpaces.value.mkString(",") :: swaggerOutputTransformers.value.mkString(",") :: Nil - val swaggerClasspath = data((fullClasspath in Runtime).value) ++ update.value.select(configurationFilter(swaggerConfig.name)) + val swaggerClasspath = data((fullClasspath in Runtime).value) ++ update.value.select(configurationFilter(SwaggerConfig.name)) runner.value.run("com.iheart.playSwagger.SwaggerSpecRunner", swaggerClasspath, args, streams.value.log).failed foreach (sys error _.getMessage) file }.value, From 545407359945c3100ab9e8f1f6fa7510a3e6a328 Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Tue, 7 Nov 2017 13:34:02 -0500 Subject: [PATCH 19/44] Setting version to 0.7.1 --- version.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.sbt b/version.sbt index a163f352..1938a72a 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -version in ThisBuild := "0.7.1-SNAPSHOT" +version in ThisBuild := "0.7.1" From ca03936b7ef03a5bae3c0db135178f71f3c0de9e Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Tue, 7 Nov 2017 13:34:22 -0500 Subject: [PATCH 20/44] Setting version to 0.7.2-SNAPSHOT --- version.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.sbt b/version.sbt index 1938a72a..dd8f3d71 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -version in ThisBuild := "0.7.1" +version in ThisBuild := "0.7.2-SNAPSHOT" From 2fa761cd57c2365f8e5eaadaf6d4f3ca0d59100d Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Mon, 20 Nov 2017 11:17:49 -0500 Subject: [PATCH 21/44] Setting version to 0.7.2 --- version.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.sbt b/version.sbt index dd8f3d71..3d9f0847 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -version in ThisBuild := "0.7.2-SNAPSHOT" +version in ThisBuild := "0.7.2" From 5233c2c6e62de598074fc5cc9e544753aba3cdf6 Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Mon, 20 Nov 2017 11:18:11 -0500 Subject: [PATCH 22/44] Setting version to 0.7.3-SNAPSHOT --- version.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.sbt b/version.sbt index 3d9f0847..9c027d2e 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -version in ThisBuild := "0.7.2" +version in ThisBuild := "0.7.3-SNAPSHOT" From b82c3d0ae9e92f7f414fe889829fc975d574e5f5 Mon Sep 17 00:00:00 2001 From: "Kai(luo) Wang" Date: Tue, 21 Nov 2017 10:31:35 -0500 Subject: [PATCH 23/44] fix plugin --- .../src/main/scala/com/iheart/sbtPlaySwagger/SwaggerPlugin.scala | 1 + 1 file changed, 1 insertion(+) diff --git a/sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerPlugin.scala b/sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerPlugin.scala index 20134727..61436e0e 100755 --- a/sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerPlugin.scala +++ b/sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerPlugin.scala @@ -37,6 +37,7 @@ object SwaggerPlugin extends AutoPlugin { val file = swaggerTarget.value / swaggerFileName.value IO.delete(file) val args: Seq[String] = file.absolutePath :: swaggerRoutesFile.value :: + swaggerDomainNameSpaces.value.mkString(",") :: swaggerOutputTransformers.value.mkString(",") :: swaggerV3.value.toString :: Nil From 40843f0ca1650be312873a16a83637e03ce2f698 Mon Sep 17 00:00:00 2001 From: "Kai(luo) Wang" Date: Tue, 21 Nov 2017 10:36:23 -0500 Subject: [PATCH 24/44] Update .travis.yml --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 4b6e42a9..3c85530c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -18,7 +18,7 @@ cache: - $HOME/.sbt/boot/ script: - - sbt clean sbtPlaySwagger/test + - sbt clean sbtPlaySwagger/scripted - sbt ';project playSwagger;clean;coverage;test' after_success: - sbt ';project playSwagger;coverageReport;coveralls' From 8367b689228909fed96e80ec703abbaee2413185 Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Tue, 21 Nov 2017 10:36:32 -0500 Subject: [PATCH 25/44] update example version --- example/project/plugins.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/example/project/plugins.sbt b/example/project/plugins.sbt index 5374fe6c..ef648d82 100644 --- a/example/project/plugins.sbt +++ b/example/project/plugins.sbt @@ -18,6 +18,6 @@ addSbtPlugin("com.typesafe.sbt" % "sbt-mocha" % "1.1.0") addSbtPlugin("org.irundaia.sbt" % "sbt-sassify" % "1.4.2") // play swagger plugin -addSbtPlugin("com.iheart" % "sbt-play-swagger" % "0.6.1-PLAY2.6") +addSbtPlugin("com.iheart" % "sbt-play-swagger" % "0.7.3") From ed03edce88f2934c41f6ff821af583c6c9bd75b8 Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Tue, 21 Nov 2017 10:36:32 -0500 Subject: [PATCH 26/44] update example version --- example/project/plugins.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/example/project/plugins.sbt b/example/project/plugins.sbt index 5374fe6c..ef648d82 100644 --- a/example/project/plugins.sbt +++ b/example/project/plugins.sbt @@ -18,6 +18,6 @@ addSbtPlugin("com.typesafe.sbt" % "sbt-mocha" % "1.1.0") addSbtPlugin("org.irundaia.sbt" % "sbt-sassify" % "1.4.2") // play swagger plugin -addSbtPlugin("com.iheart" % "sbt-play-swagger" % "0.6.1-PLAY2.6") +addSbtPlugin("com.iheart" % "sbt-play-swagger" % "0.7.3") From c867194eaa50aa714b523b12a9f379486e39404e Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Tue, 21 Nov 2017 11:58:52 -0500 Subject: [PATCH 27/44] fixing the scripted test in 2.6 --- build.sbt | 8 +++++++- .../generate-docs/project/build.properties | 2 +- .../sbt-play-swagger/generate-docs/project/plugins.sbt | 6 +++--- scripted.sbt | 4 ---- 4 files changed, 11 insertions(+), 9 deletions(-) diff --git a/build.sbt b/build.sbt index ae2b7cb9..e048e64a 100644 --- a/build.sbt +++ b/build.sbt @@ -40,5 +40,11 @@ lazy val sbtPlaySwagger = project.in(file("sbtPlugin")) description := "sbt plugin for play swagger spec generation", sbtPlugin := true, scalaVersion := "2.12.4", - scripted := scripted.dependsOn(publishLocal in playSwagger).evaluated + scripted := scripted.dependsOn(publishLocal in playSwagger).evaluated, + + scriptedLaunchOpts := { scriptedLaunchOpts.value ++ + Seq("-Xmx1024M", "-Dplugin.version=" + version.value) + }, + scriptedBufferLog := false ) + diff --git a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/build.properties b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/build.properties index c091b86c..9abea129 100755 --- a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/build.properties +++ b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/build.properties @@ -1 +1 @@ -sbt.version=0.13.16 +sbt.version=1.0.3 diff --git a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/plugins.sbt b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/plugins.sbt index 6294899e..15b50dd0 100644 --- a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/plugins.sbt +++ b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/plugins.sbt @@ -1,14 +1,14 @@ logLevel in update := sbt.Level.Warn -addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "1.1.6") -addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.6.0") +addSbtPlugin("com.typesafe.sbt" %% "sbt-native-packager" % "1.3.2") +addSbtPlugin("com.typesafe.play" %% "sbt-plugin" % "2.6.7") { val pluginVersion = System.getProperty("plugin.version") if(pluginVersion == null) throw new RuntimeException("""|The system property 'plugin.version' is not defined. |Specify this property using the scriptedLaunchOpts -D.""".stripMargin) - else addSbtPlugin("com.iheart" % "sbt-play-swagger" % pluginVersion) + else addSbtPlugin("com.iheart" %% "sbt-play-swagger" % pluginVersion) } libraryDependencies += "io.spray" %% "spray-json" % "1.3.3" diff --git a/scripted.sbt b/scripted.sbt index 596bf77f..e69de29b 100644 --- a/scripted.sbt +++ b/scripted.sbt @@ -1,4 +0,0 @@ -scriptedLaunchOpts := { scriptedLaunchOpts.value ++ - Seq("-Xmx1024M", "-Dplugin.version=" + version.value) -} -scriptedBufferLog := false \ No newline at end of file From 7619694cf67011c8aa43f741983ebfdbfd5ad539 Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Tue, 21 Nov 2017 12:44:10 -0500 Subject: [PATCH 28/44] Setting version to 0.7.3 --- version.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.sbt b/version.sbt index 9c027d2e..6f17ac48 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -version in ThisBuild := "0.7.3-SNAPSHOT" +version in ThisBuild := "0.7.3" From 16dd392e402ad89eeb2b2805b898d0e02f014414 Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Tue, 21 Nov 2017 12:44:30 -0500 Subject: [PATCH 29/44] Setting version to 0.7.4-SNAPSHOT --- version.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.sbt b/version.sbt index 6f17ac48..8dc89ba8 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -version in ThisBuild := "0.7.3" +version in ThisBuild := "0.7.4-SNAPSHOT" From 6e609cc82d89db93fa1e29aa10b644b4f2e5c483 Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Tue, 21 Nov 2017 12:48:01 -0500 Subject: [PATCH 30/44] fix example in play 2.6 --- example/project/build.properties | 2 +- example/project/plugins.sbt | 19 ++----------------- 2 files changed, 3 insertions(+), 18 deletions(-) diff --git a/example/project/build.properties b/example/project/build.properties index 80c37f0f..7c290a6e 100644 --- a/example/project/build.properties +++ b/example/project/build.properties @@ -1,4 +1,4 @@ #Activator-generated Properties #Wed Aug 24 09:12:28 EDT 2016 template.uuid=b0d11fa6-d1b3-4963-94aa-319a15612bf3 -sbt.version=0.13.16 +sbt.version=1.0.3 diff --git a/example/project/plugins.sbt b/example/project/plugins.sbt index ef648d82..dc7529e0 100644 --- a/example/project/plugins.sbt +++ b/example/project/plugins.sbt @@ -1,23 +1,8 @@ // The Play plugin -addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.6.0") +addSbtPlugin("com.typesafe.play" %% "sbt-plugin" % "2.6.7") -// web plugins - -addSbtPlugin("com.typesafe.sbt" % "sbt-coffeescript" % "1.0.0") - -addSbtPlugin("com.typesafe.sbt" % "sbt-less" % "1.1.0") - -addSbtPlugin("com.typesafe.sbt" % "sbt-jshint" % "1.0.3") - -addSbtPlugin("com.typesafe.sbt" % "sbt-rjs" % "1.0.7") - -addSbtPlugin("com.typesafe.sbt" % "sbt-digest" % "1.1.0") - -addSbtPlugin("com.typesafe.sbt" % "sbt-mocha" % "1.1.0") - -addSbtPlugin("org.irundaia.sbt" % "sbt-sassify" % "1.4.2") // play swagger plugin -addSbtPlugin("com.iheart" % "sbt-play-swagger" % "0.7.3") +addSbtPlugin("com.iheart" %% "sbt-play-swagger" % "0.7.3") From 97ba8c72808f5853e4626d8575a0cfc127e23758 Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Fri, 9 Mar 2018 12:50:15 -0500 Subject: [PATCH 31/44] auto version --- README.md | 3 +-- .../com/iheart/playSwagger/SwaggerSpecGenerator.scala | 10 ++++++++-- .../com/iheart/playSwagger/SwaggerSpecRunner.scala | 5 +++-- example/conf/swagger.yml | 1 - .../scala/com/iheart/sbtPlaySwagger/SwaggerKeys.scala | 2 ++ .../com/iheart/sbtPlaySwagger/SwaggerPlugin.scala | 2 ++ .../sbt-test/sbt-play-swagger/generate-docs/build.sbt | 10 ++++++---- 7 files changed, 22 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 3ae0f5f1..604267bd 100644 --- a/README.md +++ b/README.md @@ -132,13 +132,13 @@ E.g. info: title: "Poweramp API" description: "Power your music" - version: "1.0.0" consumes: - application/json produces: - application/json ``` +Note that `info.version` is intentionally left out, playSwagger will automatically fillin the build version of the project. However if the version is set here it will be honored. You can also dynamically generate the version string in build file using the `swaggerAPIVersion` setting. #### Step 3a Deploy a swagger ui and point to the swagger spec end point at 'assets/swagger.json', or @@ -289,7 +289,6 @@ Then on your routes file or root swagger file you can use some markup like the o info: title: "API" description: "REST API" - version: "1.0.0" host: ${API_HOST} ``` diff --git a/core/src/main/scala/com/iheart/playSwagger/SwaggerSpecGenerator.scala b/core/src/main/scala/com/iheart/playSwagger/SwaggerSpecGenerator.scala index 027ed9ba..bb009efb 100644 --- a/core/src/main/scala/com/iheart/playSwagger/SwaggerSpecGenerator.scala +++ b/core/src/main/scala/com/iheart/playSwagger/SwaggerSpecGenerator.scala @@ -31,7 +31,8 @@ final case class SwaggerSpecGenerator( modelQualifier: DomainModelQualifier = PrefixDomainModelQualifier(), defaultPostBodyFormat: String = "application/json", outputTransformers: Seq[OutputTransformer] = Nil, - swaggerV3: Boolean = false)(implicit cl: ClassLoader) { + swaggerV3: Boolean = false, + apiVersion: Option[String] = None)(implicit cl: ClassLoader) { import SwaggerSpecGenerator.{ customMappingsFileName, baseSpecFileName, MissingBaseSpecException } // routes with their prefix type Routes = (String, Seq[Route]) @@ -42,7 +43,12 @@ final case class SwaggerSpecGenerator( val defaultRoutesFile = "routes" - def generate(routesFile: String = defaultRoutesFile): Try[JsObject] = generateFromRoutesFile(routesFile = routesFile, base = defaultBase) + def generate(routesFile: String = defaultRoutesFile): Try[JsObject] = { + + val base = apiVersion.fold(defaultBase)( + v ⇒ Json.obj("info" -> Json.obj("version" -> v)) deepMerge defaultBase) + generateFromRoutesFile(routesFile = routesFile, base = base) + } val routesExt = ".routes" diff --git a/core/src/main/scala/com/iheart/playSwagger/SwaggerSpecRunner.scala b/core/src/main/scala/com/iheart/playSwagger/SwaggerSpecRunner.scala index 7aea2b5a..39af226b 100644 --- a/core/src/main/scala/com/iheart/playSwagger/SwaggerSpecRunner.scala +++ b/core/src/main/scala/com/iheart/playSwagger/SwaggerSpecRunner.scala @@ -7,7 +7,7 @@ import scala.util.{ Success, Failure, Try } object SwaggerSpecRunner extends App { implicit def cl = getClass.getClassLoader - val (targetFile :: routesFile :: domainNameSpaceArgs :: outputTransformersArgs :: swaggerV3String :: Nil) = args.toList + val (targetFile :: routesFile :: domainNameSpaceArgs :: outputTransformersArgs :: swaggerV3String :: apiVersion :: Nil) = args.toList private def fileArg = Paths.get(targetFile) private def swaggerJson = { val swaggerV3 = java.lang.Boolean.parseBoolean(swaggerV3String) @@ -24,7 +24,8 @@ object SwaggerSpecRunner extends App { SwaggerSpecGenerator( domainModelQualifier, outputTransformers = transformers, - swaggerV3 = swaggerV3).generate(routesFile).get.toString + swaggerV3 = swaggerV3, + apiVersion = Some(apiVersion)).generate(routesFile).get.toString } Files.write(fileArg, swaggerJson.getBytes, StandardOpenOption.CREATE_NEW, StandardOpenOption.WRITE) diff --git a/example/conf/swagger.yml b/example/conf/swagger.yml index f09b961b..b5d5bd16 100644 --- a/example/conf/swagger.yml +++ b/example/conf/swagger.yml @@ -3,7 +3,6 @@ info: title: "My API" description: "My API is the best" - version: "1.0.0" consumes: - application/json produces: diff --git a/sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerKeys.scala b/sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerKeys.scala index 214ea44c..aaae7615 100644 --- a/sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerKeys.scala +++ b/sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerKeys.scala @@ -13,4 +13,6 @@ trait SwaggerKeys { val swaggerOutputTransformers = SettingKey[Seq[String]]("swaggerOutputTransformers", "list of output transformers for processing swagger file") val swaggerV3 = SettingKey[Boolean]("swaggerV3", "whether to to produce output compatible with Swagger 3 (also knwon as OpenAPI 3)") val envOutputTransformer = "com.iheart.playSwagger.EnvironmentVariablesTransformer" + + val swaggerAPIVersion = SettingKey[String]("swaggerAPIVersion", "Version of the API") } diff --git a/sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerPlugin.scala b/sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerPlugin.scala index 61436e0e..a9874dbc 100755 --- a/sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerPlugin.scala +++ b/sbtPlugin/src/main/scala/com/iheart/sbtPlaySwagger/SwaggerPlugin.scala @@ -32,6 +32,7 @@ object SwaggerPlugin extends AutoPlugin { swaggerFileName := "swagger.json", swaggerRoutesFile := "routes", swaggerOutputTransformers := Seq(), + swaggerAPIVersion := version.value, swagger := Def.task[File] { (swaggerTarget.value).mkdirs() val file = swaggerTarget.value / swaggerFileName.value @@ -40,6 +41,7 @@ object SwaggerPlugin extends AutoPlugin { swaggerDomainNameSpaces.value.mkString(",") :: swaggerOutputTransformers.value.mkString(",") :: swaggerV3.value.toString :: + swaggerAPIVersion.value :: Nil val swaggerClasspath = data((fullClasspath in Runtime).value) ++ update.value.select(configurationFilter(SwaggerConfig.name)) runner.value.run("com.iheart.playSwagger.SwaggerSpecRunner", swaggerClasspath, args, streams.value.log).failed foreach (sys error _.getMessage) diff --git a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/build.sbt b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/build.sbt index 8a31d2cb..c5719ab2 100755 --- a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/build.sbt +++ b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/build.sbt @@ -7,6 +7,7 @@ enablePlugins(PlayScala, SwaggerPlugin) name := "app" +version := "1.0.1-BETA1" scalaVersion := "2.12.2" @@ -112,6 +113,7 @@ TaskKey[Unit]("check") := { | }, | "swagger":"2.0", | "info":{ + | "version":"1.0.1-BETA1", | "title":"Poweramp API", | "description":"My API is the best" | }, @@ -152,25 +154,25 @@ TaskKey[Unit]("check") := { } TaskKey[Unit]("unzip1") := { - val from = new File("target/scala-2.12/app_2.12-0.1-SNAPSHOT.jar") + val from = new File(s"target/scala-2.12/app_2.12-${version.value}.jar") val to = new File("target/jar") IO.unzip(from, to) } TaskKey[Unit]("unzip2") := { - val from = new File("target/universal/app-0.1-SNAPSHOT.zip") + val from = new File(s"target/universal/app-${version.value}.zip") val to = new File("target/dist") IO.unzip(from, to) } TaskKey[Unit]("unzip3") := { - val from = new File("target/dist/app-0.1-SNAPSHOT/lib/app.app-0.1-SNAPSHOT-sans-externalized.jar") + val from = new File(s"target/dist/app-${version.value}/lib/app.app-${version.value}-sans-externalized.jar") val to = new File("target/dist/jar") IO.unzip(from, to) } TaskKey[Unit]("unzip4") := { - val from = new File("target/universal/stage/lib/app.app-0.1-SNAPSHOT-sans-externalized.jar") + val from = new File(s"target/universal/stage/lib/app.app-${version.value}-sans-externalized.jar") val to = new File("target/jar") IO.unzip(from, to) } From e3b9db89c5dccb0f2104de64ee28b1811442a76d Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Fri, 9 Mar 2018 13:11:22 -0500 Subject: [PATCH 32/44] Setting version to 0.7.4 --- version.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.sbt b/version.sbt index 8dc89ba8..c8d35100 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -version in ThisBuild := "0.7.4-SNAPSHOT" +version in ThisBuild := "0.7.4" From 280a6f3be7baea4502fc1cabfb6dbfc80bcf7518 Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Fri, 9 Mar 2018 13:11:39 -0500 Subject: [PATCH 33/44] Setting version to 0.7.5-SNAPSHOT --- version.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.sbt b/version.sbt index c8d35100..509d870c 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -version in ThisBuild := "0.7.4" +version in ThisBuild := "0.7.5-SNAPSHOT" From 43dec81eacce0e3e7575beb8462f4830c08dd302 Mon Sep 17 00:00:00 2001 From: sullis Date: Tue, 22 May 2018 18:20:22 -0700 Subject: [PATCH 34/44] sbt 1.1.5 (#221) --- project/build.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/project/build.properties b/project/build.properties index 9abea129..7c817378 100755 --- a/project/build.properties +++ b/project/build.properties @@ -1 +1 @@ -sbt.version=1.0.3 +sbt.version=1.1.5 From 1108631104884fa5d00d81ed460a0e7adb082fee Mon Sep 17 00:00:00 2001 From: sullis Date: Tue, 22 May 2018 18:21:06 -0700 Subject: [PATCH 35/44] Play Framework 2.6.13 (#220) --- project/Dependencies.scala | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/project/Dependencies.scala b/project/Dependencies.scala index 8728197f..23f6cc88 100755 --- a/project/Dependencies.scala +++ b/project/Dependencies.scala @@ -2,8 +2,8 @@ import sbt._ object Dependencies { object Versions { - val play = "2.6.6" - val playJson = "2.6.0" + val play = "2.6.13" + val playJson = "2.6.9" val specs2 = "3.8.9" } From 5eb31757a60e011cd08364f89814af13ae641d5d Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Thu, 15 Nov 2018 23:24:09 -0500 Subject: [PATCH 36/44] Setting version to 0.7.5 --- version.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.sbt b/version.sbt index 509d870c..c225227b 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -version in ThisBuild := "0.7.5-SNAPSHOT" +version in ThisBuild := "0.7.5" From 82c383e261b17034516328e3b91998916b131e50 Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Thu, 15 Nov 2018 23:24:32 -0500 Subject: [PATCH 37/44] Setting version to 0.7.6-SNAPSHOT --- version.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.sbt b/version.sbt index c225227b..0f57559d 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -version in ThisBuild := "0.7.5" +version in ThisBuild := "0.7.6-SNAPSHOT" From 2e111cbb8ef044c3dfd24640d100a8ef109f7acb Mon Sep 17 00:00:00 2001 From: "Kai(luo) Wang" Date: Thu, 15 Nov 2018 23:30:21 -0500 Subject: [PATCH 38/44] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ed4bbdea..a98ac301 100644 --- a/README.md +++ b/README.md @@ -95,7 +95,7 @@ addSbtPlugin("com.iheart" % "sbt-play-swagger" % "0.6.5") For play 2.6, sbt 1.x and Scala 2.12.x please use ```scala -addSbtPlugin("com.iheart" %% "sbt-play-swagger" % "0.7.4") +addSbtPlugin("com.iheart" %% "sbt-play-swagger" % "0.7.5") ``` For play 2.6 and sbt 0.13.x please use a special release build with play 2.6 binary. (No longer maintained after 0.6.2) From a0d7a26e15a5bb0fe557f92cfb7d42992ec6629c Mon Sep 17 00:00:00 2001 From: sullis Date: Sat, 24 Nov 2018 00:15:04 -0500 Subject: [PATCH 39/44] Scala 2.12.7 (#234) --- .travis.yml | 2 +- build.sbt | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index 3c85530c..918cd5e6 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,7 +6,7 @@ services: - docker scala: - - 2.12.2 + - 2.12.7 jdk: - oraclejdk8 diff --git a/build.sbt b/build.sbt index 5fd6ca13..8720b67e 100644 --- a/build.sbt +++ b/build.sbt @@ -24,7 +24,7 @@ lazy val playSwagger = project.in(file("core")) Dependencies.playJson ++ Dependencies.test ++ Dependencies.yaml, - scalaVersion := "2.12.4" + scalaVersion := "2.12.7" ) lazy val sbtPlaySwagger = project.in(file("sbtPlugin")) @@ -39,7 +39,7 @@ lazy val sbtPlaySwagger = project.in(file("sbtPlugin")) name := "sbt-play-swagger", description := "sbt plugin for play swagger spec generation", sbtPlugin := true, - scalaVersion := "2.12.4", + scalaVersion := "2.12.7", scripted := scripted.dependsOn(publishLocal in playSwagger).evaluated, scriptedLaunchOpts := { scriptedLaunchOpts.value ++ Seq("-Xmx1024M", "-Dplugin.version=" + version.value) From ae60e8a260d962ffb96d7d6effd64dbfb1eba7bc Mon Sep 17 00:00:00 2001 From: sullis Date: Wed, 28 Nov 2018 20:54:09 -0500 Subject: [PATCH 40/44] sbt-release 1.0.10 (#235) --- project/plugins.sbt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/project/plugins.sbt b/project/plugins.sbt index 142db8ef..56b79d52 100755 --- a/project/plugins.sbt +++ b/project/plugins.sbt @@ -2,7 +2,7 @@ libraryDependencies += "org.scala-sbt" %% "scripted-plugin" % sbtVersion.value addSbtPlugin("org.foundweekends" % "sbt-bintray" % "0.5.1") -addSbtPlugin("com.github.gseitz" % "sbt-release" % "1.0.6") +addSbtPlugin("com.github.gseitz" % "sbt-release" % "1.0.10") addSbtPlugin("org.scalariform" % "sbt-scalariform" % "1.8.0") From 780dd3fb37c707ebbb7f2e64c16622a0185e9849 Mon Sep 17 00:00:00 2001 From: Kailuo Wang Date: Thu, 7 Feb 2019 20:22:29 -0500 Subject: [PATCH 41/44] added play2.7 to readme --- README.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index a98ac301..039c4864 100644 --- a/README.md +++ b/README.md @@ -81,10 +81,6 @@ You can find the setup in the example project as well. #### Step 1 -For play2.6 add Swagger sbt plugin dependency to your plugins.sbt -```scala -addSbtPlugin("com.iheart" % "sbt-play-swagger" % "0.6.1-PLAY2.6") -``` For play2.5 add Swagger sbt plugin dependency to your plugins.sbt (see [the releases tab](https://github.com/iheartradio/play-swagger/releases) for the latest versions) @@ -98,6 +94,11 @@ For play 2.6, sbt 1.x and Scala 2.12.x please use addSbtPlugin("com.iheart" %% "sbt-play-swagger" % "0.7.5") ``` +For play 2.7, sbt 1.x and Scala 2.12.x please use +```scala +addSbtPlugin("com.iheart" %% "sbt-play-swagger" % "0.7.5-PLAY2.7") +``` + For play 2.6 and sbt 0.13.x please use a special release build with play 2.6 binary. (No longer maintained after 0.6.2) ```scala addSbtPlugin("com.iheart" % "sbt-play-swagger" % "0.6.2-PLAY2.6") From aeba327b0e0880b11b3e6aa47deee87cc50fef1b Mon Sep 17 00:00:00 2001 From: sullis Date: Fri, 8 Feb 2019 17:20:25 -0800 Subject: [PATCH 42/44] Scala 2.12.8 (#241) --- .travis.yml | 2 +- build.sbt | 4 ++-- example/build.sbt | 2 +- .../src/sbt-test/sbt-play-swagger/generate-docs/build.sbt | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.travis.yml b/.travis.yml index 918cd5e6..a05f4de9 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,7 +6,7 @@ services: - docker scala: - - 2.12.7 + - 2.12.8 jdk: - oraclejdk8 diff --git a/build.sbt b/build.sbt index 8720b67e..11cb9274 100644 --- a/build.sbt +++ b/build.sbt @@ -24,7 +24,7 @@ lazy val playSwagger = project.in(file("core")) Dependencies.playJson ++ Dependencies.test ++ Dependencies.yaml, - scalaVersion := "2.12.7" + scalaVersion := "2.12.8" ) lazy val sbtPlaySwagger = project.in(file("sbtPlugin")) @@ -39,7 +39,7 @@ lazy val sbtPlaySwagger = project.in(file("sbtPlugin")) name := "sbt-play-swagger", description := "sbt plugin for play swagger spec generation", sbtPlugin := true, - scalaVersion := "2.12.7", + scalaVersion := "2.12.8", scripted := scripted.dependsOn(publishLocal in playSwagger).evaluated, scriptedLaunchOpts := { scriptedLaunchOpts.value ++ Seq("-Xmx1024M", "-Dplugin.version=" + version.value) diff --git a/example/build.sbt b/example/build.sbt index 0a933731..e16e92bd 100644 --- a/example/build.sbt +++ b/example/build.sbt @@ -4,7 +4,7 @@ version := "1.0-SNAPSHOT" lazy val root = (project in file(".")).enablePlugins(PlayScala, SwaggerPlugin) //enable plugin -scalaVersion := "2.12.2" +scalaVersion := "2.12.8" libraryDependencies ++= Seq( jdbc, diff --git a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/build.sbt b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/build.sbt index c5719ab2..b2b1b728 100755 --- a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/build.sbt +++ b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/build.sbt @@ -9,7 +9,7 @@ name := "app" version := "1.0.1-BETA1" -scalaVersion := "2.12.2" +scalaVersion := "2.12.8" swaggerDomainNameSpaces := Seq("namespace1", "namespace2") From 031cc7b3b6608c6788d9e44b0e54f1d217cf58d5 Mon Sep 17 00:00:00 2001 From: sullis Date: Sat, 9 Feb 2019 17:02:39 -0800 Subject: [PATCH 43/44] sbt 1.2.8 (#242) --- build.sbt | 2 +- example/project/build.properties | 2 +- project/build.properties | 2 +- .../sbt-play-swagger/generate-docs/project/build.properties | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/build.sbt b/build.sbt index 11cb9274..9cf47523 100644 --- a/build.sbt +++ b/build.sbt @@ -32,7 +32,7 @@ lazy val sbtPlaySwagger = project.in(file("sbtPlugin")) .settings( addSbtPlugin("com.typesafe.sbt" %% "sbt-native-packager" % "1.3.1" % Provided), addSbtPlugin("com.typesafe.sbt" %% "sbt-web" % "1.4.3" % Provided)) - .enablePlugins(BuildInfoPlugin) + .enablePlugins(BuildInfoPlugin, SbtPlugin) .settings( buildInfoKeys := Seq[BuildInfoKey](name, version), buildInfoPackage := "com.iheart.playSwagger", diff --git a/example/project/build.properties b/example/project/build.properties index 7c290a6e..0984013e 100644 --- a/example/project/build.properties +++ b/example/project/build.properties @@ -1,4 +1,4 @@ #Activator-generated Properties #Wed Aug 24 09:12:28 EDT 2016 template.uuid=b0d11fa6-d1b3-4963-94aa-319a15612bf3 -sbt.version=1.0.3 +sbt.version=1.2.8 diff --git a/project/build.properties b/project/build.properties index 7c817378..c0bab049 100755 --- a/project/build.properties +++ b/project/build.properties @@ -1 +1 @@ -sbt.version=1.1.5 +sbt.version=1.2.8 diff --git a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/build.properties b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/build.properties index 9abea129..c0bab049 100755 --- a/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/build.properties +++ b/sbtPlugin/src/sbt-test/sbt-play-swagger/generate-docs/project/build.properties @@ -1 +1 @@ -sbt.version=1.0.3 +sbt.version=1.2.8 From 30e8976bf00a69315fe840fd399794cd60ea7bd0 Mon Sep 17 00:00:00 2001 From: jkgeyti Date: Tue, 30 Apr 2019 17:33:43 +0100 Subject: [PATCH 44/44] Add swagger v3 $ref example to README.md (#248) --- README.md | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 039c4864..aea494a4 100644 --- a/README.md +++ b/README.md @@ -320,7 +320,17 @@ Make sure you also update your swagger markup to specify that you are using Open version: "1.0.0" ``` -Also, for `$ref` fields you will want to prefix paths with `#/components/schemas/` instead of `#/definitions/` +Also, for `$ref` fields you will want to prefix paths with `#/components/schemas/` instead of `#/definitions/`. For example: + +``` +### +# parameters: +# - name: body +# schema: +# $ref: '#/components/schemas/com.iheart.api.Track' +### +POST /tracks controller.Api.createTrack() +``` #### Is play java supported?