ipfs / team-mgmt

IPFS Team Planning, Management & Coordination threads
https://github.com/ipfs/team-mgmt/issues
Other
267 stars 97 forks source link

Sprint: Browser accesses go-ipfs content #310

Closed daviddias closed 7 years ago

daviddias commented 7 years ago

Hi! If you are coming to this issue for the first time, this might be new to you. We are going to try something new, instead of having milestones and tackling through them during the quarter, we are going to have teams focused for 2 week periods on getting some parts of IPFS that fulfill a user story, so that things can be completed incrementally and in a discrete way instead of continuously spreading our attention too thin.

What is this sprint going to achieve

Browser accesses go-ipfs content

Tasks

Outside of the sprint (Time on this should not be invested unless all the above is done

Timeline

We will be running this sprint for 2 weeks, starting on Week 3 (15 Jan) and ending on the final day of Week 4 (22 Jan). During these period, we know that:

We will be using this issue to do daily check in, please avoid commenting if you are not check in in, if you have a question, consider opening another issue or asking through the #IPFS channel in freenode.

daviddias commented 7 years ago

David's check in Mon 16

PS: #first :D

Update: Mon 16: got some hiccups with webpacking libp2p-webrtc-direct (random segfaults, similat to ones seen in js-ipfs-api), not a blocker, should haven't invested so much time trying to solve them, will compensate tomorrow.

haadcode commented 7 years ago

I'll be working on the following today:

I don't have any blockers atm. Will need feedback for examples soon.

victorb commented 7 years ago

2016-01-16

Gonna be working on finishing @dignifiedquire's implementation of multiplex. To track: libp2p/js-libp2p-multiplex#44

Update end-day: Still working on getting the .destroy stuff to work correctly, looking at spdy implementation for inspiration and making the interface-stream-muxer tests to pass.

2016-01-17

Starting from where I left off yesterday, getting .destroy to work in js-libp2p-multiplex branch pull-streams

Update end-day: Ended up having a call with Friedel and David about what to do with pull-streams not establishing connections unless reading, adding test case for closing connections if read/not read.

2016-01-18

Following the todo at https://hackmd.io/KYdmGMAYQVgTgLQgMwCYAcCAsJ2PQGzgBmCAhsQIyXhbCqRwAmMQA===?view#

Update end-day: Managed to get tons of help from our dear and beloved @diasdavid and we made lots of progress on getting streams to close properly in multiplex. Fork here: https://github.com/diasdavid/multiplex/tree/fix/close-muxed-streams

2016-01-19

Continuing with the todos at https://hackmd.io/KYdmGMAYQVgTgLQgMwCYAcCAsJ2PQGzgBmCAhsQIyXhbCqRwAmMQA===?view#

Update end-day: Got all the tests from interface-stream-muxer to pass, including the mega-stress test (even though it takes ~20 minutes to finish) with Davids help to close the streams probably. Gonna continue today with the two items of testing with go-ipfs for interop.

2016-01-20

Gonna look into getting interop to work between js-libp2p and go-libp2p, identify any issues and make it easy to reproduce, probably gonna spend some time talking to the go-ipfs team as well.

Update middle-day: Got a new TODO list on what I'm working on.

Update end-of-day: Got stuck when node-webrtc doesn't work properly on Ubuntu 16.04 systems, leading to segfaults.

2016-01-23

Catching up with notifications of stuff happening during the weekend, continuing with the todo-list above and making sure https://github.com/ipfs/js-ipfs/issues/721 gets solved.

2016-01-24

Got stuck at .identify not working in .swarm because of multiplex. David submitted a fix today https://github.com/libp2p/js-libp2p-multiplex/pull/55 and I'll continue with the todo items above, basing my work of that branch.

Update end-of-day: Not the most productive day, needed lots of help but lots of help was not available to me. Enabled some more testing and continued to test the interop between go-libp2p and js-libp2p.

2016-01-25

Plan for today is to finish the multistream-select tests and continue to debug the problems with interop between go-libp2p and js-libp2p

2016-01-26

Two remaining issues for interop, hangup doesn't work properly in swarm and somehow the streams closes before finishing when using the echo example.

Also, probably gonna have to spend some time these last two days on helping data.gov sprint with setting up kubernetes/test-cluster.

Middle of the day: Switching to take over the documentation/examples effort and David moving to focusing on the muxers compatibility.

ghost commented 7 years ago

Damn I was pretty sure I posted earlier.

victor commented 7 years ago

I don't care about this, sorry, but if you feel this way you'll work better, then go for it πŸ‘πŸΌ

Enviat des del meu iPhone

El 16 gen 2017, a les 19:40, Lars Gierth notifications@github.com va escriure:

Damn I was pretty sure I posted earlier.

No blockers Current: looking into relay in go-ipfs, what needs fixing, and how to actually make use of it. Next: /wss prespec β€” You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

ghost commented 7 years ago

@victor uhm, are you trying to tell use anything related to this sprint?

daviddias commented 7 years ago

@victor my apologies for bothering you, apparently we tagged you instead of @VictorBjelkholm. Fixed now, you can unsubscribe to this issue.

ghost commented 7 years ago

Ah that makes sense, sorry victor!

daviddias commented 7 years ago

David's check in Mon 17

Update:

haadcode commented 7 years ago

Yesterday:

Today:

Blockers: none

daviddias commented 7 years ago

Notes from pull-multiplex extravaganza discussion: https://hackmd.io/KYdmGMAYQVgTgLQgMwCYAcCAsJ2PQGzgBmCAhsQIyXhbCqRwAmMQA===?edit

ghost commented 7 years ago

Yesterday I examined the relay impl in go-ipfs. It's not wired up with anything and doesn't provide end-to-end encryption. I've described a way forward in https://github.com/libp2p/go-libp2p/issues/82

daviddias commented 7 years ago

David's check in Wed 18

haadcode commented 7 years ago

End of the day check in:

Tomorrow:

Blockers:

daviddias commented 7 years ago

I couldn't find documentation on how do I connect js-ipfs (node.js) and js-ipfs (browser) nodes, so I need instructions on links to documentation to get started. cc @diasdavid

@haadcode by using webrtc-star, they will find each other automatically, however it would be good, since go-ipfs won't have that feature, that you use websockets addr in the js-ipfs node and that in the demo page, you have a box saying "multiaddr to dial". Which reminds me, it would be ideal to have a list of peers connected visual in the webdemo

ghost commented 7 years ago
daviddias commented 7 years ago

David's check in Thu 19

haadcode commented 7 years ago

After yesterday's check in:

Today:

Blockers: I have 2 days left for this sprint and while the browser side of things should be good to go in terms of finishing them, leaving them for others to work, I'm running low on time for writing the tutorials and documentation. I'm not convinced I can finish all of that in 2 days (and I'll be gone next week). I know you're not in this sprint @RichardLitt, but would you be able to help out next week with the tutorials (I can work with you on those).

I'll bring these up in our sync today so we can discuss the steps forward.

daviddias commented 7 years ago

I've noticed that folks aren't giving love to the waffle board, what's up?

daviddias commented 7 years ago

Group Check In Jan 19, Thu

Notes: https://hackmd.io/GYTgJmCMDsDMwFoBMBTJAOBAWADAI0gTwGMwkF0A2LMSnYPdYaEIA===?both

Top priorities before the weekend:

RichardLitt commented 7 years ago

I have 2 days left for this sprint and while the browser side of things should be good to go in terms of finishing them, leaving them for others to work, I'm running low on time for writing the tutorials and documentation. I'm not convinced I can finish all of that in 2 days (and I'll be gone next week). I know you're not in this sprint @RichardLitt, but would you be able to help out next week with the tutorials (I can work with you on those).

@haadcode Can we schedule a short video call for talking about this? I haven't been tracking this sprint, and the state is not in my head. I should have some bandwidth to help, however.

daviddias commented 7 years ago

David's check in Fri 20

daviddias commented 7 years ago

@RichardLitt definitely have that chat with @haadcode but here are some good things to read:

daviddias commented 7 years ago

David's check in Mon 23

Plan:

ghost commented 7 years ago

Lars monday

daviddias commented 7 years ago

David's check in Tue 24

Update:

ghost commented 7 years ago

Lars tuesday

daviddias commented 7 years ago

David's check in Wed 25

RichardLitt commented 7 years ago

@RichardLitt today:

ghost commented 7 years ago

Lars wednesday

ghost commented 7 years ago

circuit-relay prespec: libp2p/go-libp2p-relay#1 -- feedback much appreciated, sorry this document gets written so late in the sprint.

daviddias commented 7 years ago

David's check in Thu 26

ghost commented 7 years ago

Lars thursday

daviddias commented 7 years ago

The last mile πŸƒπŸ½πŸ’¨

We just had the second group check in to discuss the state of tasks and decide what are the things which we should spend our time for the last day and showcase Monday. Notes: https://hackmd.io/GYEwxiCMkBwKwFowENgAYEBYBsAjbCyAnGogKYy5lFjC65EBMYQA?edit

ghost commented 7 years ago

Here are two /ws bootstrappers which also have the gateway on the same port:

/ip4/159.203.166.189/tcp/80/ws/ipfs/QmWyLSnMHW2H6bmCG9e9PQq4ARve94JduvGjbutUuzx4a8
/ip4/178.62.215.134/tcp/80/ws/ipfs/QmVcj9MATxGTAFoQSbrJvZ9Fbs4Jzvrxy9hyJeRwbW8NeA

These should also work on /tcp/443/wss but I haven't tested it, as I have yet to patch /dns and /wss support into go-ipfs. So I'm not yet able to dial the same with go-ipfs.

peers graph

ghost commented 7 years ago

The respective /dns+/wss addresses:

/dns4/strawberry.i.ipfs.io/tcp/443/wss/ipfs/QmWyLSnMHW2H6bmCG9e9PQq4ARve94JduvGjbutUuzx4a8
/dns4/blueberry.i.ipfs.io/tcp/443/wss/ipfs/QmVcj9MATxGTAFoQSbrJvZ9Fbs4Jzvrxy9hyJeRwbW8NeA

and https://strawberry.i.ipfs.io + https://blueberry.i.ipfs.io for the gateway.

ghost commented 7 years ago

For deferring routing to the gateway:

And you can use api/v0/refs?r=true to warm up the /ws bootstrapper/gateway with a stuff added on other go-ipfs nodes. That way we cheat our way around the lack of relaying.

daviddias commented 7 years ago

You know something cool, now we have multiplex working woooo \o/ :D Once go-ipfs 0.4.7 is release, no user will have to worry about it again :D

flyingzumwalt commented 7 years ago

@diasdavid can we call this "done"?

daviddias commented 7 years ago

Yes! :D