-
Notifications
You must be signed in to change notification settings - Fork 97
Sprint: March 7-20 #97
Comments
Apps on IPFSLead: @dignifiequireParticipants
Agenda
Notes
|
Library Peer to Peer!Lead: David Dias - @diasdavidParticipantsAgendaUpdate
Next
|
IPFS JavaScript ImplementationLead: David Dias - @diasdavidParticipantsAgendaUpdate
Next
|
InfrastructureLead: @lgierthParticipantsAgenda
Notes
|
@haadcode sprint goals - 7-20 MarSummaryI'll be working on integrating orbit-db (1) to Orbit (2) in order to make sure orbit-db provides an easy embeddable p2p database for apps on IPFS. It also means I can refactor a huge bunch of the Orbit code and simplify the "backend" logic of the app as well as refactor the UI to a more manageable state. The overall goal is to make Orbit a little cleaner so that others can start contributing to is.
TasksOrbit
Pubsub
|
@dignifiedquires TODO
|
SummaryI am going to focus on copy editing some of our blog posts that need to go out, because we should publish them and I think a little elbow grease will get them out the door. I will also be diving into js-ipfs and seeing if I can help out with building Tasks
|
@noffle Sprint GoalsSummaryI want to make headway on the "init" process for js-ipfs: this means getting a clear understanding of what initializing a repo means with respect to IPFS, resolving any non-existant dependencies, and implementing the initialization logic. I don't have a clear view yet on the full dependency graph for this, so I'll try and update this list as the amount of work involved becomes clearer. I'd also like to build hyperarray: an ordered list CRDT built on a hyperlog. This will form the underlying document model for an ipfs-pad document. I've been largely inspired by r-array's design and API. Tasksjs-ipfs
ipfs-pad
pm
|
SummaryI want to continue to make progress with my understanding of IPFS. I feel I am at around 70% knowledge and this is keeping me from awnsering some of the bigger questions about data importing like what structures should a browser be able to use in lack of an fs.. yet should we use unixfs and such. I will be moving towards more defined tasks from the go implementation like building out more commands. Also starting to take a look at libp2p and networking. And spending some time with react and the webui to keep my application development chops in line. P.S. Also want to work with those geniuses up there on pub/sub and CRDT systems TODO- js-ipfs - [~] command cat (meow) - [~] command object get - js-ipfs-data-importing (js-ipfs issue #41) - [ ] streamImporter (more questions) - [X] BufferImporter (CR) - [~] export function - [X] browser / mocha tests - js-ipfs-merkle-dag - [X] web tests (needs https://github.com/ipfs/js-ipfs-repo/pull/29) - Webui - [ ] write some tests for new components - [~] document in contibuting.md to help others get involved |
@lgierth todo
|
@nicola and I will be having a hangout about IPLD this monday 3/14. interested researchers feel free to join. time TBD, probably after the general hangout. (@RichardLitt if you can assign a time that would be great) cc @mildred if interested |
@rychipman will join the IPLD meeting ^ |
Set up for 3pm Eastern Time (Should be 8 CET, 7GMT) on Monday. In the calendar. |
Note: tomorrow is a mid-fortnight sprint. We will have a Google Hangout at 1pm EST, 6PM CET. Link will be posted in IRC. |
@RichardLitt @jbenet could we shift the meeting on IPLD just about 30 minutes? (@rychipman can only make then) |
I will join the IPLD meeting. Is it still 7pm UTC? |
@nicola Sure! Which way - forwards or backwards? |
@RichardLitt 3:30 EST :) |
Done. Note: daylight savings affected the states. That mean sprint hangout will follow the calendar: 1pm EST, 10am PST, 5pm GMT, and 6pm CET. |
IPFS Sprint Mid-week hangout Notes@diasdavidFocus on Libp2p, interop with go-p2p. Work on libp2p swarm. The api has completely changed. Before, I was exposing a simple API like dial, and then internally it would figure out which transport to use. Now, instead, we expose these internal steps as different function calls. You still have the nice high-level API to the other peer, but there's a lot more stuff exposed. There's more tests, too, making swarm less brittle. So on that, you now have a swarm version ready. What I'm working now is getting the websocket transport to the new transport scheme, which resulted from this upgrade on p2p swarm.
https://github.com/diasdavid/js-libp2p-swarm/issues/24 This weekGo-p2p and js-p2p interop. Getting that done. If that goes well, he'll go into Bitswap. I might build bitswap on js-land, just to have some example code. @dignifiedquire@dignifiedquire has worked on the webui. He's got peers working, and all of the geolocation data is now fetched all through IPFS again. Mostly, he's been working on the files API. You can delete stuff, create files and folders. Preview works: You can view text files, images, and videos. Anything that the browser could play for you, you can use in the webui. This weekGetting the webui polished and finished. Also, fixing config. It was PRed by @sucha (TODO), who also worked on tests, and then Friedel broke it a bit. @haadHaads been working on Orbit and Orbit-db. Got it integrated into IPFS, so that's all working quite nicely on both sides. The turn around times are fairly good. It works, it loads. There's a lot of bugs and things that need to be worked on. Thanks @noffle for bouncing ideas and giving feedback. This weekWork on orbit; test @noffle's prototype and give feedback. No blockers. @lgierthBeen sick recently, but everything that he's started is in progress. Not really finished yet, but getting there. Friday he's flyin go to New York. Week in three wordsMultireq, metrics, pages. @nginneverLots of browser testing this week, for js-ipfs data importing and for js-merkledag. Everything is ok, except for one issue of not being able to find a function, although it works on @dignifiedquire's machine, but @diasdavid should be able to help. Also, writing tests for containers for the webui. Next WeekNat testing. @noffleFocused on ipfs-init working with js-ipfs. @noffle wrote a spec-like document showing how that works. He's also been thinking a lot of about the structure of distributed apps on top of IPFS. So, he's making a quick prototype of a distributed IPFS-powered wiki. If you're a reader, you just look through a gateway; if you're a publisher, you just publish a new root hash of the wiki. Might work well for a lot of applications. Inspired after playing with zeronet. This WeekFinish this prototype, possibly work on the IPFS-Etherpad prototype. @RichardLittPRed some things - went over all of the PRs in http-api-spec. Revieweed 0.4.0 blogpost and I need to do that again. Published the weekly. Started work on ipfs-block; also perused all of /faq and /support. Also hung out with @jbenet. This weekGoing to keep work on ipfs-block. @whyrusleepingFixed a bug where IPFS would hang for large files; it was a multiplexer bug, in the end. There's a bug in Yamux which hasn't been fixed, where if you have too many in flight open streams, the connection will hang. If you raise that limit, the open ones will close down. The limit has been raised to around 16k, and merged that in, but there's still more to do there This weekShip 0.4.0. @RichardLitt needs to review stuff; Everyone to review the changelog. Other than that, should be pretty silent. Distributions to be updated, too. |
DAVID DIAS CHECK IN
This last sprint I had the chance to give a lot of time to js-ipfs and libp2p, with the goal of getting js-ipfs working on the browser and exchanging blocks with other js-ipfs nodes and go-ipfs nodes. I've made a lot of contributions and updates to: js-libp2p-ipfs, js-ipfs-data-importing, js-multiaddr, js-mafmt, js-peer-id, js-ipfs-repo, js-libp2p-swarm, js-libp2p-tcp, js-libp2p-utp, js-libp2p-websockets, js-libp2p-multiplex. These changes bubbled up to js-ipfs. I've found some (really nasty) rabbit wholes when using spdy over websockets which I will explain more at the libp2p hangout, which made a good hit at my time planning. Also had a good time hacking with @xicombd, good discussions and remote hacking/debugging with @nginnever, good conversations with @dignifiedquire and @nginnever which resulted in the understanding of the new IPFS JavaScript Project guidelines, and last but not the least, the IPLD hangout with a bunch of IPLD enthusiasts. I've also got the chance to write and submit the paper for ICWE and organize and host the first Research & Development meetup in Lisbon. |
SummaryI feel my work has been a bit slow the past two weeks. I worked on the http-api-spec, some more, redoing Tasks
Extra
|
@dignifiedquire UpdateMy main focus this time was the webui. I have made some good progress on the files explorer interface, refactoring some code and writing more tests. I'm now working on cleaning up the UI, preparing mockups and plans for the final phase of the implementation. After a some discussions and issues with our JavaScript setups I've started to create dignified.js which is going to be the module to help us have a unified testing, linting and building solution in all our JavaScript projects. This is an ongoing effort that I'm working on together with @diasdavid and @nginnever. Also in addition after the great IPLD hangout last week I've started implementing parts of it in rust with the goal of finding a typesafe and general interface on how to define mappings between raw IPLD and higher level abstractions like unix-fs. |
@lgierth sprint updateThe past few weeks Berlin has been a huge drag on me, tons of org stuff to take care of, and was generally very easily distracted. My task list is testament to that :) I made a bit of progress on everything, but wasn't able to focus on any particular task very well. I feel quite energized though now that I'm in NYC, so I am to finish all of last sprint's stuff, and maybe a thing or two more. My focus is still: v03x/v04x multireq stability, metrics, pages deployment, and cleaning up the mess which is the infrastructure repo. We still seem to have subtle issues with v03x/v04x and multireq, which I haven't quite tracked down yet. One of them is timeouts, for which we have UptimeBuddy and Pingdom alerts in place now, as well as nginx-level metrics which are about to be ready. The other is performance/latency. I've taken the saturn host out of ipfs.io DNS for now, it's in DigitalOcean's Singapore datacenter which doesn't have the best connectivity it seems.
|
@nginnever UpdateThis past week I continued to work on web testing the data-importing and merkle-dag modules. This kicked off conversation about new ways to handle our tests so that in the future things will be more consistent. Having this taken care of is allowing me to make much more progress now on jsipfs core. I also began working on an export function for data-importing on a branch that will unMarshal our hashes and begin to pipe together streams of dag linked data for our files get and files cat commands. Worked a bit with the webui but still need to study that type of react structure more to feel useful. |
SummaryLots of reading and a few PRs this week some libp2p modules -- mostly usability improvements. Big accomplishment of the week is that the majority of the ipfs initialization logic for js-ipfs is now written. Several of us (haad, jbenet, whyrusleeping, nginnever) discussed approaches to pubsub in more detail, and I did some further background reading on previous discussions across ipfs/* repos. Last weekend I wrote a prototype wiki powered by IPFS. A few pieces are written so far, but the overall goal is to gain a better understanding of the functionality still missing in IPFS to make apps like these relatively simple. Tasks
|
@haadcode Sprint End SummaryI integrated orbit-db into Orbit and it's working nicely. Sending messages feels instantenous and responsive. With that, the "backend" code of Orbit is now a lot smaller and manageable. I was able to refactor the UI code of Orbit a little along the way but it still needs quite a bit of work. Orbit now has a nice new app icon for the desktop app and as a favicon in the browser. I refactored orbit-db a little by taking out the append-only log functionality into its own module (https://github.com/haadcode/ipfs-log) so that it can be used more easily as a building block in other apps, or eg. as a transport data structure for CRDTs. HighlightsTasksOrbit
Pubsub
Extra
|
Spent most of my effort on getting 0.4.0 ready to ship. This involved lots of testing work, and also a lot of organizational stuff.
|
Sprint March 7th -- 20th
Sprint Goals
Sprint Discussions
Schedule
Please take notes in a separate pad, if you can, and link it here.
Please add the Agenda to the Pad before the endeavour sprint starts.
Sprint Deliverables
The text was updated successfully, but these errors were encountered: