Brandon Williams
ee008e1e81
Fix warnings from existential and deprecation ( #3800 )
...
* Use explicit 'any' for existential.
* Fix deprecation warning.
2025-10-17 12:07:24 -07:00
Stephen Celis
2ef7c09b0b
Update reportIssue formatting to avoid console errors ( #3795 )
...
When a non-ASCII character is fed to `reportIssue`, the following is
output to the console:
```
<decode: bad range for [%@] got [offs:330 len:1073 within:0]>
```
This causes a lot of confusion for folks, so let's update the formatting
to avoid this.
2025-10-16 10:35:05 -05:00
Arsatius Regler
a851f820f3
Add support for naming tasks in .run effects ( #3784 )
...
* Add support for naming tasks in .run effects
* Cleanup
* fix
* typo
* wip
* wip
---------
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
2025-09-26 18:21:37 -07:00
Brandon Williams
56389302ca
Better way to detect cancellation. ( #3755 )
2025-08-22 13:42:53 -07:00
mbrandonw
fb822844b2
Run swift-format
2024-11-19 16:11:53 +00:00
Brandon Williams
69011b636f
Add migration guide for 1.16. ( #3491 )
...
* Add migration guide for 1.16.
* Update README.md
---------
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
2024-11-19 11:04:44 -05:00
Stephen Celis
fc5cbeec88
Infrastructure: Address concurrency warnings in tests ( #3438 )
...
* Infrastructure: Address concurrency warnings in tests
* wip
---------
Co-authored-by: Brandon Williams <mbrandonw@hey.com >
2024-10-15 10:03:23 -07:00
Stephen Celis
f9f3e3a4cb
Use AnyHashableSendable from Concurrency Extras ( #3428 )
...
* Use `AnyHashableSendable` from Concurrency Extras
Rather than use an ad hoc implementation with an `AnyHashable` under the
hood that may not be concurrency safe, let's adopt the helper we added
to the Concurrency Extras packages.
* fix
* wip
* wip
2024-10-08 13:08:38 -07:00
Mason Kim
71cfb1ef2d
Existential any to protocol for Swift 6 ( #3370 )
...
* Apply existential any to protocol for Swift 6
* Update Package@swift-6.0.swift
* Update Package.swift
* Apply any to Macro.Type
* Apply any for the rest
* Applying the any keyword internally for typealias in a _KeyPath
* Undoing accidental syntax
---------
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
Co-authored-by: Stephen Celis <stephen.celis@gmail.com >
2024-09-10 08:01:24 -07:00
Stephen Celis
cad094a6b2
Sendable miscellany: effects, publishers, etc. ( #3317 )
...
* `@preconcurrency @MainActor` isolation of `Store`
* Remove unneeded `@MainActor`s
* Remove thread checking code
* Remove unneeded `@MainActor`s
* Swift 5.10 compatibility fixes
* wip
* More 5.10 fixes
* wip
* fixes
* wip
* wip
* up the timeout
* wip
* Fixes
* wip
* wip
* wip
* wip
* wip
* Fix binding action sendability
* Address more binding action sendability
* more bindable action sendability
* more bindable action warnings
* fix
* Make `Effect.map` sendable
* Make `Effect.actions` sendable
Also moves it to the test target, since it's only really used there.
* Make `AnyPublisher.create` sendable
* Make `_SynthesizedConformance` sendable
* Avoid non-sendable captures of `self` in reducers
We can capture the sendable case path instead.
* Make `ViewStore.yield` sendable
* Address internal sendability warning
* fix
* Another small warning
---------
Co-authored-by: Brandon Williams <mbrandonw@hey.com >
2024-08-29 13:47:32 -07:00
MaraMincho
07e5b3340a
Edit Effect.swift annotations ( #3299 )
2024-08-23 08:41:45 -07:00
Brandon Williams
3a02c5e9fe
Fix a bunch of DocC references. ( #3287 )
...
* Fix a bunch of DocC references.
* wip
* doc fix
* issue message fix
* swift-navigation 2.0.5
2024-08-15 13:02:49 -04:00
Stephen Celis
3e830b575a
Swift Testing support ( #3229 )
...
* wip
* wip
* Update Testing.md
* wip
* wip
* wip
* wip
* wip:
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* disable library evolution
* bump
* wip
---------
Co-authored-by: Brandon Williams <mbrandonw@hey.com >
2024-07-22 17:52:04 -07:00
Stephen Celis
bc8f27b1d0
Swift Language Support: Drop <5.9 ( #3185 )
...
* Swift Language Support: Drop <5.9
* wip
* wip
* wip
* wip
* wip
2024-06-19 07:40:15 -07:00
Won Heo (Woody)
179240217d
Enable customDump only in debug mode ( #3058 )
...
* Enable customDump only in debug mode
* Change customDump to customDumping String init
2024-05-09 13:24:50 -07:00
Stephen Celis
2c3453cb79
Some cleanup ( #2759 )
...
* Some cleanup
- `if/guard let x = x` -> `if/guard let x`
- Remove unneeded `self` from a few demos
- Fix up some presentation logic in TicTacToe
* Update Examples/TicTacToe/tic-tac-toe/Sources/LoginUIKit/LoginViewController.swift
* wip
* wip
* wip
2024-02-01 15:43:52 -08:00
Jaesung
c8c7817014
[FIX] Fixed API description to use recent name: EffectTask -> Effect ( #2389 )
2023-08-21 13:30:48 -04:00
Stephen Celis
195284b94b
The Composable Architecture 1.0 ( #2318 )
...
* docs
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* Fix invalid states count for 3 optionals and typos (#2094 )
* wip
* wip
* more dismisseffect docs
* fixed some references
* navigation doc corrections
* more nav docs
* fix cancellation tests in release mode
* wrap some tests in #if DEBUG since they are testing expected failures
* update UUIDs in tests to use shorter initializer
* fixed a todo
* wip
* fix merge errors
* wip
* fix
* wip
* wip
* fixing a bunch of todos
* get rid of rawvalue in StackElementID
* more todos
* NavLinkStore docs
* fix swift 5.6 stuff
* fix some standups tests
* fix
* clean up
* docs fix
* fixes
* wip
* 5.6 fix
* wip
* wip
* dont parallelize tests
* updated demo readmes
* wip
* Use ObservedObject instead of StateObject for alert/dialog modifiers.
* integration tests for bad dismissal behavior
* check for runtime warnings in every integration test
* wip
* wip
* wip
* fix
* wip
* wip
* wip
* wip
* wip
* wip
* Drop a bunch of Hashables.
* some nav bug fixes
* wip
* wip
* wip
* fix
* fix
* wip
* wip
* Simplify recording test.
* add concurrent async test
* fix
* wip
* Refact how detail dismisses itself.
* fix
* 5.6 fix
* wip
* wip
* wip
* wip
* Add TestStore.assert.
* Revert "Add TestStore.assert."
This reverts commit a892cccc66 .
* add Ukrainian Readme.md (#2121 )
* Add TestStore.assert. (#2123 )
* Add TestStore.assert.
* wip
* Update Sources/ComposableArchitecture/TestStore.swift
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
* Update Sources/ComposableArchitecture/Documentation.docc/Extensions/TestStore.md
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
* fix tests
---------
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
* Run swift-format
* push for store.finish and presentation
* wip
* move docs around
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* Add case subscripts
* wip
* wip
* wip
* 5.7-only
* wip
* wip
* wip
* wip
* fix
* revert store.finish task cancellation
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* add test for presentation scope
* wip
* wip
* wip
* wip
* wip
* cleanup
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* Rename ReducerProtocol.swift to Reducer.swift (#2206 )
* Hard-deprecate old SwitchStore initializers/overloads
* wip
* wip
* Resolve CaseStudies crash (#2258 )
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* Bump timeout for CI
* wip
* Remove old deprecations
* Simplify test store
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* images for tutorials
* wip
* wip
* Remove deprecated alert APIs
* Bump dependencies
* wip
---------
Co-authored-by: Brandon Williams <mbrandonw@hey.com >
Co-authored-by: 유재호 <y73447jh@gmail.com >
Co-authored-by: Dmytro <barabashdmyto@gmail.com >
Co-authored-by: Brandon Williams <135203+mbrandonw@users.noreply.github.com >
Co-authored-by: mbrandonw <mbrandonw@users.noreply.github.com >
2023-07-30 14:58:40 -07:00
Brandon Williams
2c93195c23
Prerelease 1.0 ( #1929 )
...
* Converted voice memos back to identified array
* update deps
* update docs for DismissEffect
* wip
* Add Sendable conformance to PresentationState (#2086 )
* wip
* swift-format
* wip
* wip
* fix some warnings
* docs
* wip
* wip
* Catch some typos in Articles (#2088 )
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* docs
* wip
* wip
* docs
* wip
* wip
* wip
* wip
* docs
* docs
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* Fix invalid states count for 3 optionals and typos (#2094 )
* wip
* wip
* more dismisseffect docs
* fixed some references
* navigation doc corrections
* more nav docs
* fix cancellation tests in release mode
* wrap some tests in #if DEBUG since they are testing expected failures
* update UUIDs in tests to use shorter initializer
* fixed a todo
* wip
* fix merge errors
* wip
* fix
* wip
* wip
* fixing a bunch of todos
* get rid of rawvalue in StackElementID
* more todos
* NavLinkStore docs
* fix swift 5.6 stuff
* fix some standups tests
* fix
* clean up
* docs fix
* fixes
* wip
* 5.6 fix
* wip
* wip
* dont parallelize tests
* updated demo readmes
* wip
* Use ObservedObject instead of StateObject for alert/dialog modifiers.
* integration tests for bad dismissal behavior
* check for runtime warnings in every integration test
* wip
* wip
* wip
* fix
* wip
* wip
* wip
* wip
* wip
* wip
* Drop a bunch of Hashables.
* some nav bug fixes
* wip
* wip
* wip
* fix
* fix
* wip
* wip
* Simplify recording test.
* add concurrent async test
* fix
* wip
* Refact how detail dismisses itself.
* fix
* 5.6 fix
* wip
* wip
* wip
* wip
* Add TestStore.assert.
* Revert "Add TestStore.assert."
This reverts commit a892cccc66 .
* add Ukrainian Readme.md (#2121 )
* Add TestStore.assert. (#2123 )
* Add TestStore.assert.
* wip
* Update Sources/ComposableArchitecture/TestStore.swift
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
* Update Sources/ComposableArchitecture/Documentation.docc/Extensions/TestStore.md
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
* fix tests
---------
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
* Run swift-format
* push for store.finish and presentation
* wip
* move docs around
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* Add case subscripts
* wip
* wip
* wip
* 5.7-only
* wip
* wip
* wip
* wip
* fix
* revert store.finish task cancellation
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* add test for presentation scope
* wip
* wip
* wip
* wip
* wip
* cleanup
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* Rename ReducerProtocol.swift to Reducer.swift (#2206 )
* Hard-deprecate old SwitchStore initializers/overloads
* wip
* wip
* Resolve CaseStudies crash (#2258 )
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* Bump timeout for CI
* wip
* wip
---------
Co-authored-by: Jackson Utsch <jutechs@gmail.com >
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
Co-authored-by: 유재호 <y73447jh@gmail.com >
Co-authored-by: Dmytro <barabashdmyto@gmail.com >
Co-authored-by: mbrandonw <mbrandonw@users.noreply.github.com >
2023-07-27 17:35:07 -07:00
Stephen Celis
faadf6a780
Add named closure arguments ( #2295 )
...
* Add named closure arguments
Better for documentation and auto-fill.
* wip
2023-07-16 15:27:02 -07:00
Stephen Celis
b2f3ba5cdb
Add EffectOf ( #2237 )
...
Joins `ReducerOf` and `StoreOf` for simplifying some call sites.
2023-06-28 11:06:22 -07:00
Stephen Celis
b6efb27f69
Test store changes ( #2236 )
...
* wip
* Minor test store improvements
2023-06-28 11:06:06 -07:00
Stephen Celis
c432a76b5b
Navigation ( #1945 )
...
* wip
* fix
* wip
* wip
* move
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* Fix
* wip
* wip
* Renamed action to onTap in NavigationLinkStore (#2043 )
Renamed the `action` parameter to mirror other inits and differentiate itself from `action fromDestinationAction`
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* Tie view identity to stack element identity
* Tie item identity to case
* wip
* wip
* cleanup
* fix
* fix
* Add warning to nav link
* wip
* wip
* Rename FullscreenCover.swift to FullScreenCover.swift (#2062 )
* wip
* fix isDetailLink on non-iOS platforms
* Correct some comments in Effect.swift (#2081 )
* add integration tests for showing alert/dialog from alert/dialog.
* copy StackElementIDGenerator dependency before running TestStore receive closure.
* Removed some unneeded delegate actions.
* wip
* clean up
* lots of clean up
* Converted voice memos back to identified array
* update deps
* update docs for DismissEffect
* wip
* Add Sendable conformance to PresentationState (#2086 )
* wip
* swift-format
* wip
* wip
* docs
* wip
* wip
* Catch some typos in Articles (#2088 )
* wip
* wip
* wip
* wip
* wip
* docs
* wip
* wip
* docs
* wip
* wip
* wip
* wip
* docs
* docs
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* Fix invalid states count for 3 optionals and typos (#2094 )
* wip
* wip
* more dismisseffect docs
* fixed some references
* navigation doc corrections
* more nav docs
* fix cancellation tests in release mode
* wrap some tests in #if DEBUG since they are testing expected failures
* update UUIDs in tests to use shorter initializer
* fixed a todo
* wip
* fix merge errors
* wip
* fix
* wip
* wip
* fixing a bunch of todos
* get rid of rawvalue in StackElementID
* more todos
* NavLinkStore docs
* fix swift 5.6 stuff
* fix some standups tests
* fix
* clean up
* docs fix
* fixes
* wip
* 5.6 fix
* wip
* wip
* dont parallelize tests
* updated demo readmes
* wip
* Use ObservedObject instead of StateObject for alert/dialog modifiers.
* integration tests for bad dismissal behavior
* check for runtime warnings in every integration test
* wip
* wip
* fix
* wip
* wip
* wip
* wip
* wip
* Drop a bunch of Hashables.
* some nav bug fixes
* wip
* wip
* wip
* fix
* fix
* wip
* wip
* Simplify recording test.
* add concurrent async test
* fix
* wip
* Refact how detail dismisses itself.
* fix
* 5.6 fix
* wip
* wip
* Add TestStore.assert.
* Revert "Add TestStore.assert."
This reverts commit a892cccc66 .
* add Ukrainian Readme.md (#2121 )
* Add TestStore.assert. (#2123 )
* Add TestStore.assert.
* wip
* Update Sources/ComposableArchitecture/TestStore.swift
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
* Update Sources/ComposableArchitecture/Documentation.docc/Extensions/TestStore.md
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
* fix tests
---------
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
* Run swift-format
* push for store.finish and presentation
* move docs around
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* Add case subscripts
* wip
* wip
* 5.7-only
* wip
* wip
* wip
* wip
* revert store.finish task cancellation
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* add test for presentation scope
* wip
* wip
* wip
* wip
* wip
* cleanup
* updated presentation scope test
* sytnax update
* clean up
* fix test
* wip
* wip
* wip
* wip
* wip
---------
Co-authored-by: Brandon Williams <mbrandonw@hey.com >
Co-authored-by: Martin Václavík <mvaclavik96@icloud.com >
Co-authored-by: 유재호 <y73447jh@gmail.com >
Co-authored-by: Jackson Utsch <jutechs@gmail.com >
Co-authored-by: Dmytro <barabashdmyto@gmail.com >
Co-authored-by: Brandon Williams <135203+mbrandonw@users.noreply.github.com >
Co-authored-by: mbrandonw <mbrandonw@users.noreply.github.com >
2023-05-30 12:22:00 -04:00
Brandon Williams
3688b3d485
Make Send sendable ( #2112 )
...
* Make Send wrap a sendable closure.
* Move Send under the effects docs.
* Fixed a bunch of doc references.
* wip
* wip
* fix
---------
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
2023-05-16 16:01:21 -04:00
mbrandonw
2298702e02
Run swift-format
2023-05-15 21:12:17 +00:00
Brandon Williams
28ba78ccfd
"Meet the Composable Architecture" tutorial ( #2107 )
...
* A 'meet TCA' tutorial
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* static let instead of state
* wip
* wip
* fix swift 5.6
* small fixes
* fixes
* wip
* typo fixes
* small fixes
---------
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
2023-05-15 17:09:22 -04:00
Stephen Celis
83efc53258
Remove outdated docs
2023-05-12 14:24:10 -07:00
Stephen Celis
5d4f96ddbe
Soft-deprecate Effect.task and Effect.fireAndForget ( #2099 )
...
* Soft-deprecate `Effect.task` and `Effect.fireAndForget`
See https://github.com/pointfreeco/swift-composable-architecture/discussions/1520
* wip
* wip
* wip
2023-05-12 09:13:37 -07:00
Stephen Celis
14c11ade59
Don't pass file and line to runtime warnings ( #2059 )
...
Runtime warnings are not test helpers that should propagate XCTest
failures to the original file/line, so we should always omit that
information. This leads to better test failures that show up alongside
the test, not buried in application code.
2023-04-25 11:40:02 -07:00
Thomas Grapperon
083ecd5af7
Rollback Effect<Action>.Send to a top level EffectSend<Action> ( #1930 )
...
* Rollback to a top level `Send`
* Rename `EffectSend` as `Send`
* Add a `Sendable` typealias to `ReducerProtocol`
* Revert "Add a `Sendable` typealias to `ReducerProtocol`"
This reverts commit d808d3c916 .
---------
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
2023-03-05 17:24:37 -08:00
Thomas Grapperon
91e2bea845
Nest Send<Action> as Effect<Action>.Send ( #1911 )
2023-02-17 09:20:20 -08:00
Eimantas
c1a141146d
Fix typo in Effect deprecation notice ( #1896 )
2023-02-09 07:03:49 -08:00
Matt Girardi
74c7a6fdf3
Fix documentation ( #1893 )
...
Fix a tiny typo
2023-02-07 11:39:52 -08:00
Stephen Celis
e294b24edb
Add Effect.send ( #1859 )
...
* Add `Effect.send`
With the `Effect<Action, Failure>` -> `Effect<Action>` migration,
`Effect.init(value:)` and `Effect.init(error:)` no longer make sense. We
will be retiring the latter some time in the future, so let's also get a
head start and rename the former to `Effect.send`.
For now it will call `Effect.init(value:)` under the hood, but in the
future we will want a non-Combine-driven way of running synchronous
effects.
* format fix
* wip
* fix
* wip
* wip
2023-01-23 16:41:01 -08:00
Stephen Celis
c5a7d1be9a
Add prepareDependencies to Store.init ( #1844 )
...
* Add `prepareDependencies` to `Store.init`:wq
* wip
* test and doc
* update TTT previews to use new trailing closure style"
* wip
Co-authored-by: Brandon Williams <mbrandonw@hey.com >
2023-01-17 20:08:52 -08:00
mbrandonw
fd9ce8d14e
Run swift-format
2023-01-18 04:07:46 +00:00
Andrey Plotnikov
b4e6e83c98
Add support for SwiftUI withTransaction API ( #1824 )
...
* Adds withTransaction extension
* reduce code
* fix typo
* Adds transaction support to Send and ViewStore.send
* Update Sources/ComposableArchitecture/Effect.swift
* Update Sources/ComposableArchitecture/ViewStore.swift
Co-authored-by: Stephen Celis <stephen.celis@gmail.com >
2023-01-17 19:05:29 -08:00
Stephen Celis
9e5221a88e
Fix EffectTask deprecation
2023-01-17 10:17:24 -08:00
Kenta Aikawa
0c99258494
Add deprecated ( #1822 )
2023-01-11 11:33:45 -05:00
stephencelis
8f356ef0a1
Run swift-format
2023-01-09 16:21:04 +00:00
Stephen Celis
9b5a510174
Depend on swift-dependencies ( #1808 )
...
Co-authored-by: Brandon Williams <mbrandonw@hey.com >
2023-01-09 11:08:23 -05:00
mbrandonw
ce196d7c15
Run swift-format
2023-01-05 00:40:12 +00:00
Brandon Williams
4266744f04
Soft-deprecate EffectPublisher ( #1791 )
...
* Soft-deprecate EffectPublisher in favor of EffectTask.
* wip
2023-01-04 15:54:27 -08:00
Stephen Celis
32f967c0b8
Deprecate 'Effect' for 'EffectTask' ( #1788 )
...
* Deprecate 'Effect' for 'EffectTask'
This is to allow reclaiming 'Effect' at a later time without the
'Failure' generic in the near future.
* wip
2023-01-04 14:55:52 -05:00
Brandon Williams
4ece153d6b
Add swift-clocks to TCA ( #1547 )
...
* Convert schedulers to clocks.
* wip
* wip
* wip
* wip
* Update 01-GettingStarted-Animations.swift (#1512 )
Typo
* bump
* wip
* wip
* fix
* doc fix
* wip
* update
* update
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* update clocks
* wip
* clocks
* wip
* wip
Co-authored-by: Ken Grigsby <kgrigsby@mac.com >
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
2022-10-23 22:28:31 -07:00
Stephen Celis
cc535c3e37
XCTUnimplemented -> unimplemented (#1530 )
2022-10-19 16:17:48 -07:00
Thomas Grapperon
41f1cb9f3f
Add a EffectTask<Action> typealias for Effect<Action, Never> and rename Effect to EffectPublisher ( #1471 )
...
* Add an `EffectOf<Action>` typealias for `Effect<Action, Never>`
* Fix doc
* Rename `EffectOf` to `EffectTask`
* Rename `Effect` to `EffectPublisher`
* Soft-deprecate `Effect`
* Link to `EffectTask`
* Use `EffectPublisher` in Combine contexts
* Reword soft-deprecation message
* Remove `renamed:` fix-it for `Effect` deprecation
* Update Sources/ComposableArchitecture/Documentation.docc/Extensions/ReducerProtocol.md
Co-authored-by: Stephen Celis <stephen.celis@gmail.com >
* Update Sources/ComposableArchitecture/Documentation.docc/ComposableArchitecture.md
* Update Sources/ComposableArchitecture/Effect.swift
* Fix DocC identifiers
Co-authored-by: Stephen Celis <stephen.celis@gmail.com >
2022-10-17 15:16:46 -07:00
Stephen Celis
2d943dadae
Loosen platform requirements for Dependencies library ( #1466 )
...
* Loosen platform requirements for Dependencies
Dependencies depends on runtime warning functionality, which is brought
in via the "os" module. If we check for availability we can allow the
Dependencies module to be used from multiplatform libraries, as we have
in isowords.
* More agnostic
* wip
* Update RuntimeWarnings.swift
* Update RuntimeWarnings.swift
2022-10-11 15:14:37 -07:00
Brandon Williams
b8294b89d5
ReducerProtocol ( #1283 )
...
* Add previewValue to DependencyKey, and fixed build errors on Xcode 13.
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* Add Xcode 14 to CI (#1266 )
* Add Xcode 14 to CI
* Update ci.yml
* wip
* wip
* Update Makefile
* Update Makefile
* wip
* runtime warning when no live dependency available for live app
* bring back live
* wip
* soft deprecate Reducer
* fusion test
* ternary clean up
* wip
* add some todos
* typealias Reducer inside AnyReducer
* Add `now` convenience property to date dependency (#1286 )
* Remove type alias
* LiveDependencyKey: DependencyKey -> DependencyKey: TestDependencyKey (#1288 )
* LiveDependencyKey: DependencyKey -> DependencyKey: TestDependencyKey
* wip
* wip
* wip
* wip
* wip
* fix
* wip
* fix navigate case studies
* wip
* fixes and docs
* more migration
* wip
* wip
* thread deps through ifLet and forEach examples.
* update
* clean up
* wip
* wip
* Update MigratingToReducerProtocols.md
* wip
* wip
* docs
* docs
* fix some docs
* Fix for CombineReducers compiler bug
* wip
* wip
* wip
* wip
* todos for docs
* Don't warn for overridden test dependencies (#1324 )
* Don't warn while setting test dependencies
* wip
* fix conflict
* wip
* Docs and deprecations
* add binding info
* wip
* Add URL session
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* Don't run debug reducer in tests
* wip
* updated reducer debugging
* Update UUID.swift (#1374 )
* wip
* optional
* added Self as default associatedtype value for TestDependencyKey.value (#1395 )
* added Self as default associatedtype value for TestDependencyKey.value
* Update Tests/ComposableArchitectureTests/DependencyKeyTests.swift
Co-authored-by: Brandon Williams <135203+mbrandonw@users.noreply.github.com >
* Update example to set badge to the unread count (#1391 )
* Add store.finish().
* Fix warnings introduced in Xcode 14.1 (#1388 )
* Fix warnings introduced in Xcode 14.1
* wip
* Conform dependency values to DependencyKey where convenient
* fix
* Fail if testValue is invoked without providing implementation (#1399 )
* Update example to set badge to the unread count (#1391 )
* Add store.finish().
* Fix the CaseStudies (UIKit) (#1392 )
* Fix warnings introduced in Xcode 14.1 (#1388 )
* Fix warnings introduced in Xcode 14.1
* wip
* Fail when accessing testValue when one hasn't been provided.
* wip
* wip
* wip
* test
Co-authored-by: Mark Adams <hyperspacemark@users.noreply.github.com >
Co-authored-by: Maciek Czarnik <Czajnikowski@users.noreply.github.com >
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
* Add DateGenerator.init(_ generate:)
* Start running some tests in release config. (#1405 )
* Start running some tests in release config.
* wip
* wip
* wip
* wip
* wip
* Update Sources/ComposableArchitecture/Store.swift
Co-authored-by: Thomas Grapperon <35562418+tgrapperon@users.noreply.github.com >
* wip
* wip
Co-authored-by: Thomas Grapperon <35562418+tgrapperon@users.noreply.github.com >
* added test that dependencies are transferred to effects
* wip
* self
* clean up
* simplify
* fix
* doc fixes
* wip
* fix
* wip
* wip
* wip
* fix
* Run dependencies tests on CI. (#1408 )
* Run dependencies tests on CI.
* wip
* update makefile
* wtf
* more docs
* more docs
* wip
* docs
* wip
* docs
* wip
* message tweaks
* wip
* docs and clean up
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* typo fix
* docs clean up
* doc fixes
* cancel in progress
* cancel in progress
* no need to make recope release-only, and make more use of XCTAssert to get better release tests
* fix test
* Remove ActorIsolated from tests where it's not needed
* fix test
* wip
* wip
* Add a benchmark for dependency key writing.
* fix test
* make benchmark 5.7 compatible
* iflet docs
* more docs
* dependency docs
* rearrange
* @Dependency docs
* docs
* fix benchmark in 5.6
* doc fix
* wip
* wip
* wip
* wip
* more docs
* clean up
* fix
* wip
* Fixes compilation on watchOS (#1423 )
Co-authored-by: Gunnar Herzog <gunnar.herzog@kf-interactive.com >
* move deprecation
* format
* wip
* Fix openURL
* wip
* wip
* wip
* wip
* fix
* Keep simple
* Reducer.debug -> Reducer._printChanges
We want to revisit some of these debugging APIs in the future, so let's
keep them around, but underscore them to allow for more flexible
evolution.
* `ReducerProtocol.debug` -> `ReducerProtocol._printChanges` (#1426 )
* Reducer.debug -> Reducer._printChanges
We want to revisit some of these debugging APIs in the future, so let's
keep them around, but underscore them to allow for more flexible
evolution.
* Update DebugTests.swift
* OpenURL fix for macCatalyst (#1429 )
* OpenURL fix for macCatalyst
Fixes #1428 .
* Update Makefile
* Correct typo in "Designing dependencies" chapter (#1430 )
protocol AudioPlayerClient should be a struct
* fix
* fix
* protocol docc
* docs
* Typos (#1439 )
* remove unneeded internals
* wip
* Fix missing parameter in code sample (#1450 )
* typo fix
* more docs for DependencyKeyWritingReducer
* wip
* wip
* update readme
* wip
* update image
* main actor
* Added withValue, added docs and tests
* public properties
* cleaned up overload
* changed reducer->feature in a bunch of spots of dependencies docs
* add articles to readme
* 6
* fix tests for swift 5.6
* tweak
* tweak
* Update ReducerProtocol.swift
* wip
* wip
* docs update
* docs for conforming dependency directly to DependencyKey
* typo fix
* performance article update
* fixes
* deprecate another effect timer API
* link to migration doc in deprecation messages
* make some tests that deal with line numbers less fragile
* package.swift clean up
* tweak to echos
* remove docs at root, not in docs-out
* remove todo
* update WithViewStore.init deprecation message to explain and link to performance doc
* Add back ReducerProtocolOf for 5.7.1 (#1444 )
* Add back ReducerProtocolOf for 5.7.1
* wip
* Move scheme tests to matrix
* streamline
* try this
* store.finish
* wip
* dependencies -> transformDependency
* wip
* wip
* Compat
* fix
* preserve deps for combine publishers
* Remove dump calls (#1460 )
* Fix compiler errors for library evolution. (#1443 )
* Fix compiler errors for library evolution.
* wip
* wip
* work around ambiguous init
* Revert "work around ambiguous init"
This reverts commit 002a199d59 .
* fix ambiguity errors
* remove _Observe for now
* wip
* wip
* wip
* longer timeout
* more waiting
* wip
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
Co-authored-by: Ken Grigsby <kgrigsby@mac.com >
Co-authored-by: Petr Sima <ptea.sima@gmail.com >
Co-authored-by: Mark Adams <hyperspacemark@users.noreply.github.com >
Co-authored-by: Maciek Czarnik <Czajnikowski@users.noreply.github.com >
Co-authored-by: Thomas Grapperon <35562418+tgrapperon@users.noreply.github.com >
Co-authored-by: Gunnar Herzog <github@trispo.de >
Co-authored-by: Gunnar Herzog <gunnar.herzog@kf-interactive.com >
Co-authored-by: Guttorm Aase <guttormaase@gmail.com >
Co-authored-by: Julien Sagot <contact@juliensagot.fr >
Co-authored-by: Jaanus Siim <jaanussiim+github@gmail.com >
2022-10-10 11:37:50 -04:00
Stephen Celis
26f9ed286d
Rename Effect<Output, _> to Effect<Action, _> ( #1362 )
...
* Rename Effect<Output, _> -> Effect<Action, _>
We'll keep the typealias for the `Publisher` conformance, but given the
changes made to TCA for concurrency, `Effect` should typically only be
used these days in reducers to feed actions back into the store, and not
more generally as publishers of any output.
* wip
2022-09-10 10:46:00 -04:00