Commit Graph

14107 Commits

Author SHA1 Message Date
Niq Dudfield
a7900a7f36 Merge dev (d20927237) into sync-2.4.0: HookAPI refactor (#681)
* Hook API Refactor2: Amendment Guards (#621)

* Hook API Refactor3: Consolidate the Hook API definitions from Enum.h and ApplyHook.h into a single file. (#622)

* Hook API Refactoring / Unit Testing (#581)

* Hook API Refactor2: Amendment Guards (#621)

* Hook API Refactor3: Consolidate the Hook API definitions from Enum.h and ApplyHook.h into a single file. (#622)

* Hook API Refactoring / Unit Testing (#581)

* fix: update clang-format to v18 and fix include ordering

- Update verify-generated-headers CI to use clang-format 18 (matching
  clang-format.yml) instead of stale v10 which can't parse .clang-format
- Add .mise.toml for local clang-format 18 tooling
- Fix include ordering in cherry-picked files per clang-format 18

* chore: update levelization results for HookAPI changes

New loop: xrpl.hook <-> xrpld.app due to HookAPI.h including
Transaction.h from xrpld.app.

---------

Co-authored-by: tequ <git@tequ.dev>
2026-02-16 18:51:04 +10:00
tequ
94e5325ba9 Update CMake version to 3.25.3 in macOS workflow 2025-12-17 12:53:20 +09:00
tequ
1a3a072f30 Fix differences such as LedgerHash that occurred due to NetworkID in ltFeeSettings 2025-12-01 19:28:23 +09:00
tequ
7a8ff63064 fix InvalidTxFlags Amendment to default Yes 2025-10-29 16:49:37 +09:00
tequ
3a52ac66e4 Add ltORACLE for Remarks target (#562) 2025-08-18 16:17:49 +09:00
tequ
3391390af4 Conan Release Builder (2.4.0 sync) (#528) 2025-08-14 15:29:04 +09:00
tequ
92f80ecc78 Add Remit test to AMM Account 2025-07-19 19:18:03 +09:00
tequ
22710f7604 Optimize AccountDelete and Creadentials tests, Update tests priority 2025-07-19 04:49:25 +09:00
tequ
cc62b3cab0 Update Hook headers 2025-07-16 19:38:51 +09:00
tequ
5f7887f058 VoteBehavior::DefaultYes for new fix Amendments
- NFToken related fix Amendments remains as `DefaultNo`.
2025-07-14 19:27:09 +09:00
tequ
1556f35203 Add TSH processing for AMM, AMMClawback, Clawback, Oracle (#532)
* Add TSH processing for `AMM`, `AMMClawback`, `Oracle`, `Clawback`

* Add empty TSH processing for other transaction types

* Add AMMTsh tests
2025-07-10 23:26:32 +09:00
tequ
81ac5b1b97 Support Hook execution in simulate RPC (#531) 2025-07-05 14:32:42 +09:00
tequ
4bdf1a7024 add tests for DeepFreeze 2025-07-01 19:35:35 +09:00
tequ
ac8bfb5e33 Supported::No for featurePermissionedDomains 2025-07-01 16:08:01 +09:00
tequ
aceea296fe Supported::No for featureDynamicNFT 2025-07-01 16:01:27 +09:00
tequ
4d474bc6a3 Supported::No for featureCredentials 2025-07-01 15:54:07 +09:00
tequ
ea51512712 Supported::No for featureMPTokensV1 2025-07-01 15:22:52 +09:00
tequ
03a74aff6d Supported::No for featureNFTokenMintOffer 2025-07-01 15:14:08 +09:00
tequ
5b4659ea26 Supported::No for featureDID 2025-07-01 15:09:00 +09:00
tequ
03d9647179 Supported::No for featureXChainBridge 2025-07-01 14:52:24 +09:00
tequ
2fcf541e2c Combine AMM Amendments (#521)
* fixAMMv1_2
* fixAMMv1_1
* fixAMMOverflowOffer
* fixLPTokenTransfer
* suppress AMM test logs
* exclude `ltAMM` from `fixPreviousTxnID` Amendment
    - make `sfPreviousTxnID` and `sfPreviousTxnLgrSeq` required for ltAMM
2025-07-01 13:51:32 +09:00
tequ
e04fd61041 Combine XChainBridge Amendments (#523) 2025-06-30 19:12:33 +09:00
tequ
8368603760 Combine fixInnerObjTemplate Amendments (#524) 2025-06-30 18:14:04 +09:00
tequ
f237d515b0 fix to DefaultNo for featureDeletableAccounts 2025-06-30 17:15:46 +09:00
tequ
943192071c Disable instrumentation-build workflow (#530) 2025-06-30 16:54:11 +09:00
Niq Dudfield
a555a3efbc fix: prevent SOCI from linking ALL boost libraries (#529)
SOCI's vendored conanfile was using boost::boost which links against
every single Boost library (40+ libraries) when only boost::headers
is needed for SOCI's template specializations (boost::optional and
boost::gregorian::date support).

This was causing excessive linking and potential symbol conflicts,
particularly on Linux CI where boost_stacktrace_from_exception was
causing multiple definition errors with libstdc++.

Changed SOCI's boost dependency from boost::boost to boost::headers
since SOCI only needs Boost headers for its template specializations,
not the compiled libraries. The project already provides all necessary
Boost libraries through the ripple_boost target.

This reduces the linked libraries from 40+ down to just the ~14 that
the project actually uses, fixing the Linux CI build failures and
reducing binary size.

Note: The SOCI Conan recipe for Conan 2.0 already implements this
fix correctly.
2025-06-30 13:16:10 +09:00
tequ
bfdcc22f6e Reduce numFeatures for DID Amendments combine 2025-06-28 21:36:25 +09:00
Niq Dudfield
2cf4b3ec4c fix: remove vestigial -DBOOST_ASIO_DISABLE_CONCEPTS usage (#526) 2025-06-27 16:41:30 +09:00
Denis Angell
b4b6e4261b fix cmake & xrpl_core 2025-06-25 10:30:30 +02:00
Denis Angell
f1a1812e6e Update build-full.sh 2025-06-25 10:03:13 +02:00
Denis Angell
e43ea4962e fix cmake 2025-06-25 09:52:53 +02:00
Denis Angell
8e8e42046a Update build-full.sh 2025-06-25 09:26:48 +02:00
Denis Angell
901fec93a7 add DeepFreeze to trustTransferAllowed 2025-06-25 09:15:05 +02:00
tequ
75a4a72b3f fix release-builder, workflow building 2025-06-24 21:27:20 +09:00
tequ
17346c588d remove checkpatterns workflow 2025-06-24 19:57:41 +09:00
tequ
2e8e1b3940 Combine DID Amendments (#522)
fixEmptyDID -> featureDID
2025-06-23 21:13:52 +09:00
tequ
1997a53b77 Additional support for HookDefinition, HookState, ImportVLSequence at fixPreviousTxnID Amendment 2025-06-23 17:59:40 +09:00
Mark Travis
bfdaa3a5aa Log detailed correlated consensus data together (#5302)
Combine multiple related debug log data points into a single
message. Allows quick correlation of events that
previously were either not logged or, if logged, strewn
across multiple lines, making correlation difficult.
The Heartbeat Timer and consensus ledger accept processing
each have this capability.

Also guarantees that log entries will be written if the
node is a validator, regardless of log severity level.
Otherwise, the level of these messages is at INFO severity.
2025-06-20 15:30:36 +09:00
Mark Travis
be33576c65 fix: Acquire previously failed transaction set from network as new proposal arrives (#5318)
Reset the failure variable.
2025-06-20 15:12:58 +09:00
Bronek Kozicki
51dc38d77a Fix Replace assert with XRPL_ASSERT (#5312) 2025-06-20 15:12:20 +09:00
Bronek Kozicki
299b31154e fix: Remove 'new parent hash' assert (#5313)
This assert is known to occasionally trigger, without causing errors
downstream. It is replaced with a log message.
2025-06-20 14:58:59 +09:00
Ed Hennis
87bad9f0f6 Add logging and improve counting of amendment votes from UNL (#5173)
* Add logging for amendment voting decision process
* When counting "received validations" to determine quorum, count the number of validators actually voting, not the total number of possible votes.
2025-06-20 14:58:48 +09:00
Bart
3036bfb3aa docs: Revert peer port to 51235 (#5299)
Reverts the [port_peer] back to the legacy port 51235 rather than to the default port 2459, to avoid potentially inconveniencing existing operators.
2025-06-20 14:58:32 +09:00
Olek
370139bcc9 fix: Switch Permissioned Domain to Supported::yes (#5287)
Switch Permissioned Domain feature's supported flag from Supported::no to Supported::yes for it to be votable.
2025-06-20 14:58:20 +09:00
Bart
ec3c280ecb docs: Clarifies default port of hosts (#5290)
The current comment in the example cfg file incorrectly mentions both "may" and "must". This change fixes this comment to clarify that the default port of hosts is 2459 and that specifying it is therefore optional. It further sets the default port to 2459 instead of the legacy 51235.
2025-06-20 14:58:07 +09:00
Mark Travis
0bc83ed8f1 Log proposals and validations (#5291)
Adds detailed log messages for each validation and proposal received from the network.
2025-06-20 14:57:59 +09:00
Bart
a7438eccc5 Support canonical ledger entry names (#5271)
This change enhances the filtering in the ledger, ledger_data, and account_objects methods by also supporting filtering by the canonical name of the LedgerEntryType using case-insensitive matching.
2025-06-20 14:18:08 +09:00
Ed Hennis
9aa039e70b refactor: Change recursive_mutex to mutex in DatabaseRotatingImp (#5276)
Rewrites the code so that the lock is not held during the callback. Instead it locks twice, once before, and once after. This is safe due to the structure of the code, but is checked after the second lock. This allows mutex_ to be changed back to a regular mutex.
2025-06-20 14:17:06 +09:00
Bart
839dd92ee3 fix: Replace charge() by fee_.update() in OnMessage functions (#5269)
In PeerImpl.cpp, if the function is a message handler (onMessage) or called directly from a message handler, then it should use fee_, since when the handler returns (OnMessageEnd) then the charge function is called. If the function is not a message handler, such as a job queue item, it should remain charge.
2025-06-20 13:44:30 +09:00
Elliot Lee
3539537d19 docs: ensure build_type and CMAKE_BUILD_TYPE match (#5274) 2025-06-20 13:43:59 +09:00