We are pleased to announce the release of ripple-lib version 1.0.0!
ripple-lib is a high-level JavaScript interface to the XRP Ledger. This version features a range of changes and improvements that make the library more capable and flexible. It includes new methods for accessing rippled APIs, including subscriptions.
When using this version with rippled for online functionality, we recommend using rippled version 1.0.1 or later.
Below is a summary of the changes since ripple-lib version 0.22.0 (the previous non-beta version).
- Add
request(),hasNextPage(), andrequestNextPage()for accessingrippledAPIs. - Add
prepareTransaction()for preparing rawtxJSON. - XRP amounts can be specified in drops. Also,
xrpToDrops()anddropsToXrp()are available to make conversions. getTransaction()responses can include a newchannelChangesproperty that describes the details of a payment channel.
- Amounts in drops and XRP are checked for validity.
- A maximum fee is now imposed. Exceeding it causes a
ValidationErrorto be thrown. - Errors are improved and more data validation was added.
- Bug fix:
getPathsnow filters paths correctly and works correctly when the destination currency is XRP.
The following changes were introduced in 1.0.0.
getTransaction()andgetTransactions()- The
specification.destination.amountfield has been removed from the parsed transaction response. - To determine the amount that a transaction delivered, use
outcome.deliveredAmount. - If you require the provisional requested
Amountfrom the original transaction:- Use
getTransaction()'sincludeRawTransactionoption, or - Use
getTransactions()'sincludeRawTransactionsoption, or - Use the
rippledAPIs directly withrequest(). For example, call the API methodstx,account_tx, etc.
- Use
- The
getLedger()response object- The
rawTransactionsfield has been removed (for consistency withgetTransaction()andgetTransactions()). - Instead, within each transaction, use the new
rawTransactionJSON string. - The
metaDatafield has been renamed tometafor consistency withrippled'stxmethod. ledger_indexhas been added to each raw transaction.
- The
ripple-lib Documentation is available in the XRP Ledger Dev Portal.
Other resources:
- Full Release History
- GitHub Issues
- Ripple Technical Services: [email protected]
- XRP Chat Forum (Shut down. Formerly
www.xrpchat.com)
We welcome reviews of the codebase and urge reviewers to responsibly disclose any issues that they may find. For more on Ripple's Bug Bounty program, please visit https://ripple.com/bug-bounty/.
On behalf of the XRP Community, we would like the thank those who have contributed to the development of the ripple-lib open source code, whether they did so by writing code, using the library, reporting issues, discovering bugs or offering suggestions for improvements.
The following is the list of people who made code contributions, large and small, to ripple-lib prior to the release of 1.0.0:
Abraham Tom, Adrian Hope-Bailie, Alan Cohen, Alex Choi, amougel, Andreas Brekken, Andrey Fedorov, Arthur Britto, Ben Sharafian, Bo Chen, Brad Chase, Brandon Wilson, Brian Clifton, Cheng Wei, Chris Clark, Chris Yuen, cryptcoin-junkey, Daniel Davis, Dan Quirk, Daren Tuzi, darkmemo, David Schwartz, Edward Hennis, Elliot Lee, Evan Schwartz, Ewald Moitzi, Filip Andersson, Franziska Hinkelmann, Fred K. Schott, FrRichard, Geert Weening, Hovhannes Kuloghlyan, Ivan Tivonenko, jatchili, Jed McCaleb, Jks Liu, Justin Lynn, lid, Liucw, Luke Burns, Madeline Shortt, Manish Jethani, Matthew Fettig, Mehul Kar, Michael Elsdörfer, Moe Adham, Mo Morsi, Nicholas Dudfield, Nicolás López Jullian, Niraj Pant, professorhantzen, Reed Rosenbluth, ripplerm, Rome Reginelli, Ryan Young, sentientwaffle, Stefan Thomas, Steven Zeiler, Vahe Hovhannisyan, Vinnie Falco, Waldir Pimenta, wltsmrz and Yeechan Lu.
We look forward to more external contributions and are excited to see the broader XRP Ledger community grow and thrive.