interledger-deprecated/ilp-core

Proposal: Remove ilp-core

Closed this issue · 1 comments

Right now ilp-core implements two primary functions: quoting and managing multiple clients. These are relatively minimal bits of functionality but as a result of the current structure, ilp-core has to wrap and re-expose all of the plugin methods and events. This provides little value and makes the stack unnecessarily complicated.

For quoting, right now it seems that the ilp client and the ilp-connector use different methods for quoting and generating the source transfers. If the behavior is different for a reason, this suggests that quoting is not really shared functionality and thus should be implemented separately by the ilp and ilp-connector modules.

Regarding managing multiple clients, this functionality is not currently used by the ilp client and I don't think we need to support a multi-plugin sender any time in the near future. Again, the actual functionality provided by the core class of this module is pretty minimal, so it doesn't seem worth it to have another wrapper layer around the plugin.

I would propose that we move the quoting functionality from ilp-core into the ilp module, potentially exported separately as ILP.ILQP, move the multi-plugin functionality into the ilp-connector, and get rid of this module.