ipfs / js-kubo-rpc-client

A client library for the Kubo RPC API
https://www.npmjs.com/package/kubo-rpc-client
Other
27 stars 6 forks source link

ipfs-http-client migration: Additional tasks #56

Open SgtPooki opened 1 year ago

SgtPooki commented 1 year ago

For the full context see https://github.com/ipfs/kubo/issues/9125

Broken during migration

High priority items

Other items

Broken prior to migration

Removed tests that should be re-added

Skipped tests that are remaining skipped due to a bug (need investigation)

BigLep commented 1 year ago

@SgtPooki : do we have a theory why copy/pasting the code out to js-kubo-rpc-client would be causing tests to fail (given we matched dependencies)?

SgtPooki commented 1 year ago

@SgtPooki : do we have a theory why copy/pasting the code out to js-kubo-rpc-client would be causing tests to fail (given we matched dependencies)?

@BigLep that's a great question.

I don't have a theory other than that one of the pinned deps from the ipfs, interface-ipfs-core, or ipfs-http-client got changed. This issue and above linked CI run was an attempt to remove any of those variables, but obviously it doesn't fix all the problems.

Other issues were called out in https://github.com/ipfs/js-kubo-rpc-client/issues/5#issuecomment-1281627929 and other comments on that thread.

There are also a few js-ipfs and proc being utilized in tests that we're now trying to test using only kubo-daemon. Are some of the tests, as written, dependent upon one of the nodes not being kubo? Probably. Do I know which ones yet? Nope.

I had a draft comment written up where I was going to show debug output from some of these failing tests and lost it. Long story short: without in-depth knowledge of whats going on in the daemon, libp2p, and the intricacies of these tests, it's going to take me a long time to solve all of these errors. That is why I argued (in kubo standup) for simply blocking them temporarily until a dev more experienced in this stack could take a look. (i.e. unblocking myself)

I can work on solving these, but I will need to bring in an expert for tests where existing debug output is not sufficient, docs are out of date, or failures are generally less obvious.

Now I'm trying to get this demo project done for next week, so I'll have to get back to diving into this later.