<Blame>
jbenet: all your multihash libraries only deal with formatting a byte string.
<jbenet>
No look at multihashing
<Blame>
And I'm not sold on browserify as a tool for making a library. Having understandable code is a good thing. If it was just for a product, then sure.
<substack>
Blame: otherwise you'll have to write all the code yourself and probably won't use many 3rd party libraries because it's such a hassle without tooling
<jbenet>
Wait How does browserify make code hard to understand ?
<jbenet>
It's a build step...
Wallacoloo has quit [Quit: Leaving.]
<Blame>
I feel like a library should be a static asset. essentially, needed a build step to use a library instantly turns me off of using it.
<Blame>
and we are well into the range of "I feel" and similar uninformed gut feelings.
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
hellertime has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<pjz>
JasonWoof: wrt not wanting to scan rss feeds every 60s or whatever, that's what pubsubhubbub is for
<pjz>
I was kind of wondering about the ability to subscribe to a name
<bitemyapp>
doublec: thank you!
<pjz>
that would be useful
<substack>
Blame: I don't see any way to reasonably have dependencies without a build step
<pjz>
is the REST interface the only API? or is there one on a unix socket?
<ogd>
substack: you just add a script tag for each thing. it just means you end up being an order of magnitude less productive :)
<pjz>
I'm reasonably likely to be wanting - and, as I understand it, therefore writing - a python client library fairly soon.
tilgovi has joined #ipfs
<Blame>
substack: Yep. I've been coding for a while but I'm only just now starting to really study the craft of software engineering. I know dependencies are considered the right way to do things, but I have not yet found a compelling argument for why. Why not just allways bundle the source for your dependencies? You should be responsible for monitoring the
<Blame>
dependencies for updates/bugs and that way an upstream library cannot break your code. This actually seems like a great use case for ipfs/content addressing (import code from ipfs)
<Blame>
I'm not claiming what I am saying is right, I'm claiming that it is the closest I have managed to find justification for in my limited education. (and am excited and open to more education)
<substack>
Blame: duplicates
<substack>
and comparible upgrades with semver ranges
<substack>
*compatible
<Blame>
substack: ok that makes sense if you assumption is that there will be a lot of overlap.
<Blame>
semver?
<substack>
there is always a ton of overlap
<substack>
if dependencies are cheap you use them everywhere
<substack>
and some libraries are very common
<Blame>
So it sounds like we are already working on a sane solution: bundle your imports into a big static asset, but store them in a content addressed way, so that overlap is automatically re-used
<substack>
I think that's a good strategy for apps, but bundling dependencies directly seems unwise for libraries
<substack>
because you shouldn't need to republish a new bundle every time one of your downstream libs has a bug fix
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<substack>
(cd ~/projects/node-browserify; for d in `ls -1d node_modules{,/*/node_modules{,/*/node_modules{,/*/node_modules{,/*/node_modules{,/*/node_modules{,/*/node_modules}}}}}}`; do basename `dirname $d`; done | sort | uniq | wc -l)
<substack>
93
<substack>
or 163 without `| sort | uniq`
<substack>
I'm not going to publish a new version of browserify every time one of those packages releases a bugfix
<Blame>
Well, hypothetically, you tested you library to ensure it works in your use case, and thus most bugfixes would not be require porting.
<substack>
hell is other people
<substack>
I would be constantly inundated with requests to bump versions
<Blame>
yup
<Blame>
there is the final argument. You have me sold.
<Blame>
thank you
<Blame>
thats not a reality I have had to face yet, and I had not really considered.
<spikebike>
substack: for cases like that where you are sensitive to a version change in dependencies I just setup a buildbot (jenkins or similar) and have it populate a package that's pointed to by LATEST -> buildbotbuild
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
notduncansmith has quit [Read error: Connection reset by peer]
Bioblaze has quit [Remote host closed the connection]
Bioblaze has joined #ipfs
<tperson>
Is there a npm command that will flatten out the dependency a bit? Like pull a command dependency (that meets all semver requirements) up the tree closer to the app layer? (maybe shrinkwrap does this a bit?)
<bret>
tperson: yeah but its still being optimized
<tperson>
Ah excellent, I remembered reading about soemthing, didn't remember the name.
<bret>
plus browserify has additional tools for reducing duplication, but they are not as necessary as people tend to think
<bret>
there are also a plethora of userspace modules that attemp similar things
inconshreveable has quit [Ping timeout: 252 seconds]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
inconshreveable has joined #ipfs
<spikebike>
ah, new IPv6 connections are being made, to 2003:80::, 2604:4080::, 2001:470::, 2602:30a::, 2001:983::, 2001:1608::, 2001:41d0::, 2a02:8108::, etc.
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
pfraze has quit [Remote host closed the connection]
<Blame>
javascript crypto looks a lot more viable when you serve it via ipfs
<spikebike>
speaking of which
<spikebike>
which checksum does IPFS use?
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<Blame>
I might be missing something, but I don't think it does.
<Blame>
it ensures the hash of the content is equal to the label.
<spikebike>
right, but what is the relationship between label and content
<spikebike>
normally dhts and the like use sha160 or similar
<spikebike>
sha160 is collision resistant, but not so over the top. I like the you are more likely to be hit by a meteor while reading this sentence level of collision resistance ;-)
<Blame>
a recurring discussion: It wont be good enough forever
<spikebike>
under the webui -> home -> network addresses
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<kyledrake>
I am reviewing the output logs from the IPFS latest all-sites add
kbala has quit [Quit: Connection closed for inactivity]
<spikebike>
weird, most of my IPv6 connections have a pair or ports, not just one. Is that usual?
<jbenet>
spikebike: lists it twice? that's a bit odd, but nothing to worry about.
<jbenet>
kyledrake: hm? how'd it go?
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<kyledrake>
It bombed out on a weird .image.jpg.PZRm87 that's not supposed to be possible, so I'm investigating that. But it was basically a permissions error (ipfs is given group read access to the backup directories and files)
<kyledrake>
Once I figure out why this happened I'm going to issue a chmod -r g+r sites and re-execute
<kyledrake>
jbenet it's a turd left over from a failed rsync execution. I'm just going to set a --temp-dir for rsync and that should fix it.
<jbenet>
kyledrake: may be a symlink-- i think it chokes on symlinks currently.
ianopolous3 has joined #ipfs
<jbenet>
(which is a stupid bug we've been meaning to fix)
<kyledrake>
Yeah, no worries there's no symlinks on this one
ianopolous2 has quit [Read error: No route to host]
<kyledrake>
If there is I'd really start getting concerned ;)
ianopolous2 has joined #ipfs
ianopolous3 has quit [Ping timeout: 244 seconds]
williamcotton has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
ianopolous2 has quit [Ping timeout: 258 seconds]
ianopolous2 has joined #ipfs
ianopolous2 has quit [Client Quit]
inconshr_ has joined #ipfs
inconshreveable has quit [Ping timeout: 256 seconds]
williamcotton has quit [Ping timeout: 250 seconds]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
nemik has quit [Read error: Connection reset by peer]
nemik has joined #ipfs
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]
zabirauf_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
williamcotton has joined #ipfs
marklock has quit [Ping timeout: 246 seconds]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
inconshr_ has quit [Remote host closed the connection]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<spikebike>
does IPFS usually just have one port open for connection to peers? Quite a few seem to have 2 in the 50-60k range
mildred has quit [Ping timeout: 245 seconds]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<spikebike>
ah, nevermind, I mixed logs from 2 nodes
tso has quit [Ping timeout: 276 seconds]
mildred has joined #ipfs
<cryptix>
hellow
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]
hellertime has joined #ipfs
Blame has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
brab has joined #ipfs
<Luzifer>
harlow cryptix
brab has quit [Quit: ERC (IRC client for Emacs 24.5.1)]
brab has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
kallaballa has joined #ipfs
<kallaballa>
hi folks! i'm currently testing ipfs for the purpose of sharing playlists
<cryptix>
kallaballa: if you could use another side-channel to communicate the latest version of the root directory and just rely on /ipfs/ links you would have a much better time (right now)
<cryptix>
kallaballa: just to make sure, you don't always use gateway.ipfs.io to access your stuff, right?
<kallaballa>
cryptix: well my problem is that i really want this information to be decentralized - so using a side channel defeats my purpose
<kallaballa>
cryptix: i only use the public gateway for testing
<cryptix>
kallaballa: i know its not satisfactory but like i said - ipns state isnt perfect yet, so yea.. the timeouts you see currently wont just vanish
<cryptix>
with nodeA<->nodeB and using the local gateways you should have a better time.. there is loadbalancing on the public GWs which also introduces overhead and might show weirdnesses with ipns
<cryptix>
but it should get better with time
<kallaballa>
cryptix: ok thx.. just wanted to asked that
<cryptix>
kallaballa: if you find issues that you can reproduce, let us know!
<cryptix>
kallaballa: maybe you could try the following: just publish an rss feed (or similar) on /ipns/ and have only /ipfs/ links inside
<cryptix>
just try to reduce your dependency on ipns as much as possible
<cryptix>
in a perfect world it would just work - and we are def aiming for that - its just not there yet
<cryptix>
the worst case than would just having an outdated feed but the links should still work
notduncansmith has joined #ipfs
heliumcraft has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<heliumcraft>
good morning
<cryptix>
heliumcraft: hi there :)
<kallaballa>
cryptix: i have no problem with it not beeing that reliable yet - i'll try your suggestion.
<heliumcraft>
is there a way to "upload" a file to ipfs using javascript?
<kallaballa>
cryptix: but i still have one question left: is there a roadmap :) ()
<heliumcraft>
e.g jsonrpc server or something like that
<kallaballa>
cryptix: i'd just would like a rought idea of when i could use it for production
<cryptix>
heliumcraft: everything the cli tool does, works over a json http api (localhost:5001 by default)
<cryptix>
heliumcraft: the add one pumps a multipart form into that for instnace
<cryptix>
btw i'm not a fan of the /ipns /ipfs mountpoint locations - it implies to some people that you need to run that as root (or so i've heard)
<kallaballa>
cryptix. i'ḿ using a non privileged user. in fact root can't access it at all
williamcotton has quit [Read error: Connection reset by peer]
williamcotton has joined #ipfs
<cryptix>
kallaballa: good - just wanted to make sure
<cryptix>
kallaballa: if you could share that vm image with whyrusleeping, i'm sure he can find out whats going on - he has all the fuse and ipns stuff swapped in his mind :)
<cryptix>
i sadly need to get back to my hired labor
marklock has quit [Ping timeout: 246 seconds]
<kallaballa>
cryptix: thx and have fun
marklock has joined #ipfs
<kallaballa>
whyrusleeping: i have a reproducible fuse/ipns problem
<marklock>
Also if I wanted to build a webapp/interface similar to the packaged one would I use the node bindings or something else?
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
mildred has quit [Ping timeout: 256 seconds]
<reit>
i have a question, i'm wanting to use an ipfs gateway on my own site to serve files and images and stuff (that is, src="mysite.com/res/ipfs/<hash>")
<reit>
and i was wondering whether it's possible to 'whitelist' hashes so that only files that i have uploaded can be served through my gateway?
notduncansmith has quit [Read error: Connection reset by peer]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
bedeho has quit [Ping timeout: 246 seconds]
<Evermore>
reit: I asked about this a week or so back, I think it's on a todo lis
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
dread-alexandria has quit [Quit: dread-alexandria]
<reit>
ah ok, in that case i'll just sit tight
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
pfraze has joined #ipfs
nell has quit [Quit: WeeChat 1.3-dev]
<cryptix>
reit: you might be able to solve it with a reverse proxy faster.. our todo list is large and only slowly shrinking :'(
notduncansmith has joined #ipfs
<cryptix>
reit: if you know some go, you could maybe invert our blacklist impl to get what you want. also might sync up with lgierth, i think he was working one something related as well
notduncansmith has quit [Read error: Connection reset by peer]
alu has joined #ipfs
<reit>
i was thinking that, i don't think it'd be too hard to work around with server jiggery-pokery, i was mainly throwing it out there as something that'd be useful to have
<reit>
hmm i'll have a look at it at least, from the way you put it it doesn't sound too horrid to implement
aluchan has quit [Ping timeout: 264 seconds]
<bigbluehat>
k...another "drive by" idea for you wonderful people... :)
<cryptix>
lgierth: the go func() { for range tick { func() { ... }() } } is a bit horrific but still nice that you got it working :))
<cryptix>
hi whyrusleeping
<marklock>
morning
<cryptix>
g2g (again....) starving
<whyrusleeping>
marklock: i'm not sure about how the eris stuff works
<whyrusleeping>
but which ipfs webapp are you talking about?
<marklock>
The web interface one for the daemon
<whyrusleeping>
ah, our API for interfacing with the daemon is http
<ipfsbot>
[go-ipfs] rht opened pull request #1355: Assume config value to be json-formatted (master...cleanup-cli) http://git.io/vIypt
<kallaballa>
good morning
<whyrusleeping>
so we serve the html/css/js off of the API port, and then it makes api requests to get its info
<whyrusleeping>
kallaballa: heyo, you had a bug for me?
<marklock>
whyrusleeping: How does it work when adding files and all that?
<lgierth>
lgierth: yeah i just plain copied that from ipfs_bootstrapd :P
<lgierth>
aeh cryptix ^
<lgierth>
not following up on it for now, anyhow
<lgierth>
bootstrapd will still die
<kallaballa>
whyrusleeping: exactly. though it is not reproducible anymore. i have a qemu bootable debian jessie (with a bit of sid) based vm image that inits ipfs at firstboot. i had a strange situation where i was able to write to /ipns/local but not read. the same image (though with new keys) doesn't show the problem anymore.
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
williamcotton has quit [Ping timeout: 272 seconds]
<kallaballa>
right now i'm trying to find the magic recipy for reproducing
brab has quit [Quit: ERC (IRC client for Emacs 24.5.1)]
<whyrusleeping>
marklock: adding files through the webui works by sending the file over an http request to the daemon
<marklock>
whyrusleeping: ahhh ok thanks
<whyrusleeping>
kallaballa: interesting...
<whyrusleeping>
fuse on my linux laptop just *doesnt* work right now
<whyrusleeping>
i cant even use sshfs
<whyrusleeping>
so my testing on that front has been limited lately
<kallaballa>
well.. i'm doing rebuilds of ipfs everyday. those vm images are produced for (almost) every commit to the Screeninvader project. that also means i'm shallow testing ipfs and ipns everyday :p
<kallaballa>
and i didn't break until today
<daviddias>
Morning whyrusleeping :)
<whyrusleeping>
daviddias: mornin!
<whyrusleeping>
kallaballa: if you get a solid repro, let me know
<whyrusleeping>
you can also turn on fuse debug info if you want
<whyrusleeping>
and then fuse would start telling you all of its innermost problems
<kallaballa>
thx!
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
Tv` has joined #ipfs
williamcotton has joined #ipfs
sharky has quit [Quit: Leaving]
<kallaballa>
whyrusleeping: that patch would be real handy as a switch. that way i could easily enable it by default in debug builds. is it hard to implement?
<whyrusleeping>
kallaballa: it shouldnt be... but i'd have to look into it
<whyrusleeping>
its been a while since i touched code in that area
<whyrusleeping>
(the area of turning things off and on optionally)
williamcotton has quit [Ping timeout: 258 seconds]
<kallaballa>
whyrusleeping: ill have a look. maybe i can do something
mildred has quit [Ping timeout: 258 seconds]
<kallaballa>
though i havnt any go experience at all
zabirauf_ has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
zabirauf_ has quit [Ping timeout: 276 seconds]
mildred has joined #ipfs
www1 has quit [Ping timeout: 264 seconds]
marklock has quit [Quit: Page closed]
<whyrusleeping>
jbenet: if you could take another look at the spdystream stuff that would be cool