-
-
Notifications
You must be signed in to change notification settings - Fork 33
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
Implement Extensions System #262
Conversation
- removed `Newtonsoft.Json` in favor of `System.Text.Json` - refactored `VendorExtension` to allow for testing - refactored file-backed vendor extensions - renamed `BuiltIn` to `Host` - implement basic vendor APIs - add tests
… feature/extensions
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You might wanna document how VFS is used to provide filesystem access to the host in Vignette.
VFS is a part of Stride. They have documentations for it on their end. |
We're not talking about the VFS, we're talking about how we use it. Is this still in-line with our spec in #251? |
For the most part yes specially with handling of the metadata. However, I've taken a few liberties in the scripting API and loading the entry point script. A minimal working example is basically an ES6 Javascript file with two exports named import { vignette } from "vignette";
export function activate() { }
export function deactivate() { } This PR is only the bare minimum and does not fully implement the specification. Other parts of the API will be added in different PRs at a later time after consideration and discussion. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We'll do a proper RFC to further standardize this so we don't end up in dev hell. Otherwise, LGTM for a initial build.
Base implementation for extensions. Closes #251.