Skip to content
Blockchain Certification

Introducing XRP Ledger (rippled) version 1.2.0


Ripple is pleased to announce the release of XRP Ledger (rippled) version 1.2.0.

The XRP Ledger version 1.2.0 release introduces the MultisignReserve Amendment, which reduces the reserve requirement associated with signer lists for Multisign. This release also includes incremental improvements to the code that handles offers in the decentralized exchange (fixTakerDryOfferRemoval and fix1578 Amendments).

One of the major benefits of decentralized blockchain certification technologies, such as the XRP Ledger, is censorship resistance. Already highly resistant to censorship attempts, with the release of version 1.2.0 of the XRP Ledger, servers now have the ability to automatically detect transaction censorship attempts and issue warnings of increasing severity for transactions that a server believes should have been included in a closed ledger after several rounds of consensus.

Action Required

If you operate an XRP Ledger server, then you should upgrade to version 1.2.0 by Wednesday, 2019-02-27, to ensure service continuity.

Impact of Not Upgrading

Ripple expects the MultisignReserve, fixTakerDryOfferRemoval, and fix1578 amendments to become enabled no earlier than Wednesday, 2019-02-27. When this happens, if you are not running release 1.2.0 or greater, your server will become amendment blocked, meaning that it:

  • Cannot determine the validity of a ledger;

  • Cannot submit or process transactions;

  • Cannot participate in the consensus process;

  • Cannot vote on future amendments; and

  • Could rely on potentially invalid data.

If the MultisignReserve, fixTakerDryOfferRemoval, and fix1578 amendments do not become enabled, then your XRP Ledger server will not become amendment blocked and should continue to operate.


On supported platforms, see the instructions on updating rippled.

For other platforms, please compile version 1.2.0 from source.

The first log entry should be the change setting the version:

commit 7779dcdda00ea61a976cf5f387bc1f3bb4ebbfdd;
Author: Mike Ellery <[email protected]>;
Date:   Tue Feb 12 16:41:03 2019 -0800;
    Set version to 1.2.0;

Network Update

The Ripple technical operations team plans to deploy version 1.2.0 to all XRP Ledger servers under its operational control, including private clusters, starting at 2:00 PM PST on Wednesday, 2019-02-13. At that time, Ripple plans to start voting in favor of the fix1578 amendment. The deployment is expected to complete within 4 hours. The network should continue to operate during deployment and no outage is expected.

Learn, ask questions, and discuss

Related documentation is available in the XRP Ledger Dev Portal, including detailed example API calls and web tools for API testing.

Other resources:

Other Information

Bug Bounties and Responsible Disclosures

On behalf of the XRP Community, Ripple would like to thank Guido Vranken and Aaron Hook, for their research effortsand for responsibly disclosing the issues they discovered. As always, Ripple welcomes reviews of the XRP Ledger open source codebase and urge reviewers to responsibly disclose any issues that they may find. For more on Ripple’s Bug Bounty program, please visit

Boost Compatibility

When compiling XRP Ledger from source, you must use a compatible version of the Boost library. As of XRP Ledger version 1.2.0, Boost 1.67.0 is required for all platforms.

1.2.0 Change Log

New and Updated Features

  • Enhance /crawl API endpoint with local server information (#2823)

  • Report duration in current state (#2772)

  • Allow servers to detect transaction censorship attempts (#2700)

  • Add RPC command shard crawl (#2697)

  • Default ledger_entry by index to return JSON, not hex (#2713)

  • Add support for Ed25519 seeds encoded using ripple-lib (#2734)

New and Changed Amendments

  • Improve error indicators on two transactions (#2584)

  • Reduce the account reserve for a Multisign SignerList (#2649)

  • fixTakerDryOfferRemoval Amendment to fix non-removal of dry offers when autobridging (#2695)

  • Retire the FeeEscalation amendment (#2730)

Config Changes

  • Remove [ips] section from sample config (e5d6f16)

  • “Add to default hub config” (#2807)

  • Load validator list from file: (#2744)

  • Change conflicting example websocket port (#2726)

  • Remove outdated example configs. (#2648)

Bug Fixes

  • Improve preferred ledger calculation (#2784)

  • Account for minimum reserve in potential spend (#2750)

  • STObject:setType() returns description of error if any (#2753)

  • Improve RPC error message for fee command (#2704)

  • Eliminate potential undefined behavior (#2762)

  • Fix memory leak in Json move assignment operator (#2747)

  • Use after move fix (#2752)

  • Use correct manifest cache when loading ValidatorList (#2745)

Other Improvements:

  • Support for boost 1.68 (#2652)

  • Improve ssl and NIH in cmake (#2655)

  • Refine json object test for NDEBUG case (#2656)

  • Use ExternalProject for some third party deps (#2678)

  • Report fetch pack errors with shards (#2680)

  • Rollup of small changes…