1.2.12
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
BootstrapModuleDef
s asexposed
to fix compatibility
- Most likely you'll have to mark your custom bindings in
-
Locator-private instances cannot be seen by inherited locators.
There are 3 supported modes:- All the bindings are public unless explicitly marked as
confined
(the old behavior, kept as the default one) - All the bindings are private unless explicitly marked as
exposed
- 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 allexposed
bindings in bootstrap modules to be roots. - All the bindings are public unless explicitly marked as
-
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
- Define log levels for specific lines, such as
- 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