DIStage v0.10.11 Release Notes
Release Date: 2020-06-05 // almost 4 years ago-
What is it?
Izumi (jp. 泉水, spring) is an ecosystem of independent libraries and frameworks allowing you to significantly increase productivity of your Scala development.
including the following components:
- distage – Transparent and debuggable Dependency Injection framework for pure FP Scala,
✅ 2. distage-testkit – Hyper-pragmatic pure FP Test framework. Shares heavy resources globally across all test suites; lets you easily swap implementations of component; uses your effect type for parallelism.
🐳 3. distage-framework-docker – A distage extension for using docker containers in tests or for local application runs, comes with example Postgres, Cassandra, Kafka & DynamoDB containers.
🔊 4. LogStage – Automatic structural logs from Scala string interpolations,
💅 5. BIO - A typeclass hierarchy for tagless final style with Bifunctor and Trifunctor effect types. Focused on ergonomics and ease of use with zero boilerplate.
🚚 6. izumi-reflect (moved to zio/izumi-reflect) - Portable, lightweight and kind-polymorphic alternative to
scala-reflect
's Typetag for Scala, Scala.js, Scala Native and (soon) Dotty ⚡️ 7. IdeaLingua (moved to 7mind/idealingua-v1) – API Definition, Data Modeling and RPC language, optimized for fast prototyping – like gRPC or Swagger, but with a human face. Generates RPC servers and clients for Go, TypeScript, C# and Scala, 🏗 8. Opinionated SBT plugins (moved to 7mind/sbtgen) – Reduces verbosity of SBT builds and introduces new features – inter-project shared test scopes and BOM plugins (from Maven) - Percept-Plan-Execute-Repeat (PPER) – A pattern that enables modeling very complex domains and orchestrate deadly complex processes a lot easier than you're used to.
🔄 Changes since 0.10.10
🐳 distage-framework-docker:
- ➕ Added support for custom docker container readiness checks by @Caparow (#1094)
- 🐳 Bundled
PostgresDocker
container now uses a custom check that suceeds only once SQL protocol is truly available (postgres docker re-launches twice during normal bootup - first time to setup schema and users, making port check insufficient to assert readiness - postgres connection will fail if connected during the first boot-up) by @Caparow
🔀 Pull requests merged since 0.10.10:
- 🛠 Fix port mapping in bundled Kafka docker (#1096)
- 🐳 distage-docker: custom readiness checks (#1094)
- 🐳 distage-framework-docker: add defaults to Docker.ClientConfig constructor (#1085)
- ✅ Request SourceFilePosition in distage-testkit-scalatest instead of full CodePosition (#1084)
- ⚡️ Update zio to 1.0.0-RC20 (#1082)
- distage – Transparent and debuggable Dependency Injection framework for pure FP Scala,
✅ 2. distage-testkit – Hyper-pragmatic pure FP Test framework. Shares heavy resources globally across all test suites; lets you easily swap implementations of component; uses your effect type for parallelism.
🐳 3. distage-framework-docker – A distage extension for using docker containers in tests or for local application runs, comes with example Postgres, Cassandra, Kafka & DynamoDB containers.
🔊 4. LogStage – Automatic structural logs from Scala string interpolations,
💅 5. BIO - A typeclass hierarchy for tagless final style with Bifunctor and Trifunctor effect types. Focused on ergonomics and ease of use with zero boilerplate.
🚚 6. izumi-reflect (moved to zio/izumi-reflect) - Portable, lightweight and kind-polymorphic alternative to