Spike - investigate use of eosjs in TypeScript SDK (merge fiojs into eosjs)

Description

It would be good to leverage eosjs as much as possible for our TypeScript SDK. Currently we use fiojs, but we are not doing regular updates to fiojs which could create security issues in the future.

Can we take eosjs as a base and do minimal updates to get it to work with the TypeScript SDK?

Checklist

Activity

Show:

Eric Butz November 24, 2020 at 12:56 AM

Based on a 11/23/20 discussion with Andrew, Jimmy, Eric:

Several options were discussed with Jimmy regarding the different options for minimizing the pain of keeping up with eosjs and eosjs-ecc changes. We also reviewed other forks of eosjs. The following are the options:

  • Keep as is. Maintain a separate copy of eosjs and manually merge in commits we think are important.

    • Pro: no changes to current process

    • Con: hard to know what changes are important and you can get into a bit of merge hell when you cherry pick.

  • Create a complete separate fiojs that wraps eosjs and eosjs-ecc

    • Pro: This would be clean, would clearly separate out fio code, and would allow devs to use eosjs completely separately from FIO.

    • Con: This will require a lot of rework of our code and is not simple.

  • Create a fork of eosjs and eosjs-ecc and merge in our fio code

    • Pro: This makes comparison of upstream changes easier to compare and pull in.

    • Con: It is not a “clean” separation of FIO code.

Based on the discussion we recommend the fork option.

Andrey Vinichenko November 23, 2020 at 6:49 PM

I think the best solution to fork eosjs and create a commit with fiojs changes, so then we could fetch upstream and merge eosjs updates. Also we could do the same with eosjs-ecc, or check if it has changes with ecc folder code, maybe we could just copy-paste all files.

Eric Butz November 11, 2020 at 10:27 PM

When we get to this we will want to have a call with Jimmy to discuss what was changed in fiojs.

Eric Butz August 11, 2020 at 6:13 PM

If we want to maintain fiojs going forward, we need to do a regular merge of relevant fixes from eosjs into fiojs.

Done

Details

Assignee

Reporter

Checklist

Created June 12, 2020 at 6:03 PM
Updated May 20, 2022 at 1:45 PM
Resolved February 17, 2021 at 4:32 AM