Konstantin
04/22/2024, 2:57 PMInstanceFactory
and code around it, specifically:
1. Changing upper type of generic T in InstanceFactory
to Any
- this prevents module definitions from returning null, especially when SingleInstanceFactory
already uses null to check whether it was initialized;
2. Changing synchronization in SingleInstanceFactory
and SingleInstanceFactory
- get
and drop
aren't covered by synchronization, so theoretically race condition can happen;
3. ScopedInstanceFactory::dropAll
does not call onClose callback, is this an intended behavior?
4. Remove isCreated
method from InstanceFactory
- it's really has to be used only in tests (it's not as common behavior of inheriting classes) and we can easily remove it;
5. Inline KoinPlatformTools::synchronized
at least inside common module it can be inlined;
6. Add synchronization to `get`/`getOrNull` methods of native:`MutableGlobalContext` and jvm:`GlobalContext` .Konstantin
04/26/2024, 4:16 PMarnaud.giuliani
04/29/2024, 8:47 AMarnaud.giuliani
04/29/2024, 8:47 AMKonstantin
05/04/2024, 3:33 PMarnaud.giuliani
05/08/2024, 7:52 AMarnaud.giuliani
05/08/2024, 7:53 AMarnaud.giuliani
05/08/2024, 7:53 AM