2.2.0
Introducing Clio version 2.2.0
Version 2.2.0 of Clio, an XRP Ledger API server optimized for HTTP and WebSocket API calls, is now available. This release adds new features and bug fixes.
Notable New Features
- Price Oracle support, including
get_aggregate_price
API - Forwarding to rippled for
feature
API- Clio-native implementation of
feature
API is planned for future implementation
- Clio-native implementation of
- Improved doxygen documentation
- TLS 1.3 support
- C++23 compilers
Amendment Support
The following amendments have been introduced since Clio 2.1.2 and have transaction model changes. Clio 2.2.0 is built with libxrpl
2.2.0, which supports these amendments.
If these amendments are enabled and you have not upgraded Clio to 2.2.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.
Database Migration
If you are currently running Clio 1.0.4 or earlier and upgrading, you must perform a database migration to properly support NFT data. Instructions for the migration are described https://github.com/XRPLF/clio/tree/clio_migrator%402.0.0
What's Changed
- Upload codecov in separate workflow by @godexsoft in #1166
- Rename all
detail
namespace and directories to toimpl
by @godexsoft in #1168 - Use json value_to to do the string convert by @cindyyan317 in #1172
- Improve Prometheus section in Readme by @kuznetsss in #1182
- Basic execution context framework by @godexsoft in #1004
- [1059] - [DOCS] Split README into separate files by @maria-robobug in #1191
- Refactor source by @kuznetsss in #1171
- Cleanup location of docs and example files by @maria-robobug in #1195
- Rewrite cache loader to async framework by @godexsoft in #1193
- Fix logo backdrop and alignment by @godexsoft in #1198
- Update issue templates by @godexsoft in #1202
- Turn on macOS runners in CI by @kuznetsss in #1185
- Add doxygen comments to Random and TerminationHandler by @kuznetsss in #1206
- Add cmake-format to docker and mac runners by @kuznetsss in #1213
- Add cmake-format to precommit hook by @kuznetsss in #1215
- Use doxygen-awesome theme by @godexsoft in #1214
- remove _ from public member by @cindyyan317 in #1217
- Add a note about pre-commit hook dependencies by @kuznetsss in #1220
- Add missing doxygen comments by @godexsoft in #1223
- Add doxygen to CI docker image by @godexsoft in #1225
- Automatically detect missing doxygen comments by @godexsoft in #1226
- Build docs and upload to gh-pages by @godexsoft in #1232
- Add forwarding cache by @kuznetsss in #1204
- Finish setting up gh-pages deploy by @godexsoft in #1233
- Fix documentation comment by @kuznetsss in #1234
- Upgrade libxrpl to 2.2.0-b1 by @godexsoft in #1237
- Refactor cmake by @kuznetsss in #1231
- Fix forwarding bug and float support for config by @kuznetsss in #1243
- Add clean up workdir by @kuznetsss in #1244
- Add workdir to safe directory in check format by @kuznetsss in #1247
- Add debug symbols for all targets by @kuznetsss in #1250
- Configure git-lfs by @godexsoft in #1210
- Add git-lfs to docker CI image by @godexsoft in #1259
- Fetch lfs files when generating docs by @godexsoft in #1260
- Upgrade actions to newer versions by @godexsoft in #1262
- Add 'oracle' to ledger object filter by @cindyyan317 in #1264
- Export etl metrics to prometheus by @kuznetsss in #1256
- [1194] Add instructions on how to generate Doxygen docs by @maria-robobug in #1208
- Update bug_report.md by @mounikakun in #1263
- Update README.md with developer docs link by @maria-robobug in #1267
- Remove mentions of release docs from workflow by @godexsoft in #1268
- Cache loading update by @cindyyan317 in #1254
- Fix tests by @kuznetsss in #1274
- Make assertions to be printed even when logger is off by @kuznetsss in #1275
- Run tests in container for nightly workflow by @kuznetsss in #1281
- Fix conan on macos in CI by @kuznetsss in #1283
- XRPFees - support new fields by @godexsoft in #1282
- Improve developer docs + formatting by @maria-robobug in #1278
- Add support for Price Oracle in
ledger_entry
by @godexsoft in #1287 - Upgrade CI docker image to gcc-12 by @godexsoft in #1289
- Update ports to avoid conflicts by @kuznetsss in #1318
- Implement get_aggregate_price by @cindyyan317 in #1313
- Fix clang-tidy in CI by @kuznetsss in #1325
- Fix docker update trigger by @kuznetsss in #1330
- Change log level by @cindyyan317 in #1319
- Move to
std::expected
by @godexsoft in #1288 - Create issue if nightly fails by @kuznetsss in #1333
- Fix clang-tidy by @kuznetsss in #1339
- Turn off some clang-tidy checks by @kuznetsss in #1344
- Remove Any wrapper by @godexsoft in #1336
- Warn about deprecated fields by @kuznetsss in #1314
- Add detail to error log by @cindyyan317 in #1353
- Fix issue creation for nightly by @kuznetsss in #1355
- Fix deletion script by @cindyyan317 in #1357
- Support clang 16 in docker CI by @godexsoft in #1348
- Remove
full
from ledger RPC forwarding by @godexsoft in #1360 - Remove TTL usage by @godexsoft in #1361
- Add signals handler by @kuznetsss in #1365
- Disable cache on missing data by @godexsoft in #1368
- Static linkage by @godexsoft in #1377
- Move docker CI to LLVM 18 tooling by @godexsoft in #1381
- Combine requestStop and cancel as abort by @godexsoft in #1379
- Use LLVM 18 tooling by @godexsoft in #1382
- Fix missing tx from account_tx by @cindyyan317 in #1390
- Separate unit tests and integration tests by @godexsoft in #1393
- Fix nightly build by @godexsoft in #1398
- Fix typo in nightly by @godexsoft in #1403
- Fix bug: api version change does not affect the subscribed session by @cindyyan317 in #1404
- Push CI docker image on manual workflow run by @kuznetsss in #1408
- Cover LoadBalancer with tests by @kuznetsss in #1394
- Upgrade to 2.2.0-rc2 with manual temporary fixes by @godexsoft in #1413
- Date of commit in version string; No git hash in release version by @legleux in #1409
- Fix: Duplicate messages when subscribe both accounts and proposed_accounts by @cindyyan317 in #1415
- Upgrade
libxrpl
to 2.2.0-rc3 by @godexsoft in #1417 - Load tool by @kuznetsss in #1421
- Fix invalid syntax in example-config.json by @PeterChen13579 in #1423
- Move NameGenerator to util by @PeterChen13579 in #1428
- Flow to check new libXRPL version by @godexsoft in #1433
- Comment out precommit hook for Doc by @PeterChen13579 in #1432
- Change ledgerInfo and replace with ledgerHeader by @PeterChen13579 in #1426
- Update build documentation to address encountered errors by @PeterChen13579 in #1442
- Update libxrpl to 2.2.0 by @kuznetsss in #1446
- Allow tlsv13 in Clio by @PeterChen13579 in #1447
- Forward feature RPC by @godexsoft in #1440
- Add assertion to process method by @kuznetsss in #1453
- Add option to set X-User header value for forwarded requests by @kuznetsss in #1425
- Support string type integer for oracle_document_id by @cindyyan317 in #1448
- Add trouble shooting md by @cindyyan317 in #1455
- Fix quoteAsset value in getAggregatePrice by @PeterChen13579 in #1449
- Add forwarding timeout option by @kuznetsss in #1462
- Improve etl check by @cindyyan317 in #1465
- Create generate free port class to avoid conflicting ports by @PeterChen13579 in #1439
- Fix base_asset value in getAggregatePrice by @PeterChen13579 in #1467
New Contributors
- @maria-robobug made their first contribution in #1191
- @mounikakun made their first contribution in #1263
Full Changelog: 2.1.2...2.2.0
Feedback
The Clio open-source project is seeking feedback and engagement from the XRPL community.
To provide feedback, please fill out this survey.
To report an issue or propose a new idea, please open an issue.