Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR provides the necessary tooling for the new companion library GRDBCombine, which extends GRDB with tools dedicated to the Combine framework.
The ValueObservation.trackingCount/All/One methods are deprecated. Now please use instead the observationForCount/All/First request methods:
The
ValueObservation.start(in:onError:onChange:)
method used to always access the database synchronously - despite some documentation claims. It now no longer does, when the observation is configured for asynchronous dispatching. This makes sure that starting an observation does not block your current thread if a long-running write transaction is running in a background thread:The
ValueObservation.start(in:onError:onChange:)
method is no longer throwing when you provide an error callback. All database errors are then guaranteed to be sent to this callback, even synchronous startup errors.The
ValueObservation.combine
method has been enhanced:The
ValueObservation.distinctUntilChanged()
method has been deprecated in favor ofremoveDuplicates()
. Yes, yes, GRDB will follow the naming conventions of Combine when they do not match ReactiveX.