github stellar/rs-soroban-sdk v25.2.0
25.2.0

latest releases: v26.1.0, v26.0.1, v26.0.0...
3 months ago

What's Change

New Experimental Features

  • Spec shaking for smaller contract binaries: The SDK now supports automatic removal of unused type and event definitions from the contractspecv0 section of compiled WASM files. By embedding markers that survive dead code elimination, only types and events actually used at contract boundaries (function parameters, return values, and events) are retained. This reduces contract binary size and enables imported contract types to be automatically re-exported when used. Requires Stellar CLI v25.2.0+. Behind a feature flag experimental_spec_shaking_v2 during the v25 release. (#1672)

Improvements

  • Compile-time validation for BigInt conversions: BigInt::from<BytesN> now catches length mismatches at compile time instead of panicking at runtime, giving you earlier and clearer error messages. (#1725)

  • Remove unnecessary clones in iterators: Iterator implementations no longer perform redundant clones, reducing overhead when iterating over SDK collection types. (#1734)

Bug Fixes

  • Fix BytesN::is_empty: BytesN::is_empty previously always returned false. It now correctly returns true for BytesN<0>. (#1733)

Documentation

  • Document the alloc feature: The alloc module is now publicly documented in rustdoc, covering how the bump-pointer allocator works, that dealloc is a no-op, and how to use a custom allocator instead. (#1726)

All Changes

Full Changelog: v25.1.1...v25.2.0

Don't miss a new rs-soroban-sdk release

NewReleases is sending notifications on new releases.