xrpld 3.2.0 was officially released — a maintenance release that retires long-active amendments, renames the binary from rippled to xrpld (XLS-95), and introduces the fixCleanup3_2_0 amendment. In rippled, 24 PRs merged to develop including granular delegation permissions, a 1 MB memory transfer limit for wasm host functions, Confidential Transfer updates, an AMM division-by-zero fix, and a peer-charging correctness fix. The developer portal landed 8 PRs completing the 3.2.0 documentation push with release notes, the fixCleanup3_2_0 amendment page, and an improved rippled→xrpld migration guide. Clio merged 7 PRs — headlining a full CI migration to Nix-based images, MPT holder indexing improvements, and new storage primitives for MPT issuance history — and shipped release candidate 2.7.1-rc3.
The biggest news this week is the official release of xrpld 3.2.0, the latest version of the core XRP Ledger server software. The most visible change for operators is a rename: the server binary is now called xrpld instead of rippled, and configuration files and data directories have moved to new default paths. If you run an XRP Ledger node, you'll need to follow a migration guide (now published at xrpl.org) when upgrading. The release also retires dozens of amendments that have been active on the network for over two years — essentially housekeeping that simplifies the codebase — and introduces a new cleanup amendment called fixCleanup3_2_0 that bundles bug fixes for Vaults, the Lending Protocol, Multi-Purpose Tokens, and the permissioned DEX. One early adopter did report difficulty getting 3.2.0 to sync on mainnet, and the team is actively investigating.
Behind the scenes, the development branch saw 24 changes merged. Notable among them: a fix that prevents a potential denial-of-service in the AMM withdrawal path (where a specially crafted price could trigger a division-by-zero), a fix ensuring that misbehaving network peers are properly disconnected, and a new permission template system that tightens what delegated accounts can do — closing a reported bypass. The Confidential Transfer feature (which would allow token balances to be hidden on-chain using cryptographic proofs) received significant updates and test coverage. Work also continued on the Sponsorship feature (XLS-68), which would let one account pay fees and reserves on behalf of another. The Clio API server — which applications use to query the ledger — improved how it tracks Multi-Purpose Token holders and began building infrastructure for MPT transaction history. The Java SDK (xrpl4j) fixed two bugs: one where positive and negative amounts were incorrectly treated as equal, and another where a field was being read as hexadecimal instead of decimal.
For the latest updates, follow @XRPLF and @RippleXDev on X, or check the release blog post at xrpl.org/blog/2026/xrpld-3.2.0.
Note: All rippled changes below were merged to the develop branch and are not yet live on the network. A tagged release is required for any change to reach production.
Note: SDK PRs below were merged to each library's main branch. They become available to application developers only after a tagged release is published (npm for xrpl.js, Maven Central for xrpl4j, PyPI for xrpl-py). If no corresponding SDK release appears in the data, treat the feature as merged-but-pending-release and phrase availability accordingly.
permissions.macro for each transaction type, so delegated transactions can only include specifically allowed fields and flags. Closes a reported issue where MPTokenIssuanceSet delegates could bypass permission checks. A significant change at +832/−328 across 19 files. rippled#6613AMMWithdraw::singleWithdrawEPrice, which could surface as an uncaught exception. Approved by @PeterChen13579. rippled#6989 (+32/−4)Drop disposition properly severs the connection, rather than being silently skipped. Approved by @godexsoft and @vlntb. rippled#7422 (+10/−8)/var/lib/xrpld and /var/log/xrpld on every service start, making the service self-healing if directories are removed after install. rippled#7565 (+4/−0)debian/rules and applying clang-tidy unused-header removals. Approved by @mathbunnyru. rippled#7553 (+909/−602 across 37 files)ubsan.supp, and fixes a genuine divide-by-zero. rippled#7531 (+115/−49)nixpkgs-unstable and removes a devshell-only Conan override. rippled#7534 (+9/−28)assert=ON for Release configs; assertion-enabled builds will be explicit CI variants going forward. rippled#7443MPTokenAuthorize transactions. Now it indexes holders from any transaction that creates an ltMPTOKEN node (e.g., Payment), fixing missing results in mpt_holders RPC. Closes clio#2695. clio#3102 (+184/−32)mpt_issuance_history: Lands the additive Cassandra schema and backend layer for MPT transaction-history filtering — the first PR in a broader plan that will later add live ETL indexing, historical backfill, and an RPC handler. Approved by @Kassaking7 and @PeterChen13579. clio#3091 (+858/−10)fixCleanup3_2_0 to known amendments: xrpl-dev-portal#3717rippled → xrpld migration guide with a safer backup checklist and clearer data steps. xrpl-dev-portal#3711 (+106/−30)rippled to xrpld migration runbook: The initial migration how-to for operators upgrading 3.1.3 → 3.2.0. xrpl-dev-portal#3702 (+176/−0)ReferenceHolding to MPTokenIssuance and vault_info shares: Also adds missing fields (Sequence, DomainID) to MPTokenIssuance and (VaultID, LoanBrokerID) to AccountRoot. Merged — pending npm release. xrpl.js#3345 (+218/−9)LockedAmount to base-10 field names: Fixes the binary codec treating LockedAmount as base-16 instead of base-10. Merged — pending Maven Central release. xrpl4j#803 (+12/−1)XrpCurrencyAmount.equals() and hashCode() sign handling: Previously, opposite values (e.g., 1 and −1) returned true for equals(). The isNegative flag is now included in comparison. Merged — pending Maven Central release. xrpl4j#800 (+18/−4)rippled — Add validator-keys to xrpld project (rippled#7555, +2,306/−68 across 33 files) — Adds the validator-keys utility as an optional CMake target included in Linux packages. Has change requests from @mathbunnyru; still in active review.
rippled — Allocate TaggedCache::getKeys() memory outside of lock (rippled#7567, +10/−2) — Performance fix to reduce lock contention for large caches. Approved by the AI reviewer.
rippled — Align RPM packaging with DEB package (rippled#7529, +213/−148) — Disables RPM dwz debuginfo optimization and writes uncompressed payloads, trading larger artifacts for faster builds (RPM now ~2 min vs. ~12 min). Approved by @mathbunnyru but expanded in scope and needs a second approval.
rippled — Improve Number addition/subtraction rounding (rippled#7369, +940/−341) — Recovers more digits during addition and rounds down any remainders. Approved by the AI reviewer; marked "Ready to merge."
rippled — Casting issues in RPC CLIs (rippled#6044, +281/−449) — Labeled "API Change." Approved by the AI reviewer but has conflicts.
rippled — Formal Verification: Lean4 Integration (rippled#7549, +35,850 across 181 files) — From a community member. Adds a Lean4-to-C++ formal verification framework with example model and FFI bridge. Has unsigned commits that need to be resolved.
rippled — Strip inline # comments from single-value config sections (rippled#7546, +55/−0) — Community member fix for a startup crash when inline comments are used in sections like [peer_private]. Closes rippled#7545.
rippled — Sponsor (XLS-68) (rippled#7350, +12,648/−573 across 157 files) — Full implementation of Sponsored Fees and Reserves. Has conflicts.
rippled — Confidential Transfer for MPT (rippled#5860, +21,048/−354 across 66 files) — The main Confidential Transfer PR. Labeled "Amendment" and "Blocked: Needs Final XLS." Has conflicts.
xrpl.js — Support BatchV1_1 signing (xrpl.js#3371, +209/−72) — Updates Batch (XLS-56) signing to match the V1_1 scheme in rippled. Under active review by @ckeshava.
xrpl.js — Confidential Transfers for MPTs (XLS-0096) (xrpl.js#3364, +4,444 across 61 files) — Adds wire-format definitions, transaction/ledger models, and field definitions. Approved by the AI reviewer.
xrpl.js — Address critical security advisories and add audit CI (xrpl.js#3376, +575/−578) — Upgrades dependencies to fix 4 high and 1 critical vulnerability. Adds an automated CI audit check.
xrpl4j — Batch V1_1 updates (XLS-56) (xrpl4j#808, +768/−246) — Draft; awaiting a valid xrpld container for integration tests.
xrpl4j — secp256k1 deriveScalar byte accumulation fix (xrpl4j#801, +70/−1) — Fixes a bug where seed bytes accumulated across loop iterations instead of resetting. Approved by AI reviewer; pending merge.
xrpl-py — Fix Directory ledger entry dir_root validation (xrpl-py#1008, +13/−2) — Makes dir_root optional so lookups by owner + sub_index work. Closes xrpl-py#885. From a community member.
XRPL-Standards — XLS-68 spec changes before merge (XRPL-Standards#564) — Aligns the Sponsored Fees and Reserves spec with the rippled implementation.
XRPL-Standards — XLS-56 Batch V1_1 spec changes (XRPL-Standards#563) — Tightens BatchSigners rules and clarifies inner-transaction semantics.
XRPL-Standards — XLS-94 update: remove clear mutable flags (XRPL-Standards#562) — Removes all tmfMPTClear mutable flags from the DynamicMPT spec. Approved by @Kassaking7.
connected state where 3.1.3 syncs fine on the same host. Under active investigation by the core team. Worth monitoring as operators begin upgrading.xrpld 3.2.0 sync failure report: A mainnet operator (@joshuahamsa) reported that xrpld 3.2.0 never acquires ledger data and stays stuck in connected state, while rippled 3.1.3 syncs fine on the same host. Core team member @xzhaous is actively investigating, with the operator providing detailed diagnostics. rippled#7572
APT package availability: A user noted the APT repo still showed 3.1.3 after the 3.2.0 GitHub release. Core team confirmed that the binary is now xrpld per XLS-95 and the package is available through updated repositories. rippled#7547
Config crash from inline comments: Community member @pete-csyn filed an issue and corresponding fix PR for a startup crash when inline # comments appear in single-value config sections (e.g., [peer_private]). Confirmed reproducible on 3.1.3 and 3.2.0. rippled#7545, rippled#7546
Container logging documentation: The same contributor opened paired PRs across rippled and xrpl-dev-portal documenting how to route logs via /dev/stdout and clarifying that --silent suppresses console logging for the entire run, not just startup — important for container deployments. rippled#7579, xrpl-dev-portal#3721
Decimal context sensitivity in xrpl-py: @RaymondSeven reported that Amount.to_json() output changes depending on the ambient decimal.getcontext().prec setting, making IOU amount decoding dependent on process/thread state. xrpl-py#1009
Batch signing mismatch in xrpl.js: @florent-uzio identified that xrpl.js's Batch (XLS-56) signing doesn't match the updated scheme in rippled's Batch V1_1 work, causing batches to be rejected with temBAD_SIGNATURE. xrpl.js#3370
Security vulnerabilities flagged in xrpl.js pre-releases: Automated scans detected critical/high vulnerabilities in the dependency trees of xrpl@5.1.0-batch.1 and ripple-binary-codec@2.9.0-batch.1. A PR to address these is in progress. xrpl.js#3375, xrpl.js#3373, xrpl.js#3372
New XLS proposals: Two new draft proposals appeared in XRPL-Standards discussions:
amm_pools API to enumerate and filter AMM pools without prior knowledge of asset pairs. Core team member @mvadari raised concerns about the underlying cost being similar to a full ledger_data scan.Formal verification exploration: Community member @ivan-randjelovic-cp submitted a large PR (+35,850 lines) integrating Lean4 into xrpld for formal verification, including an example model, proofs, and an FFI bridge. rippled#7549
Compared to last week (June 8–14, 2026):
| Metric | This Week | Last Week | Change |
| Repos with activity | 8 | 8 | flat |
| rippled PRs merged | 24 | 23 | ↑1 |
| rippled PRs opened | 21 | 15 | ↑6 |
| rippled new issues | 3 | 60 | ↓57 |
| rippled releases | 1 | 0 | ↑1 |
| rippled commits | 35 | — | — |
| xrpl.js PRs merged | 1 | 0 | ↑1 |
| xrpl.js PRs opened | 4 | 2 | ↑2 |
| xrpl.js releases | 2 | 0 | ↑2 |
| xrpl.js new issues | 4 | 1 | ↑3 |
| xrpl-py PRs merged | 0 | 0 | flat |
| xrpl-py PRs opened | 3 | — | — |
| xrpl-py new issues | 1 | 2 | ↓1 |
| xrpl4j PRs merged | 2 | 2 | flat |
| xrpl4j PRs opened | 10 | 7 | ↑3 |
| xrpl-dev-portal PRs merged | 8 | 22 | ↓14 |
| xrpl-dev-portal PRs opened | 12 | 5 | ↑7 |
| xrpl-dev-portal commits | 22 | 31 | ↓9 |
| Clio PRs merged | 7 | 5 | ↑2 |
| Clio releases | 2 | 1 | ↑1 |
| XRPL-Standards PRs merged | 1 | 2 | ↓1 |
| XRPL-Standards PRs opened | 4 | 1 | ↑3 |
| opensource.ripple.com PRs opened | 1 | 1 | flat |
| Releases (total) | 5 | 1 | ↑4 |
The headline event this week is the xrpld 3.2.0 release — last week saw the massive documentation push land, and this week the release itself shipped along with the back-merge into develop. Several items from last week's "In Progress" landed: the build environment docs rewrite (rippled#7533) and xrpl4j bug fixes (xrpl4j#803, xrpl4j#800) all merged. The portal activity naturally dropped from 22→8 merged PRs as the 3.2.0 documentation wave completed, while opened portal PRs rose (5→12) reflecting follow-up improvements. New issue volume in rippled dropped sharply (60→3) as last week's audit filing concluded, while xrpl.js issue volume rose (1→4) primarily from automated security scans on new pre-releases. Clio saw increased merge velocity (5→7) driven by CI infrastructure modernization.