Vito
e8dc999a82
refactor: Address review feedback on CheckInvariants ( #7404 )
...
- Document that `after` is never null in InvariantCheck::visitEntry
- Clarify tec/tef escalation in checkInvariants doc: both protocol and
transaction faults return tecINVARIANT_FAILED on the first pass;
tefINVARIANT_FAILED only occurs when the incoming result is already
tecINVARIANT_FAILED (i.e. the fee-claim reset path checks again)
- Rename SkipTxInvariants -> CheckTxInvariants with Yes/No semantics
to eliminate the double-negative at call sites
2026-06-24 14:34:44 +02:00
Vito
f1145a4bfe
Merge remote-tracking branch 'origin/develop' into tapanito/invariant-improvement
2026-06-24 14:27:39 +02:00
yinyiqian1
5a2c82f699
fix: Reject delegate permission to pseudo accounts ( #7597 )
2026-06-23 19:55:23 +00:00
Bart
ff02269c0d
refactor: Use dispatch instead of post ( #7438 )
...
Co-authored-by: Bart <11445373+bthomee@users.noreply.github.com >
2026-06-22 22:35:28 +00:00
Mayukha Vadari
dd7401fde2
refactor: Clean up tec object deletion logic ( #6588 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-06-22 18:44:42 +00:00
Zhiyuan Wang
19a9ed7767
fix: Move AMMInvariant weakInvariantCheck logic into the transaction ( #7032 )
2026-06-22 18:42:57 +00:00
Zhiyuan Wang
93eab33dc2
fix: Improve ValidAMM invariant ( #7295 )
2026-06-22 17:45:42 +00:00
yinyiqian1
997267f845
feat: Remove clear mutable flags for DynamicMPT XLS-94 ( #7439 )
2026-06-22 17:36:06 +00:00
yinyiqian1
772ea80a25
fix: Use template for granular delegation permissions ( #6613 )
...
Co-authored-by: Bart <bthomee@users.noreply.github.com >
2026-06-17 23:20:54 +00:00
Pratik Mankawde
7e0ff536f5
refactor: Rerevert "Explicitly trim the heap after cache sweeps ( #6022 )"
...
Signed-off-by: Pratik Mankawde <3397372+pratikmankawde@users.noreply.github.com >
2026-06-17 13:31:43 +01:00
Pratik Mankawde
044ca7719d
release: Bump version to 3.3.0-b0
...
Signed-off-by: Pratik Mankawde <3397372+pratikmankawde@users.noreply.github.com >
2026-06-17 12:58:01 +01:00
Pratik Mankawde
cccce1c32e
Merge remote-tracking branch 'origin/release/3.2.x' into pratik/merge_3.2.x
...
Signed-off-by: Pratik Mankawde <3397372+pratikmankawde@users.noreply.github.com >
2026-06-17 12:53:02 +01:00
Ayaz Salikhov
3c43f4614f
release: Bump version to 3.2.0
2026-06-15 19:46:56 -04:00
Bart
0ac8e6cf1e
release: Bump version to 3.2.0-rc6
2026-06-15 22:24:03 +01:00
Vito Tumas
ed5f13481a
fix: Disable transaction invariants
2026-06-15 22:24:03 +01:00
Vito Tumas
781ef175c9
perf: Dispatch "hasInvalidAmount()" on type tag instead of dynamic_cast
2026-06-15 22:24:03 +01:00
Ed Hennis
e5785c4fcb
fix: Fix Number comparison operator
2026-06-15 22:24:02 +01:00
Bart
61dae6f792
release: Bump version to 3.2.0-rc5
2026-06-15 22:24:02 +01:00
yinyiqian1
fded06652a
fix: Add zero NFT Offer ID check for NFTokenCancelOffer
2026-06-15 22:24:02 +01:00
Valentin Balaschenko
e833e8884d
refactor: Revert "Explicitly trim the heap after cache sweeps ( #6022 )"
2026-06-15 22:24:02 +01:00
Sergey Kuznetsov
47b06ecd17
refactor: Use rocksdb includes only when it is available
2026-06-15 22:23:54 +01:00
Bart
5a25c9188b
release: Bump version to 3.2.0-rc4
2026-06-15 22:23:53 +01:00
Pratik Mankawde
f98c251011
refactor: Improve tracking of book (un)subscriptions
2026-06-15 22:23:38 +01:00
Sergey Kuznetsov
e29dc474b3
refactor: Improve payment channel closing and returned error codes
2026-06-15 22:23:28 +01:00
Pratik Mankawde
2728e11809
fix: Set request size limits and differential pricing for get-object-by-hash calls
2026-06-15 22:23:28 +01:00
Jingchen
9650fe8a6e
refactor: Use explicit types to help compiler
2026-06-15 22:22:53 +01:00
Pratik Mankawde
2df96b1550
fix: Silence UBSan diagnostics in the ubsan build config ( #7531 )
...
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-15 19:25:37 +00:00
Zhiyuan Wang
b34aa84e5a
fix: Check Fee-Free Division by Zero in AMMWithdraw singleWithdrawEPrice ( #6989 )
2026-06-15 15:31:22 +00:00
Bart
f5985e73ec
fix: Always charge peer on strand ( #7422 )
...
Co-authored-by: Bart <11445373+bthomee@users.noreply.github.com >
2026-06-15 14:55:56 +00:00
Pratik Mankawde
df395d6851
test: Add null check unit test for Oracle::aggregatePrice ( #7306 )
...
Signed-off-by: Pratik Mankawde <3397372+pratikmankawde@users.noreply.github.com >
2026-06-11 18:05:36 +00:00
Zhiyuan Wang
09c36d066e
fix: Correct hybrid offer deletion on credential expiry ( #6843 )
...
Co-authored-by: Bart <bthomee@users.noreply.github.com >
2026-06-10 20:42:41 +00:00
Shi Cheng
1f359f719c
fix: Add [[maybe_unused]] to fix320Enabled for assert=OFF builds ( #7446 )
...
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-10 17:24:44 +00:00
Vito Tumas
83cc5df72e
fix: Disable transaction invariants ( #7409 )
2026-06-10 12:05:53 +00:00
Vito Tumas
97ca7d57bc
perf: Dispatch "hasInvalidAmount()" on type tag instead of dynamic_cast ( #7402 )
2026-06-10 11:44:57 +00:00
Pratik Mankawde
8a4bf2dee6
refactor: Retire fixUniversalNumber amendment ( #5962 )
...
Signed-off-by: Pratik Mankawde <pmankawde@ripple.com >
Signed-off-by: Pratik Mankawde <3397372+pratikmankawde@users.noreply.github.com >
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-10 10:16:03 +00:00
Bart
742aa0878b
test: Do not create data directory for memory databases ( #7323 )
...
Co-authored-by: Bart <11445373+bthomee@users.noreply.github.com >
2026-06-10 09:16:53 +00:00
Ed Hennis
2cbc3c139e
fix: Fix Number comparison operator ( #7406 )
2026-06-09 17:46:56 +00:00
Ayaz Salikhov
fccb109e48
feat: Use C++ 23 standard ( #7431 )
2026-06-09 17:36:17 +00:00
Vito Tumas
0fb1aca461
refactor: Introduce XRPL_ASSERT_IF for amendment-gated assertions ( #7378 )
...
Co-authored-by: xrplf-ai-reviewer[bot] <266832837+xrplf-ai-reviewer[bot]@users.noreply.github.com>
2026-06-09 17:02:06 +00:00
Bart
c552eb333f
refactor: Change config section and key string literals into constants ( #7095 )
...
Co-authored-by: Bart <11445373+bthomee@users.noreply.github.com >
2026-06-09 14:58:21 +00:00
Bart
c9769d1add
refactor: Use std::move and std::string_view where possible ( #7424 )
...
Co-authored-by: Bart <11445373+bthomee@users.noreply.github.com >
2026-06-09 13:56:32 +00:00
Vito
bdb2c5f096
clang-tidy
2026-06-09 13:56:01 +02:00
Vito Tumas
17a7d64900
Merge branch 'develop' into tapanito/invariant-improvement
2026-06-09 13:54:48 +02:00
Vito
67037782af
refactor: Extract invariant invocation into free checkInvariants runner
...
Move the invariant-check orchestration out of ApplyContext and Transactor
into a free function xrpl::checkInvariants(ApplyContext&, TER, XRPAmount,
optional<reference_wrapper<InvariantCheck>>).
The two previously separate traversals (one in ApplyContext driving the
protocol tuple fold, one in Transactor driving the tx-specific check) are
merged into a single ctx.visit walk. Per-layer try/catch inside the
lambda isolates collection faults: a throw in one layer stops only that
layer from visiting further entries while the other continues. A layer
whose collection faulted skips its finalize phase.
ApplyContext loses checkInvariants/checkInvariantsHelper/failInvariantCheck.
Transactor delegates to the free runner via a private InvariantCheckAdapter
that bridges visitInvariantEntry+finalizeInvariants into the InvariantCheck
interface. A SkipTxInvariants::Yes/No enum makes the fee-claim-reset call
site explicit about omitting the tx-specific check.
Protocol checks remain duck-typed in the InvariantChecks tuple (static
dispatch, no vtable on the hot path). InvariantCheck is the runtime
interface used only by InvariantCheckAdapter.
2026-06-09 13:16:37 +02:00
Bart
ee9fbc4e08
refactor: Use const function arguments where possible ( #7423 )
...
Co-authored-by: Bart <11445373+bthomee@users.noreply.github.com >
2026-06-09 10:04:09 +00:00
Ayaz Salikhov
a389f922dd
ci: Use new packaging images and don't cancel develop builds ( #7417 )
...
Co-authored-by: Bart <bthomee@users.noreply.github.com >
2026-06-08 13:41:08 +00:00
Ayaz Salikhov
949887feb9
build: Create single test binary xrpl_tests ( #7327 )
2026-06-05 19:24:32 +00:00
Ayaz Salikhov
2111bb4b95
ci: Update clang-tidy to nix-based v22 ( #7412 )
2026-06-05 14:11:47 +00:00
Ayaz Salikhov
5b8e6cd1dd
test: Fix LCOV_EXCL_END -> LCOV_EXCL_STOP ( #7407 )
2026-06-04 19:35:36 +00:00
yinyiqian1
e5cf1a0985
fix: Add zero NFT Offer ID check for NFTokenCancelOffer ( #7391 )
2026-06-03 19:30:20 +00:00