@stellar/stellar-base 13.1.0 → 14.0.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,25 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+
6
+ ## [`v14.0.0-rc.1`](https://github.com/stellar/js-stellar-base/compare/v13.1.0...v14.0.0-rc.1): Protocol 23
7
+
8
+ ### Breaking Changes
9
+ * This package now requires **>= Node 20**.
10
+ * XDR definitions have been updated to align with Protocol 23 ([#800](https://github.com/stellar/js-stellar-base/pull/800)).
11
+
12
+ ### Added
13
+ * The `sodium-native` and `tweetnacl` dependencies have been replaced with `@noble/curves` ([#802](https://github.com/stellar/js-stellar-base/pull/802)).
14
+ * Support for claimable balances and liquidity pools in `StrKey` ([#799](https://github.com/stellar/js-stellar-base/pull/799)).
15
+ * Support for claimable balances, liquidity pools, and muxed accounts in `Address` ([#801](https://github.com/stellar/js-stellar-base/pull/801)).
16
+ * Added the ability for `nativeToScVal` to convert arrays with differing types to smart contract values, e.g., `nativeToScVal([1, "x", "y"], { type: [ "i128", "symbol" ]})` will give you a `Vec<i128, symbol, string>` ([#803](https://github.com/stellar/js-stellar-base/pull/803)).
17
+
18
+ ### Fixed
19
+ * Removed the custom `Buffer.subarray` polyfill introduced in [#733](https://github.com/stellar/js-stellar-base/pull/733) in [v11.0.1](https://github.com/stellar/js-stellar-sdk/releases/tag/v11.0.1) as a workaround for React Native's Hermes engine. Please use [`@exodus/patch-broken-hermes-typed-arrays`](https://github.com/ExodusMovement/patch-broken-hermes-typed-arrays) as an alternative, if needed ([#795](https://github.com/stellar/js-stellar-base/pull/795)).
20
+ * Fix browser compatibility with proper module resolution and UMD configuration ([#798](https://github.com/stellar/js-stellar-base/pull/798)).
21
+ * Remove `MuxedAccount.parseBaseAddress` from TypeScript definitions ([#797](https://github.com/stellar/js-stellar-base/pull/797)).
22
+
23
+
5
24
  ## [`v13.1.0`](https://github.com/stellar/js-stellar-base/compare/v13.0.1...v13.1.0)
6
25
 
7
26
  ### Added
package/README.md CHANGED
@@ -146,8 +146,22 @@ earlier versions of Node, so the tests need to run on those versions.)
146
146
 
147
147
  #### Updating XDR definitions
148
148
 
149
+ XDR updates are complicated due to the fact that you need workarounds for bugs
150
+ in the generator, formatter, or a namespace adjustment.
151
+
149
152
  1. Make sure you have [Docker](https://www.docker.com/) installed and running.
150
- 2. `make reset-xdr`
153
+ 2. Change the commit hash to the right version of [stellar-xdr](https://github.com/stellar/stellar-xdr) and add any filenames that might've been introduced.
154
+ 3. Run `make reset-xdr`
155
+ 4. Run `sed -ie s/\"/\'/g types/{curr,next}.d.ts` to minimize the diff (the generator's formatter uses `"` but the repo uses `'`).
156
+ 5. Move `xdr.Operation` into a hidden namespace to avoid conflicts with the SDK's `Operation`.
157
+ 6. Add generator workarounds:
158
+ * `type Hash = Opaque[]` is a necessary alias that doesn't get generated
159
+ * `Hyper`, `UnsignedHyper`, and `ScSpecEventV0` need their signatures
160
+ fixed because linting wants an `Array` instead of a naked `[]`.
161
+ * Some constants aren't generated correctly (e.g, Ctrl+F `SCSYMBOL_LIMIT` in `src/curr_generated.js`)
162
+ 7. Finally, make code adjustments related to the XDR (these are usually revealed by running the tests).
163
+
164
+ As an example PR to follow, [stellar-base#800](https://github.com/stellar/js-stellar-base/pull/800) has detailed steps for each part of the process.
151
165
 
152
166
  ## Usage
153
167