deltachat / napi-jsonrpc

use jsonrpc over napi.rs in nodejs
3 stars 0 forks source link

why this is not in the core repo #1

Open Simon-Laux opened 1 year ago

Simon-Laux commented 1 year ago

We can later move it there, but for now:

  1. deltachat-node has its package.json in the root of the repo so it is the only one installable via git (through npm install https://github.com/deltachat/deltachat-core-rust.git), though I'm unsure if napi.rs packages can even be installed via git?
  2. I'm not sure if then napi-rs cli supports being run from a sub folder? (It should work fine I guess, but could also be that it creates tags or other shenanigans, we should test it in this dedicated repo first)
  3. The ci to build all releases is rather heavy, not sure wether we want to run it often in the core repo.
  4. The Jsonrpc-api is already tested in the core repo, so not too many unique errors that new versions/commits to core can introduce here.

Also I'm unsure whether we should really migrate to use this in desktop instead of deltachat-node:

Pros

Cons

As we plan to switch to tauri anyway, I don't see the real benefit of switching it for desktop, we should rather just say we phase out deltachat-node as being "deprecated/obsolete" for anything besides dc desktop and that they should use the napi-jsonrpc bindings instead.

Simon-Laux commented 5 months ago

In the end we want to now have a package that uses the stdio-server-binary instead of dealing with NAPI linking stuff. https://github.com/deltachat/deltachat-core-rust/tree/main/deltachat-rpc-server

So starting a sub process and talking with it over stdio instead of node bindings (be it this repo or deltachat-node, both are node bindings)

I started making the new package at https://github.com/deltachat/deltachat-core-rust/pull/5332