ripple-lib version 1.0.0
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).
Release Notes
New Features
- Add
request()
,hasNextPage()
, andrequestNextPage()
for accessingrippled
APIs. - 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 newchannelChanges
property that describes the details of a payment channel.
Data Validation and Errors
- Amounts in drops and XRP are checked for validity.
- A maximum fee is now imposed. Exceeding it causes a
ValidationError
to be thrown. - Errors are improved and more data validation was added.
- Bug fix:
getPaths
now filters paths correctly and works correctly when the destination currency is XRP.
Breaking Changes
The following changes were introduced in 1.0.0.
getTransaction()
andgetTransactions()
- The
specification.destination.amount
field 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
Amount
from the original transaction:- Use
getTransaction()
'sincludeRawTransaction
option, or - Use
getTransactions()
'sincludeRawTransactions
option, or - Use the
rippled
APIs directly withrequest()
. For example, call the API methodstx
,account_tx
, etc.
- Use
- The
getLedger()
response object- The
rawTransactions
field has been removed (for consistency withgetTransaction()
andgetTransactions()
). - Instead, within each transaction, use the new
rawTransaction
JSON string. - The
metaData
field has been renamed tometa
for consistency withrippled
'stx
method. ledger_index
has been added to each raw transaction.
- The
Learn, ask questions, and discuss
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
Other Information
Bug Bounties and Responsible Disclosures
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/.
Acknowledgements
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.
Contributors
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.