<whyrusleeping>
oh nice. does that mean google is done changing it?
<pjz>
probably not, which is why it's a draft not an RFC or STD :)
mildred has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<inconshreveable>
i was definitely hoping it was actually that short, but they've separated crypto and loss control into separate documents
<pjz>
whyrusleeping: is there a timeline on the private-share functionality of ipfs?
<pjz>
oh, also, I had a thought for a great usecase for ipfs: distributing docker images
<ruby32>
Hi. Sorry to interrupt. I was pondering decentralized github today. Is IPFS a good candidate for something like this? I know git is already decentralized, but I would like to replace the cloud-storage of github with a decentralized arcitecture (DHT?) of some sort.
anshukla has joined #ipfs
<whyrusleeping>
pjz: private-share, probably within a month. We're working on a large protocol change that will give some nice perf and allow for node interop
<pjz>
whyrusleeping: once that's in, I see ipfs as a really good candidate for cluster coordination
<whyrusleeping>
pjz: re: docker images, yep! :D thats one of the things we are really working towards, we have a registry implemented thats backed in ipfs https://github.com/wking/docker-distribution
<jbenet>
ruby32: yep, it very much is. -- you may also want to talk to cjb (making gittorrent)
<cjb>
howdy howdy
* whyrusleeping
loves the summoning power of irc mentions
<jbenet>
inconshreveable: yeah agreed. also, note that quic has some server/client distinctions. still not clear on what all of them are.
<inconshreveable>
yeah i'm gonna read through the spec here shortly
<jbenet>
cjb: are you coming to CCC ?
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<cjb>
would like to but can't, family :)
<ruby32>
cjg: I just saw gittorrent in the go-nuts channel, I am wondering specifically what advantages IPFS has over “traditional” BitTorrent DHT (a link to an FAQ or comparison table would not be considered rude and is in fact encouraged, if such a resource exists).
<ruby32>
cjb* gah
<cjb>
ruby32: for me, the main advantage would be that bittorrent doesn't share "chunks" of files across different torrents
<cjb>
e.g. you have episodes 1-10 of a series in a torrent, now you add episode 11, but the episodes 1-11 torrent shares no swarming with the episodes 1-10 torrent
<cjb>
or in gittorrent terms, the git packfile with commits 1..N shares no swarming with the git packfile with commits 1..N-1, which is really bad for gittorrent
<cjb>
this is more at the BitTorrent wire protocol level than the DHT level
<ruby32>
Okay, understood. I was also wondering about sybil attack resistence, and whether or not IPFS has any advantages over BitTorrent in that area.
inconshreveable has quit [Remote host closed the connection]
<prosodyContext>
I saw ruby's #go-nuts request and suggested cjb. P.S. Has anyone heard of someone doing Mercurial versions of Gittorrent or for that matter IPFS?
<ruby32>
prosodyContext: thank you :)
<prosodyContext>
(Just a more familiar lang) np ruby32 <3
<cjb>
prosodyContext: I haven't heard of any. If Mercurial addresses commits with sha1, can create packfiles that are bundles of commits, and has some extensible mechanism for network helpers, it should be straightforward to port gittorrent to hg
<jbenet>
prosodyContext i will say that a certain very large company is looking into using IPFS for file versioning. already starting to write their own tooling.
<jbenet>
(like for source code control of massive repos)
<cjb>
neat!
Encrypt has quit [Quit: Quitte]
<ruby32>
That’s promising news and a strong precedence to set. Congratulations, guys :D
therealplato has joined #ipfs
<jbenet>
ruby32: on sybil resistance-- yes, there's a few things there. the biggest is that IPFS is pretty flexible, so you can have models where you participate in a DHT that requires some expenditure to join (like getting a key signed by others, or spending $), or even models where you only talk to keys you trust directly.
vijayee has joined #ipfs
<jbenet>
ruby32: so you'll be able to pick the model you want with not huge difficulty, depending on what your constraints are / what sort of network you want to belong to
therealplato1 has quit [Ping timeout: 264 seconds]
anshukla has quit [Remote host closed the connection]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
patcon has joined #ipfs
anshukla has joined #ipfs
anshukla has quit [Ping timeout: 244 seconds]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
inconshreveable has joined #ipfs
inconshreveable has quit [Read error: Connection reset by peer]
inconshreveable has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
anshukla has joined #ipfs
anshukla has quit [Ping timeout: 255 seconds]
thomasreggi has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<jbenet>
gatesvp: let me ask this first, do you care about preserving the history in the stream?
<gatesvp>
The changes are there, the tests are there, my branch appears to be in the correct state... my branch here appears to be in the correct state: https://github.com/gatesvp/go-ipfs/tree/iss653
<jbenet>
(vs preserving the history somewhere in a repo)
<gatesvp>
don't really care about the history...
<jbenet>
cause the changeset is small enough that we could squash it all into one commit, and keep around the relevant refs in repos
<gatesvp>
frankly if it's all crushed into one correct check-in, that's fine by me :)
<jbenet>
cool, ok. sec.
<gatesvp>
OK, so we though the same thing :)
<gatesvp>
(FYI, no idea about the GitCop... I've been MIA for a few weeks clearly)
inconshreveable has quit [Remote host closed the connection]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
inconshreveable has joined #ipfs
<gatesvp>
jbenet: that's what I figured... do I need to add those for this check-in or can we write off and fix it going forward :)
<jbenet>
gatesvp i can fix it if you give me permission: "gatesvp: ok if add a License: MIT trailer to your work?"
inconshreveable has quit [Remote host closed the connection]
<kbala>
whyrusleeping: np, if you have time can you answer that hostoption question?
<kbala>
whyrusleeping: "whats assumed about the peerstore being passed into the HostOption method? if i want the host of a peer to create a bitswapnetwork instance for it, should i create a peerstore with all the addresses of the other peers in the network?"
<gatesvp>
@jbenet => "gatesvp: ok if add a License: MIT trailer to your work?" yes you may!
<gatesvp>
now capture by botbot.me
<whyrusleeping>
kbala: hrm, let me check
<daviddias>
whyrusleeping, published :):
<daviddias>
+ multistream-select@0.6.0
<daviddias>
Published to npm.
<daviddias>
Released new version 0.6.0 successfully.
<whyrusleeping>
daviddias: how update node module?
<jbenet>
gatesvp yeah :) -- anyway, you'll want to just run the hook the guidelines link to
<gatesvp>
@jbenet: got that one.... the .sh probably won't work on my Windows box, but I'm pretty sure I can figure it out :)
<gatesvp>
@jbenet: and thank you in advance for cleaning up my mess here...hopefully my future fixes are a little smaller in scope and don't involve as much back and forth
inconshreveable has joined #ipfs
<jbenet>
gatesvp this is trickier than i expected because it conflicts with new changes
<gatesvp>
@jbenet: yeah, I staged some changes in early May, then there were other conflicting changes to the Add.go file and I had to manually merge it in with the "trickle" change...
<whyrusleeping>
mafintosh: read(N) in javascript returns null if it doesnt have N btyes
<mafintosh>
whyrusleeping: why is that a problem?
<whyrusleeping>
because its confusing and my code doesnt work
<mafintosh>
lol
<daviddias>
@mafintosh I was looking at it, but started talking with Jeromy. I don't see any ref to the MultiCast Loop flag on the go code, so, I would say it doesn't.
<gatesvp>
@jbenet: after I pushed last night, I realized that the rebase was wonky
<mafintosh>
whyrusleeping: streams in node are *really* confusing when it comes down to the various apis actually
<mafintosh>
daviddias: i think that would solve the bug you mentioned also
<whyrusleeping>
mafintosh: yeah, i'm still getting the hang of writing node
<mafintosh>
daviddias: but using two sockets isnt that bad anyways
<mafintosh>
and that always works :)
<gatesvp>
@jbenet: the changes are not ridiculous, they just happened in several stages as we evolved things... so if you can't easily fix it, I can close the PR, update my fork to the latest and attempt basically re-apply the changes manually in a single commit
<gatesvp>
@jebenet: The "single commit" version is not a big deal because on my end and it probably saves work on your end if you have a "mergeable" PR
<jbenet>
gatesvp i think that may be much faster
<jbenet>
gatesvp cause right now i'm trying to track down all the commits and getting into nasty merge conflicts.
<daviddias>
mafintosh wasn't familiar with that feature. The go code always opens 2 sockets, so probably no one felt the need to consider it. Thanks for the merging the PR on multicast-dns :)
<mafintosh>
daviddias: yea the two socket approach should always work i think so thats probably better as well.
<mafintosh>
daviddias: np!
notduncansmith has joined #ipfs
<jbenet>
gatesvp sorry for the extra work! high velocity code
<gatesvp>
@jbenet no problem at all... I'm just happy to commit something useful and I really did go MIA for the month of June and part of May
<jbenet>
whyrusleeping: where's your multiplex data race?
<jbenet>
whyrusleeping nvm found it
notduncansmith has quit [Ping timeout: 264 seconds]
tilgovi has quit [Ping timeout: 244 seconds]
sharky has quit [Quit: Leaving]
<whyrusleeping>
jbenet: yeah, its weird... maybe its obvious to someone who didnt write it though
carver has joined #ipfs
patcon has joined #ipfs
hellertime has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
hellertime has quit [Quit: Leaving.]
<jbenet>
data races --
therealplato1 has quit [Ping timeout: 276 seconds]
<jbenet>
annoyed by the "for http/2" part. cause it means a lot of http/2-specific corners cut.
<jbenet>
hey inconshreveable, for muxado, what if we do a version of it based on QUIC instead of spdy?
<jbenet>
(instead of just spdy*)
<jbenet>
the UDP non-head-of-line-blocking is a really really nice property.
<jbenet>
particularly for things that open lots of streams
therealplato has joined #ipfs
hellertime has joined #ipfs
chrisr_ has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
therealplato has quit [Ping timeout: 264 seconds]
thomasreggi has quit []
rtlong has joined #ipfs
gatesvp has quit [Quit: Page closed]
therealplato has joined #ipfs
<carver>
are there docs on using the web endpoint localhost:5001/api/v0/add ? I am about to dive into the gateway javascript to see the details, if not. Why am I trying? I'm looking to post text or an image from a javascript app (Augur.net).
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]