Stephen Celis
57e804f1cc
Macro bonanza ( #2553 )
...
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* Silence test warnings
* wip
* wip
* wip
* update a bunch of docs
* wip
* wip
* fix
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* Kill integration tests for now
* wip
* wip
* wip
* wip
* updating docs for @Reducer macro
* replaced more Reducer protocols with @Reducer
* Fixed some broken docc references
* wip
* Some @Reducer docs
* more docs
* convert some old styles to new style
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* bump
* update tutorials to use body
* update tutorials to use DML on destination state enum
* Add diagnostic
* wip
* updated a few more tests
* wip
* wip
* Add another gotcha
* wip
* wip
* wip
* fixes
* wip
* wip
* wip
* wip
* wip
* fix
* wip
* remove for now
* wip
* wip
* updated some docs
* migration guides
* more migration guide
* fix ci
* fix
* soft deprecate all apis using AnyCasePath
* wip
* Fix
* fix tests
* swift-format 509 compatibility
* wip
* wip
* Update Sources/ComposableArchitecture/Macros.swift
Co-authored-by: Mateusz Bąk <bakmatthew@icloud.com >
* wip
* wip
* update optional state case study
* remove initializer
* Don't use @State for BasicsView integration demo
* fix tests
* remove reduce diagnostics for now
* diagnose error not warning
* Update Sources/ComposableArchitecture/Macros.swift
Co-authored-by: Jesse Tipton <jesse@jessetipton.com >
* wip
* move integration tests to cron
* Revert "move integration tests to cron"
This reverts commit f9bdf2f04b .
* disable flakey tests on CI
* wip
* wip
* Revert "Revert "move integration tests to cron""
This reverts commit 66aafa7327 .
* fix
* wip
* fix
---------
Co-authored-by: Brandon Williams <mbrandonw@hey.com >
Co-authored-by: Mateusz Bąk <bakmatthew@icloud.com >
Co-authored-by: Brandon Williams <135203+mbrandonw@users.noreply.github.com >
Co-authored-by: Jesse Tipton <jesse@jessetipton.com >
2023-11-13 12:57:35 -08:00
Stephen Celis
c0d8fbabfc
Clean up and modernize docs/examples ( #2480 )
2023-09-28 06:58:51 -07: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
47b7ff2516
Update some demos to use NavigationStack ( #2264 )
...
Fixes #2207 .
2023-07-12 11:51:23 -07:00
Stephen Celis
95d2bc701b
Better Bindings Revisited ( #2215 )
...
* Simpler bindable view state
* wip
* wip
* wip
* wip
* wip
* wip
* simplify
* wip
* wip
* wip
* wip
* wip
* wip
* wip
2023-06-28 09:31:12 -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
Stephen Celis
767231d179
Add Store.init that takes reducer builder ( #2087 )
...
* Add `Store.init` that takes reducer builder
* wip
* wip
* added some tests
* wip
* wip
* wip
---------
Co-authored-by: Brandon Williams <mbrandonw@hey.com >
2023-05-11 12:30:08 -07:00
Stephen Celis
da205c71ae
Deprecate Store.scope(state:) for view store observe ( #2097 )
...
* Deprecate `Store.scope(state:)` for view store `observe`
Explicit scoping is most appropriate for transforming domains, which
almost always requires an action transform. In the rare case it doesn't,
we should prefer an explicit `{ $0 }`.
Scoping for the view has been deprecated for awhile for the `observe`
parameter when creating view stores, so let's lead folks that direction.
* wip
* wip
2023-05-11 08:17:54 -07:00
Stephen Celis
b7c5a40ce2
Deprecate type-based cancel IDs ( #2091 )
...
* Deprecate type-based cancel IDs
Swift may aggressively compile types out of release mode, including
types defined for cancellation. Because of this, folks should migrate to
use value-based identifiers and avoid any potential bugs.
* wip
* wip
2023-05-10 13:20:16 -07:00
Stephen Celis
1a0c3f9326
Bump Xcode settings ( #2042 )
...
* Bump Xcode settings
We had some warnings related to new Xcode 14.3 settings.
* wip
2023-04-14 08:06:26 -07: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
Stephen Celis
30015d13a3
Revert #1790 ( #1795 )
...
It occurred to us that this solution unfortunately is incompatible with
view actions. We have an alternate solution that works, so I'll PR that
in the future if no others materialize!
2023-01-05 18:04:48 -05:00
stephencelis
d1c2e5b6d1
Run swift-format
2023-01-05 18:30:30 +00:00
Thomas Grapperon
c719fa1d39
Allow BindingReducer to work with ViewState ( #1790 )
...
* Simpler bindable view state
* wip
* wip
* Remove `BindingStore`
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* Make BindingState conditionally sendable.
* Fixed tests
* Update bindings article
* Add some additional contextual information to the runtime warnings
* update some docs
* lots more docs
* test clean up
* Improve diagnostic
* Put back `BindingReducer()` in the form study
* clean up
* Improve DocC references
* Remove DocC references for `@`'d property wrappers.
* wip
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
Co-authored-by: Brandon Williams <mbrandonw@hey.com >
2023-01-05 13:18:34 -05:00
Brandon Williams
1c19319aed
Delete correct todo when filtering. ( #1696 )
2022-11-28 16:04:42 -06: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
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
유재호
790469d1e5
Remove unnecessary dependencies in every CaseStudies ( #1503 )
...
* Remove unnecessary dependencies in SwiftUI-CaseStudies
* Remove unnecessary dependencies in other-CaseStudies
* Add MARK headers to every SwiftUI-CaseStudies
2022-10-15 14:23:01 -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
3ba71b9787
Todos demo: fix sorting filtered todos ( #1404 )
...
* Todos demo: fix sorting filtered todos
* wip
* Update TodosTests.swift
2022-09-20 14:36:04 -07:00
Stephen Celis
bef2084cb2
Introduce WithViewStore.init(_:observe:send:...) ( #1339 )
...
* wip
* Introduce `WithViewStore.init(_:observe:send:...)`
* Update examples
* wip
* typo
* wip
2022-09-07 10:08:20 -04:00
mbrandonw
9406f4d820
Run swift-format
2022-08-31 18:43:44 +00:00
Pedro Rojas
83780f6744
Remove closure and pass UUID.incrementing as parameter on AppEnvironment ( #1322 )
...
* Remove closure and pass UUID.incrementing as parameter on AppEnvironment
* Fix swift 5.6
Co-authored-by: Brandon Williams <mbrandonw@hey.com >
2022-08-31 14:28:45 -04:00
mbrandonw
3bca5180f3
Run swift-format
2022-08-31 00:09:57 +00:00
Brandon Williams
7b5bc85f2e
Update Effect internals to be more efficient. ( #1312 )
...
* Distinguish Combine and async effects from each other
* wip
* wip
* wip
* Add some tests
* wip
* wip
* wip
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
2022-08-30 19:40:50 -04:00
유재호
6915844f76
Add final keyword to every test class by default ( #1267 )
2022-08-15 14:37:30 -04:00
Stephen Celis
0f3175f968
Clean up Todos sort debouncing ( #1255 )
2022-08-09 15:29:10 -04:00
Stephen Celis
70e13dc4b7
Todo/VoiceMemo -> TodoState/VoiceMemoState ( #1251 )
2022-08-08 15:27:10 -04:00
Brandon Williams
108e3a536f
Concurrency Beta ( #1189 )
...
* more main actor audit
* wip
* wip
* fix
* better task result ==
* task result tests
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* fix merge conflicts
* wip
* wip
* lots of doc fixes and modernizations
* lots more docs and better hashable conformance for TaskResult
* more docs
* clean up
* more tests and docs
* clean up
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* small clean up
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* explicit
* wip
* fix bug in TestStore.receive
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* fixes
* wip
* tools for non-deterministic TestStore.receive
* fix
* wip
* wip
* remove inAnyOrder stuff
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* convert download case study to use async/await
* animations
* fix tests
* remove executor experiment
* wip
* wip
* wip
* wip
* wip
* speech simplification
* wip
* wip
* wip
* wip
* wip
* wip
* add a few todos
* wrote some tests
* simplify speech recognizer
* fix tests
* update some docs about error throwing behavior
* wip
* wip
* fix
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* Swift 5.5.2 fixes
* wip
* Bump timeout
* wip
* wip
* Finesse
* proper way to detect main queue
* extra guard
* revert main queue check
* move stuff around
* docs
* fixed a bunch of warnings
* Fix references
* clean up
* clean up
* fix a bunch of warnings
* clean up
* un-soft deprecate concatenate
* async teststore.send
* fix uikit tests
* drop sendable
* wip
* wip
* wip
* wip
* wip
* clean up
* clean up
* reorganize, remove extra task cancellation handler
* wip
* wip
* wip
* wip
* wip
* wip
* Make TestStore.send async (#1190 )
* async teststore.send
* fix uikit tests
* Converted all tests to async
* clean up
* added docs
* Update Sources/ComposableArchitecture/TestStore.swift
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
* Update Sources/ComposableArchitecture/TestStore.swift
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
* docs and readme update
* Update README.md
* Update Tests/ComposableArchitectureTests/StoreTests.swift
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
* fix
* Update Sources/ComposableArchitecture/TestStore.swift
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
* Update Sources/ComposableArchitecture/TestStore.swift
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
* Update Sources/ComposableArchitecture/TestStore.swift
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
* clean up
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
* wip
* wip
* wip
* make fetchNumber throwing and fix tests
* effect basics clean up
* use local state for isLoading in refreshable case study
* clean up
* fix test
* wip
* wip
* wip
* wip
* wip
* wip
* fixes
* clean up
* clean up
* Simplify
* wip
* clean up
* wip
* AsyncStream.finished()
* give Send a public initializer
* make send public
* temporarily make box public
* remove concurrency flag
* wip
* wip
* wip
* wip
* wip
* docs
* speech
* simplify
* clean up;
* unchecked sendable
* clean up
* clean up
* wip
* docs
* docs
* more docs
* lots of docs
* wip
* wip
* wip
* more docs for streamWithContinuation
* wip
* wip
* wip
* Make internal, too
* wip
* Remove sendability detection
It breaks things, like:
let request = UncheckedSendable(
SKProductsRequest(productIdentifiers: []
)
// UncheckedSendable<NSObject> // *not* _<SKProductsRequest>
* wip
* doc clean up;
* fixed some todos
* docs
* wip
* remove thread safety FAQ from readme
* fix test
* wip
* docs clean up
* docs clean up
* added a testing article and fixed some docs
* rearrange
* docs clean up
* wip
* Update Sources/ComposableArchitecture/Documentation.docc/Articles/Testing.md
Co-authored-by: Thomas Grapperon <35562418+tgrapperon@users.noreply.github.com >
* Update Sources/ComposableArchitecture/Effects/ConcurrencySupport.swift
Co-authored-by: Thomas Grapperon <35562418+tgrapperon@users.noreply.github.com >
* Update Sources/ComposableArchitecture/Effects/ConcurrencySupport.swift
Co-authored-by: Thomas Grapperon <35562418+tgrapperon@users.noreply.github.com >
* Update Sources/ComposableArchitecture/Effects/ConcurrencySupport.swift
Co-authored-by: Thomas Grapperon <35562418+tgrapperon@users.noreply.github.com >
* Update Sources/ComposableArchitecture/Effects/ConcurrencySupport.swift
Co-authored-by: Thomas Grapperon <35562418+tgrapperon@users.noreply.github.com >
* Update Sources/ComposableArchitecture/Documentation.docc/Articles/Testing.md
Co-authored-by: Thomas Grapperon <35562418+tgrapperon@users.noreply.github.com >
* Update Sources/ComposableArchitecture/Documentation.docc/Articles/Testing.md
Co-authored-by: Thomas Grapperon <35562418+tgrapperon@users.noreply.github.com >
* Update Sources/ComposableArchitecture/Documentation.docc/Articles/Testing.md
Co-authored-by: Thomas Grapperon <35562418+tgrapperon@users.noreply.github.com >
* Update Sources/ComposableArchitecture/Documentation.docc/Articles/Testing.md
Co-authored-by: Thomas Grapperon <35562418+tgrapperon@users.noreply.github.com >
* Update Sources/ComposableArchitecture/Documentation.docc/Articles/Testing.md
Co-authored-by: Thomas Grapperon <35562418+tgrapperon@users.noreply.github.com >
* Update Sources/ComposableArchitecture/Documentation.docc/Articles/Testing.md
Co-authored-by: Thomas Grapperon <35562418+tgrapperon@users.noreply.github.com >
* Update Sources/ComposableArchitecture/Documentation.docc/Articles/Testing.md
Co-authored-by: Thomas Grapperon <35562418+tgrapperon@users.noreply.github.com >
* wip
* wip
* wip
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
Co-authored-by: Thomas Grapperon <35562418+tgrapperon@users.noreply.github.com >
2022-08-08 01:04:16 -04:00
Thomas Grapperon
b979b442da
Modernize SwiftUI Case Studies ( #1208 )
...
* Replace `.navigationBarTitle` by `.navigationTitle`
* Remove .background from Animation
* Update 01-GettingStarted-Bindings-Basics.swift
* Update 01-GettingStarted-Bindings-Forms.swift
* Update 01-GettingStarted-Composition-TwoCounters.swift
* Update 01-GettingStarted-Counter.swift
* Update 01-GettingStarted-FocusState.swift
* Update 01-GettingStarted-OptionalState.swift
* Update 01-GettingStarted-SharedState.swift
* Update 02-Effects-Basics.swift
* Update 02-Effects-Cancellation.swift
* Update 02-Effects-LongLiving.swift
* Update 02-Effects-Refreshable.swift
* Update 02-Effects-Timers.swift
* Update 02-Effects-WebSocket.swift
* Update 02-Effects-SystemEnvironment.swift
* Update 03-Navigation-NavigateAndLoad.swift
* Update 04-HigherOrderReducers-ElmLikeSubscriptions.swift
* Update 04-HigherOrderReducers-Recursion.swift
* Update 04-HigherOrderReducers-ReusableFavoriting.swift
* Update CircularProgressView.swift
* Update DownloadComponent.swift
* Reindent `XCTestDynamicOverlay` block
* Use a dedicated shape for the clock hand
This is a little much simpler I guess.
* Go back to use a Path, much simpler to understand.
* Use more natural modifiers to apply styles
* small updates
* Center the "clocks" horizontally
Co-authored-by: Brandon Williams <mbrandonw@hey.com >
2022-07-13 10:08:09 -04:00
Stephen Celis
a35359c4d9
scheduler -> mainQueue
2022-06-28 17:16:37 -04:00
Stephen Celis
bec0128bae
Clean up sample code ( #1156 )
...
We employ a few tricks that might be confusing folks that are unfamiliar
with them, so this dials some things down in the sample code and docs.
We could maybe take it further, but this is a start.
2022-06-22 13:19:55 -04:00
Stephen Celis
f0098d8232
Add cancel overloads that take types ( #1078 )
...
* Add cancel overloads that take types
* wip
2022-05-03 21:00:24 -04:00
Thomas Grapperon
1efde6e57a
Add icons variants for required resolutions ( #1017 )
...
* Add icons variants for required resolutions
* Optimize PNG's size
Even without centralizing the resources, we can already save a few bytes.
The total size was reduced by 75%.
* Replace iTunes variants by a very compact transparent image
This will never hit the AppStore anyway.
* Replace images by lossless optimized variants
The previous optimization pass was lossy. This PR replace images with an optimized lossless variant of the original.
* Restore original iPhone icons
I don't know why images that were supposedly losslessly optimized by ImageOptim were less vibrant than the original.
I restored them by their original variants. Upscaled variants are less vibrant though, but I guess it's acceptable without access to the original vector source.
* Fix color space
ImageOptim seems to change the color space when it optimizes files losslessly.
I've created new variants with Pixelmator Pro and exported as web-compressed from there instead.
2022-03-15 16:15:19 -04:00
stephencelis
12ae834de9
Run swift-format
2022-02-07 22:34:34 +00:00
Stephen Celis
47b5f1ba52
Cleanup
2022-02-07 17:19:01 -05:00
Omar Albeik
02cf7590ff
Fix edit while filtered bug in todos example app ( #999 )
2022-02-07 17:14:11 -05:00
Stephen Celis
43b2ae66ea
Scene delegate cleanup ( #959 )
...
* SwiftUI Case Studies: SceneDelegate -> App
* Generate plist files
2022-01-11 10:02:05 -05:00
Stephen Celis
87f388bedb
Further Modernize Demos ( #914 )
...
* Modernize Demos
* wip
2021-12-09 22:41:58 -05:00
iampatbrown
b5719bf1ca
Update example app entry points and some minor changes ( #859 )
...
* TicTacToe Readme updates
* Use new .catchToEffect(_ transform:) in example
* Added Todos Readme
* Added VoiceMemos Readme wip
* Updated VoiceMomos Readme
* Updated Todos Readme
* Added value to animation modifier
* Update VoiceMemos entry point
* Update Todos entry point
* Update Search entry point
* Update SpeechRecognition entry point
* Updated SpeechRecognition models
* Revert "Updated SpeechRecognition models"
This reverts commit dc77e7a638 .
2021-10-18 09:24:02 -04:00
Stephen Celis
575d7c0d59
Use Custom Dump ( #736 )
...
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* fix
* wip
* wip
* Model Tic-Tac-Toe board using proper type
* wip
* wip
* wip
* wip
Co-authored-by: Brandon Williams <mbrandonw@hey.com >
2021-08-22 22:45:27 -04:00
Brandon Williams
a38e04da7d
Modernize some things ( #713 )
...
* Modernize some things.
* clean up
* wip
* wip
* clean up
* wip
* wip
2021-08-12 18:13:40 -04:00
Stephen Celis
026482d270
tic-tac-toe package ( #684 )
...
* tic-tac-toe package
* Update Package.swift
* Tests
* wip
* wip
* wip
* Update Package.swift
2021-07-29 09:18:49 -04:00
Stephen Celis
5664c9bfe5
Prep
2021-07-11 22:56:18 -04:00
Stephen Celis
ac7ea43ff2
Merge remote-tracking branch 'origin/main' into ia
2021-07-09 15:41:49 -04:00
Stephen Celis
50a16e072e
Deprecate array-based forEach/ForEachStore ( #641 )
...
* Deprecate array-based forEach/ForEachStore
* Update tests
2021-07-08 10:49:13 -04:00
Stephen Celis
e1c7077cd1
wip
2021-06-25 16:42:22 -04:00
Brandon Williams
14c6b5b218
Extract number fact dependency to a FactClient. ( #600 )
...
* Extract number fact dependency to a FactClient.
* wip
2021-06-21 10:36:51 -04:00
mbrandonw
2bd9b7568e
Run swift-format
2021-05-04 14:30:23 +00:00