Repository navigation
feat: optimistic useStream updates, NETWORK_CONFIGS, custom-fetch timeout, and getStream request coalescing (#928 #927 #926 #925) - #1002
Merged
Conversation
|
@IbrahimIjai Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits. You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
closes #928 - useStream now returns withdraw/cancel actions that update stream state as soon as they are called (withdrawn amount / cancelled flag).
Changes roll back if the transaction fails and are reconciled with the ledger after it succeeds, removing the 4-5s visual delay.
closes #927 - Export NETWORK_CONFIGS (plus the NetworkConfig type) with the network passphrase, Soroban RPC URL and Horizon URL for Mainnet, Testnet and Futurenet.
Factory/vault address fields are in place (currently null until official deployments are published) so apps stop copying config from the docs.
closes #926 - Custom-fetch RPC requests now run with an AbortController and time out after 15000ms by default.
The timeout can be set via ConduitConfig.requestTimeoutMs or the timeoutMs argument of registerCustomFetch (0 disables it), and caller signals and axios timeouts are still respected.
closes #925 - Add coalesceInFlight, which shares a promise only while the request is in flight, and use it in StreamsModule.get().
Concurrent identical getStream() calls now share one network request; calls that pass an AbortSignal bypass sharing to keep abort semantics isolated.