v15.0.0: Protocol 26
Breaking Changes
TransactionBase.networkPassphrasesetter now throws an error to enforce immutability (#891).- React Native apps using the Hermes engine must polyfill broken typed array methods such as
subarray; this compatibility is no longer provided by@stellar/js-xdr. One option is@exodus/patch-broken-hermes-typed-arrays. If needed, please review and consider manually adding it to your project. - Construction and encoding of sized XDR integer values now throw on overflow and underflow instead of silently clamping, via
@stellar/js-xdr(#133). This may affect code that previously relied on permissive bigint coercion.
Added
- XDR definitions have been updated to align with Protocol 26 (#944).
Fixed
Keypair.verifynow returnsfalseinstead of throwing when the signature is invalid (#892).Memo.idnow correctly rejects negative values, decimal values, and values exceeding the uint64 maximum (2^64 - 1); the error message now correctly saysuint64(#892).Operation._toXDRPricenow accepts price objects withn: 0(a zero numerator was previously treated as falsy and fell through to float approximation) (#892).SignerKey.decodeSignerKeynow reads the exact payload length from the 4-byte length prefix when decodingsignedPayloadsigner keys, preventing data truncation or over-read (#892).TransactionBuilder.cloneFromnow correctly re-encodesextraSignersas StrKey strings (they were previously passed as raw XDR objects) (#892).TransactionBuilder.cloneFromnow usesMath.floorwhen computingunscaledFeeto prevent fractional fee values (#892).TransactionBuildernow floorsDatetimebounds to integer UNIX timestamps (#892).Auth.bytesToInt64now correctly handles bytes with upper-32-bit values set by processing each 32-bit half independently (#891).ScIntconstructor now correctly handles string input (#891).Soroban.parseTokenAmountnow throws when the input value has more decimal places than the specifieddecimalsargument (#891).- XDR
ArrayandVarArraydecoding now fails fast when the declared array length exceeds the remaining bytes, via@stellar/js-xdr(#132).
Contributors
Full Changelog: v14.1.0...v15.0.0