Create plugin-api crate and move most of core's logic into it #795
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.
Description of the change
Adds a library crate named
javy-plugin-api
with a lotjavy-core
's logic. The idea is a Javy plugin developer should make their Javy plugin cdylib dependent on thisjavy-plugin-api
crate and it will handle most of the exports for them and let them configure their runtime.Why am I making this change?
Part of #768. We don't want every plugin developer to have to re-implement most of the existing logic in
javy-core
themselves so this provides a crate they can depend on so they don't have to re-implement the existing logic.I'm opting to leave the allocation function definitions in the
javy
library crate for this PR. I'll move the functions in the next PR.Checklist
javy-cli
andjavy-core
do not require updating CHANGELOG files.