Ed Hennis
2c074d03c7
Merge branch 'develop' into ximinez/number-round-maxrep-down
2026-06-22 16:41:58 -04: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
Ed Hennis
14a43cfc35
Merge branch 'develop' into ximinez/number-round-maxrep-down
2026-06-17 21:46:24 -04: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
Ed Hennis
cebd4ecf15
Merge branch 'develop' into ximinez/number-round-maxrep-down
2026-06-17 15:01:35 -04: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
Ed Hennis
e5785c4fcb
fix: Fix Number comparison operator
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
Sergey Kuznetsov
47b06ecd17
refactor: Use rocksdb includes only when it is available
2026-06-15 22:23:54 +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
Ed Hennis
6bc267c112
Merge branch 'develop' into ximinez/number-round-maxrep-down
2026-06-15 15:28:55 -04:00
Zhiyuan Wang
b34aa84e5a
fix: Check Fee-Free Division by Zero in AMMWithdraw singleWithdrawEPrice ( #6989 )
2026-06-15 15:31:22 +00:00
Ed Hennis
764be7f20f
Merge remote-tracking branch 'XRPLF/develop' into ximinez/number-round-maxrep-down
...
* XRPLF/develop:
test: Add null check unit test for `Oracle::aggregatePrice` (7306)
ci: Patch conan recipe for Nix to be able to use on macOS (7532)
ci: Run sanitizers on release builds too (7527)
fix: Correct hybrid offer deletion on credential expiry (6843)
ci: Make sanitizer flags lists in the profile, not a string (7449)
ci: Make configurations launch on certain event types (7447)
fix: Add [[maybe_unused]] to fix320Enabled for assert=OFF builds (7446)
ci: Add `gh` and `file` to nix packages (7444)
fix: Disable transaction invariants (7409)
perf: Dispatch "hasInvalidAmount()" on type tag instead of dynamic_cast (7402)
refactor: Retire fixUniversalNumber amendment (5962)
test: Do not create data directory for memory databases (7323)
ci: Launch upload-conan-deps on profile change (7442)
2026-06-11 19:39:47 -04:00
Ed Hennis
a1cfa89e15
test: Add more Number edge case tests, showing failures
...
- NumberAddDirectedSignWrong
- Addition of two negative numbers with the same exponent rounds
ToNearest in the wrong direction.
- Also include unit test cases with same exponent, and mixed signs.
- No rounding issues in any combination, because the exponent can't
change.
- NumberAddToNearestPicksFarther
- In scenarios where the two operands have different signs, and
significantly different exponents, you can end up in a situation
where the rounding looks like 0.5, which may round down to even, but
is actually 0.5....nnn, which should always round up, you get the
wrong result.
2026-06-11 19:38:21 -04:00
Ed Hennis
5c62c15ad8
Future proofing: Rename Large and Enabled to Large330 and Enabled330
...
- If more fixes need to be made in the future, they can be added after,
instead of needing to do the "rename dance", I had to do with this PR.
2026-06-11 19:38:20 -04:00
Ed Hennis
772e0c30f7
clang-tidy: rename MantissaScale enums from "3_2_0" to "320"
2026-06-11 19:38:20 -04:00
Ed Hennis
182ca1c12f
Clean up the "New" names
2026-06-11 19:38:20 -04:00
Ed Hennis
2e97056b40
Update to use a new amendment, since this PR will not be part of 3.2.0
...
- This requires creating yet another MantissaScale, and CuspRoundingFix
option.
2026-06-11 19:38:03 -04:00
Ed Hennis
1162ccf7f4
Clean up tests
2026-06-11 19:37:57 -04:00
Ed Hennis
07ae5fa867
Reorganize the subtraction tests
2026-06-11 19:37:56 -04:00
Ed Hennis
6cc45297d7
Fix formatting, add an assert
2026-06-11 19:37:56 -04:00
Ed Hennis
e77b154edc
Include rounding in failed unit tests
2026-06-11 19:37:56 -04:00
Ed Hennis
64cb53629d
Rework subtraction rounding (again) for more accuracy
...
- Go back to the old method of computing the mantissa, but when post
processing, expand the mantissa to slightly larger than maxMantissa,
then in doRoundDown, if the result is not exact, subtract one.
Finally, let doNormalize figure out the rounding of the result.
2026-06-11 19:37:55 -04:00
Ed Hennis
0a24023797
clang-tidy: template param names, const correctness, braces
2026-06-11 19:37:55 -04:00
Ed Hennis
73bd964917
Remove the kMaxRep+1 rounding tests
2026-06-11 19:37:54 -04:00
Ed Hennis
48e0ca72b0
Improve accuracy of Number::operator+=
...
- Use more of the available range of the uint128 operands.
- Also refactor Number::Guard::round() to return an enum.
2026-06-11 19:37:54 -04:00
Ed Hennis
6d89fbef7a
Experimental: Scale addition operands up to preserve accuracy
2026-06-11 19:37:54 -04:00
Ed Hennis
b624b2eeae
Include upward, write tests based on "expected" behavior
2026-06-11 19:37:54 -04:00
Ed Hennis
f255ef6214
test: Add another rounding unit test
2026-06-11 19:37:53 -04: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
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
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
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
Ayaz Salikhov
2111bb4b95
ci: Update clang-tidy to nix-based v22 ( #7412 )
2026-06-05 14:11:47 +00:00
yinyiqian1
e5cf1a0985
fix: Add zero NFT Offer ID check for NFTokenCancelOffer ( #7391 )
2026-06-03 19:30:20 +00:00
Vito Tumas
225ed204ad
test: Suppress invariant-failure logs in Vault and LoanBroker bug-regression tests ( #7379 )
2026-06-02 17:12:09 +00:00
Vito Tumas
109b649106
refactor: Use STLedgerEntry type aliases instead of std::shared_ptr ( #7282 )
2026-06-01 15:27:13 +00:00
Vito Tumas
99431d7833
fix: Pin overpayment principal reduction to exact on-grid value ( #7360 )
2026-05-31 22:54:23 +00:00
Ed Hennis
47365f4220
fix: Improve upward rounding edge cases for Number::operator/= ( #7328 )
...
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Vito Tumas <5780819+Tapanito@users.noreply.github.com >
2026-05-31 00:23:29 +00:00
Bart
1599c1a672
refactor: Revert "perf: Remove unnecessary caches ( #5439 )" ( #7359 )
...
Co-authored-by: Bart <11445373+bthomee@users.noreply.github.com >
2026-05-30 18:48:59 +00:00
yinyiqian1
763dd503be
fix: Add zero domainID check for permissionedDomain ( #7362 )
2026-05-30 00:16:25 +00:00
Ed Hennis
7da643d864
fix: Fix a rounding error at the Number::maxRep cusp ( #7051 )
...
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Vito Tumas <5780819+Tapanito@users.noreply.github.com >
2026-05-27 15:19:20 +00:00
Vito Tumas
49567e7283
fix: Fix edge-case where vault-depositor may get stuck ( #7139 )
2026-05-26 18:18:40 +00:00