Commit Graph

14231 Commits

Author SHA1 Message Date
Ed Hennis
89de2b55f6 Merge branch 'ximinez/lending-XLS-66-ongoing' into ximinez/lending-vault-payments 2025-12-03 15:34:03 -05:00
Ed Hennis
43a6f10050 MPTTester::operator() parameter should be std::int64_t
- Originally defined as uint64_t, but the testIssuerLoan() test called
  it with a negative number, causing an overflow to a very large number
  that in some circumstances could be silently cast back to an int64_t,
  but might not be. I believe this is UB, and we don't want to rely on
  that.
2025-12-03 12:35:56 -05:00
Ed Hennis
e2e9582ff1 Test updates - show balances in runLoan() 2025-12-03 12:35:56 -05:00
Vito Tumas
803380c53c Fix overpayment asserts (#6084) 2025-12-03 12:35:56 -05:00
Ed Hennis
c953073c3a Merge remote-tracking branch 'XRPLF/ximinez/develop-nolending' into ximinez/lending-XLS-66-2
* XRPLF/ximinez/develop-nolending:
  Revert "Implement Lending Protocol (unsupported) (5270)"
  Implement Lending Protocol (unsupported) (5270)
  docs: Update CONTRIBUTING.md for XLS submission guidelines (6065)
  Placeholder
2025-12-03 12:30:43 -05:00
Ed Hennis
ad190a8d6f Review feedback from @dangell7: early return & coverage
- Exclude LogicError lines in ApplyView.cpp (specifically directory
  operations) from code coverage.
- Replace the ability to set the next page on a new directory page with
  an assert, because nothing uses it right now.
- Early return with success for batch inner transactions in preflight2.
2025-12-03 12:29:34 -05:00
Ed Hennis
06689d9cb5 Merge branch 'ximinez/lending-XLS-66-2' into ximinez/lending-vault-payments 2025-12-02 12:33:34 -05:00
Ed Hennis
8e4be94f4a Merge remote-tracking branch 'XRPLF/ximinez/develop-nolending' into ximinez/lending-XLS-66-2
* XRPLF/ximinez/develop-nolending:
  Revert "Implement Lending Protocol (unsupported) (5270)"
  Implement Lending Protocol (unsupported) (5270)
2025-12-02 12:26:11 -05:00
Ed Hennis
b772f6281e Revert "Implement Lending Protocol (unsupported) (#5270)"
This reverts commit 6c67f1f525.
2025-12-02 12:20:43 -05:00
Ed Hennis
bb6b847270 Merge remote-tracking branch 'upstream/develop' into ximinez/develop-nolending
* upstream/develop:
  Implement Lending Protocol (unsupported) (5270)
2025-12-02 12:20:06 -05:00
Ed Hennis
6c67f1f525 Implement Lending Protocol (unsupported) (#5270)
- Spec: XLS-66
- Introduces amendment "LendingProtocol", but leaves it UNSUPPORTED to
  allow for standalone testing, future development work, and potential
  bug fixes.
- AccountInfo RPC will indicate the type of pseudo-account when
  appropriate.
- Refactors and improves several existing classes and functional areas,
  including Number, STAmount, STObject, json_value, Asset, directory
  handling, View helper functions, and unit test helpers.
2025-12-02 16:38:17 +00:00
Ed Hennis
1f3ded7116 Test updates - show balances in runLoan() 2025-12-02 10:50:57 -05:00
Ed Hennis
aa1234199a Review feedback from @dangell7: early return & coverage
- Exclude LogicError lines in ApplyView.cpp (specifically directory
  operations) from code coverage.
- Replace the ability to set the next page on a new directory page with
  an assert, because nothing uses it right now.
- Early return with success for batch inner transactions in preflight2.
2025-12-02 10:48:22 -05:00
Ed Hennis
3eaddcc2bc Merge branch 'ximinez/lending-XLS-66-2' into ximinez/lending-vault-payments 2025-12-01 16:50:28 -05:00
Ed Hennis
da9a483b79 Merge branch 'ximinez/develop-nolending' into ximinez/lending-XLS-66-2 2025-12-01 16:49:54 -05:00
Vito Tumas
f447827474 Fix overpayment asserts (#6084) 2025-12-01 14:59:12 -05:00
Ed Hennis
ff39388b93 Merge branch 'develop' into ximinez/develop-nolending 2025-12-01 14:41:46 -05:00
Ed Hennis
d9a44dbbbc Merge branch 'ximinez/lending-XLS-66' into ximinez/lending-vault-payments 2025-12-01 14:41:14 -05:00
Ed Hennis
19c72b30e4 Merge branch 'develop' into ximinez/lending-XLS-66 2025-12-01 14:40:31 -05:00
Ed Hennis
07497322de Merge branch 'ximinez/develop-nolending' into ximinez/lending-XLS-66-2 2025-12-01 14:40:27 -05:00
Mayukha Vadari
c9f17dd85d docs: Update CONTRIBUTING.md for XLS submission guidelines (#6065)
This change clarifies the status of XLS in the pull request process.
2025-12-01 12:46:50 -05:00
Ed Hennis
86e71daa86 Placeholder 2025-12-01 12:20:02 -05:00
Ed Hennis
d5d6b0c7cb Merge branch 'ximinez/lending-XLS-66' into ximinez/lending-vault-payments 2025-11-28 15:52:56 -05:00
Ed Hennis
060ee70eb0 Merge branch 'develop' into ximinez/lending-XLS-66 2025-11-28 15:46:31 -05:00
Bart
b33b506b90 refactor: Replaces ed25519-donna source by Conan package (#6088)
This change substitutes the `ed25519-donna` source code copy by the Conan recipe added in https://github.com/XRPLF/conan-center-index/pull/23.
2025-11-27 16:51:32 +00:00
Ed Hennis
bea3ce952e Merge branch 'develop' into ximinez/lending-XLS-66 2025-11-27 01:48:44 -05:00
Ayaz Salikhov
f399749ee2 chore: Add black pre-commit hook (#6086)
This change adds Black as a pre-commit hook to format Python files.
2025-11-26 19:14:17 +00:00
Ayaz Salikhov
2ed4047840 chore: Make conan lockfile generation commands into a script (#6085)
This change moves the lockfile instructions into a script, and instead of removing packages it sets the Conan home directory to a temporary directory.

There are several advantages, such as:
* Not affecting the user's Conan home directory, so there is no need to remove packages.
* Only the script needs to be run, rather than several commands.
2025-11-26 18:43:14 +00:00
Ayaz Salikhov
4e25dc9291 chore: Update lockfile (#6083)
This change update recipes, to make sure we have the best compatibility with latest compilers and so on.
2025-11-26 17:54:36 +00:00
Bart
a18b30b765 docs: Update instructions how to (re)generate conan.lock file (#6070)
This change updates the instructions for how to generate a Conan lockfile that is compatible with Linux, macOS, and Windows.

Whenever Conan dependencies change, the Conan lock file needs to be regenerated. However, different OSes have slightly different requirements, and thus require slightly different dependencies. Luckily a single `conan.lock` file can be used, as long as the union of dependencies is included.

The current instructions in the `BUILD.md` file are insufficient to regenerate the lock file such that it is compatible with all OSes, which this change addresses. The three profiles contain the bare minimum needed to generate the lockfile; it does not particularly matter whether the build type is Debug or Release, for instance.
2025-11-26 17:28:06 +00:00
Ed Hennis
f665463050 Merge branch 'ximinez/lending-XLS-66' into ximinez/lending-vault-payments 2025-11-26 00:25:47 -05:00
Ed Hennis
8035a46514 Merge branch 'develop' into ximinez/lending-XLS-66 2025-11-26 00:25:02 -05:00
Ed Hennis
c7d73fb938 Merge remote-tracking branch 'XRPLF/ximinez/lending-XLS-66' into ximinez/lending-vault-payments
* XRPLF/ximinez/lending-XLS-66:
  Review feedback from @shawnxie999: MPT Clawback
  Move the ValidPseudoAccounts class back to its original location
  Fix formatting again
  refactor: Retire Flow and FlowSortStrands amendments (6054)
  Add additional documentation to Lending Protocol (6037)
2025-11-26 00:23:44 -05:00
Bart
856470203a ci: Trigger clio pipeline on PRs targeting release branches (#6080)
This change triggers the Clio pipeline on PRs that target any of the `release*` branches (in addition to the `master` branch), as opposed to only the `release` branch.
2025-11-25 21:03:17 +00:00
Ed Hennis
315b511326 Merge branch 'develop' into ximinez/lending-XLS-66 2025-11-25 14:54:52 -05:00
Ed Hennis
40cd57355d Review feedback from @shawnxie999: MPT Clawback
- MPTs do not require the lsfMPTCanLock flag to be able to clawback
2025-11-25 14:46:46 -05:00
Ed Hennis
77e3bbdc89 Move the ValidPseudoAccounts class back to its original location
- The class didn't actually change much, if at all, but somehow got
  relocated.
- This should make the review easier, and reduce the footprint of the
  PR.
2025-11-25 13:29:05 -05:00
Ed Hennis
49ee70ea28 Fix formatting again 2025-11-25 12:22:15 -05:00
Jingchen
b124c9f7e3 refactor: Retire Flow and FlowSortStrands amendments (#6054)
Amendments activated for more than 2 years can be retired. This change retires the Flow and FlowSortStrands amendments.
2025-11-25 14:21:17 +00:00
Vito Tumas
5773f2440a Add additional documentation to Lending Protocol (#6037)
- documents core equations of the lending protocol
2025-11-25 05:37:04 +00:00
Ed Hennis
c6ff9882f8 Merge branch 'ximinez/lending-XLS-66' into ximinez/lending-vault-payments 2025-11-24 21:49:39 -05:00
Ed Hennis
08a6bef7f3 Merge branch 'develop' into ximinez/lending-XLS-66 2025-11-24 21:48:57 -05:00
Bart
b550dc00ed ci: Remove missing commits check (#6077)
This change removes the CI check for missing commits, as well as a stray path to the publish-docs workflow that isn't used in the on-trigger workflow.
2025-11-24 21:43:39 -05:00
Ed Hennis
f9027bb88f Merge branch 'ximinez/lending-XLS-66' into ximinez/lending-vault-payments 2025-11-24 21:42:57 -05:00
Ed Hennis
992a62a95a Merge remote-tracking branch 'XRPLF/ximinez/lending-XLS-66' into ximinez/lending-vault-payments
* XRPLF/ximinez/lending-XLS-66: (47 commits)
  Review feedback from @gregtatcam: typo
  Review feedback from @Tapanito, @gregtatcam, and @shawnxie999
  Update src/xrpld/app/tx/detail/LoanBrokerCoverClawback.cpp
  Fix formatting
  Add deep freeze check to LoanBrokerDelete (6053)
  Fix build error with LoanBroker invariant
  Address a couple of feedback items from @Tapanito and @shawnxie999:
  Review feedback from @shawnxie999: removeEmptyHolding
  Review feedback from @shawnxie999: broker owner count
  Update src/xrpld/app/tx/detail/LoanBrokerCoverClawback.cpp
  Update src/xrpld/app/tx/detail/LoanBrokerCoverDeposit.cpp
  Update src/xrpld/app/tx/detail/LoanBrokerSet.cpp
  Add a LoanBroker invariant to compare CoverAvailable to balance
  refactor: Retire RequireFullyCanonicalSig amendment (6035)
  refactor: Retire DeletableAccounts amendment (6056)
  refactor: Retire CryptoConditionsSuite amendment (6036)
  Review feedback from @gregtatcam: variable name
  Review feedback from @gregtatcam: readability
  From discussion with @gregtatcam: Revert "Payment"
  Review feedback from @gregtatcam: compute vs. calculate
  ...
2025-11-24 21:41:21 -05:00
Ed Hennis
b8d830a812 Fix formatting 2025-11-24 21:38:21 -05:00
Ed Hennis
814fe018b7 Merge branch 'develop' into ximinez/lending-XLS-66 2025-11-24 21:30:08 -05:00
Ed Hennis
dedafbe326 Review feedback from @gregtatcam: typo 2025-11-24 20:54:31 -05:00
Ed Hennis
71bb08cd78 Review feedback from @Tapanito, @gregtatcam, and @shawnxie999
- Created a common doWithdraw function for VaultWithdraw and
  LoanBrokerCoverWithdraw. Added verifyDepositPreauth to it, so that
  both transactions will get the check.
- Add a missing null check to LoanBrokerSet, and add log messages to the
  existing checks.
2025-11-24 20:42:40 -05:00
Ed Hennis
25e72d7844 Update src/xrpld/app/tx/detail/LoanBrokerCoverClawback.cpp
Co-authored-by: Shawn Xie <35279399+shawnxie999@users.noreply.github.com>
2025-11-24 21:42:03 -04:00