Back to Freedom.Tech Back
All Cashu TS releasesAll versions
Release Thu, Jul 23, 2026 2 min read

Cashu TS 5.0.0-rc.5

Original release notes

What's Changed

  • feat(model): add MintInfo.getMintMeltMethod and document offline rehydration by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/812
  • feat(wallet): prefer stale keysets in default proof selection by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/813
  • fix(wallet): widen exact-match trim bound for selection-level fee rounding by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/814
  • refactor(wallet): make RGLI exFee an integer sort key by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/815
  • feat(wallet): support u64 amounts in proof selection by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/822
  • refactor(model): return snapshots from MintInfo accessors by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/824
  • fix(model): preserve Amount instances through MintInfo snapshot by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/826
  • fix(wallet): compute NUT-08 blank count in bigint by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/828
  • fix(model): bound Amount.from to the u64 range by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/830
  • fix(model): cap Amount at the u64 range by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/832
  • feat!: nut-18 mint preferences (mp, sm) by @d4rp4t in https://github.com/cashubtc/cashu-ts/pull/683
  • feat(nut18): add PaymentRequestBuilder by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/780
  • feat(nut18): pay and validate payment requests end to end by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/787
  • feat(wallet): prefer newest keyset version in getCheapestKeyset by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/835
  • fix(wallet): return -1 from Keyset.version for unparseable ids by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/837
  • fix(wallet): classify odd-length hex keyset ids as legacy by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/839
  • fix(utils): return false from isValidHex for non-string input by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/843
  • feat(utils): rename normalizeUrl to normalizeMintUrl and make it public by @KvngMikey in https://github.com/cashubtc/cashu-ts/pull/834
  • feat(wallet): add getFeesToInclude fee helper by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/846
  • fix(wallet): validate pubkey in locked mint quote responses by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/851
  • fix(wallet): bound fee convergence loop by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/854
  • fix(wallet): reject a missing pubkey in locked mint quotes by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/856
  • docs(contributing): note runtime arg guards and untrusted mint input by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/858
  • feat(model): encode and decode NUT-18 payment payloads by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/853
  • fix(wallet): validate the lock pubkey in mint quote methods by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/861
  • chore(docker): update NUT_IMAGE to cashubtc/nutshell:0.20.3 by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/860
  • fix(wallet): bound keyset denomination count at ingest by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/864
  • feat(crypto): public secp pubkey validation in curve_secp by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/863
  • refactor(wallet): move MAX_KEYSET_DENOMINATIONS to limits by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/866
  • fix(utils): bound splitAmount output count by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/859
  • fix(wallet): compute keyset fees with integer arithmetic by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/869
  • fix(wallet): throw from sendOffline when no offline selection matches by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/871
  • fix(crypto): bound untrusted P2PK witness and CBOR decode input by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/874
  • fix(wallet): verify the lock pubkey on generic mint quotes by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/875
  • fix(crypto): harden P2PK witness edge cases by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/877
  • fix(wallet): tidy diagnostic log output by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/879
  • fix(wallet): more debug log tidy-up by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/881
  • fix(auth): tidy the OIDC debug logging by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/883
  • chore(main): release 5.0.0-rc.5 by @robwoodgate in https://github.com/cashubtc/cashu-ts/pull/817

Full Changelog: https://github.com/cashubtc/cashu-ts/compare/v5.0.0-rc.4...v5.0.0-rc.5