Skip to content

Releases: 7mind/izumi

1.2.12

13 Aug 17:59
Compare
Choose a tag to compare

breaking changes

  • #1968 Implement locator-private bindings by @pshirshov (#2162)
    • THIS CHANGE BREAKS COMPATIBILITY WITH PREVIOUS VERSIONS if you have any custom bootstrap modules in your code.

      • Most likely you'll have to mark your custom bindings in BootstrapModuleDefs as exposed to fix compatibility
    • Locator-private instances cannot be seen by inherited locators.
      There are 3 supported modes:

      1. All the bindings are public unless explicitly marked as confined (the old behavior, kept as the default one)
      2. All the bindings are private unless explicitly marked as exposed
      3. Only GC roots are public

      For bootstrap injectors the default behavior is (3). Also, from now on bootstrap planning uses predefined set of roots instead of Roots.Everything, so bootstrap contexts too are now subjected to garbage collection.

      All the bootstrap bindings which you need to be available in the downstream locators must be explicitly marked as exposed. Since there is no way to explicitly define GC roots for the bootstrap injector, it considers all exposed bindings in bootstrap modules to be roots.

new features

  • logstage: Line-level logging configuration by @pshirshov (#2153)
    • Define log levels for specific lines, such as izumi.logstage.sink.ExampleService.start:26,27
  • distage-framework: Platform packages by @pshirshov (#2160)

fixes

  • distage-testkit: Fix unmemoized weak elements of unmemoized sets being forcibly shared across tests by @neko-kai (#2163)
  • distage-extension-config: Fix config merge order, add test by @neko-kai (#2161)
  • logstage: Handle null logger name for acceptable check by @cholmes-axoni (#2145)

other

  • Extract FileLockMutex into fundamentals-bio by @neko-kai (#2158)
  • Downgrade to 3.3.4-RC1 to support Scala 3.3 LTS by @neko-kai (#2154)
  • Speed up Scala 3 macros, no longer create anonymous classes when expanding macros

Full Changelog: v1.2.11...v1.2.12

1.2.11

24 Jun 21:02
Compare
Choose a tag to compare
  • Add ConfigModuleDefNoMeta, a variant of ConfigModuleDef without DIConfigMeta generation by @neko-kai (#2142)
  • BIO: Add FiberLocal2 and FiberRef2 by @neko-kai (#2143)

Full Changelog: v1.2.10...v1.2.11

1.2.10

18 Jun 16:16
Compare
Choose a tag to compare
  • Hotfix: fix a regression in 1.2.9 where ConfTags with similar paths were lost when module was included by @neko-kai (#2136)

Full Changelog: v1.2.9...v1.2.10

1.2.9

13 Jun 20:44
Compare
Choose a tag to compare

breaking changes

  • Extracted Functoid into a separate artifact fundamentals-functoid, it can now be used on its own, outside of distage by @pshirshov (#2106)
  • Implement Scala 3 recompilation token by @neko-kai (#1805)
    • Due to Scala 3 bug scala/scala3#19745 export alias distage.plugins.PluginDef is disabled on Scala 3. Use izumi.distage.plugins.PluginDef
  • Apply outer module's tags to included module by default. Deprecate includeApplyTags by @neko-kai (#2122)

new features

other

  • BIO: Update guaranteeExceptOnInterrupt to use Exit.Uninterrupted by @neko-kai (#2098)
  • Fix TrivialLogger ignoring set DebugProperties by @neko-kai (#2127)

Full Changelog: v1.2.8...v1.2.9

1.2.8

09 Apr 19:01
Compare
Choose a tag to compare

Full Changelog: v1.2.7...v1.2.8

1.2.7

18 Mar 22:27
Compare
Choose a tag to compare

breaking changes

  • distage-testkit: Set default test configBaseName to test, instead of deriving it from package name by @neko-kai (#2068)
  • BIO: Make sandbox type more specific - Exit.Interruption cannot be returned from sandbox/sandboxExit by @neko-kai in #2084

other

  • Fix config writer losing fields in map types by @neko-kai (#2085)
  • Fix unset POSTGRES_USER and POSTGRES_DB in PostgresFlyWayDocker by @neko-kai (#2086)
  • Fix Activation-specific configs being lost in config writer by @pshirshov (#2087)
  • Add Tags for F to DefaultModules by @neko-kai (#1551)

Full Changelog: v1.2.6...v1.2.7

1.2.6

07 Mar 14:43
Compare
Choose a tag to compare
  • Update to Scala 3.4.0, memoization fixed on Scala 3 with update by @neko-kai (#2082)
  • Fix Bug: ConfigWriter minimizer does not omit nested unrequired nodes. by @pshirshov (#2058)
  • distage-config: add field names and structure metadata to auto-derived config codecs by @neko-kai (#2065)
  • Fix broken MacroParameters on Scala 3 by @neko-kai (#2066)

Full Changelog: v1.2.5...v1.2.6

1.2.5

19 Jan 20:22
Compare
Choose a tag to compare

Full Changelog: v1.2.4...v1.2.5

1.2.4

19 Jan 18:57
Compare
Choose a tag to compare
  • Fix testkit on sbt launching tests defined in other test modules when depending on another test artifact by @neko-kai (#2052)
  • Better time APIs: deprecated effectful code in IzTime, zone can be provided to Clock1 calls, better accuracy logic by @pshirshov (#2051)
  • Wip/config refactoring 2 by @pshirshov (#2044)

Full Changelog: v1.2.3...v1.2.4

1.2.3

21 Nov 22:45
Compare
Choose a tag to compare

Full Changelog: v1.2.2...v1.2.3