chore: update ipfsd-ctl version and use daemon.js util file#86
Conversation
f5c267f to
da93ced
Compare
|
I'm a little concerned by the skipped tests around different hashes. These tests are run on the current release & master of js-IPFS and all pass - why has converting them to async/await made them fail? Or is it something to do with a new dep? |
da93ced to
c068606
Compare
|
I've debugged a little bit more and I found out that the problem on both However, I still have 3 skipped tests on Can I get some help on this? |
There was a problem hiding this comment.
The changes look good to me!
Now we need to decide on how to iterate with the skipped tests. Taking into attention @PedroMiguelSS analysis, it looks like a problem not related with this. Also, the same configurations are provided. It would be great to not skip the tests, but if anyone is now available to help debugging it, we should probably create issues to get to them as soon as possible, and not block the refactor, as we are upgrading a lot of dependencies here, some of them several breaking releases. @achingbrain what is your feeling here?
hugomrdias
left a comment
There was a problem hiding this comment.
Lets merge this, @PedroMiguelSS can you please create an issue referencing this ?
|
@PedroMiguelSS check whats happening with the CI |
|
@hugomrdias, issue: #88 |
62f867a to
facc384
Compare
facc384 to
4f38311
Compare
|
@achingbrain we still have a couple of timeout error coming from the go daemon on windows by this should be good to go, can you review it again pls |
| // Somehow, the hashes for the same content are not equal | ||
| // This problem was also detected on | ||
| // both 'remove a child shared by multiple pins' test and 'print same pins' | ||
| it.skip('trickle DAGs', () => { |
There was a problem hiding this comment.
Does this (and the other two) still need to be skipped?
There was a problem hiding this comment.
These 3 tests cannot be unskipped as they are still failing. Issue #88 has further details about this problem.
Should we block this PR until we get this solved?
There was a problem hiding this comment.
I'm taking a look at those failing tests
There was a problem hiding this comment.
I think the problem was that both invocations of testHashesAreEqual in each test was consuming data from the same ReadableStream - something in the timing of the execution of the tests may have changed which meant that one invocation was missing the first few data events.
Refactoring the tests so each invocation of testHashesAreEqual gets it's own data stream seems to have solved the problem.
There was a problem hiding this comment.
Though having said that I do seem to be getting different CIDs from js-IPFS master on the cli if the daemon is on or off when --trickle is specified. 😬
There was a problem hiding this comment.
ipfs-http-client wasn't inspecting the right field for the --trickle arg - the fix is in ipfs-inactive/js-ipfs-http-client#1129 and I'll backport it to ipfs-http-client@38.0.x when it's merged.
There was a problem hiding this comment.
Urgh, no, it's more complicated that that, sorry - tired. ipfs-http-client is doing the right thing - it takes a trickle key as part of it's options and sends that over http. The cli in ipfs takes a trickle argument but turns it into strategy: 'trickle' (as that's what's required by the unixfs-importer) and passes that to ipfs.add* and the http api endpoint does the same thing.
The right thing to do is for ipfs-http-client, the cli and the http api endpoint to all pass trickle: true to ipfs.add (as per the interface spec) and have that do the conversion to strategy: 'trickle'.
- = actually
ipfs._addAsyncIteratorbutipfs.addjust passes it's options straight through so same same.
|
Tiny nits, just needs the added |
With all the added promises I think the order of execution had changed so one invocation would not recieve all the data events.
|
I think this is good to go, will merge when CI passes. Looks like some flaky tests in there. |
|
Famous last words, perhaps. |
|
I've replicated the failing tests locally, seems this is the fix: ipfs-inactive/js-ipfs-http-client#1130 |
|
Tests passing, hooray! |
|
CONGRATULATIONS ON THE AWESOME MERGE, @PedroMiguelSS and @achingbrain!! |

Completes phase 1 and 2 to tackle #84 as referenced here.
Some tests were skipped due to an inconsistency: the same content is getting different hashes when added to a
go daemonand ajs daemon. The skipped tests are:files.jsfile