-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Conversation
I did a review of all the different ways we have to spawn go and js daemons as well as past conversations on IRC
and it seems like, what we're looking for is actually extending the ipfsd-ctl daemon to spawn js nodes as well?
It seems like the best course of action to get tests in browsers across the board is to port the code from Given the above notes, I believe the tasks should be expanded to:
|
Yes! Let's do that
Learn how https://github.com/ipfs/js-ipfs-api/tree/master/test/ipfs-factory is doing it. Ideally this should be all ipfd-ctl |
@diasdavid woot! Awesome, I'll do that. |
@dryajov I was just looking at |
@richardschneider that would be great! |
Raised windows interop issue. |
@richardschneider ipfsd-ctl does run on Windows, in fact it was one of the first modules to get support :) -- https://ci.appveyor.com/project/diasdavid/js-ipfsd-ctl-a9ywu -- thanks to @thisconnect :) |
@diasdavid as usually you are correct. I'll close the issue. |
Compatability table
|
@dryajov brought back the compatibility table and added a column for when the browser acts as a Relay #1063 (comment) |
@diasdavid thanks! |
EDIT: moved this tasks to the first comment (dryajov)
|
@diasdavid, I believe all we vant to do is to set the dafault flag for js-ipfs/src/core/components/libp2p.js Lines 24 to 30 in 104ef1e
I also think that in addition to this, there should be a check to skip circuit if swarm doesn't have any transports registered (that is skip it in swarm proper). |
@dryajov EXPERIMENTAL flags are not the same as things in the CONFIG file. If you want to have that information in both places that is fine but for now, js-ipfs won't have Relay enabled by default until it is properly tested (i.e this PR finished) |
@diasdavid I agree, we should disable circuit for now (i.e. |
I think I know what you're saying now - yes, we should keep the config flags and the EXPERIMENTAL flags the same and also disable relay by default with |
@diasdavid this should address dialing when no transports are registered - libp2p/js-libp2p-switch#236 |
@dryajov I know you are working on upgrading ipfsd-ctl, just wanted to suggest that it would be good to fix the issues to make the Circuit Relay tests in |
@diasdavid I agree, ipfsd-ctl will mostly help covering the browser based cases. I'll fix the tests we currently have. |
e5906ef
to
af39873
Compare
Hi @dryajov, mind rebasing master onto this branch. CI should be green (at least Travis and Circle) |
.aegir.js
Outdated
@@ -18,7 +18,8 @@ function start (done) { | |||
(cb) => js([`${base}/10012`, `${base}/20012/ws`], true, 31012, 32012, cb), | |||
(cb) => js([`${base}/10013`, `${base}/20013/ws`], true, 31013, 32013, cb), | |||
(cb) => js([`${base}/10014`, `${base}/20014/ws`], true, 31014, 32014, cb), | |||
(cb) => js([`${base}/10015`, `${base}/20015/ws`], true, 31015, 32015, cb) | |||
(cb) => js([`${base}/10015`, `${base}/20015/ws`], true, 31015, 32015, cb), | |||
(cb) => go([`${base}/10027`, `${base}/20027/ws`], true, 33027, 44027, cb), // we need this for circuit for now |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not true, you should move the interop test to the interop suite
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Interop tests don't run in browsers right now, I thought we wanted some browser coverage?
test/core/circuit-relay.spec.js
Outdated
// TODO: 1) figure out why this test hangs randomly | ||
// TODO: 2) move this test to the interop batch | ||
it.skip('node1 <-> goRelay <-> node2', (done) => { | ||
it('node1 <-> goRelay <-> node2', (done) => { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please move this test to the interop suite. That was what was in the TODO
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can move those to the interop tests, but we'll lose any sort of browser coverage until ipfsd-ctl is ready.
test/core/circuit-relay.spec.js
Outdated
], done) | ||
}) | ||
}) | ||
|
||
it('node1 <-> jsRelay <-> node2', (done) => { | ||
it.skip('node1 <-> jsRelay <-> node2', (done) => { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why skip?
@diasdavid the tests in |
You can run interop tests in the browser too, it uses |
This reverts commit 067c9b0.
e10fccc
to
f265445
Compare
I'm going ahead and merge this one. Let's save the fireworks for when ipfs/interop#6 is merged though :) Anyways, great work! :D It took a while but it got done! :) |
Weeeeee!!!!! ❤️ |
Why i get "Circuit not enabled" after ipfs.swarm.connect ? |
Remaining tasks: