[Emergency Release] v1.14.25#800
Merged
CassioMG merged 2 commits intoemergency-releasefrom Apr 4, 2026
Merged
Conversation
… (#801) * Fix crash when adding contract tokens from stellar.expert search (#799) stellar.expert now returns Soroban contract tokens alongside classic assets. The `asset` field for these is a raw contract ID instead of the "CODE-ISSUER-TYPE" format, which caused `new Asset()` to throw when the 56-char contract ID was used as an asset code. Handle contract tokens in `formatTokensFromSearchResults` by detecting contract IDs and reading metadata from the new top-level fields (`code`, `decimals`, `token_name`) with `tomlInfo` as fallback. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * Cap CI Xcode version at 26.3 to fix iOS build Xcode 26.4 ships a stricter Clang that breaks the `fmt` CocoaPod with consteval errors. Cap the auto-selected Xcode at 26.3 until the Pod is updated. The cap is a single variable (MAX_XCODE_VERSION) at the top of the script for easy bumping. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * Add tests for contract token parsing from stellar.expert Test that search results containing Soroban contract tokens (where `asset` is a raw contract ID) are correctly parsed using the new top-level fields, and that missing metadata falls back gracefully. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * Prevent crash when swapping custom/Soroban tokens Custom tokens cannot be swapped via Horizon's classic DEX path finder. Detect them early in findSwapPath and show a user-friendly error instead of letting getTokenForPayment throw an unhandled exception. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * Fix infinite useEffect loop in SwapAmountScreen Remove activeError from the dependency array of the pathError useEffect. activeError was both set by and a dependency of this effect, creating an infinite loop: setActiveError creates a new object → triggers the effect → setActiveError again → forever. The effect only needs to react to pathError, sourceAmount, and destinationTokenId changes. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * Fix tokenContractId selection to prefer explicit contract field Use explicit isContractId checks instead of || fallback to avoid picking a non-empty classic issuer (G...) when tokenCode holds the contract ID. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * add comment --------- Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
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.
Summary
Emergency release to fix crashes related to stellar.expert now returning Soroban contract tokens in search results, plus a CI build fix for Xcode 26.4.
Fixes included
Fix crash when adding contract tokens from search (Update asset search to handle contract tokens #799, Fix crash when adding contract tokens from stellar.expert search (#799) #801) — stellar.expert now returns contract tokens where
assetis a raw contract ID instead ofCODE-ISSUER-TYPE. The parsing inuseTokenLookupwas updated to detect contract IDs and read metadata from the new top-level fields (code,decimals,token_name) withtomlInfoas fallback.Prevent crash when swapping custom/Soroban tokens — Custom tokens cannot be swapped via Horizon's classic DEX. Added an early check in
findSwapPaththat shows "Swapping custom tokens is not supported yet" instead of crashing.Fix infinite useEffect loop in SwapAmountScreen — Removed
activeErrorfrom the dependency array of the path error effect. It was both set by and a dependency of the effect, creating an infinite render loop.Cap CI Xcode version at 26.3 (Cap CI Xcode version at 26.3 to fix iOS build #802) — Xcode 26.4 ships a stricter Clang that breaks the
fmtCocoaPod. Capped the auto-selected version until the pod is updated.Test plan
🤖 Generated with Claude Code