Sprint: April 6 → April 18 #101

Closed
RichardLitt opened this Issue Apr 6, 2016 · 24 comments

Projects

None yet

10 participants

@RichardLitt
Member

Sprint April 6, 2016

Sprint Goals

Sprint Discussions

Schedule

Please take notes in a separate pad, if you can, and link it here.

Endeavour Lead Time (PDT - UTC/Z - CET) Pad
sync @RichardLitt 9:00PDT 16:00Z 18:00CET IRC: #ipfs on Freenode
apps on ipfs @dignifiedquire 10:30PDT 17:30Z 19:30CET https://public.etherpad-mozilla.org/p/ipfs-april-6-apps-on-ipfs
infrastructure @lgierth 11:00PDT 18:00Z 20:00CET https://public.etherpad-mozilla.org/p/ipfs-april-6-infrastructure
libp2p @diasdavid 11:30PDT 18:30Z 20:30CET https://public.etherpad-mozilla.org/p/ipfs-april-6-libp2p
js-ipfs @diasdavid 12:00PDT 19:00Z 21:00CET https://public.etherpad-mozilla.org/p/ipfs-april-6-js-ipfs
go-ipfs @whyrusleeping 12:30PDT 19:30Z 21:30CET https://public.etherpad-mozilla.org/p/ipfs-april-6-go-ipfs

Please add the Agenda to the Pad before the endeavour sprint starts.

Sprint Deliverables

  • Add your tasks below in a comment, that way we only have people listed who are really in the sprint
  • Add links to issues down here. Only add things you can finish this sprint.
@diasdavid diasdavid added the sprint label Apr 6, 2016
@dignifiedquire
Member
dignifiedquire commented Apr 6, 2016 edited

Apps on IPFS

Lead: @dignifiedquire

Participants

Agenda

Notes

Webui Updates

  • Ship Redux PR with all new features soon
  • Wait for user feedback

Dynamic Apps on IPFS

Questions:

mmuller: Does a pubsub mechanism currently exist?
noffle: No; @whyrusleeping is working on a one:many prototype in go-ipfs atm. And there is orbit-db, which uses redis as a pubsub substitute for now

vijayee: does the crdt code exist already?
noffle: Partially. @haadcode implemented ipfs-log but the libraries that fit between ipfs-log and CRDTs aren't fully fleshed out yet

@lgierth
Member
lgierth commented Apr 6, 2016

Infrastructure

Lead: @lgierth

Participants

Agenda

  • last-minute v0.4.0 change
    • extend v03x/multireq EOL from end-of-april to end-of-june-ish
      • measure v03x vs. v04x servings
      • looks at decreases in v03x nodes
  • dns post mortem & actionables
    • codify dns zones
    • tool to replay the zone files to different dns providers
    • multiple dns providers
    • fallback procedure
  • metrics / tests
@diasdavid
Member

libp2p

Lead: @diasdavid

Notes

  • update
  • next steps
    • finish integration of the new browserify-zlib into libp2p-spdy
    • update libp2p-spdy on libp2p-swarm and enable browser tests
    • update libp2p-ipfs to use the latest libp2p-swarm and libp2p-spdy
    • update js-ipfs to use latest libp2p-ipfs
@diasdavid
Member

js-ipfs

Lead: @diasdavid

Notes

@diasdavid
Member
diasdavid commented Apr 6, 2016 edited

DAVID DIAS TODO

js-ipfs

js-ipfs-api

libp2p

npm on IPFS

IPLD

webui

specs

extra

@whyrusleeping
Member

go-ipfs

Lead: @whyrusleeping

Notes

  • talked about Q2 goals
  • talked about shipping 0.4.0
    • need one or two more changes
    • 0.4.0-dev will not be compatible with 0.4.0 release
  • file descriptor limit raising code
    • add into 0.4.0 release
    • enable with flag
@RichardLitt
Member

To Do

@dignifiedquire
Member

ToDo

  • Release dignified.js@1.0.0
  • Bring js-ipld up to date with the spec
  • IPLD playground preparations
  • Learning go
  • Small go-ipfs PRs to get my feet wet
@nginnever
nginnever commented Apr 7, 2016 edited

t0Do

- dignified.js - [x] PR https://github.com/jbenet/js-multihash/pull/5 - [x] PR https://github.com/diasdavid/js-ipld/pull/9 - [x] PR https://github.com/diasdavid/js-libp2p-distributed-record-store/pull/3 - js-ipfs-data-importing - [~] exporter - [ ] Rework importer - js-ipfs - [~] cat command - [~] get command - [ ] ls command - [~] add command - Webui - [ ] write tests - [ ] document in contibuting.md - go-ipfs - [ ] study go-lang
@noffle
Member
noffle commented Apr 8, 2016

noffle

  • go-ipfs
  • ipfs blog
  • js-ipfs
    • tackle blocking Milestone 1 issues
  • ipfs-pad
    • hack together String CRDT
    • rig up a prototype front-end and get something working in the browser
@haadcode
Member
haadcode commented Apr 11, 2016 edited

@haadcode sprint goals - 6 Apr - 18 Apr

Summary

With the release of 0.4, I'll be upgrading orbit-related modules to use 0.4. I will continue to work on orbit-db and ipfs-log, fixing some issues, optimizing the algorithms and working towards to make them usable in the browser and better facilitate to build the CRDT library on top of ipfs-log. I also want to fix some issues in Orbit, and work towards making it usable in browser-only (stand-alone webapp).

Tasks

orbit-db
  • Upgrade to IPFS 0.4
  • Stretch goal: Add pinning to db operations and ipfs-log objects
ipfs-log
  • Upgrade to IPFS 0.4
  • optimize findHeads
  • fix sorting on merge to be deterministic
  • Stretch goal: Stream API for ipfs-log
Orbit
  • Upgrade to IPFS 0.4
  • Button for copying the IPFS hash of each message
  • Sort messages by timestamps instead of log order
  • Stretch goal: Multiline POST
@lgierth
Member
lgierth commented Apr 12, 2016 edited

@lgierth todo

@whyrusleeping
Member

@whyrusleeping TODO

  • fix bootstrapping issue
  • make quick hack of gx pinning website
  • websocket transport
    • decide how websocket multiaddrs should work
  • gxify libp2p-transport (and deps)
    • readmes and CI for new repos
  • unixfs sharding
  • maybe some pubsub work
  • try to get 10 PRs merged or closed (want to be below 40 next week)
@dignifiedquire
Member

ToDo

@diasdavid
Member
diasdavid commented Apr 18, 2016 edited

David Dias Check In

Summary: This sprint has been intense (and it will continue), with the goal of getting everything in line for a beta version of js-ipfs by next week. Lot's of progress has been made across the panoply of JavaScript modules, from more test coverage, integration of the aegir assets pipeline, better documentation, project management, new features for jsipfs swarm, namely: connect, peers and addrs local. My attention and time was across the board, CR+Merging all the things, help unblock things, get zlib integrated and (finally) spdy enabled over WebSockets (with flying colours).

@haadcode
Member
haadcode commented Apr 18, 2016 edited

@haadcode sprint end - 6 Apr - 18 Apr

Summary

I concentrated on upgrading all my projects to use 0.4, getting orbit-db and ipfs-log to work in the browser and improving Orbit's UX. Had a very productive sprint. I managed to upgrade everything to 0.4 and it's awesome: much faster and more stable than 0.3! We now have working distributables for orbit-db and ipfs-log in the browser. They still require a local daemon to run to work but this will change when js-ipfs ships. I added some new features to Orbit: preview files directly in the chat with code higlighting, players for audio and video and improved the files browsing functionality in general. You can now also copy the hash of a file to clipboard. It looks like this:

I also created a simple javascript logging module called logplease, works in Node.js and browsers.

Tasks

orbit-db
  • Upgrade to IPFS 0.4
  • Make it work in the browser
  • Stretch goal: Add pinning to db operations and ipfs-log objects
ipfs-log
  • Upgrade to IPFS 0.4
  • Make it work in the browser
  • optimize findHeads
  • fix sorting on merge to be deterministic
  • Stretch goal: Stream API for ipfs-log
Orbit
  • Upgrade to IPFS 0.4
  • Button for copying the IPFS hash of each message
  • Sort messages by timestamps instead of log order
  • Bugfixing
  • Extra: preview files inside Orbit
  • Stretch goal: Multiline POST
@lgierth
Member
lgierth commented Apr 18, 2016

@lgierth sprint update

One and a half weeks ago we released go-ipfs 0.4.0, yay! I took the smaller part
in this intense day, doing dist.ipfs.io and go-ipfs deploys. I did some more
work on go-ipfs and go-libp2p during the rest of the sprint -- a couple of
bug fixes, and dependency updates. I'm now much more comfortable with gx.

Mid-sprint I flew to Seattle, which is disturbingly warm and green at the moment.
I caught a bad cold right away, and didn't get much more done. I also had the
chance to meet and hang out with @thefinn93 and @danry25 of Seattle Meshnet. We've been
working on cjdns and OpenWrt for two years already, but have never met before :)

This morning I landed in Toronto, where I'll spend most of the week working on
the cjdns android app with @benhylau -- IPFS work will happen too, but not too
much.

Task list:

@nginnever
nginnever commented Apr 18, 2016 edited

@nginnever Check-In

This past week I spent more time working with data-exporting, mostly testing moving files back and forth from go-ipfs to js-ipfs and hunting down some bugs. This led to studying more about node.js streams and having conversations with dignfiedquire and daviddias. Big thanks to them for helping me understand so much about streaming data. Also started learning reactive js to try out a module called highland by dignifiedquire's suggestions. This module looks powerful in its way of simplifying async code and I plan to incorporate it once I understand a bit more about reactive js programming.

I spent a minimal amount of time working with aegir, the testing suit and standards for js modules. Reworked the multihash module to update from dig.js to aegir.

Over the weekend I met up with alu in hollywood where we discussed visions of the future and how the web might look and be navigated. His work with janus VR and the equipment he has is really cool. Hollywood shows a lot of interest in visual things so it's natural to be asking these questions there. Seeing his work flow we started to come up with ideas of how IPFS might optimize data traffic for VR which could potentially create an interactive web that is content addressed in a way where you can actually walk through a dag of linked rooms!

@whyrusleeping
Member

@whyrusleeping sprint update

Started off last week by fixing the libp2p listener bug that snuck into 0.4.0. After that, I set to work trying to get enough pull requests merged that we would have under 40 open. Unfortunately we kept opening new ones at a rate higher than I could get through them, so its still nearly 50. I also started modularizing the go side of the codebase, breaking a few packages out of go-libp2p, @lgierth has a PR that brings this into go-ipfs now too. In the same mood, I went and removed a tonne and a half of unused godeps, the go-ipfs codebase is a tad lighter now.

This week i'm hoping to refactor the swarm dialer in go-libp2p to allow better address intake control, and hopefully fix the dht findpeer bug at the same time.

@noffle
Member
noffle commented Apr 18, 2016 edited

@noffle end-of-sprint task dump

I focused on documentation this sprint.

This meant a more discoverable and consistent go-ipfs CLI, ipfs dht output that's more human & script friendly, and some 0.4.0 blog post notes. I also dug hard into bringing the pantheon of js-ipfs modules up to snuff: detailed READMEs with examples and full API notes as well as 100% test coverage for js-peer-id, js-multiaddr, js-peer-info, and js-ipfs-blocks.

  • go-ipfs
  • ipfs blog
  • js-ipfs
    • js-peer-id: 100% test coverage, README, CircleCI
    • js-mulitaddr: README
    • js-peer-info: 100% test coverage, README, CircleCI
    • js-ipfs-blocks: 100% coverage, README
@dignifiedquire
Member
dignifiedquire commented Apr 18, 2016 edited

@dignifiedquire sync update

This sprint I had two things on my mind. The first one was IPLD, which entailed getting as familiar as possible with the spec and implementing the whole set of tooling in JavaScript (js-ipld, js-ipfs-ipld, js-ipld-cli). Also I started work on ipld.io, including design drafts and a first rough implementation.
The second focus was aegir (formally known as dignified.js). It is now deployed over nearly all active JavaScript projects on ipfs and while doing this work I also started getting familiar with the different parts of js-ipfs to be ready to help @diasdavid with finishing the first milestone.
In light of the 0.4 release and the aegir updates we finally shipped the very much overhauled and updated js-ipfs-api which is now in the best shape since it's creation :)

@RichardLitt
Member

Update

This week, I spent a few days doing cool stuff: I cleared out most of my open issues, and merged a few of the http-api pulls. I worked really hard on the js guidelines for IPFS. I also looked into readme-standard again, learned how to make remark-lint plugins (and created remark-lint-appropriate-heading, the first of these needed). I also worked on the weekly (which still hasn't been published, I think in a month now). I need to figure out how to make this work, because right now it is still a very broken pipeline. Also, I got horrible food poisoning.

@jbenet
Member
jbenet commented Apr 18, 2016

Summary
I was focused on: shipping 0.4.0 and all the things around it, helping find/address bootstrap hangs (fixed in 0.4.1), lots of discussions with @diasdavid and @whyrusleeping for go/js interop, IPLD discussions (in person and ipfs/specs#91), testing Orbit (so cool!), meetings/discussions about ipfs with other orgs (ob, gitlab, lantern), and upkeep on lots of ongoing conversations with other orgs.

Some things done

  • shipping 0.4.0 and all the things around it
    • review blog post
    • update website mentions
    • test ipfs installation from various paths
    • test + found problems in ipfs-update
    • all the distributions republishing
    • multistream fixups
  • helping find/address bootstrap hangs (fixed in 0.4.1)
    • bootstrapper rebooter
  • lots of discussions with @diasdavid and @whyrusleeping for go/js interop
    • sharding plans (todo: write up)
    • bitswap spec and walkthrough
  • IPLD discussions with @nicola (ongoing here ipfs/specs#91)
  • meetings/discussions about ipfs with other orgs
  • testing Orbit (so cool!) and reporting issues
  • wildcard startssl fun
@nicola
Collaborator
nicola commented Apr 18, 2016 edited

Summary
This week I went to the WWW conference in Montreal, great conversations. I met the IPFS team in NYC, really nice welcome. I focused this sprint on IPLD writing down about the importance of separating high and low-level IPLD representations ipfs/specs#91. Also I wrote some tests for js-ipfs-ipld ipld/js-ipld-resolver#2 ipld/js-ipld-resolver#3 ipld/js-ipld-resolver#5 that will probably need new revision. Finally, I organized @jbenet his coming to MIT/Berkman while in Boston.

@jbenet jbenet referenced this issue in ipfs/newsletter Apr 19, 2016
Merged

Weekly 10 #38

@diasdavid diasdavid removed the sprint label Apr 19, 2016
@RichardLitt RichardLitt referenced this issue in ipfs/ipfs May 8, 2016
Open

IPFS Weekly Updates #151

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment