Skip to content

Decouple Wrap, Plugin, & App Bindings From CLI #1696

Open

Description

@dOrgJelli

Is your feature request related to a problem? Please describe.
Currently, the wrap wasm & plugin bindings are bundled into the CLI. This means that every time bindings have an update, we have to create a new release of the CLI.

Describe the solution you'd like
Ideally we could import bindings into the CLI through an external link of some sort. Since the schema-bind package is a JS package, we could use NPM package references, and import the binding module from there. Alternatively a github URL could be used.

Ultimately we'd like to have bindings be built as wraps, so it could be a wrap URI in the future.

Activity

  1. added this to the golden-path milestone on Apr 18, 2023
  2. changed the title [-]Decouple Wrap & Plugin Bindings From CLI[/-] [+]Decouple Wrap, Plugin, & App Bindings From CLI[/+] on Apr 24, 2023
  3. dOrgJelli commented on Apr 24, 2023

    @dOrgJelli
    ContributorAuthor

    app/ and plugin/ project bindings can live in the client repos. For example:

    • rust-client => app/rust & plugin/rust
    • python-client => app/python & plugin/python
    • javascript-client => app/typescript & plugin/typescript

    The wasm/ project bindings can live in a new "wrap" repo. For example:

    • rust-wrap => wasm/rust
    • assemblyscript-wrap => wasm/assemblyscript

    NOTE: we should consider changing wasm/ to wrap/.
    NOTE: we should consider changing app/typescript to app/javascript, or alternatively javascript-client to typescript-client.

  4. dOrgJelli commented on May 10, 2023

    @dOrgJelli
    ContributorAuthor

    Quick update: I started working on wrap port of the bindings here https://github.com/polywrap/wrap-abi-bindgen/tree/dev

    I had some extra time today and thought this would be fun to get started on. Once implemented this will make the implementation of the above much simpler, as invoking wraps dynamically within the CLI is much easier than NPM packages.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions