Skip to content

Releases: pointfreeco/swift-composable-architecture

1.9.1

01 Mar 17:43
687e277
Compare
Choose a tag to compare

What's Changed

  • Fixed: Addressed a regression introduced in 1.9.0 in which a case key path could become ambiguous if an action case name and a bindable action key path name overlap (#2875).
  • Infrastructure: Add step for making enum reducer state equatable in tutorial (#2873).
  • Infrastructure: Fixed a small typo on 1.9 migration guide (thank @takehilo, #2876).

Full Changelog: 1.9.0...1.9.1

1.9.0

29 Feb 04:30
Compare
Choose a tag to compare

What's Changed

See Migrating to 1.9 for more details.

  • Added: New versions of TestStore.send that accept case key paths (thanks @scogeo, #2681; #2868).
  • Added Reducer.dependency(value), for overriding a reducer's dependency using a singleton value of a type (#2863).
  • Fixed: Improve Store diagnostics for deriving bindings (#2793).
  • Fixed: Avoid erroneous perception checks when ViewStores are initialized in a view that doesn't use WithPerceptionTracking (#2849).
  • Fixed: Support #if branching in @ObservableState and enum @Reducers (#2800).
  • Infrastructure: Tree navigation documentation fixes (thanks @imjn, #2837); presentation reducer documentation fixes (thanks @ozumin, #2853).
  • Infrastructure: Improve tutorial diffing (thanks @oka-yuji, #2844).
  • Infrastructure: Expand release build test coverage (#2856).
  • Infrastructure: Document gotcha with macros and previews (#2855).

New Contributors

Full Changelog: 1.8.2...1.9.0

1.8.2

19 Feb 18:30
856f9b8
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 1.8.1...1.8.2

1.8.1

19 Feb 01:09
da1cd10
Compare
Choose a tag to compare

What's Changed

  • Infrastructure: Document @Reducer(state: .equatable) in the migration guide #2796
  • Infrastructure: Adopt complete concurrency and fix a few warnings #2787
  • Fixed: [macro] Make _$id and _$willModify() public by @freak4pc in #2789
  • Fixed: Typo by @hmhv in #2797
  • Infrastructure: A small change on migration guide 1.8 by @takehilo in #2799
  • Infrastructure: Update links to documentation by @d-date in #2801
  • Infrastructure: Replace usage of 'viewStore' with 'store' in UIKit code by @juliensagot in #2820
  • Fixed Fix macro compiler bug in release mode #2827

Full Changelog: 1.8.0...1.8.1

1.8.0

12 Feb 17:55
Compare
Choose a tag to compare

What's Changed

See Migrating to 1.8 for more details.

  • Added: New @Reducer macro features (#2795).

    The @Reducer macro has been enhanced to streamline usage and simplify some common patterns:

    • When left undefined, the @Reducer will now define default implementations of State, Action, and body. This means stubbing a feature is as simple as @Reducer struct Feature {}.

    • @Reducer can now be used with enums to simplify the boilerplate associated with "destination" and "path" reducers.

    See the 1.8 migration guide for more information on how to use these APIs.

  • Fixed: Propagate @ViewAction macro availability (#2785).

  • Fixed: Properly tag nested observable enums so that changes to non-observable cases are better observed (#2786).

  • Infrastructure: Fix typo in migration guide 1.6 (thanks @takehilo, #2779); better document explicit id with scoped ForEach (#2784); Fix typo in the 1.7 migration guide (thanks @yaslab, #2780; thanks @Ryu0118, #2790);

Full Changelog: 1.7.2...1.8.0

New Contributors

Full Changelog: 1.7.3...1.8.0

1.7.3

05 Feb 20:33
f815e76
Compare
Choose a tag to compare

What's Changed

  • Fixed: Fix navigationDestinationWrapper in docs in #2765
  • Infrastructure: Clean up examples in #2754
  • Infrastructure: Simplify Stack Navigation Demo in #2758
  • Infrastructure: Some cleanup in #2759
  • Infrastructure: remove invalid newlines by @hmhv in #2763
  • Infrastructure: Update warning for uncached stores in #2764
  • Infrastructure: Add TCAComposer to Companion libraries. by @scogeo in #2768

Full Changelog: 1.7.2...1.7.3

1.7.2

31 Jan 20:09
96ce68d
Compare
Choose a tag to compare

What's Changed

  • Fixed: A visionOS build regression introduced in 1.7.1 has been fixed (thanks @peterbohac, #2746).
  • Fixed: visionOS-related warnings around observation have been fixed (#2752).
  • Infrastructure: CI now runs against visionOS (#2747).

New Contributors

Full Changelog: 1.7.1...1.7.2

1.7.1

30 Jan 19:54
Compare
Choose a tag to compare

What's Changed

  • Fixed: The Composable Architecture's SwiftUI Binding helpers should better preserve SwiftUI animation and transaction information (#2740). Previously, animations could be lost in certain situations.
  • Fixed: @ObservableState now supports the package access modifier (thanks @nnsnodnb, #2741).
  • Deprecated: Reducer.onChange(of:removeDuplicates:) has been deprecated (#2744). The removeDuplicates argument put strain on the compiler that could cause reducers to not compile in time. Migration strategy: use an explicit wrapper type that is Equatable, instead.
  • Infrastructure: Migrating to 1.7 fixes (thanks @acosmicflamingo, #2732; thanks @bricklife, #2736; thanks @zvona031, #2738; thanks @shgew; #2743); README fix (thanks @yimajo, #2734).

New Contributors

Full Changelog: 1.7.0...1.7.1

1.7.0

28 Jan 21:08
30ab89d
Compare
Choose a tag to compare

What's Changed

See Migrating to 1.7 for more details.

  • Added: Observation support (#2593), which both streamlines and soft-deprecates many concepts in the Composable Architecture. See the 1.7 migration guide for more information on how to apply these updates to your applications.
  • Infrastructure: Add CI for Swift 5.7.1 (#2701).
  • Infrastructure: Add docs for testing StackAction's case path subscript (thanks @lukeredpath, #2704).
  • Infrastructure: Fixed examples CI (#2715).
  • Infrastructure: Fixed TestStore.assert docs (#2720).
  • Infrastructure: Use XCTExpectFailure from XCTestDynamicOverlay (#2721).
  • Infrastructure: Documentation typo fix (thanks @JonCox, #2723).
  • Infrastructure: Fixed concurrency docs (thanks @hmhv, #2726).
  • Infrastructure: Fixed composing features tutorial (thanks @bricklife, #2698; thanks @Kyome22, #2727).
  • Infrastructure: Fixed 1.7 migration guide (thanks @Ryu0118, #2731).

New Contributors

Full Changelog: 1.6.0...1.7.0

1.6.0

08 Jan 18:43
Compare
Choose a tag to compare

What's Changed

See Migrating to 1.6 for more details.

  • Added: TestStore.receive(\.action, payload) for asserting against the payload of an action without requiring the action itself be Equatable (#2669; #2691)
  • Fixed: It was possible for ViewStores to ping their objectWillChange publisher during a body computation, triggering a SwiftUI warning. This has been fixed (#2688).
  • Fixed: @Reducer macro no longer automatically applies @CasePathable macro to enums with explicit conformance (thanks @scogeo, #2685).
  • Fixed: The prepareDependencies closure is now only performed a single time when creating a store, not every single time an action is received (#2695).
  • Fixed: A retain cycle in PresentationModifier has been fixed (#2697).
  • Performance: Clean up parent/child store invalidation checks (#2674).
  • Infrastructure: Fix package build in 5.7 for SPI (#2675; thanks @finestructure, #2679).
  • Infrastructure: Typo fix (thanks @tomokisun, #2678).
  • Infrastructure: Add documentation around new store scoping characteristics (#2676).
  • Infrastructure: Prevent unnecessary tutorial diffs (thanks @bricklife, #2692).
  • Infrastructure: Tutorial fixes (#2693).
  • Infrastructure : Clean up shared state case study (#2696).

New Contributors

Full Changelog: 1.5.6...1.6.0