Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Repackaging scala generators #610

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -240,7 +240,7 @@ lazy val root = (project in file("."))
libraryDependencies ++= testDependencies,
skip in publish := true
)
.dependsOn(codegen % "compile;test")
.dependsOn(codegen % "compile;test", microsite % "compile; test")

lazy val codegen = (project in file("modules/codegen"))
.settings(
Expand Down
113 changes: 0 additions & 113 deletions modules/codegen/src/main/scala/cats/free/Hacks.scala

This file was deleted.

12 changes: 5 additions & 7 deletions modules/codegen/src/main/scala/com/twilio/guardrail/CLI.scala
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,8 @@ import java.nio.file.Path
import cats.data.NonEmptyList
import cats.implicits._
import cats.~>
import com.twilio.guardrail.core.CoreTermInterp
import com.twilio.guardrail.core.{ CoreTermInterp, LogLevel, LogLevels, StructuredLogger }
import com.twilio.guardrail.terms.CoreTerms
import com.twilio.swagger.core.{ LogLevel, LogLevels, StructuredLogger }
import com.twilio.guardrail.languages.{ JavaLanguage, LA, ScalaLanguage }
import scala.io.AnsiColor
import scala.util.{ Failure, Success }
Expand Down Expand Up @@ -189,15 +188,14 @@ trait CLICommon {
}

object CLI extends CLICommon {
import com.twilio.guardrail.generators.{ AkkaHttp, Endpoints, Http4s }
import com.twilio.guardrail.generators.{ Java, JavaModule, ScalaModule }
import com.twilio.guardrail.generators.{ Java, JavaModule, Scala, ScalaModule }
import scala.meta._
val scalaInterpreter = new CoreTermInterp[ScalaLanguage](
"akka-http",
ScalaModule.extract, {
case "akka-http" => AkkaHttp
case "endpoints" => Endpoints
case "http4s" => Http4s
case "akka-http" => Scala.AkkaHttp
case "endpoints" => Scala.Endpoints
case "http4s" => Scala.Http4s
}, {
_.parse[Importer].toEither.bimap(err => UnparseableArgument("import", err.toString), importer => Import(List(importer)))
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package com.twilio.guardrail

import com.twilio.swagger.core.StructuredLogger
import com.twilio.guardrail.core.StructuredLogger
import cats.{ Applicative, MonadError }
import cats.Traverse
import cats.Eval
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.twilio.swagger.core
package com.twilio.guardrail.core

import cats.data.{ Chain, NonEmptyChain }
import cats.implicits._
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
package com.twilio.guardrail
package generators
package com.twilio.guardrail.generators.Scala

import com.twilio.guardrail.Target
import com.twilio.guardrail.circe.CirceVersion
import com.twilio.guardrail.generators.{ Framework, SwaggerGenerator }
import com.twilio.guardrail.generators.ScalaGenerator._
import com.twilio.guardrail.languages.ScalaLanguage

import AkkaHttpClientGenerator._
import AkkaHttpServerGenerator._
import CirceProtocolGenerator._
import ScalaGenerator._
import AkkaHttpGenerator._

object AkkaHttp extends Framework[ScalaLanguage, Target] {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
package com.twilio.guardrail
package generators
package com.twilio.guardrail.generators.Scala

import cats.Monad
import cats.data.NonEmptyList
import cats.implicits._
import com.twilio.guardrail.{ RenderedClientOperation, StaticDefns, StrictProtocolElems, SupportDefinition, Target }
import com.twilio.guardrail.core.Tracker
import com.twilio.guardrail.generators.{ LanguageParameter, LanguageParameters, RawParameterName }
import com.twilio.guardrail.generators.syntax.Scala._
import com.twilio.guardrail.generators.syntax._
import com.twilio.guardrail.protocol.terms.{ ApplicationJson, ContentType, Header, MultipartFormData, Responses, TextPlain }
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package com.twilio.guardrail
package generators
package com.twilio.guardrail.generators.Scala

import com.twilio.guardrail.Target
import com.twilio.guardrail.circe.CirceVersion
import com.twilio.guardrail.terms.framework._

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.twilio.guardrail.generators
package com.twilio.guardrail.generators.Scala

import cats.data.NonEmptyList
import cats.implicits._
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
package com.twilio.guardrail
package generators
package com.twilio.guardrail.generators.Scala

import cats.Monad
import cats.data.NonEmptyList
import cats.implicits._
import com.twilio.guardrail.SwaggerUtil
import com.twilio.guardrail.{ RenderedRoutes, StrictProtocolElems, SwaggerUtil, Target, TracingField, UserError }
import com.twilio.guardrail.core.Tracker
import com.twilio.guardrail.extract.{ ServerRawResponse, TracingLabel }
import com.twilio.guardrail.generators.{ LanguageParameter, LanguageParameters }
import com.twilio.guardrail.generators.syntax._
import com.twilio.guardrail.generators.syntax.RichOperation
import com.twilio.guardrail.generators.syntax.Scala._
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,25 @@
package com.twilio.guardrail
package generators
package com.twilio.guardrail.generators.Scala

import _root_.io.swagger.v3.oas.models.media.{ Discriminator => _, _ }
import cats.Monad
import cats.implicits._
import com.twilio.guardrail.{
DataVisible,
Discriminator,
EmptyIsEmpty,
EmptyIsNull,
ProtocolParameter,
StaticDefns,
SuperClass,
SwaggerUtil,
Target,
UserError
}
import com.twilio.guardrail.circe.CirceVersion
import com.twilio.guardrail.core.Tracker
import com.twilio.guardrail.core.implicits._
import com.twilio.guardrail.extract.{ DataRedaction, EmptyValueIsNull }
import com.twilio.guardrail.generators.{ RawParameterName, RawParameterType }
import com.twilio.guardrail.generators.syntax.RichString
import com.twilio.guardrail.languages.ScalaLanguage
import com.twilio.guardrail.protocol.terms.protocol._
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
package com.twilio.guardrail
package generators
package com.twilio.guardrail.generators.Scala

import com.twilio.guardrail.Target
import com.twilio.guardrail.circe.CirceVersion
import com.twilio.guardrail.generators.{ Framework, SwaggerGenerator }
import com.twilio.guardrail.generators.ScalaGenerator._
import com.twilio.guardrail.languages.ScalaLanguage

import EndpointsClientGenerator._
import EndpointsServerGenerator._
import CirceProtocolGenerator._
import ScalaGenerator._
import EndpointsGenerator.{ FrameworkInterp => EndpointsFrameworkInterp }

object Endpoints extends Framework[ScalaLanguage, Target] {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
package com.twilio.guardrail
package generators
package com.twilio.guardrail.generators.Scala

import _root_.io.swagger.v3.oas.models.PathItem.HttpMethod
import cats.Monad
import cats.data.{ Ior, NonEmptyList }
import cats.implicits._
import com.twilio.guardrail.{ RenderedClientOperation, StaticDefns, StrictProtocolElems, SupportDefinition, SwaggerUtil, Target }
import com.twilio.guardrail.generators.{ LanguageParameter, LanguageParameters, RawParameterName }
import com.twilio.guardrail.generators.syntax.Scala._
import com.twilio.guardrail.generators.syntax._
import com.twilio.guardrail.languages.ScalaLanguage
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
package com.twilio.guardrail
package generators
package com.twilio.guardrail.generators.Scala

import com.twilio.guardrail.terms.framework._
import scala.meta._
import com.twilio.guardrail.languages.ScalaLanguage
import com.twilio.guardrail.Target

object EndpointsGenerator {
object FrameworkInterp extends FrameworkTerms[ScalaLanguage, Target] {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
package com.twilio.guardrail
package generators
package com.twilio.guardrail.generators.Scala

import cats.Monad
import com.twilio.guardrail.{ Target, TracingField }
import com.twilio.guardrail.languages.ScalaLanguage
import com.twilio.guardrail.protocol.terms.server._
import com.twilio.guardrail.terms.{ RouteMeta, SecurityScheme }
import _root_.io.swagger.v3.oas.models.Operation
import com.twilio.guardrail.StrictProtocolElems
import com.twilio.guardrail.core.Tracker
import com.twilio.guardrail.protocol.terms.Responses
import com.twilio.guardrail.generators.LanguageParameters

object EndpointsServerGenerator {
object ServerTermInterp extends ServerTerms[ScalaLanguage, Target] {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
package com.twilio.guardrail
package generators
package com.twilio.guardrail.generators.Scala

import com.twilio.guardrail.Target
import com.twilio.guardrail.circe.CirceVersion
import com.twilio.guardrail.generators.{ Framework, SwaggerGenerator }
import com.twilio.guardrail.generators.ScalaGenerator._
import com.twilio.guardrail.languages.ScalaLanguage

import Http4sClientGenerator._
import Http4sServerGenerator._
import Http4sGenerator.{ FrameworkInterp => Http4sFrameworkInterp }
import CirceProtocolGenerator._
import ScalaGenerator._

object Http4s extends Framework[ScalaLanguage, Target] {
implicit def ArrayProtocolInterp = ArrayProtocolTermInterp
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
package com.twilio.guardrail
package generators
package com.twilio.guardrail.generators.Scala

import cats.Monad
import cats.data.NonEmptyList
import cats.implicits._
import com.twilio.guardrail.{ RenderedClientOperation, StaticDefns, StrictProtocolElems, SupportDefinition, Target }
import com.twilio.guardrail.core.Tracker
import com.twilio.guardrail.generators.syntax.Scala._
import com.twilio.guardrail.generators.syntax._
Expand All @@ -12,6 +12,7 @@ import com.twilio.guardrail.protocol.terms.{ ContentType, Header, MultipartFormD
import com.twilio.guardrail.protocol.terms.client._
import com.twilio.guardrail.shims._
import com.twilio.guardrail.terms.{ RouteMeta, SecurityScheme }
import com.twilio.guardrail.generators.{ LanguageParameter, LanguageParameters, RawParameterName }
import scala.meta._
import _root_.io.swagger.v3.oas.models.PathItem.HttpMethod
import java.net.URI
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package com.twilio.guardrail
package generators
package com.twilio.guardrail.generators.Scala

import com.twilio.guardrail.Target
import com.twilio.guardrail.languages.ScalaLanguage
import com.twilio.guardrail.terms.framework._
import scala.meta._
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.twilio.guardrail.generators
package com.twilio.guardrail.generators.Scala

import com.twilio.guardrail.languages.ScalaLanguage
import com.twilio.guardrail.protocol.terms.{ ApplicationJson, ContentType, Response, Responses }
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
package com.twilio.guardrail
package generators
package com.twilio.guardrail.generators.Scala

import cats.Monad
import cats.data.NonEmptyList
import cats.implicits._
import cats.Traverse
import com.twilio.guardrail.{ RenderedRoutes, StrictProtocolElems, SwaggerUtil, Target, TracingField, UserError }
import com.twilio.guardrail.core.Tracker
import com.twilio.guardrail.extract.{ ServerRawResponse, TracingLabel }
import com.twilio.guardrail.generators.{ LanguageParameter, LanguageParameters }
import com.twilio.guardrail.generators.syntax._
import com.twilio.guardrail.generators.operations.TracingLabelFormatter
import com.twilio.guardrail.generators.syntax.Scala._
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import com.twilio.guardrail.circe.CirceVersion
import com.twilio.guardrail.protocol.terms.protocol.{ ArrayProtocolTerms, EnumProtocolTerms, ModelProtocolTerms, PolyProtocolTerms, ProtocolSupportTerms }
import com.twilio.guardrail.protocol.terms.client.ClientTerms
import com.twilio.guardrail.protocol.terms.server.ServerTerms
import com.twilio.guardrail.generators.Scala._
import com.twilio.guardrail.terms.{ LanguageTerms, SwaggerTerms }
import com.twilio.guardrail.terms.framework.FrameworkTerms

Expand Down
Loading