Ripple Lib Versions Save

A JavaScript/TypeScript API for interacting with the XRP Ledger in Node.js and the browser

[email protected]

2 months ago

What's Changed

Migration Guide

BREAKING CHANGES

  • Bump typescript to 5.x
  • Remove Node 14 support
  • Remove crypto polyfills, create-hash, elliptic, hash.js, and their many dependencies in favor of @noble/hashes and @nobel/curves
  • Remove bip32 and bip39 in favor of @scure/bip32 and @scure/bip39
  • Remove assert dependency. If you were catching AssertionError you need to change to Error
  • Configuring a proxy:
    • Instead of passing various parameters on the ConnectionsOptions you know specify the agent parameter. This object can use be created by libraries such as https-proxy-agent or any that implements the http.Agent.
    • This was changed to both support the latest https-proxy-agent and to remove the need to include the package in bundlers. Tests will still be done using https-proxy-agent and only tested in a node environment which was the only way it was previously supported anyway
  • Remove BroadcastClient which was deprecated
  • Uses @xrplf/secret-numbers instead of xrpl-secret-numbers
  • Improve key algorithm detection. It will now throw Errors with helpful messages
  • Move authorizeChannel from wallet/signer to wallet/authorizeChannel to solve a circular dependency issue.
  • When using a bundler you must remove the mapping of ws to WSWrapper. ex. ws: 'xrpl/dist/npm/client/WSWrapper'. See [../UNIQUE_STEPS](Unique Steps) for the new, much smaller, configs.
  • Transaction type has been redefined to include all transactions and SubmittableTransaction was created to define the old value. The following functions which only handle transactions to be submitted now use SubmittableTransaction:
    • Client.autofill
    • Client.submit
    • Client.submitAndWait
    • Client.prepareTransaction
    • getSignedTx
    • isAccountDelete
  • dropsToXRP and Client.getXrpBalance now return a number instead of a string
  • Buffer has been replaced with UInt8Array for both params and return values. Buffer may continue to work with params since they extend UInt8Arrays.

Bundling Changes

Bundler configurations are much more simplified. See [../UNIQUE_STEPS](Unique Steps) for the new, much smaller, configs.

  • removed the following polyfills:
    • buffer
    • assert
    • crypto-browserify
    • https-browserify
    • os-browserify
    • process
    • stream-browserify
    • stream-http
    • url
    • util - previously added automatically by webpack
    • events - previously added automatically by webpack but manual for vite**
  • Removed mappings for:
    • ws to WsWrapper
    • Excluding https-proxy-agent

Non-Breaking Changes

  • Deprecated:
    • convertHexToString in favor of @xrplf/isomorphic/utils's hexToString
    • convertStringToHex in favor of @xrplf/isomorphic/utils's stringToHex

Full Changelog: https://github.com/XRPLF/xrpl.js/compare/[email protected]@3.0.0

[email protected]

2 months ago

What's Changed

Migration Guide: https://github.com/XRPLF/xrpl.js/blob/3.0/MIGRATION.md

BREAKING CHANGES

  • Bump typescript to 5.x
  • Remove Node 14 support
  • Remove assert dependency. If you were catching AssertionError you need to change to Error.
  • Fix deriveKeypair ignoring manual decoding algorithm. (Specifying algorithm=ed25519 in opts now works on secrets like sNa1...)
  • Remove crypto polyfills, create-hash, elliptic, hash.js, and their many dependencies in favor of @noble/hashes and @nobel/curves
  • Remove bytesToHex and hexToBytes. They can now be found in @xrplf/isomorphic/utils
  • verifyTransaction will throw an error if there is no signature
  • Improved key algorithm detection. It will now throw Errors with helpful messages
  • Buffer has been replaced with UInt8Array for both params and return values. Buffer may continue to work with params since they extend UInt8Arrays.

Non-Breaking Changes

  • Remove brorand as a dependency and use @xrplf/isomorphic instead.
  • Eliminates 4 runtime dependencies: base-x, base64-js, buffer, and ieee754.

Full Changelog: https://github.com/XRPLF/xrpl.js/compare/[email protected]@2.0.0

[email protected]

2 months ago

What's Changed

Migration Guide: https://github.com/XRPLF/xrpl.js/blob/3.0/MIGRATION.md

BREAKING CHANGES

  • Bump typescript to 5.x
  • Remove Node 14 support
  • Remove decimal.js and big-integer. Use BigNumber from bignumber.js instead of Decimal and the native BigInt instead of bigInt.
  • Remove assert dependency. If you were catching AssertionError you need to change to Error.
  • Remove create-hash in favor of @noble/hashes
  • Buffer has been replaced with UInt8Array for both params and return values. Buffer may continue to work with params since they extend UInt8Arrays.

Non-Breaking Changes

  • Update type definitions which causing errors in tests that the code already supported
    • makeParser to accept a Buffer in addition to string
    • SerializedType constructor allows not passing in a byte array
    • Comparable is now a generic type so that it allows compareTo methods to take more that the type itself.
  • Eliminates 4 runtime dependencies: base-x, base64-js, buffer, and ieee754.

Full Changelog: https://github.com/XRPLF/xrpl.js/compare/[email protected]@2.0.0

[email protected]

2 months ago

What's Changed

Migration Guide: https://github.com/XRPLF/xrpl.js/blob/3.0/MIGRATION.md

BREAKING CHANGES

  • Bump typescript to 5.x
  • Remove Node 14 support
  • Remove assert dependency. If you were catching AssertionError you need to change to Error.
  • Remove create-hash in favor of @noble/hashes
  • Buffer has been replaced with UInt8Array for both params and return values. Buffer may continue to work with params since they extend UInt8Arrays.

Non-Breaking Changes

  • Eliminates 4 runtime dependencies: base-x, base64-js, buffer, and ieee754.
  • Execute test in a browser in addition to node

Full Changelog: https://github.com/XRPLF/xrpl.js/compare/[email protected]@5.0.0

@xrplf/[email protected]

2 months ago

Related to xrpl.js 3.0.0 migration guide: https://github.com/XRPLF/xrpl.js/blob/3.0/MIGRATION.md

Initial release providing isomorphic and tree-shakable implementations of:

  • ripemd160
  • sha256
  • sha512
  • bytesToHash
  • hashToBytes
  • hexToString
  • stringToHex
  • randomBytes
  • stringToHex
  • ws

Full Changelog: https://github.com/XRPLF/xrpl.js/compare/[email protected]...@xrplf/[email protected]

@xrplf/[email protected]

2 months ago

What's Changed

Migration Guide: https://github.com/XRPLF/xrpl.js/blob/3.0/MIGRATION.md

BREAKING CHANGES:

  • xrpl-secret-numbers is now @xrplf/secret-numbers.
  • The bundled file produced changed from dist/browerified.js to build/xrplf-secret-numbers-latest.js.
  • Bundle variable is xrplf_secret_numbers instead of using browserify's loader.
    • Moved all methods that were on Utils are now individually exported.
  • Buffer has been replaced with UInt8Array for both params and return values. Buffer may continue to work with params since they extend UInt8Arrays.

Non-Breaking Changes

  • Add xrpl-secret-numbers by @WietseWind to the mono repo.
  • unpkg and jsdelivr support was simplified.
  • Unit tests run in a browser and node.
  • Remove brorand as a dependency and use @xrplf/isomorphic instead.
  • Eliminates 4 runtime dependencies: base-x, base64-js, buffer, and ieee754.

Full Changelog: https://github.com/XRPLF/xrpl.js/compare/[email protected]...@xrplf/[email protected]

[email protected]

2 months ago

What's Changed

Full Changelog: https://github.com/XRPLF/xrpl.js/compare/[email protected]@2.14.1

[email protected]

4 months ago

What's Changed

New Contributors

Full Changelog: https://github.com/XRPLF/xrpl.js/compare/[email protected]@2.14.0

[email protected]

4 months ago

What's Changed

Full Changelog: https://github.com/XRPLF/xrpl.js/compare/[email protected]@1.11.0

[email protected]

4 months ago

What's Changed

New Contributors

Full Changelog: https://github.com/XRPLF/xrpl.js/compare/[email protected]@2.14