rippled icon indicating copy to clipboard operation
rippled copied to clipboard

XLS-42d: XRPL Plugins

Open mvadari opened this issue 1 year ago • 1 comments

High Level Overview of Change

This PR adds support for XLS-42d, XRPL Plugins. This allows people to develop features in any language that supports the API (currently, C++ and Python).

This feature will not require an amendment, and will not affect mainnet.

See https://github.com/mvadari/xrpl-plugin/ for more information.

Context of Change

Spec: https://github.com/XRPLF/XRPL-Standards/discussions/116

Type of Change

  • [x] New feature (non-breaking change which adds functionality)

API Impact

There should not be any changes to how people use rippled right now, just additional features.

  • [ ] Public API: New feature (new methods and/or new fields)
  • [ ] Public API: Breaking change (in general, breaking changes should only impact the next api_version)
  • [ ] libxrpl change (any change that may affect libxrpl or dependents of libxrpl)
  • [ ] Peer protocol change (must be backward compatible or bump the peer protocol version)

Test Plan

Tests have been written with sample C++ plugins. There is also a Python library in development at https://github.com/mvadari/xrpl-plugin/ and more tests will be written there.

Future Tasks

Fix the remaining failing tests and add support for all Transaction methods

mvadari avatar Dec 06 '23 19:12 mvadari

Codecov Report

Attention: Patch coverage is 67.96875% with 328 lines in your changes missing coverage. Please review.

Project coverage is 71.0%. Comparing base (2df6356) to head (25966bd). Report is 27 commits behind head on develop.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff            @@
##           develop   #4847     +/-   ##
=========================================
- Coverage     71.1%   71.0%   -0.1%     
=========================================
  Files          796     810     +14     
  Lines        66997   67787    +790     
  Branches     11005   11106    +101     
=========================================
+ Hits         47639   48157    +518     
- Misses       19358   19630    +272     
Files Coverage Δ
src/ripple/app/ledger/AcceptedLedgerTx.h 100.0% <ø> (ø)
src/ripple/app/ledger/LedgerToJson.h 100.0% <ø> (ø)
src/ripple/app/misc/impl/AMMUtils.cpp 99.4% <100.0%> (ø)
src/ripple/app/misc/impl/DeliverMax.cpp 100.0% <100.0%> (ø)
src/ripple/app/tx/TxConsequences.h 100.0% <100.0%> (ø)
src/ripple/app/tx/applySteps.h 100.0% <ø> (ø)
src/ripple/app/tx/impl/ApplyContext.cpp 100.0% <ø> (ø)
src/ripple/app/tx/impl/Escrow.cpp 83.1% <ø> (ø)
src/ripple/app/tx/impl/InvariantCheck.h 100.0% <ø> (ø)
src/ripple/app/tx/impl/PreclaimContext.h 100.0% <100.0%> (ø)
... and 83 more

... and 5 files with indirect coverage changes

Impacted file tree graph

codecov-commenter avatar Apr 11 '24 16:04 codecov-commenter