-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Pre-lending protocol refactoring 1: Misc #5590
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
ximinez
wants to merge
6
commits into
develop
Choose a base branch
from
ximinez/lending-refactoring-1
base: develop
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…refactoring-1 * upstream/develop: (56 commits) Remove `include(default)` from libxrpl profile (#5587) refactor: Change boost::shared_mutex to std::shared_mutex (#5576) Fix macos runner (#5585) Remove the type filter from "ledger" RPC command (#4934) refactor: Update date, libarchive, nudb, openssl, sqlite3, xxhash packages (#5567) test: Run unit tests regardless of 'Supported' amendment status (#5537) Retire Flow Cross amendment (#5562) chore: Update CI to use Conan 2 (#5556) fixAMMClawbackRounding: adjust last holder's LPToken balance (#5513) chore: Add gcc-12 workaround (#5554) Add MPT related txns into issuer's account history (#5530) chore: Remove unused headers (#5526) fix: add allowTrustLineLocking flag for account_info (#5525) Downgrade required CMake version for Antithesis SDK (#5548) fix: Link with boost libraries explicitly (#5546) chore: Fix compilation error with clang-20 and cleanup (#5543) test: Remove circular jtx.h dependencies (#5544) Decouple CredentialHelpers from xrpld/app/tx (#5487) fix: crash when trace-logging in tests (#5529) test: switch some unit tests to doctest (#5383) ...
1 task
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## develop #5590 +/- ##
=========================================
- Coverage 78.8% 78.8% -0.0%
=========================================
Files 814 814
Lines 71259 71339 +80
Branches 8345 8373 +28
=========================================
+ Hits 56162 56190 +28
- Misses 15097 15149 +52
🚀 New features to boost your workflow:
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
High Level Overview of Change
This PR is one of four which contain several small changes that are used as the baseline of #5270. Since they are significant and useful, I created this separate PR to get them merged sooner.
(It's not a pure refactor as some new minor functionality has been introduced.)
Context of Change
#5270 is large and complicated, and I had to lay some groundwork before I could implement the feature.
Type of Change
Before / After
Highlights:
to_short_string(base_uint)
. Liketo_string
, but only returns the first 8 characters. (Similar to how a git commit ID can be abbreviated.) Used as a wrapped sink to prefix most transaction-related messages. More can be added later.XRPL_ASSERT_PARTS
. Convenience wrapper forXRPL_ASSERT
, which takes thefunction
anddescription
as separate parameters.SField::sMD_PseudoAccount
. Metadata option forSField
definitions to indicate that the field, if set in anAccountRoot
indicates that account is a pseudo-account. Removes the need for hard-coded field lists all over the place. Added the flag toAMMID
andVaultID
.SField
ctor to detect both code and name collisions using asserts.STLedgerEntry::const_pointer
andSTLedgerEntry::const_ref
. (SLE
is an alias toSTLedgerEntry
.)feeunit.h
(TaggedFee
) intounit.h
(ValueUnit
) and added new "BIPS"-related tags for future use.transactions.macro
to do two big things#include
directives for transactor header files directly in the macro file. Removes the need to updateapplySteps.cpp
and the resulting conflicts.privileges
parameter to theTRANSACTION
macro, which specifies some of the operations a transaction is allowed to do. Theseprivileges
are enforced by invariant checks. Again, removed the need to update scattered lists of transaction types in various checks.TestHelpers.h
and.cpp
.Env::balance
to add support forMPTIssue
andAsset
.Env
transaction parameter classes:JTxField
,JTxFieldWrapper
, and a bunch of classes derived or aliased from it. For an example of how awesome it is, check the changessrc/test/jtx/escrow.h
for how much simpler the definitions are forfinish_time
,cancel_time
,condition
, andfulfillment
.Asset
s.ValidPseudoAccounts
which checks that all pseudo-accounts behave consistently through creation and updates, and that no "real" accounts look like pseudo-accounts (which means they don't have a 0 sequence).