<whyrusleeping>
whoops, gotta remove some debug code...
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
domanic has quit [Ping timeout: 264 seconds]
<yoshuawuyts>
ipfs-ui is built using react / webpack. Was hoping it would be less frameworky
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<yoshuawuyts>
I know getting things done is important, but somewhere I'm a bit disappointed. Mostly personal sentiment I guess, not actual critique. Ah well.
<whyrusleeping>
I feel it
<whyrusleeping>
you can just use browserified node-ipfs-api
<jbenet>
yoshuawuyts: it used to be just browserify, someone drive-by PRed it into webpack and didnt contribute since :(
<yoshuawuyts>
ghmmh :(
<yoshuawuyts>
mind if I drive-by PR it back into browserify sometime soon?
<yoshuawuyts>
(painting all the bike sheds)
domanic has joined #ipfs
<jbenet>
yoshuawuyts go for it-- check with daviddias-- i think someone said bundling with webpack was faster for dev cycle, but gets browserified in the end? not sure.
<jbenet>
(may have been krl)
<yoshuawuyts>
From friends that have been using both browserify and webpack I understood that hot reloading works nicely if you buy into react, but browserify is straight up faster
<yoshuawuyts>
but I'll check with daviddias ^____^
<jbenet>
yoshuawuyts: on the react stuff, i found react's UI component model made life much easier. the most modular UI thing i've ever tried yet. self contained, composable modules. nothing else ever let me build components as independently ( but i'm not familiar with 80% of the stuff out there
<jbenet>
if you have something that makes it as equally modular, and easy to write components, feel free to PR.
<substack>
react is ok but I'm more a fan of virtual-dom
<yoshuawuyts>
hahaha, that pic is so good
<jbenet>
(( as an aside -- idk what all the react-hate is all about (don't really need another holy war to buy into, have enough), but my experience with it was very good, aside from initial "getting the thing to compile right" annoyances. once that was set, it was way easier to use than keeping html templates separately. ))
<substack>
same conceptual model but less frameworky, more modular
<yoshuawuyts>
jbenet: oh yeah, react is pretty solid in the same way that rails is pretty solid.
<substack>
react uses classes to hold state which I found a bit weird and frameworky, I rather like using ordinary functions passing in a state object myself
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<jbenet>
hm, i used to care about these distinctions more-- then i discovered most of git is written in sh scripts.
<jbenet>
not that it's a good thing, but rather than you can take anything and make something amazing out of it
<jbenet>
(well, almost anything)
<yoshuawuyts>
Just like with most other popular frameworks I've found React to work great if you confine the universe to React. It doesn't play well with anything outside of the framework though, making it kind of the bully on the playground.
<jbenet>
and what matters most, is dev time.
<yoshuawuyts>
yeah, it's an interesting tradeoff: do you build things yourself in the right way that helps the web move forward or use off the shelf components that will be replaced by other off the shelf components once the framework is replaced.
<yoshuawuyts>
Would be nice if off the shelf components weren't tied to frameworks
voxelot has joined #ipfs
<jbenet>
i think what matters is the interfaces, and dev time. implementations can be replaced at any point.
domanic has quit [Ping timeout: 252 seconds]
<jbenet>
so if impl1 will take t1a and last t1b, impl2 will take t2a and last t2b, which to do depends on the ratios, the urgency, and how soon it will need to be swapped to the next thing.
<jbenet>
and most things will be swapped-- it's the interfaces that will remain longer, so aim to get those right.
border has quit [Quit: Konversation terminated!]
<jbenet>
also, in my experience, _everything_ is a framework. the language chose, the platform you deploy to, all frameworks. even modules that claim "i'm a library, not a framework" is inside a framework of thought already. and, the worst part is, i wonder how many dev hours are wasted on all the arguments about it!
<jbenet>
(so, in short, i don't really care. :D i just care about shipping _good, correct interfaces, and doing so fast_. others might care though? ask on an issues, and ship whatever you want)
<yoshuawuyts>
jbenet: yup, agree!
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<voxelot>
i'm going to have ipfs working like a mongodb that instead of connecting to a local daemon instead connects to a meshnet, for everyones webapp needs :)
<substack>
node and smallish npm package interop is usually pretty good because they use common abstractions and interfaces
<voxelot>
hard part is getting client connection to the db so the data stays off your server
<voxelot>
webrtc anyone?
<jbenet>
voxelot getting there-- should be able to have a webrtc transport on go-ipfs soon. we could add a websocket right now though, that might make things easier.
<voxelot>
that would be a huge step toward my goal jbenet :)
<jbenet>
voxelot do you want it to speak the ipfs stream protocol? or what do you need the api?
<voxelot>
api would be fine, serves as a good CRUD and that's all i really need for a db
<jbenet>
voxelot: the api is already available, is there something wrong with its current form?
<voxelot>
ohh just that the daemon needs to be installed and ran on client is all, otherwise the api is great
<voxelot>
way have it now is the daemon runs on my web server and hosts everyones files on one peer
<voxelot>
which is good, but not for user controlled data/privacy
<jbenet>
voxelot: confused, are you running one node for all users, or one node per user?
<voxelot>
can one daemon run more than one node?
<jbenet>
voxelot: you can expose the api, but that give people free rein
<jbenet>
voxelot: the stock binary, no. but you could compile one to do so--
<voxelot>
hmm
<jbenet>
voxelot: may be easier to give people a container with their own deamon.
<jbenet>
daemon*
<voxelot>
right, which is where i've landed until a full p2p browser type webrtc could be made
<voxelot>
just trying to emliminate an install, thinking about the tor browser and how it sucks to have to use a gui, even though as a programmer i love it and can edit my own settings( for ipfs could be like peers to connect to/share data with)
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<jbenet>
Ha! "A Go program built as a PIE -- This mode supports people who care a great deal about security."
chriscool has joined #ipfs
<jbenet>
oh sigh. it's so refreshing to read real security comments like that. it's embarrassing how broken all our systems are-- all sorts of remote exec all over the place.
<jbenet>
(that --> "In this mode a Go program is built as usual, but the resulting executable is position-independent, and may be relocated at run time.")
<jbenet>
voxelot: we're on our way there, help us get there faster
notduncansmith has quit [Read error: Connection reset by peer]
domanic has joined #ipfs
<Blame>
whyrusleeping: Im worried gx will cause "import file depth hell" like nodejs?
<Blame>
as imports go deeper, eventually it breaks window's max filesystem depth
<Blame>
(not that I would be caught dead using windows at this point)
<Blame>
the right solution is to do import from a global cache, rather than a dependencies folder
<jbenet>
and/or use symlinks
<Blame>
so, that the depth of paths for import is only ever one
<Blame>
symlinks dont solve the problem
<Blame>
they do save space
<Blame>
A: symlinks don't work on the effected os
<jbenet>
ah
<Blame>
B: you still end up with very deep paths
<Blame>
which makes thigns hard to use and debug too
<Blame>
but they do tell you a "stack trace" of importing packages
<substack>
blame: npm v3 uses a flatter but still local tree
<substack>
where it factors the trees properly but still gets around versioning dependency hell
<substack>
by only making subdirectories when there is a version incompatability
<Blame>
we have an advantage they don't leverage, we content address our dependencies, so there is no namespace conflict between different versions of teh same package
<substack>
but then you can't have optimistic semver versioning
<substack>
at least, not directly
<substack>
and the source code contains hashes which isn't as nice
<Blame>
im pro source code containign hashes (and comments to explain them!)
<jbenet>
substack: i do like optimistic semver installs-- but i'm not sure it's "the right thing"-- it can break a ton of stuff
<Blame>
it makes dependencies explicit in the source code, rather than a config file
<jbenet>
it's screwed up that some could steal your npm account, push an update and hose tons of systems--
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<substack>
it also sucks from a maintenence perspective to need to update deps all the time for trivial fixes
pfraze has quit [Remote host closed the connection]
voxelot has quit [Ping timeout: 272 seconds]
<jbenet>
substack: yeah agreed. but i dont think the solution is give everyone write access to tons of systems. the solution might be in how the PR->merge->publish->deploy flow works.
<substack>
it might work if we had better ways of managing trust
<jbenet>
for example, if we could setup repos so anything that is merged to master is auto-published, we eliminate one hurdle. if we had ways of automatically submitting PRs to update versions to all dependents, it could ripple through. it's a bit painful, but that way people in the first wave would have to check the first module's code.
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
Eudaimonstro has quit [Ping timeout: 250 seconds]
mildred has joined #ipfs
Eudaimonstro has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<whyrusleeping>
blame, gx doesn't have the recursive deps issue
Eudaimonstro has quit [Ping timeout: 252 seconds]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
domanic has quit [Ping timeout: 244 seconds]
mildred has quit [Ping timeout: 264 seconds]
mildred has joined #ipfs
Tv` has quit [Quit: Connection closed for inactivity]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
kord_ has quit [Quit: Leaving...]
akhavr has quit [Ping timeout: 240 seconds]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<Luzifer>
jbenet: repo.lock file in ipfs directory... Delete that file and it works again. IIRC I filed a bug for this.
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<davidar>
lgierth: you around?
notduncansmith has joined #ipfs
notduncansmith has quit [Ping timeout: 250 seconds]
inconshreveable has quit [Ping timeout: 256 seconds]
notduncansmith has quit [Read error: Connection reset by peer]
sharky has joined #ipfs
bigbluehat_ is now known as bigbluehat
Leer10 has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
Encrypt has joined #ipfs
akhavr has joined #ipfs
inconshreveable has quit [Ping timeout: 246 seconds]
inconshreveable has joined #ipfs
amstocker has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
Encrypt has quit [Quit: Quitte]
bmcorser has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
amstocker has quit [Ping timeout: 244 seconds]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
ei-slackbot-ipfs has quit [Remote host closed the connection]
ei-slackbot-ipfs has joined #ipfs
<drathir>
mornin...
pfraze has joined #ipfs
<daviddias>
morning drathir :)
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
pfraze has quit [Remote host closed the connection]
Encrypt has joined #ipfs
akhavr1 has joined #ipfs
akhavr has quit [Ping timeout: 252 seconds]
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]
marianoguerra has quit [Quit: leaving]
marianoguerra has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
Encrypt has quit [Quit: Quitte]
inconshreveable has quit [Remote host closed the connection]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
slothbag has quit [Quit: Leaving.]
therealplato1 has quit [Ping timeout: 240 seconds]
therealplato has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
Encrypt has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<Blame>
whyrusleeping: how does it avoid it?
<Blame>
thats at least unclear in the documentation
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
vijayee_ has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
sharky has quit [Quit: Leaving]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
chriscool has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
kord has joined #ipfs
dignifiedquire has joined #ipfs
dignifiedquire has quit [Client Quit]
pfraze has joined #ipfs
bmcorser has quit [Quit: Connection closed for inactivity]
keroberos has quit [Excess Flood]
keroberos has joined #ipfs
kord_ has joined #ipfs
kord has quit [Ping timeout: 244 seconds]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
mildred has quit [Quit: Leaving.]
sharky has joined #ipfs
<jbenet>
whyrusleeping cryptix: did we fix the build problems on go-builder?
mildred has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
voxelot has joined #ipfs
dignifiedquire has joined #ipfs
inconshreveable has joined #ipfs
<whyrusleeping>
jbenet: which build problems?
<whyrusleeping>
blame: all deps are stored in the top level vendor directory
<whyrusleeping>
i need to document things a bit better for sure
<jbenet>
whyrusleeping cryptix and Luzifer pointed out some build problems earlier in irc? see logs? (i see gobuilder.me/github.com/ipfs/go-ipfs/cmd/ipfs seems to be fine)
<whyrusleeping>
cryptix: my only guess is that somehow NextMsgLen returned a negative number
<whyrusleeping>
oh, looks like thats already discussed in the issue
mildred has quit [Ping timeout: 265 seconds]
dignifiedquire has quit [Quit: dignifiedquire]
<daviddias>
whyrusleeping: any luck with the CBOR thingy?
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<whyrusleeping>
daviddias: yeah, i got it figured out, just waiting on the author of the lib i modded to add a license
<jbenet>
daviddias: he fixed, waiting on license so we can use it. (i think i can mv fwd with some of it)
<whyrusleeping>
jbenet: what was the other one you wanted me to look at?
<jbenet>
whyrusleeping: can has protobuf test fix? (/stumped)
* jbenet
has a talk brewing on the multis, and "self-describing, upgradeable protocols"
Encrypt has quit [Quit: Quitte]
Encrypt has joined #ipfs
<whyrusleeping>
jbenet: you never set the 'buf' field of the protobuf encoder when calling 'Encoder'
<jbenet>
...
<whyrusleeping>
re: renaming, i think that makes sense.
<whyrusleeping>
multicodec looks just like multistream, with codecs instead of protocols
dignifiedquire has quit [Quit: dignifiedquire]
<daviddias>
whyrusleeping: multistream became multicodec
<daviddias>
because then it can be applied to any set of data
<whyrusleeping>
daviddias: right
<daviddias>
multistream-select became just multistream, handling the handshake between two endpoints
voxelot has quit [Ping timeout: 244 seconds]
<daviddias>
we could say that a file with a multicodec header is the same of having an multistream endpoint in broadcast mode
voxelot has joined #ipfs
voxelot has joined #ipfs
<daviddias>
jbenet: re: multiorg what if we keep adding these things to the Protocol Labs org and Protocol Labs website as RFC + links to implementations, inviting people to validate/participate in the discussion
<whyrusleeping>
multi-labs
<daviddias>
multilabs!
<daviddias>
ahahah
<whyrusleeping>
multilabs.io is available
<whyrusleeping>
jbenet: its not too late
<daviddias>
Protocol Labs is a multicodec of a multilabs multistream
<whyrusleeping>
i really dont know why thats failing, i wasnt able to repro locally
mildred1 has joined #ipfs
domanic has quit [Ping timeout: 265 seconds]
mildred1 has quit [Quit: Leaving.]
mildred1 has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
thomasreggi has quit [Remote host closed the connection]
thomasreggi has joined #ipfs
<lgierth>
yay i have a startssl account
<lgierth>
that went smooth this time
mildred1 has quit [Ping timeout: 265 seconds]
dignifiedquire has joined #ipfs
thomasreggi has quit [Remote host closed the connection]
thomasreggi has joined #ipfs
montecarl has quit [Quit: leaving]
montecarl has joined #ipfs
domanic has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
montecarl has quit [Quit: leaving]
Encrypt has joined #ipfs
mildred1 has joined #ipfs
thomasreggi has quit []
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
inconshr_ has joined #ipfs
inconshreveable has quit [Read error: No route to host]
patcon has joined #ipfs
bedeho has quit [Ping timeout: 264 seconds]
bedeho has joined #ipfs
amstocker has joined #ipfs
patcon has quit [Ping timeout: 255 seconds]
bedeho has quit [Ping timeout: 252 seconds]
bedeho has joined #ipfs
<ipfsbot>
[go-ipfs] whyrusleeping force-pushed node-construct-v2 from 3e2b7ae to 969b8b8: http://git.io/v3PkK
<ipfsbot>
go-ipfs/node-construct-v2 e3c6488 Jeromy: replace nodebuilder with a nicer interface...
<ipfsbot>
go-ipfs/node-construct-v2 aa5241d Jeromy: use NewNode instead of NewIPFSNode in most of the codebase...
<ipfsbot>
go-ipfs/node-construct-v2 67139af Jeromy: make mocknet work with node constructor better...
Eudaimonstro has quit [Ping timeout: 252 seconds]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
Eudaimonstro has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
mildred1 has quit [Ping timeout: 260 seconds]
patcon has joined #ipfs
mildred1 has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
silotis has quit [Quit: No Ping reply in 180 seconds.]
<jbenet>
lgierth: yay
silotis has joined #ipfs
oleavr has quit [Ping timeout: 244 seconds]
<lgierth>
\o/ but i also did something stupid. i'm always logging into gmail using a temporary browser profile, so i lost the client cert they gave me for authentication with their website
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<lgierth>
"please back this up immediately" they said
oleavr has joined #ipfs
sindresorhus has quit [Ping timeout: 244 seconds]
<jbenet>
lgierth: hahah yeah i think that stuff is terribly designed (same with aws). they should ask for a public key, encrypt it, and store it. they can always send you the encrypted cipher text
sindresorhus has joined #ipfs
<lgierth>
Maybe installation of the certificate failed. I'm attaching your certificate, rename the file from .txt to .crt extension and try to install it into your browser.
<lgierth>
sketchy
<whyrusleeping>
krl: ping
<ipfsbot>
[go-ipfs] whyrusleeping force-pushed node-construct-v2 from 969b8b8 to a12661b: http://git.io/v3PkK
<ipfsbot>
go-ipfs/node-construct-v2 a12661b Jeromy: replace nodebuilder with a nicer interface...
silotis has quit [Ping timeout: 246 seconds]
silotis_ has joined #ipfs
inconshr_ has quit [Read error: Connection reset by peer]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<whyrusleeping>
jbenet: i think one of my commits got lost somehow
<Luzifer>
its failing since 1.5 and therefor the cmd builds are not triggered as they are only triggered on successful builds
<jbenet>
mg- the program doesn't read "<utf8_xml" because the shell should do the redirection. reading the --help, you're right, it's --inputenc
<ipfsbot>
[go-ipfs] whyrusleeping force-pushed quick-fix/ipns-err from 1612e66 to a97639a: http://git.io/vshu4
<ipfsbot>
go-ipfs/quick-fix/ipns-err a97639a Jeromy: dont create ipnsfs filesystem until its needed...
<ipfsbot>
[go-ipfs] whyrusleeping opened pull request #1611: dont create ipnsfs filesystem until its needed (master...quick-fix/ipns-err) http://git.io/vshu6
<jbenet>
Luzifer: ah i see. cc whyrusleeping o/
<whyrusleeping>
jbenet: builds fail on 1.5?
<mg->
jbenet: of course, the '<' it's refering to is the first < of the xml-file
<jbenet>
mg- yeah
<jbenet>
mg- hmmm "unknown object encoding".
<mg->
well, it seems xml is just not implemented
<mg->
core/commands/object.go:664
<whyrusleeping>
Luzifer: where are the logs?
<mg->
the switch there doesn't have xml
<Luzifer>
whyrusleeping: click on the builds on the left side…
domanic has quit [Ping timeout: 245 seconds]
<mg->
jbenet: shall I make an issue?
<jbenet>
mg- ah. interesting. other parts of the system do take xml. looks like there's some additional piece to be plugged in
<jbenet>
mg- yes please
<whyrusleeping>
Luzifer: hrm... okay
<whyrusleeping>
now how the hell am i going to keep Godeps from killing our binaries?
<jbenet>
whyrusleeping i think Luzifer and cryptix discussed a solution earlier, not sure
<whyrusleeping>
jbenet: yeah, one fix would be to just move our utils inside of test/
<whyrusleeping>
instead of relying on godeps
<whyrusleeping>
makes updating them a little harder
<whyrusleeping>
but makes dealing with godeps easier
<jbenet>
whyrusleeping: or just use gx
<whyrusleeping>
jbenet: yeah, thats gonna be a fun transition
<whyrusleeping>
could write a script to do the transition
<whyrusleeping>
Luzifer: does gobuilder know about Godeps?
<Luzifer>
err… yeah…
<Luzifer>
`[14:56:25.735346360] Found Godeps. Restoring them`
<whyrusleeping>
yeah, can we disable that?
<Luzifer>
currently: don't provide godeps
<whyrusleeping>
cant it just run 'go build' ?
<whyrusleeping>
or run a makefile or something?
<whyrusleeping>
it shouldnt need to restore godeps if we have our paths rewritten
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<Luzifer>
no makefiles. too open. and normally if there are godeps it needs to restore godeps. there is no specialized behavior for any repo.
<whyrusleeping>
okay
<whyrusleeping>
i'll fix the issue on our end then
<jbenet>
Luzifer: why does it need to restore godeps _always_, when we actually vendor ourselves? that seems like a bug
<Luzifer>
how should I know you modified your code to use the .../Godeps/workspace/src/... library? Either there are godeps or there are no godeps… That's the only difference I can see without any knowledge about the repo itself.
<Luzifer>
and if there are godeps I need to ensure the build environment is set to that one you specified in godeps.json
<Luzifer>
by using godeps restore
<Luzifer>
there are many programs (most of mine for example) who don't include vendored libs and do not rewrite their code.
<Luzifer>
maybe I need to build different builder containers: 1.4, 1.4-godeps, 1.5, 1.5-godeps… but that would increase the maintenance effort quite a bit
<Luzifer>
the other option would be "Hey here is a container, it does call `make gobuilder`, just ensure after every build the artifacts are in `output`" but in that case I need to put that much effort in securing everything this isn't doable as a side-project of mine… you even could install a torrent client and down/upload torrents in that makefile and I wouldn't
<Luzifer>
notice…
<jbenet>
Luzifer: what about making it an option in gobuilder.yml?
<Luzifer>
what should that option do?
<jbenet>
Luzifer: 'always doing it' breaks standard go build -- imagine a world where you're not aware of godeps-- our layout works fine there.
notduncansmith has joined #ipfs
<jbenet>
Luzifer: disable or enable restore? "godeps: restore: true" and "godeps: restore: false"
notduncansmith has quit [Read error: Connection reset by peer]
<Luzifer>
if there is no Godeps.json there is no godeps step executed. so it does not break standard go.
<jbenet>
Luzifer: what i mean is that "standard go" doesnt say anything about "Godeps.json" (afaik)
<jbenet>
Luzifer: so if our thing works with "go build" out of the box, it shouldn't break in go builder, just because godeps happens to be popular or work a certain way
<Luzifer>
yeah, it would break builds using no godeps but having a Godeps.json in their repo…
<jbenet>
Luzifer: how so?
<jbenet>
the go tool, afaik, does not look for Godeps.json and restore them, does it?
<Luzifer>
because it makes the assumption "if there is a Godeps.json, restore that env"
<Luzifer>
nope
<jbenet>
what makes the assumption?
<jbenet>
the go 1.5 build system?
<Luzifer>
its a feature of GoBuilder to be more convenient for users of godeps
<jbenet>
or gobuilder?
<Luzifer>
(which are many)
<jbenet>
ah, but many people vendor, too
<jbenet>
docker for example
<jbenet>
it is a standard feature of godeps to vendor as well.
<Luzifer>
docker has no godeps.json, it would just do `go build`.
<jbenet>
(( aside, we can fix this on our end, dont worry about it. but afaict so far, i would classify it as a bug in gobuilder's assumptions about godeps ))
<jbenet>
godeps uses godeps.json even in the case where it vendors everything
<Luzifer>
why is it wrong to assume repos having a godeps.json are using godeps?
<jbenet>
we _are_ using godeps
<jbenet>
just not in the way you expect-- we're using `godep save -r ./...`
<jbenet>
ok sounds good. to sum up my thouhgts: this is standard godeps. if gobuilder is going to assume things users who use godeps, make sure to either cover all the cases, or let users toggle the functionality off with an option. neither is not good because we have a totally legitimate use of godeps, that works with standard go build.
<jbenet>
may want to do what travis-ci and circle-ci do, and let users specify the build command
<jbenet>
( we will be switching to a makefile eventually )
<jbenet>
but that may open a can of worms
inconshreveable has joined #ipfs
<jbenet>
bbiab
<Luzifer>
yeah… the can might also be the box of pandora… I've seen too many users doing really bad stuff :(
<Luzifer>
I'm heading to bed… Got some meetings early today… gn8
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
Encrypt has quit [Quit: Quitte]
kord_ has quit [Quit: Leaving...]
kord has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
kord has quit [Quit: Leaving...]
gordonb has joined #ipfs
domanic has joined #ipfs
<daviddias>
jbenet: do you have anything as a MerkleDAG spec done in CBOR+JSONLD ?
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]