DIStage v0.9.13 Release Notes

Release Date: 2019-11-29 // over 4 years ago
  • 🐳 Docker containers can now be declared as test dependencies / Resources in distage-testkit:

    object PostgresDocker extends ContainerDef { val primaryPort: DockerPort = DockerPort.TCP(5432) override def config: Config = { ContainerConfig( image = "library/postgres:latest", ports = Seq(primaryPort), reuse = true, ) } }
    

    🐳 Dependencies can be declared between docker containers:

    object DockerPlugin extends DockerContainerModule[zio.Task] with PluginDef { // this container will start once `DynamoContainer` is up and running make[PostgresDocker.Container].fromResource { PostgresDocker.make[zio.Task] .dependOnDocker(DynamoDocker) } }
    

    ✅ Use in test:

    class DBTest extends DistageBIOSpecScalatest[zio.IO] { "postgres docker" should { "respond to queries" in { (doobie: Transactor[zio.Task], pg: PostgresDocker.Container) =\> doobie.trans.apply(sql"select 1") } } }
    

    fundamentals-reflection:

    • Shade boopickle dependency (#737)
    • 🛠 Fix LightTypeTag bug resolve prefixes of annotated types

    fundamentals-bio:

    • Add BIOAsync.parTraverse, parTraverse_, parTraverseN_ (1ed31c1)

    distage:

    • 🐳 Docker resources (#732) by @pshirshov
    • 🚚 Move CatsDIEffectModule from distage-model to distage-roles (07d3ddd)
    • ➕ Add IdentityDIEffectModule (004af1c)

    ✅ distage-testkit:

    • ✅ distage-testkit: Run tests in parallel, add DIEffectAsync (499f765)
    • 🔧 distage-testkit: Configure test class-wide options in SpecConfig (ff9a801)

    ⚡️ dependency updates:

    • ⚡️ Update zio-interop-cats to 2.0.0.0-RC8 (#734)
    • ⚡️ Update zio to 1.0.0-RC17 (#733)
    • ⚡️ Update classgraph to 4.8.54 (#736)
    • ⚡️ Update sbt-scoverage to 1.6.1 (#738)