{"templateId":"../../@theme/templates/blogpost","sharedDataIds":{"sidebar":"sidebar-@l10n/ja/blog/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"Introducing Clio version 2.8.0","siteUrl":"https://xrpl.org/","llmstxt":{"hide":false,"title":"XRPL Developer Portal & Documentation","description":"Explore XRP Ledger documentation, blogs, and other blockchain developer resources needed to start building and integrating with the ledger.","details":{"content":"XRP Ledger concepts, use cases, tutorials, references, and other blockchain developer resources. Also, stay up to date with release announcements and more through the XRPL Blog."},"sections":[{"title":"Introduction","description":"A high-level introduction to the XRP Ledger.","includeFiles":["docs/introduction/**/*.*","about/faq.md"],"excludeFiles":["docs/introduction/index.md"]},{"title":"Use Cases","description":"Real-world applications and business scenarios for the XRP Ledger.","includeFiles":["docs/use-cases/**/*.*"],"excludeFiles":["docs/use-cases/index.md","docs/use-cases/defi/index.md"]},{"title":"Agentic Transactions","description":"XRPL AI Starter Kit to help autonomous agents discover, set up, and execute agentic transactions on the XRP Ledger.","includeFiles":["docs/agents/**/*.*"],"excludeFiles":[]},{"title":"Concepts","description":"Core concepts including accounts, tokens, transactions, consensus, and more.","includeFiles":["docs/concepts/**/*.*"],"excludeFiles":["docs/concepts/index.md","docs/concepts/decentralized-storage/index.md","docs/concepts/payment-types/index.md"]},{"title":"Tutorials","description":"Step-by-step guides for building on the XRP Ledger in JavaScript, Python, Go, and more.","includeFiles":["docs/tutorials/**/*.*"],"excludeFiles":[]},{"title":"References","description":"Protocol specification, transaction types, ledger entries, and API methods.","includeFiles":["docs/references/**/*.*"],"excludeFiles":["docs/references/xrp-api.md","docs/references/data-api.md","docs/references/protocol/index.md","docs/references/protocol/ledger-data/ledger-entry-types/index.md","docs/references/protocol/transactions/index.md","docs/references/protocol/transactions/types/index.md","docs/references/http-websocket-apis/api-conventions/index.md","docs/references/http-websocket-apis/public-api-methods/*/index.md","docs/references/http-websocket-apis/admin-api-methods/*/index.md"]},{"title":"Infrastructure","description":"Install, configure, and troubleshoot xrpld and Clio servers.","includeFiles":["docs/infrastructure/**/*.*"],"excludeFiles":["docs/infrastructure/index.md","docs/infrastructure/*/index.md","docs/infrastructure/installation/build-run-xrpld-in-reporting-mode.md","docs/infrastructure/configuration/data-retention/index.md","docs/infrastructure/configuration/server-modes/index.md"]},{"title":"Blog (2023+)","description":"Recent XRPL Blog posts (showing 2023 and newer).","includeFiles":["blog/2023/**/*.*","blog/2024/**/*.*","blog/2025/**/*.*","blog/2026/**/*.*"],"excludeFiles":[]},{"title":"Resources","description":"Developer resources and contribution guidelines.","includeFiles":["resources/**/*.*"],"excludeFiles":["resources/index.md"]}],"excludeFiles":[]},"description":"Version 2.8.0 of Clio, an XRP Ledger API server optimized for HTTP and WebSocket API calls, is now available. This release adds support for several new amendments alongside bug fixes and build improvements."},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"introducing-clio-version-280","__idx":0},"children":["Introducing Clio version 2.8.0"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Version 2.8.0 of Clio, an XRP Ledger API server optimized for HTTP and WebSocket API calls, is now available. This release adds support for several new amendments alongside bug fixes and build improvements."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"amendment-support","__idx":1},"children":["Amendment Support"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The following amendments have been introduced since Clio 2.7.1 and have transaction or ledger model changes. Clio 2.8.0 is built with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["libxrpl"]}," 3.3.0, which supports all of them:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://xrpl.org/resources/known-amendments#batchv1_1"},"children":["BatchV1_1"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://xrpl.org/resources/known-amendments#confidentialtransfer"},"children":["ConfidentialTransfer"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://xrpl.org/resources/known-amendments#dynamicmpt"},"children":["DynamicMPT"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://xrpl.org/resources/known-amendments#permissiondelegationv1_1"},"children":["PermissionDelegationV1_1"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://xrpl.org/resources/known-amendments#sponsor"},"children":["Sponsor"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://xrpl.org/resources/known-amendments#fixcleanup3_3_0"},"children":["fixCleanup3_3_0"]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["If any of these amendments are enabled and you have not upgraded Clio to 2.8.0 or newer, the ETL will be amendment blocked and new ledgers will not be processed."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["To check the current voting status of these amendments on Mainnet, see the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://livenet.xrpl.org/amendments"},"children":["XRPL Amendments Dashboard"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"install--upgrade","__idx":2},"children":["Install / Upgrade"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"align":"left","data-label":"Package"},"children":["Package"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/releases/download/2.8.0/clio_server_Linux_Release_gcc.zip"},"children":["Clio Server Linux Release (GCC)"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/releases/download/2.8.0/clio_2.8.0_amd64.deb"},"children":["Clio Server Linux Debian Release (amd64)"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{"align":"left"},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/releases/download/2.8.0/clio_server_macOS_Release_apple-clang.zip"},"children":["Clio Server macOS Release (Apple Clang 21)"]}]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For other platforms, please ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/releases/tag/2.8.0"},"children":["build from source"]},". The most recent commit in the git log should be:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"text","header":{"controls":{"copy":{}}},"source":"Author: Ayaz Salikhov <mathbunnyru@users.noreply.github.com>\nDate:   Thu Aug 20 14:59:46 2026 +0000\n\n    chore: Merge develop into release/2.8.0 (#3186)\n","lang":"text"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"whats-changed","__idx":3},"children":["What's Changed"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["See the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/compare/2.7.1...2.8.0"},"children":["Full Changelog on GitHub"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"features","__idx":4},"children":["Features"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Added support for the Lending Protocol. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2945"},"children":["#2945"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Added support for Confidential Transfer fields. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3152"},"children":["#3152"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Added the ability to filter transactions by ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["mpt_issuance_id"]},". (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3153"},"children":["#3153"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Updated the MPToken ETL to support all transaction types. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3102"},"children":["#3102"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Added storage and backend for ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["mpt_issuance_history"]},". (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3091"},"children":["#3091"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Added ETL indexing for ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["mpt_issuance_history"]},". (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3104"},"children":["#3104"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Added the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["mptoken_issuance_history"]}," RPC, which was later reverted in this release. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3141"},"children":["#3141"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Added cluster communication to choose the writer node. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2830"},"children":["#2830"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Added the ability to recover from the fallback writer state. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3000"},"children":["#3000"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Added a limit on cache loading in a cluster. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2985"},"children":["#2985"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Added optional log rotation. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3016"},"children":["#3016"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Added metrics for the age of the requested ledger. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2947"},"children":["#2947"]},")"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"bug-fixes","__idx":5},"children":["Bug Fixes"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Fixed an issue where ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["feature"]}," could not query amendments that were deleted from ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["libxrpl"]},". (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3011"},"children":["#3011"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Fixed an issue where a forwarded stream ignored the specified ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["api_version"]},". (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3010"},"children":["#3010"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Fixed an issue where ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Loan"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["LoanBroker"]}," objects were not filterable in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["account_objects"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ledger_data"]},". (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3124"},"children":["#3124"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Fixed an issue where MPToken ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["UInt64"]}," amounts were not serialized as base-10 strings. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3139"},"children":["#3139"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Fixed an issue where the proxy IP address was not resolved before a request was processed. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3006"},"children":["#3006"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Fixed an issue where the client IP address was resolved only once per connection, so it was incorrect when a proxy reused a TCP connection. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3043"},"children":["#3043"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Fixed an issue where the SSL context was recreated for each connection instead of being shared. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3137"},"children":["#3137"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Fixed an issue where responses to admin requests were cached. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3058"},"children":["#3058"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Fixed an issue where responses were cached using only the method as the key, so a request with parameters could receive a response generated for different parameters. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3113"},"children":["#3113"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Fixed an issue where buffers were not flushed before the cache file was renamed. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2927"},"children":["#2927"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Fixed an issue where Clio could not start without a cache file. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2976"},"children":["#2976"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Fixed an issue where an amendment block could occur during the initial ledger load and cache load. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3149"},"children":["#3149"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Added a retry for transient database errors. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3167"},"children":["#3167"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Improved validation of the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["issuer"]}," field in requests. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3184"},"children":["#3184"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Used ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["credentialTypeValidator"]}," for credential type fields in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ledger_entry"]},". (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3185"},"children":["#3185"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Removed ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["RpcEntryNotFound"]}," from ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ClioError"]},". (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2661"},"children":["#2661"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Removed ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["clio_etl"]}," from the RPC CMake configuration. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3166"},"children":["#3166"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Added a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["pragma once"]}," checker. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3111"},"children":["#3111"]},")"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"performance","__idx":6},"children":["Performance"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Used ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["string_view"]}," in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["AccountInfo"]},". (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2951"},"children":["#2951"]},")"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"refactor","__idx":7},"children":["Refactor"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Used error codes in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["make_address()"]}," calls instead of exceptions. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3044"},"children":["#3044"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Renamed static constants. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3073"},"children":["#3073"]},")"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"documentation","__idx":8},"children":["Documentation"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Added a section about faster cache loading. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2932"},"children":["#2932"]},")"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"styling","__idx":9},"children":["Styling"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Adopted ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["cmake-format"]}," from ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["xrpld"]},". (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2938"},"children":["#2938"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Switched from ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["cmake-format"]}," to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["gersemi"]},". (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2980"},"children":["#2980"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Applied custom CMake definitions. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2983"},"children":["#2983"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Set the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["clang-format"]}," line width to 100. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2953"},"children":["#2953"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Fixed lint comments affected by the style changes. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2963"},"children":["#2963"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Removed ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["readability-identifier-naming"]}," where it was not needed. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2962"},"children":["#2962"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Applied more ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["clang-tidy"]}," identifier renaming. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3076"},"children":["#3076"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Unified the style for ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["not expectedNext.has_value()"]},". (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2979"},"children":["#2979"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Unified the style for ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["not expectedLgrInfo.has_value()"]},". (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2977"},"children":["#2977"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Unified the style for all Doxygen comments. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3142"},"children":["#3142"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Ran ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["shfmt"]}," on workflows and actions. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3085"},"children":["#3085"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Updated pre-commit hooks. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2939"},"children":["#2939"]},", ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2968"},"children":["#2968"]},", ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3022"},"children":["#3022"]},", ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3057"},"children":["#3057"]},", ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3087"},"children":["#3087"]},", ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3130"},"children":["#3130"]},", ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3164"},"children":["#3164"]},")"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"testing","__idx":10},"children":["Testing"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Stopped hardcoding ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["apiVersion"]}," where possible. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3017"},"children":["#3017"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Fixed integration tests. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3072"},"children":["#3072"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Deleted duplicate ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["etlng"]}," tests. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2920"},"children":["#2920"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Pinned the ScyllaDB Docker image version to fix integration tests. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3126"},"children":["#3126"]},")"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"build","__idx":11},"children":["Build"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Compiled all dependencies with C++23. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3129"},"children":["#3129"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Stopped reusing binaries between different C++ versions. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3131"},"children":["#3131"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Switched to Apple Clang 21 and removed the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["SourceLocation"]}," stub. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3123"},"children":["#3123"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Linked ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["libatomic"]}," statically on Linux ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["aarch64"]},". (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3120"},"children":["#3120"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Switched to the new XRPLF Conan remote. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3118"},"children":["#3118"]},")"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"miscellaneous-tasks","__idx":12},"children":["Miscellaneous Tasks"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Updated ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["libxrpl"]}," to version 3.1.3. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3070"},"children":["#3070"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Updated ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["libxrpl"]}," to version 3.2.0. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3114"},"children":["#3114"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Switched to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["libxrpl"]}," 3.3.0-rc1. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3144"},"children":["#3144"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Updated ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["libxrpl"]}," to 3.3.0-rc1-custom. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3160"},"children":["#3160"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Updated ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["libxrpl"]}," to version 3.3.0. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3170"},"children":["#3170"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Enabled debug symbols. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2967"},"children":["#2967"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Enabled TSAN without ignoring errors. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2828"},"children":["#2828"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Updated CI to build the image with LLVM tools 21. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3049"},"children":["#3049"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Updated CI to upload the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["clang-tidy"]}," git diff. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3050"},"children":["#3050"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Switched to LLVM tools 21. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3051"},"children":["#3051"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Fixed ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["clang-tidy"]}," 21 issues. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3052"},"children":["#3052"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Enabled more ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["clang-tidy"]}," checks. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3054"},"children":["#3054"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Fixed ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["clang-tidy"]}," issues. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3061"},"children":["#3061"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Updated ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["clang-tidy"]}," with the new checks from version 22. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3119"},"children":["#3119"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Fixed the issues that followed the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["clang-tidy"]}," 22 update. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3108"},"children":["#3108"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Added ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["clang-tidy"]}," rules for lower_case namespaces. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3165"},"children":["#3165"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Updated CI to run ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["clang-tidy"]}," on individual files in pull requests. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3067"},"children":["#3067"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Updated CI to print tidy errors. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3068"},"children":["#3068"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Updated CI to use Nix-based images for all workflows except pre-commit. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3098"},"children":["#3098"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Updated CI to use an in-house image for pre-commit. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3147"},"children":["#3147"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Updated the hashes of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["XRPLF/actions"]},". (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2944"},"children":["#2944"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Updated ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["XRPLF/actions"]},". (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2996"},"children":["#2996"]},", ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3023"},"children":["#3023"]},", ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3148"},"children":["#3148"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Adopted ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["check-pr-title"]}," from ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["XRPLF/actions"]},". (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2984"},"children":["#2984"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Adopted ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["print-env"]}," from ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["XRPLF/actions"]},". (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3053"},"children":["#3053"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Renamed ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["print-env"]}," to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["print-build-env"]},". (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3056"},"children":["#3056"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Adopted ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["XRPLF/create-issue"]},". (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3066"},"children":["#3066"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Fixed how workflows behave in forks. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3074"},"children":["#3074"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Restricted ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["actions/configure-pages"]}," to the main repository. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3075"},"children":["#3075"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Restricted DockerHub pushes to the main repository. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3084"},"children":["#3084"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Fixed the docs workflow and enabled building it on pull requests. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3109"},"children":["#3109"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Rewrote the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["verify-commits"]}," script. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3086"},"children":["#3086"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Added a body for the nightly issue. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3125"},"children":["#3125"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Added CODEOWNERS for CI-related changes. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3145"},"children":["#3145"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Updated CI to run ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["colima delete"]}," on macOS. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2915"},"children":["#2915"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Updated ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["cleanup-workspace"]}," to delete the old ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":[".conan2"]}," directory on macOS. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2964"},"children":["#2964"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Removed copyright headers from all source files. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2975"},"children":["#2975"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Removed the remaining copyright headers from the code. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3012"},"children":["#3012"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Removed the explicit ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["accountNotFound"]}," message. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2978"},"children":["#2978"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Moved ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["sharedPtrBackend"]},". (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2974"},"children":["#2974"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Stopped including forward-declaration headers. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3117"},"children":["#3117"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Fixed compilation due to the use of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["std::ranges::mismatch"]},". (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2960"},"children":["#2960"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Fixed a linker warning in the benchmark. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2918"},"children":["#2918"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Added ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":[".zed"]}," to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":[".gitignore"]},". (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2919"},"children":["#2919"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Added more AI tool folders to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":[".gitignore"]},". (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3038"},"children":["#3038"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Removed remaining ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["cmake-format"]}," mentions. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2986"},"children":["#2986"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Reverted the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["mptoken_issuance_history"]}," RPC, so the method is not available in this release. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3183"},"children":["#3183"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump actions/cache from 5.0.1 to 5.0.2. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2925"},"children":["#2925"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump actions/checkout from 6.0.1 to 6.0.2. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2933"},"children":["#2933"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump peter-evans/create-pull-request from 8.0.0 to 8.1.0. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2934"},"children":["#2934"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/login-action from 3.6.0 to 3.7.0. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2940"},"children":["#2940"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump actions/cache from 5.0.2 to 5.0.3. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2941"},"children":["#2941"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/login-action from 3.6.0 to 3.7.0 in /.github/actions/build-docker-image. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2942"},"children":["#2942"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump actions/upload-artifact from 6.0.0 to 7.0.0. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2969"},"children":["#2969"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump actions/download-artifact from 7.0.0 to 8.0.0. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2970"},"children":["#2970"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump actions/upload-artifact from 6.0.0 to 7.0.0 in /.github/actions/code-coverage. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2971"},"children":["#2971"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/setup-buildx-action from 3.12.0 to 4.0.0. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2987"},"children":["#2987"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/login-action from 3.7.0 to 4.0.0. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2988"},"children":["#2988"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump crazy-max/ghaction-import-gpg from 6.3.0 to 7.0.0. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2989"},"children":["#2989"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump tj-actions/changed-files from 47.0.1 to 47.0.5. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2990"},"children":["#2990"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/setup-qemu-action from 3.7.0 to 4.0.0 in /.github/actions/build-docker-image. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2991"},"children":["#2991"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/metadata-action from 5.10.0 to 6.0.0 in /.github/actions/build-docker-image. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2992"},"children":["#2992"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/login-action from 3.7.0 to 4.0.0 in /.github/actions/build-docker-image. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2993"},"children":["#2993"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/build-push-action from 6.18.0 to 7.0.0 in /.github/actions/build-docker-image. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2994"},"children":["#2994"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/setup-buildx-action from 3.12.0 to 4.0.0 in /.github/actions/build-docker-image. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/2995"},"children":["#2995"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump actions/download-artifact from 8.0.0 to 8.0.1. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3001"},"children":["#3001"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump codecov/codecov-action from 5.5.2 to 5.5.3. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3008"},"children":["#3008"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump actions/cache from 5.0.3 to 5.0.4. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3009"},"children":["#3009"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump codecov/codecov-action from 5.5.3 to 6.0.0. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3018"},"children":["#3018"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump actions/configure-pages from 5.0.0 to 6.0.0. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3019"},"children":["#3019"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump actions/deploy-pages from 4.0.5 to 5.0.0. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3020"},"children":["#3020"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/login-action from 4.0.0 to 4.1.0. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3024"},"children":["#3024"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/login-action from 4.0.0 to 4.1.0 in /.github/actions/build-docker-image. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3025"},"children":["#3025"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump actions/upload-artifact from 7.0.0 to 7.0.1. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3031"},"children":["#3031"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump actions/upload-pages-artifact from 4.0.0 to 5.0.0. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3032"},"children":["#3032"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump peter-evans/create-pull-request from 8.1.0 to 8.1.1. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3033"},"children":["#3033"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/build-push-action from 7.0.0 to 7.1.0 in /.github/actions/build-docker-image. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3034"},"children":["#3034"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump actions/upload-artifact from 7.0.0 to 7.0.1 in /.github/actions/code-coverage. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3035"},"children":["#3035"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump actions/cache from 5.0.4 to 5.0.5. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3039"},"children":["#3039"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump tj-actions/changed-files from 47.0.5 to 47.0.6. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3040"},"children":["#3040"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/login-action from 4.1.0 to 4.2.0. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3077"},"children":["#3077"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/setup-buildx-action from 4.0.0 to 4.1.0. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3078"},"children":["#3078"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump codecov/codecov-action from 6.0.0 to 6.0.1. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3079"},"children":["#3079"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/setup-buildx-action from 4.0.0 to 4.1.0 in /.github/actions/build-docker-image. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3080"},"children":["#3080"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/metadata-action from 6.0.0 to 6.1.0 in /.github/actions/build-docker-image. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3081"},"children":["#3081"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/login-action from 4.1.0 to 4.2.0 in /.github/actions/build-docker-image. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3082"},"children":["#3082"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/build-push-action from 7.1.0 to 7.2.0 in /.github/actions/build-docker-image. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3083"},"children":["#3083"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/setup-qemu-action from 4.0.0 to 4.1.0 in /.github/actions/build-docker-image. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3088"},"children":["#3088"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump codecov/codecov-action from 6.0.1 to 7.0.0. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3096"},"children":["#3096"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump actions/checkout from 6.0.2 to 6.0.3. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3097"},"children":["#3097"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump actions/checkout from 6.0.3 to 7.0.0. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3112"},"children":["#3112"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump actions/cache/save from 5.0.5 to 6.1.0. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3121"},"children":["#3121"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump actions/cache/restore from 5.0.5 to 6.1.0. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3122"},"children":["#3122"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/setup-buildx-action from 4.1.0 to 4.2.0 in /.github/actions/build-docker-image. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3132"},"children":["#3132"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/build-push-action from 7.2.0 to 7.3.0 in /.github/actions/build-docker-image. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3133"},"children":["#3133"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/login-action from 4.2.0 to 4.4.0 in /.github/actions/build-docker-image. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3134"},"children":["#3134"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/metadata-action from 6.1.0 to 6.2.0 in /.github/actions/build-docker-image. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3135"},"children":["#3135"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/setup-qemu-action from 4.1.0 to 4.2.0 in /.github/actions/build-docker-image. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3136"},"children":["#3136"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump actions/checkout from 7.0.0 to 7.0.1. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3146"},"children":["#3146"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/login-action from 4.4.0 to 4.5.1 in /.github/actions/build-docker-image. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3155"},"children":["#3155"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["[DEPENDABOT] bump docker/login-action from 4.5.1 to 4.6.0 in /.github/actions/build-docker-image. (",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/pull/3163"},"children":["#3163"]},")"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"credits","__idx":13},"children":["Credits"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The following RippleX teams and GitHub users contributed to this release:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["RippleX Engineering"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["RippleX Docs"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/BryanJ1ang"},"children":["@BryanJ1ang"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/emreariyurek"},"children":["@emreariyurek"]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"feedback","__idx":14},"children":["Feedback"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["To report an issue or propose a new idea, please ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/clio/issues"},"children":["open an issue"]},"."]}]},"headings":[{"value":"Introducing Clio version 2.8.0","id":"introducing-clio-version-280","depth":1},{"value":"Amendment Support","id":"amendment-support","depth":2},{"value":"Install / Upgrade","id":"install--upgrade","depth":2},{"value":"What's Changed","id":"whats-changed","depth":2},{"value":"Features","id":"features","depth":3},{"value":"Bug Fixes","id":"bug-fixes","depth":3},{"value":"Performance","id":"performance","depth":3},{"value":"Refactor","id":"refactor","depth":3},{"value":"Documentation","id":"documentation","depth":3},{"value":"Styling","id":"styling","depth":3},{"value":"Testing","id":"testing","depth":3},{"value":"Build","id":"build","depth":3},{"value":"Miscellaneous Tasks","id":"miscellaneous-tasks","depth":3},{"value":"Credits","id":"credits","depth":2},{"value":"Feedback","id":"feedback","depth":2}],"frontmatter":{"category":2026,"date":"2026-08-20","template":"../../@theme/templates/blogpost","seo":{"title":"Introducing Clio version 2.8.0","description":"Version 2.8.0 of Clio, an XRP Ledger API server optimized for HTTP and WebSocket API calls, is now available. This release adds support for several new amendments alongside bug fixes and build improvements."},"labels":["Clio Release Notes"],"markdown":{"editPage":{"hide":true}}},"lastModified":"2026-08-24T08:34:50.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/ja/blog/2026/clio-2.8.0","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}