Last updated

Introducing XRP Ledger version 1.12.0

Version 1.12.0 of rippled, the reference server implementation of the XRP Ledger protocol, is now available. This release adds new features and bug fixes, and introduces these amendments:

  • AMM
  • Clawback
  • fixReducedOffersV1

Sign Up for Future Release Announcements

Action Required

Three new amendments are now open for voting according to the XRP Ledger's amendment process, which enables protocol changes following two weeks of >80% support from trusted validators.

If you operate an XRP Ledger server, upgrade to version 1.12.0 by September 20, 2023 to ensure service continuity. The exact time that protocol changes take effect depends on the voting decisions of the decentralized network.

Install / Upgrade

On supported platforms, see the instructions on installing or updating rippled.

PackageSHA-256
RPM for Red Hat / CentOS (x86-64)9907ee871f3a42e3fb5bde7cfc41d9fd82f495f8a8f85135086a5624c29c74de
DEB for Ubuntu / Debian (x86-64)cf7b7b2130b8255d8c13fc18b3a4a0ec251d88386b69ec2e60c34b31df310f91
Portable Builds (Linux x86-64)(Use signature verification)

For other platforms, please build from source. The most recent commit in the git log should be the change setting the version:

commit 89780c8e4fd4d140fcb912cf2d0c01c1b260539e
Author: Manoj Doshi <[email protected]>
Date:   Wed Sep 6 13:09:04 2023 -0700

    Set version to 1.12.0

Changelog

Amendments, New Features, and Changes

(These are changes which may impact or be useful to end users. For example, you may be able to update your code/workflow to take advantage of these changes.)

  • AMM: Introduces an automated market maker (AMM) protocol to the XRP Ledger's decentralized exchange, enabling you to trade assets without a counterparty. For more information about AMMs, see: Automated Market Maker. #4294

  • Clawback: Adds a setting, Allow Clawback, which lets an issuer recover, or claw back, tokens that they previously issued. Issuers cannot enable this setting if they have issued tokens already. For additional documentation on this feature, see: #4553.

  • fixReducedOffersV1: Reduces the occurrence of order books that are blocked by reduced offers. #4512

  • Added WebSocket and RPC port info to server_info responses. #4427

  • Removed the deprecated accepted, seqNum, hash, and totalCoins fields from the ledger method. #4244

Bug Fixes and Performance Improvements

(These are behind-the-scenes improvements, such as internal changes to the code, which are not expected to impact end users.)

  • Added a pre-commit hook that runs the clang-format linter locally before committing changes. To install this feature, see: CONTRIBUTING. #4599

  • In order to make it more straightforward to catch and handle overflows: changed the output type of the mulDiv() function from std::pair<bool, uint64_t> to std::optional. #4243

  • Updated Handler::Condition enum values to make the code less brittle. #4239

  • Renamed ServerHandlerImp to ServerHandler. #4516, #4592

  • Replaced hand-rolled code with std::from_chars for better maintainability. #4473

  • Removed an unused TypedField move constructor. #4567

Docs and Build System

  • Updated checkout versions to resolve warnings during GitHub jobs. #4598

  • Fixed an issue with the Debian package build. #4591

  • Updated build instructions with additional steps to take after updating dependencies. #4623

  • Updated contributing doc to clarify that beta releases should also be pushed to the release branch. #4589

  • Enabled the BETA_RPC_API flag in the default unit tests config, making the API v2 (beta) available to unit tests. #4573

  • Conan dependency management.

    • Fixed package definitions for Conan. #4485
    • Updated build dependencies to the most recent versions in Conan Center. #4595
    • Updated Conan recipe for NuDB. #4615
  • Added binary hardening and linker flags to enhance security during the build process. #4603

  • Added an Artifactory to the nix workflow to improve build times. #4556

  • Added quality-of-life improvements to workflows, using new concurrency control features. #4597

Full Commit Log

GitHub

The public source code repository for rippled is hosted on GitHub at https://github.com/XRPLF/rippled.

We welcome all contributions and invite everyone to join the community of XRP Ledger developers to help build the Internet of Value.

Credits

The following people contributed directly to this release:

Bug Bounties and Responsible Disclosures:

We welcome reviews of the rippled code and urge researchers to responsibly disclose any issues they may find.

To report a bug, please send a detailed report to: [email protected]