Stephen Celis
799aa18f86
Cleanup: Global/Local -> Parent/Child ( #1269 )
...
* Make openSettings async.
* global/local -> parent/child
* error cleanup
* Clean up action scoping
* cleanup
* wip
Co-authored-by: Brandon Williams <mbrandonw@hey.com >
2022-08-16 12:25:31 -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
Brandon Williams
0fb73c2bf3
Deprecate unchecked store ( #1206 )
...
* Deprecate unchecked stores.
* warning tests
* rearrange
* Update Deprecations.swift
* wip
* test for binding warning
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
2022-07-12 12:39:32 -04:00
Stephen Celis
dc9dd315ee
Cleanup ( #1107 )
2022-05-24 15:15:57 -04:00
Stephen Celis
1d6f65c692
Fix docs
2022-05-03 08:55:13 -04:00
mbrandonw
96f47fbe85
Run swift-format
2022-04-08 16:57:56 +00:00
Brandon Williams
c8482eb61b
Move DEBUG check to runtimeWarning function. ( #1056 )
...
* Move DEBUG check to runtimeWarning function.
* wip
2022-04-08 09:48:35 -07:00
Stephen Celis
2828dc44f6
Runtime Warning Finesse ( #1023 )
2022-03-15 16:21:13 -04:00
Omar Albeik
620ec5c6d9
Fix a typo in Store docs ( #998 )
2022-02-07 09:32:02 -05:00
Stephen Celis
313dd217dc
Improving developer experience with runtime warnings ( #943 )
...
* Perform thread check only when store is created on main thread.
* clean up
* Update Sources/ComposableArchitecture/Store.swift
* clean up
* Update Sources/ComposableArchitecture/Store.swift
* clean up
* execute setSpecific only once.
* logic fix
* added a test
* typo
* wip
* wip
* wip
* clean up
* language
* wip
* note
* wip
* wip
* wip
* wip
* wip
* fix closing quote
* wip
* fix merge
* Deprecations
* Fix docs
* wip
Co-authored-by: Brandon Williams <mbrandonw@hey.com >
2022-01-03 10:55:13 -06:00
Stephen Celis
599a2398ad
Check main thread via Thread.isMainThread ( #823 )
...
* Check main thread via Thread.isMainThread
* wip
* wip
2021-09-23 10:25:08 -04:00
mbrandonw
0a39f4c7a3
Run swift-format
2021-09-20 15:19:03 +00:00
Brandon Williams
1c0dfbc98b
Perform thread check only when store is created on main queue. ( #811 )
...
* Perform thread check only when store is created on main thread.
* clean up
* Update Sources/ComposableArchitecture/Store.swift
* clean up
* Update Sources/ComposableArchitecture/Store.swift
* clean up
* execute setSpecific only once.
* logic fix
* added a test
* typo
* wip
* docs
* fix test
* Update Sources/ComposableArchitecture/Store.swift
Co-authored-by: Thomas Grapperon <35562418+tgrapperon@users.noreply.github.com >
* Run swift-format
* Clean up speech recognition case study. (#812 )
* Clean up speech recognition case study.
* fix tests
* clean up;
* Alternative to `CurrentValueSubject` in `ViewStore` (#755 )
* Replaced CurrentValueSubject with CurrentValueRelay
* Added final to DemandBuffer
Co-authored-by: Brandon Williams <mbrandonw@hey.com >
* Run swift-format
* Fix bindable deprecations (#815 )
* Fix Bindable Deprecations
* More CI
* wip
* wip
* wip
* wip
* Run swift-format
* beef up test
* expectation
* fix
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
Co-authored-by: Thomas Grapperon <35562418+tgrapperon@users.noreply.github.com >
Co-authored-by: stephencelis <stephencelis@users.noreply.github.com >
Co-authored-by: iampatbrown <mrpatbrown@gmail.com >
Co-authored-by: mbrandonw <mbrandonw@users.noreply.github.com >
2021-09-20 11:09:00 -04:00
Stephen Celis
4bdcaafcd0
Deprecate Store.publisherScope ( #758 )
...
* Deprecate Store.publisherScope
* wip
* fix
* wip
2021-09-17 13:12:52 -04:00
Stephen Celis
d715300cd4
Thread messaging ( #803 )
...
* Use thread dictionary for check instead
* Improve thread check messaging for Store.scope
* typo fix
Co-authored-by: Brandon Williams <mbrandonw@hey.com >
2021-09-16 11:11:13 -04:00
Stephen Celis
a554b00ff4
Remove old deprecations ( #795 )
...
* Remove old deprecations
* wip
2021-09-14 22:30:38 -04:00
Brandon Williams
d15101d7b6
Update threading messaging. ( #789 )
2021-09-13 21:54:23 -04:00
stephencelis
cb5150f57e
Run swift-format
2021-09-07 16:50:30 +00:00
Brandon Williams
90e97411c8
Change initialThread to a let. ( #778 )
2021-09-07 12:06:52 -04:00
Brandon Williams
33279f4c38
Update to thread warnings. ( #773 )
...
* Update to thread warnings.
* fix tests
* clean up
* rename variable
2021-09-07 11:56:46 -04:00
stephencelis
7d15362de9
Run swift-format
2021-09-07 14:53:32 +00:00
Ian Keen
c77c6054c8
Add threading warning to Store.send ( #772 )
...
* Add threading warning to Store.send
Any async Effect (including fireAndForget) could result in a runtime crash when updating internal state like `effectCancellables`
This adds a debug warning to let users know
* Remove comment
2021-09-07 10:20:15 -04:00
Ken Grigsby
682e2902c2
Correct Store documentation ( #746 )
2021-08-25 08:58:28 -04:00
Jason Clark
a2319ff82b
Buffered Actions Failing Test ( #662 )
...
* Adds a failing test demonstrating #661
* Don't write to state till `isSending` is false
* Update StoreTests.swift
* Update StoreTests.swift
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
Co-authored-by: Stephen Celis <stephen.celis@gmail.com >
2021-07-16 15:20:11 -04:00
Stephen Celis
adb1f25ab4
Store publisher should retain its view store ( #652 )
...
* Make the StorePublisher own the ViewStore.
* cleanup
Co-authored-by: Brandon Williams <mbrandonw@hey.com >
2021-07-12 13:25:27 -04:00
iampatbrown
5ca2b43bc7
Added multicast to ViewStore publisher to reduce equality checks ( #624 )
...
* Added multicast to ViewStore publisher to reduce equality checks
* Replaced multicast with ViewStore CurrentValueSubject
* Added guard check to weak self
* Clean up and add test.
Co-authored-by: Brandon Williams <mbrandonw@hey.com >
2021-07-08 12:53:30 -04:00
Stephen Celis
3ca8249bd3
Coalesce synchronous effectful mutations to state ( #619 )
2021-06-28 07:49:37 -04:00
Stephen Celis
e7e222f1ff
Store.scope/StorePublisher Performance Improvements ( #616 )
...
* Scope fix
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* revert
* wip
* wip
* wip
* fix
* wip
* wip
* wip
* wip
* wip
* wip
Co-authored-by: Brandon Williams <mbrandonw@hey.com >
2021-06-27 21:30:43 -04:00
Stephen Celis
d30336ca13
Clean-up pass for DocC ( #599 )
2021-06-16 08:48:14 -05:00
Brandon Williams
9716a3247a
Improve some docs. ( #597 )
...
* Improve some docs.
* wip
* Update Sources/ComposableArchitecture/Store.swift
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
* Update Sources/ComposableArchitecture/Store.swift
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
* Update Sources/ComposableArchitecture/Store.swift
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
* Update Sources/ComposableArchitecture/Store.swift
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
* Update Sources/ComposableArchitecture/Store.swift
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
* Update Sources/ComposableArchitecture/Store.swift
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
* Update Sources/ComposableArchitecture/ViewStore.swift
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
* 110 column
* update link
* add docc to switchstore
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
2021-06-15 10:33:52 -04:00
Wendy Liga
1a8bccc62e
Support DocC Xcode 13 ( #591 )
...
* wip
* finish
* revert back code snippet identation to 5
* Update Sources/ComposableArchitecture/Effect.swift
Co-authored-by: Brandon Williams <135203+mbrandonw@users.noreply.github.com >
Co-authored-by: Brandon Williams <135203+mbrandonw@users.noreply.github.com >
2021-06-14 14:10:08 -04:00
Stephen Celis
6eb7ca5d48
Remove convenience initializer on Store ( #572 )
2021-05-26 13:33:34 -07:00
Stephen Celis
636f3facdc
Document scope a bit more deeply ( #360 )
2021-02-01 14:46:35 -05:00
stephencelis
0190f032c1
Run swift-format
2020-10-29 21:43:17 +00:00
Stephen Celis
5ddbcdd21a
Rename publisher-transforming scope ( #314 )
...
* Rename publisher-transforming scope
* feedback
2020-10-29 17:29:52 -04:00
mbrandonw
43a122a34b
Run swift-format
2020-09-14 23:02:48 +00:00
Brandon Williams
7e526ba503
Buffer actions when sent recursively ( #287 )
...
* wip
* wip
* explicit test store
* test
* test
* clean up
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
2020-09-14 18:58:56 -04:00
Stephen Celis
13cb3c3165
Update CI to include Xcode 12 ( #266 )
...
* Update CI to include Xcode 12
* Use CurrentValueSubject
2020-08-27 12:23:12 -04:00
Stephen Celis
e75904c180
Store can use @Published again ( #239 )
...
* Store can use @Published again
As of the third beta, assign(to:) takes an `inout Publisher.Publisher`,
so it no longer surfaces an escape hatch through which one could mutate
a store's state.
Fixes #238 .
* Fix tests.
* Update ci.yml
2020-07-29 13:48:57 -04:00
Stephen Celis
a8a7c40029
Xcode 11.6/12 CI ( #206 )
...
* Run CI against Xcode 12
* Also run against 11.6
* CurrentValueSubject
* Fix
* Update ci.yml
2020-07-07 11:09:51 -04:00
Olli Tapaninen
1677b2d500
Print offending action on Store.send assertion ( #188 )
...
* Print offending action on Store.send assertion
* Reword Store.send assert
Co-authored-by: Brandon Williams <mbw234@gmail.com >
Co-authored-by: Brandon Williams <mbw234@gmail.com >
2020-06-16 07:59:12 -05:00
Stephen Celis
3d89482da6
Add assertion to Reducer.optional ( #157 )
...
* Add assertion to Reducer.optional
* Another bug
* Another potential bug
* best practice?
* WIP
* Clean up language and add more language to index-based forEach
* Re-wrap
* Update Sources/ComposableArchitecture/Reducer.swift
Co-authored-by: Brandon Williams <mbw234@gmail.com >
* Update Sources/ComposableArchitecture/Reducer.swift
Co-authored-by: Brandon Williams <mbw234@gmail.com >
* wording
Co-authored-by: Brandon Williams <mbw234@gmail.com >
2020-06-04 13:57:25 -04:00
stephencelis
c4d4201284
Run swift-format
2020-06-01 19:33:34 +00:00
klop
3475b18db6
Replace recursive call in Store.send with a while loop to process synchronous effects ( #163 )
...
* While loop instead of recursive send for synchronous effects in store
* Created StoreTests.testLotsOfSynchronousActions
2020-06-01 15:30:46 -04:00
Anton Siliuk
ef465884f9
Replace 'receive(subscriber:)' with 'subscribe()' ( #158 )
2020-05-30 12:19:08 -04:00
mbrandonw
500300871d
Run swift-format
2020-05-29 16:33:18 +00:00
Brandon Williams
f25878c01f
Clarify assertion failure for incorrect send usage ( #151 )
...
* Clarify assertion failure for incorrect send usage
* Update ViewStore.swift
* Update Sources/ComposableArchitecture/Store.swift
Co-authored-by: Dante Broggi <34220985+Dante-Broggi@users.noreply.github.com >
* Update Sources/ComposableArchitecture/Store.swift
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
Co-authored-by: Dante Broggi <34220985+Dante-Broggi@users.noreply.github.com >
Co-authored-by: Stephen Celis <stephen@stephencelis.com >
2020-05-29 09:30:56 -07:00
Stephen Celis
9c339bf4ae
Add "run" function to Reducer ( #91 )
...
* Add "run" function to Reducer
* Doc fixes
2020-05-13 13:09:17 -04:00
Stephen Celis
0442bfba68
Document Store.{state,action}less ( #72 )
2020-05-11 18:48:41 -04:00
Stephen Celis
b4779b36b1
Helpers for making stores stateless/actionless ( #45 )
2020-05-11 18:40:09 -04:00