Releases: XRPLF/clio
2.3.0
Introducing Clio version 2.3.0
Version 2.3.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
- AmendmentCenter: central place to query amendment-related data
ledger_index
API: returns latest closed ledger index before the given date- More verbose forwarding errors
- Native
feature
API - Add
force_forward
field in requests - Cache on
server_info
API
Amendment Support
The following amendments have been introduced since Clio 2.2.5 and have transaction model changes. Clio 2.3.0 is built with libxrpl
2.3.0, which supports these amendments.
If these amendments are enabled and you have not upgraded Clio to 2.3.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.
Whats's changed
🚀 Features
- AmendmentCenter (#1418)
- Ledger index (#1503)
- More verbose forwarding errors (#1523)
- Native Feature RPC (#1526)
- Add stop to WorkQueue (#1600)
- Move/copy support in async framework (#1609)
- Delete-before support in data removal tool (#1649)
- Add 'force_forward' field to request (#1647)
- Server info cache (#1671)
- ETLng Registry (#1713)
- Upgrade to
libxrpl 2.3.0-rc1
(#1718) - Implement MPT changes (#1147)
- Add Support Credentials for Clio (#1712)
- Upgrade to
libxrpl 2.3.0-rc2
(#1736)
🐛 Bug Fixes
- Duplicate messages when subscribe both accounts and proposed_accounts (#1415)
- Remove unused file (#1496)
- Fix extra brackets in warnings (#1519)
- Fix the ledger_index timezone issue (#1522)
- Change the field name from "close_time_iso" to "closed (#1531)
- Compatible
feature
response (#1539) - Relax error when
full
oraccounts
set tofalse
(#1540) - Add more account check (#1543)
- Support deleted object in ledger_entry (#1483)
- Fail to deduplicate the same nfts in ttNFTOKEN_CANCEL_OFFER (#1542)
- Static linkage (#1551)
- NftData unique bug (#1550)
- LedgerEntryNotExist unittest failure (#1564)
- Remove cassandra from log (#1557)
- Account_objects returns error when filter does not make sense (#1579)
- Use doxygen 1.12 (#1587)
- Support conan channels in
check_libxrpl
flow (#1583) - AccountNFT with invalid marker (#1589)
- Not forward admin API (#1628)
- Fix logging in SubscriptionSource (#1617) (#1632)
- Subscription source bugs fix (#1626) (#1633)
- Don't forward ledger API if 'full' is a string (#1640)
- Add more restrictions to admin fields (#1643)
- No restriction on type field (#1644)
- Pre-push tag (#1614)
- Upgrade Cassandra driver (#1646)
- Add no lint to ignore clang-tidy (#1660)
- Workaround for gcc12 bug with defaulted destructors (#1666)
- Deletion script will not OOM (#1679)
- Remove log (#1694)
- Example config syntax (#1696)
- Fix timer spurious calls (#1700)
- Fix issues clang-tidy found (#1708)
- Add queue size limit for websocket (#1701)
- Support Delete NFT (#1695)
- Credential error message (#1738)
- Authorized_credential elements in array not objects bug (#1744) (#1747)
- Add upper bound to limit
🚜 Refactor
- Structure global validators better (#1484)
- Separate fixtures (#1495)
- Refactor main (#1555)
- Clio Config (#1544)
- Move interval timer into a separate class (#1588)
- Create interface for DOSGuard (#1602)
- Subscription Manager uses async framework (#1605)
- Remove SubscriptionManagerRunner (#1623)
- Clio Config (#1593)
- Coroutine based webserver (#1699)
📚 Documentation
- Mention conventional commits (#1490)
- Use non-admin WS port (#1592)
- Document how to build with custom libxrpl (#1572)
🧪 Testing
- Add more tests for warnings (#1532)
- Make ForwardingSource tests more stable (#1607)
- Add test for WsConnection for ping response (#1619)
⚙️ Miscellaneous Tasks
- Added conventional commits check (#1487)
- Upgrade to libxrpl 2.3.0-b1 (#1489)
- Add permissions to pr title check workflow (#1491)
- Turn off PR labelling (#1492)
- Clio docker image (#1509)
- Fix nightly (#1514)
- Fix bugs in nightly docker publishing (#1520)
- Setup dependabot for github-actions (#1556)
- Update clang-format and ccache (#1559)
- Bump peter-evans/create-pull-request from 5 to 6 (#1560)
- Bump crazy-max/ghaction-import-gpg from 5 to 6 (#1561)
- Bump actions/configure-pages from 4 to 5 (#1562)
- Bump wandalen/wretry.action from 1.4.10 to 3.5.0 (#1563)
- Fix errors in docker image uploading (#1570)
- Fix nightly release workflow (#1577)
- Bump peter-evans/create-pull-request from 6 to 7 (#1636)
- Revert Cassandra driver upgrade (#1656)
- Update libxrpl to 2.3.0-b4 (#1667)
- Apply commits for
2.3.0-b4
(#1725) - Bump ytanikin/PRConventionalCommits from 1.2.0 to 1.3.0 (#1670)
- Upgrade to llvm 19 tooling (#1681)
- Remove unused static variables (#1683)
- Add counter for total messages waiting to be sent (#1691)
- Fix nightly build (#1709)
- Bump wandalen/wretry.action from 3.5.0 to 3.7.0 (#1714)
- Bump wandalen/wretry.action from 3.7.0 to 3.7.2 (#1723)
- Add relevant changes from develop (#1762)
Full Changelog: 2.2.5...2.3.0
Contributors
- @PeterChen13579
- @cindyyan317
- @godexsoft
- @kuznetsss
- @legleux
- @mDuo13 - first time contribution in #1572
- @shawnxie999
- @yinyiqian1 - first time contribution in #1495
To report an issue or propose a new idea, please open an issue.
Clio development (nightly) build
Note: Please remember that this is a development release and it is not recommended for production use.
Changelog (including previous releases): https://github.com/XRPLF/clio/commits/nightly
SHA256 checksums
9b7a40942c7ee0e9338b761c72b41f33cb96f5001815ce0cf9e44414e8e8b003 ./clio_server_Linux_Debug.tar.gz
45739b8558ec8f8c3da0df1e9821e04c52be8a189254447cba84b557aa974ccd ./clio_server_Linux_Release.tar.gz
02c98fbb5cf6a9cdc9d900e44b51a1e3bff4dbc74da7a109048098e146b23392 ./clio_server_macOS_Release.tar.gz
2.2.5
Introducing Clio version 2.2.5
Version 2.2.5 of Clio, an XRP Ledger API server optimized for HTTP and WebSocket API calls, is now available. This release adds a bug fix and feature
What's Changed
- Add changes that were included as part of Version 2.2.3 but omitted from Version 2.2.4 in 2.2.4...2.2.3
- Add counter for total messages waiting to be sent by @cindyyan317 in #1691
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. See the clio_migrator
branch and its README for instructions.
Full Changelog: 2.2.4...2.2.5
2.2.4
Introducing Clio version 2.2.4
Version 2.2.4 of Clio, an XRP Ledger API server optimized for HTTP and WebSocket API calls, is now available. This release adds a bug fix.
What's Changed
- fix: Static linkage by @godexsoft in #1551
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. See the clio_migrator
branch and its README for instructions.
Full Changelog: 2.2.3...2.2.4
2.2.3
Introducing Clio version 2.2.3
Version 2.2.3 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.
What's Changed
- fix: Fix logging in SubscriptionSource by @kuznetsss in #1617
- feat: Published subscription message counters by @godexsoft in #1618
- fix: Subscription source bugs fix by @kuznetsss in #1626
- fix: not forward admin API by @cindyyan317 in #1629
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. See the clio_migrator
branch and its README for instructions.
Full Changelog: 2.2.2...2.2.3
2.2.2
Introducing Clio version 2.2.2
Version 2.2.2 of Clio, an XRP Ledger API server optimized for HTTP and WebSocket API calls, is now available. This release adds bug fixes.
Bug fixes
- Relax error when
full
oraccounts
set tofalse
by @godexsoft in #1537 - Add more account check by @cindyyan317 in #1543
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. See the clio_migrator
branch and its README for instructions.
Full Changelog: 2.2.1...2.2.2
2.2.1
Introducing Clio version 2.2.1
Version 2.2.1 of Clio, an XRP Ledger API server optimized for HTTP and WebSocket API calls, is now available. This release adds a bug fix.
Bug fixes
- Fix extra bracket in warnings by @kuznetsss in #1518
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. See the clio_migrator
branch and its README for instructions.
Full Changelog: 2.2.0...2.2.1
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 https://github.com/...
2.1.2
Introducing Clio version 2.1.2
Version 2.1.2 of Clio, an XRP Ledger API server optimized for HTTP and WebSocket API calls, is now available. This release adds a new feature.
rippled Dependency on Clio
Clio needs to be updated to 2.1.2 or later before updating to rippled 2.2.0. Clio will be blocked if it is not updated first.
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
- Upgrade xrpl to 2.2.0 by @kuznetsss in #1443
Full Changelog: 2.1.1...2.1.2