Introducing Clio version 2.4.0
Version 2.4.0 of Clio, an XRP Ledger API server optimized for HTTP and WebSocket API calls, is now available. This release adds bug fixes.
Notable New Features
- Refactor of Clio config and generation of config descriptions
- Snapshot exporting tool
- Expose ledger cache full and disabled to prometheus
Amendment Support
The following amendments have been introduced since Clio 2.3.1 and have transaction model changes. Clio 2.4.0 is built with libxrpl
2.4.0, which supports these amendments.
If these amendments are enabled and you have not upgraded Clio to 2.4.0 or newer, the ETL will be amendment blocked and new ledgers will not be processed.
To check the current voting status of these amendments on Mainnet, see the XRPL Amendments Dashboard.
What's Changed
See the Full Changelog on GitHub.
Features
- Add Conan profiles for common Sanitizers to docker ci image (#1856) by @godexsoft
- ETLng task manager (#1843) by @godexsoft
- Support Dynamic NFT (#1525) by @cindyyan317
- Permissioned domains (#1841) by @kuznetsss
- Run tests with sanitizers in CI (#1879) by @godexsoft
- Generate config descriptions (#1842) by @PeterChen13579
- Support Simulate (#1891) by @PeterChen13579
- Snapshot exporting tool (#1877) by @cindyyan317
- ETLng monitor (#1898) by @godexsoft
- LPT freeze (#1840) by @shawnxie999
- Add workflow to check config description (#1894) by @PeterChen13579
- Add support for deep freeze (#1875) by @PeterChen13579
- Implement and use LedgerCacheInterface (#1955) by @godexsoft
- Expose ledger cache full and disabled to prometheus (#1957) by @kuznetsss
Bug Fixes
- CacheLoader causes crash when no cache is used (#1853) by @kuznetsss
- Re-add account_tx max limit (#1855) by @godexsoft
- Array parsing in new config (#1884) by @kuznetsss
- Array parsing in new config (#1896) by @kuznetsss
- Better errors on logger init failure (#1857) by @kuznetsss
- Fix backtrace usage (#1932) by @kuznetsss
- Data race in new webserver (#1926) by @kuznetsss
- Fix dangling reference in new web server (#1938) by @kuznetsss
- Change math/rand to crypto/rand (#1941) by @PeterChen13579
- Improve error message when starting read only mode with empty DB (#1946) by @kuznetsss
- Fix url check in config (#1953) by @kuznetsss
Refactor
- Use mutex from utils (#1851) by @kuznetsss
- Remove boost filesystem (#1859) by @PeterChen13579
Documentation
- Move metrics and static analysis docs (#1864) by @maria-robobug
Styling
- Use error code instead of exception when parsing json (#1942) by @kuznetsss
Testing
- Add non-admin test for simulate (#1893) by @PeterChen13579
- Add assert mock to avoid death tests (#1947) by @kuznetsss
Miscellaneous Tasks
- Fix issue found by clang-tidy (#1849) by @kuznetsss
- Fix error in grafana dashboard example (#1878) by @kuznetsss
- Revert workflow names (#1890) by @godexsoft
- Upload cache only for develop branch (#1897) by @kuznetsss
- Use ubuntu latest for some ci jobs (#1939) by @kuznetsss
- Update libxrpl (#1943) by @PeterChen13579
- Upgrade libxrpl to 2.4.0 (#1961) by @kuznetsss
Install / Upgrade
For other platforms, please build from source. The most recent commit in the git log should be:
Merge: 5e7ff66b 67e451ec
Author: Sergey Kuznetsov <[email protected]>
Date: Thu Mar 13 17:02:52 2025 +0000
chore: Commits for 2.4.0-rc2 (#1964)
Feedback
To report an issue or propose a new idea, please open an issue.