Skip to content

Releases: hmlongco/Factory

Release 2.4.3

26 Nov 16:38
Compare
Choose a tag to compare
  • Conditional code support to fix isolated(any) issue - Issue #250

Release 2.4.2

26 Nov 00:32
Compare
Choose a tag to compare
  • Adds isolated(any) in order to properly resolve actor-isolated Factory's

Release 2.4.1

21 Oct 14:48
Compare
Choose a tag to compare
  • Adds DynamicProperty wrapper - PR #220

Release 2.4.0

10 Oct 18:24
Compare
Choose a tag to compare
  • Updated to properly manage new concurrency warnings and errors in Xcode 16 and Swift 6
  • Updated documentation in light of Xcode 16's new Swift Testing framework
  • Fixes issue with Promised generating errors during Previews

Release 2.3.2

17 Mar 21:22
Compare
Choose a tag to compare
  • Project updated CocoaPods to 1.15.2
  • Public aliases for masked Factory objects - Issue #154
  • Fix key issue when building xcframeworks - Issue #173
  • Add VisionOS target to package.swift - PR #186
  • Add Privacy Manifest file - PR #180
  • Update README to include example for use with Swift's new Observable macro - PR #172

Release 2.3.1

07 Oct 14:20
Compare
Choose a tag to compare
  • Fix for SpinLock on Linux
  • Add action to test linux - Issue #113
  • Add various aliases to avoid external naming conflicts - Issue #154

Release 2.3.0

30 Sep 05:51
Compare
Choose a tag to compare
  • Dramatic performance enhancements:
    Up to 200% faster in debug builds!
    Up to 400% faster in production builds!
  • Fixed bug where registering a context in the Factory definition cleared the scope cache. - Issue #146
    Note that issue #146 could be a breaking change if your code attempts to replace a scoped context registration.
    Add a manual reset.
    Container.shared.myService.reset(.scope).onTest { MockService() }
    See The Factory Wins section in the Modifiers documentation for more on this.
  • Update trace output to also show actual instance type

Release 2.2.0

01 Jul 23:21
061b3af
Compare
Choose a tag to compare

2.2.0

  • Converts "shared" container variables from var to let. - Issue #111
  • Add convenience reset() function to container. - Issue #111
    Note that issue #111 could be a breaking change if your code attempts to "replace" a shared container. Do reset instead.
    Container.shared.reset() // Do this...
    Container.shared = Container() // Not this...
  • Removes @mainactor from @InjectedObject property wrapper variables. - Issue #107
  • Fix registering a new context doesn't clear existing cache as did register. - Issue #114
  • Fix FactoryContext not public. - Issue #116
  • Update Modular Application documentation. - Issue #121
  • Adds $service.resolvedOrNil() function to LazyInjected and WeakLazyInjected. - Issue #122
  • Adds keypath-based global resolutions functions for shared containers.
  • Removes func register(scope:factory:) function deprecated in 2.1
    Use container.service.scope(.cached).register { Service() } instead.

Release 2.1.5

30 Apr 14:50
Compare
Choose a tag to compare
  • Adds TimeToLive to scoped instances.

Release 2.1.4

15 Apr 16:10
1276137
Compare
Choose a tag to compare
  • Fix singletons in multiple modules keyed with same type and name. Issue - #99
  • Fix building on Linux. Issue - #100