00:00:01  * ircretaryquit (Remote host closed the connection)
00:00:09  * ircretaryjoined
00:02:27  * defunctzombiechanged nick to defunctzombie_zz
00:03:07  * Domenic_quit (Remote host closed the connection)
00:16:17  * ins0mniaquit (Ping timeout: 245 seconds)
00:32:42  * Domenic_joined
00:36:22  * tmcwjoined
00:41:10  * tmcwquit (Ping timeout: 272 seconds)
00:47:04  * stlsaintjoined
00:49:18  * Domenic_quit (Remote host closed the connection)
00:49:45  * Domenic_joined
00:57:57  * tilgoviquit (Remote host closed the connection)
01:01:37  * Domenic_quit (Remote host closed the connection)
01:02:05  <mbalho>rvagg: http://imgur.com/a/QshIt
01:09:51  <rvagg>mbalho: nice! but your keyboard is too big!
01:11:26  <mbalho>rvagg: its the only thing i touch, i want it to be comfortable
01:11:40  * tmcwjoined
01:12:22  <rvagg>mbalho: I'm still imagining crazyness when you pull all the kit out on a plane, the person next you might be freaking out when they see all the wires and flashing lights
01:12:43  <rvagg>mbalho: and what's the USB hub for? the battery pack has additional USB outputs doesn't it?
01:12:46  <mbalho>rvagg: best part is i can put everything except the kindle + keyboard in my backpack and just flip a switch and it will all auto connect
01:13:10  <mbalho>rvagg: each usb out on the pack is a different amperage (which is nice actually)
01:13:19  <rvagg>ah, ok
01:21:32  * tmcwquit (Remote host closed the connection)
01:22:25  * yorickquit (Remote host closed the connection)
01:22:28  <rvagg>mbalho: you're editing a PDF file on your kindleberry?? that's hardcore
01:23:15  <mbalho>rvagg: :D was the only thing i had laying around to fill the screen up with at the time
01:28:59  * kenperkinsquit (Ping timeout: 252 seconds)
01:34:05  <ralphtheninja>scenario: client connects to server over tcp, sends some header and some data .. is it possible for the server to know when the data has ended if it doesn't know how big the data is?
01:35:10  <ralphtheninja>I know the client can like do stream.end() which would trigger an event on the server, but I don't want to end the connection
01:41:42  <rvagg>ralphtheninja: you're going to need to build that into the protocol then so you know where boundaries are
01:41:58  <rvagg>either explicitly by putting a boundary indicator or in a header with a 'content length' type setting
01:42:42  <ralphtheninja>aye, that's what I figured .. just needed to bounce it
01:43:19  <ralphtheninja>thanks rvagg :)
01:46:00  * esterellaquit (Quit: esterella)
01:53:35  * tim_smart|awaychanged nick to tim_smart
02:09:18  * st_lukequit (Ping timeout: 250 seconds)
02:09:30  * shamaquit (Remote host closed the connection)
02:11:57  <Raynos>mr isaacs,
02:12:14  * Domenic_joined
02:12:17  <Raynos>how do you get cheap diskspace at joyent for npm replicas
02:13:49  <Raynos>Domenic_: can you start a kickstarter to rewrite npm
02:13:54  <Raynos>ill pay at least $500 for that
02:14:06  * dominictarrjoined
02:15:02  * mikealquit (Quit: Leaving.)
02:16:50  * Domenic_quit (Ping timeout: 256 seconds)
02:17:15  <rvagg>+1
02:18:58  <dominictarr>rvagg: how far is leveljs away from having a working sst parser?
02:19:48  <dominictarr>at nearform we have a thing that wants a leveldb on windows
02:22:02  <rvagg>dominictarr: been working on windows, https://groups.google.com/d/topic/libuv/bglR8KBEFXU/discussion
02:22:20  <rvagg>work going on in here, https://github.com/rvagg/leveldb
02:22:22  <rvagg>libuv branch
02:22:49  <rvagg>but... slow... slow... windows dev frustrates the {% expletive %} out of me so I can only do so much at a time
02:23:16  <rvagg>plus I actually don't have that much incentive to do it other than people constantly asking me for a windows port! had an email conversation this morning with someone else.
02:23:31  <rvagg>but, it's a personal challenge.. can I brave windows dev and make something actually functional
02:24:05  <rvagg>dominictarr: leveljs is very close to being able to fully parse sst files, I haven't updated the readme but it can be run over both log and sst files and it'll spit out their contents, roughly
02:24:18  <rvagg>but again! another side project
02:24:26  <rvagg>and I have enough trouble sorting out my non-side projects!
02:24:31  <dominictarr>yes -- what about build sst?
02:24:33  <dominictarr>ssts
02:25:02  <rvagg>dominictarr: reading first... writing is a little way off yet
02:25:09  <dominictarr>right
02:25:19  <rvagg>after reading ssts I still need to combine them and mash it up with log entries too in order to have something useful
02:25:44  <dominictarr>I was thinking about building a level.js that did the same stuff as leveldb, architecturally, but used a simple line separated json format
02:26:10  <dominictarr>you would still use the same progressive compaction, and build sorted tables
02:26:29  <dominictarr>and then do binary searches for particular keys
02:27:02  <rvagg>yeah, I've been pondering that too, a more natural node format; for me tho the challenge of binary compatibility is a bit more interesting
02:27:30  <rvagg>I'd be fascinated to know how far off we can get from native leveldb performance just by using V8+Node
02:27:44  <dominictarr>yes! but I've been thinking that if you abstract the right parts
02:27:55  <dominictarr>so, provide a pluggable sst builder/parser
02:28:01  <rvagg>ya, true true
02:28:20  <dominictarr>then you could build the high level stuff, and then use a json parser or a binary parser
02:28:34  <rvagg>I'm still going through the process of understanding the parts myself though, so just making it work is the top priority and then I step back and see if it can be made to fit together nicely
02:28:43  <dominictarr>there are still a few tricky parts in the high level stuff
02:28:58  <dominictarr>although, I know I could easily build a json sst
02:29:38  <dominictarr>I guess the sst has get(key) range(from, to)
02:30:01  <dominictarr>and you can create a new sst by merging two or more sorted streams
02:30:18  <dominictarr>but - you build it, and then you can only read it
02:30:45  <dominictarr>so, given two SST you build a 3rd that is the combination of the two
02:30:56  <rvagg>I think a lot of the combining is done in the form of iterators
02:31:05  <dominictarr>that makes sense
02:31:14  <rvagg>index iterator + block iterator = sst iterator
02:31:21  <rvagg>sst + sst + log iterator = leveldb, something like that
02:32:05  <dominictarr>new SST(file, iterator1, iterator2)
02:32:10  * jibayquit (Remote host closed the connection)
02:32:27  <dominictarr>and then you can have a SSTIterator, and a LogIterator, etc
02:33:02  <mbalho>dominictarr: http://imgur.com/a/QshIt you should buy all these parts BTW
02:34:17  <dominictarr>mbalho: what is the easy-acc? 3g?
02:34:25  <mbalho>dominictarr: battery pack
02:34:35  <dominictarr>Of course!
02:34:56  <mbalho>dominictarr: http://www.amazon.com/gp/product/B008YRG5JQ/ref=oh_details_o03_s00_i02?ie=UTF8&psc=1
02:35:49  <dominictarr>in this photo http://imgur.com/a/QshIt#3 the kindle is leaning against the battery pack?
02:35:51  <dominictarr>it looked like the kindle is plugged in
02:36:09  <mbalho>dominictarr: oh yea its leaning on the battery pack
02:36:18  <mbalho>dominictarr: kindle + keyboard are both wireless
02:36:44  <dominictarr>what is the other black thing with the orange light?
02:37:05  <mbalho>dominictarr: usb hub
02:37:33  <dominictarr>the battery has 4 usb sockets, but it's not a hub?
02:37:47  <mbalho>dominictarr: each port provides a different amperage
02:38:14  <dominictarr>oh, right
02:38:45  <dominictarr>mbalho: so what is the total cost of the whole setup?
02:39:18  * owen1joined
02:39:45  <mbalho>dominictarr: probably around 400 for everything
02:39:53  <dominictarr>mbalho: Am planning to get this stuff next time I am in one place for a bit longer - in ireland, probably
02:42:56  <Raynos>A MODULE TAKES INPUT. PRODUCES OUTPUT
02:42:56  <LOUDBOT>LETS GET DRUNK AND THROW ROCKS AT CARS
02:43:10  <Raynos>wise words from substack
02:43:17  <Raynos>s/module/function
02:43:47  <Raynos>https://twitter.com/Raynos2/status/309132140447154177
02:43:53  <rvagg>function go () { rimraf('/') } <-- no input and no "output" but certainly has side-effects
02:44:42  * dominictarrpart
02:44:50  <substack>Raynos: same thing
02:44:55  * dominictarrjoined
02:45:10  <Raynos>rvagg: That is not a thing
02:45:20  <Raynos>rvagg: you should not have side effects ever :D
02:45:22  <rvagg>IT'S A THING, I JUST MADE IT A THING
02:45:22  <LOUDBOT>I HOPE YOU ARE SPINNING IN YOUR GRAVE, POSTEL
02:45:36  <dominictarr>mbalho: you should write a blog post on the kindle stuff!
02:45:45  <substack>side effects are ok just be explicit about them
02:45:51  <substack>and place them wisely
02:46:19  <substack>just follow http://www.faqs.org/docs/artu/ch01s06.html
02:46:21  <substack>that's what I do
02:47:24  <dominictarr>Raynos this is a stateful universe, I'm afraid
02:47:45  <Raynos>dominictarr: state monads :3
02:47:53  <Raynos>let me rephrase
02:48:00  <Raynos>you should isolate side effects to a contained subset of your code
02:48:21  <rvagg>Raynos: http://npm.im/side-effect-me-up-scotty <-- it's a THING now ok?
02:48:51  <Raynos>rvagg: It should rimraf "/" in post install
02:48:53  <Raynos>for lulz
02:48:57  <Raynos>to fuck over hoarders xd
02:49:02  <rvagg>haha! awesome idea
02:49:18  * chrisdickinsonquit (Ping timeout: 264 seconds)
02:49:57  <Raynos>mongodb has a module thingy o_o
02:50:41  * chrisdickinsonjoined
02:53:33  <mbalho>substack: http://i.imgur.com/2XNKP0x.png
02:54:43  <dominictarr>hahaha!
02:54:52  <Raynos>mbalho: PREPARE THE LYNC MOB
02:54:53  <dominictarr>he's just trying to wind you up
02:56:21  <dominictarr>Although though am liking that "rail-like" has become pejorative
02:56:25  <substack>same
02:56:35  <substack>THEM'S FIGHTIN WORDS.
02:56:35  <LOUDBOT>INTERNATIONAL AGREEMENT: BYTES ARE 1024 NOW, YOU FUCKERS
02:57:37  <dominictarr>really, neither component or browserify are particularily rails like
02:58:03  * AvianFluquit (Ping timeout: 260 seconds)
02:59:01  <rvagg>in that they are no omakase...
02:59:47  <substack>browserify outputs to stdout by default if you don't specify a -o
02:59:52  <substack>UNIX
03:00:27  <substack>I should check for "-" and read entry files from stdin though
03:00:38  <substack><(echo 'file contents') doesn't work for some reason
03:01:29  <rowbit>/!\ ATTENTION: (default-local) 423300@... successfully signed up for developer browserling plan ($20). Cash money! /!\
03:01:29  <rowbit>/!\ ATTENTION: (default-local) paid account successfully upgraded /!\
03:02:40  * AvianFlujoined
03:03:11  <dominictarr>rvagg: substack especially considering the bfy2 doesn't bundle any node globals unless you have used it…
03:03:40  <dominictarr>component has more opinions, like using github
03:04:15  <substack>browserify's only opinion is that it should work with npm modules
03:04:49  <dominictarr>yes
03:09:41  * defunctzombie_zzchanged nick to defunctzombie
03:13:02  <Raynos>substack: you should put a joke in browserify about component
03:13:10  <Raynos>like if it finds a component.json it should print some kind of warning
03:15:25  * marcello3djoined
03:15:57  <defunctzombie>haha
03:16:02  <defunctzombie>+1 Raynos
03:21:26  <defunctzombie>dominictarr: substack: Raynos: just don't think about it, I don't pay any attention to it and go about my business making my own web components how I want on npm
03:21:41  <defunctzombie>if you want to use something made for component, then port it. it is trivial
03:26:55  <Raynos>true
03:31:19  <defunctzombie>personally, I have problems with npm, but at this point I am more about being consistent with how everyone else publishes than trying to run off on my own
03:31:22  * thl0joined
03:31:43  <defunctzombie>I think what we have is flexible enough that we are not creating "lockin" or anything super platform specific honestly
03:32:34  <dominictarr>rvagg: https://github.com/dominictarr/json-sst
03:32:51  <dominictarr>just writing up the ideas, hopefully can implement them soon
03:33:27  <dominictarr>figure there is another module, which is the log - which is in memory and has put, batch, createIterator, and del
03:34:24  <dominictarr>then, when you start to do a compaction - you just create freeze the current logdb
03:34:44  <dominictarr>create another one in front, to handle any writes,
03:35:53  <dominictarr>deleting the old log, once you have finished the compaction
03:38:59  * mikealjoined
03:39:21  <Raynos>defunctzombie: do you have enough problems to want to fix them?
03:39:29  <Raynos>We need a kickstarter for an npm rewrite
03:40:28  * mikolalysenkojoined
03:41:18  <defunctzombie>Raynos: yea, I have a few mildly headachie ones
03:41:38  <defunctzombie>with various levels of "will break your code"
03:41:58  <defunctzombie>and a few nice to haves that are about easier sharing and module promotion/finding
03:47:23  * mikealquit (Quit: Leaving.)
03:48:18  * mikealjoined
04:04:59  * mikolalysenkoquit (Ping timeout: 245 seconds)
04:06:02  <Raynos>OH HI
04:07:00  * mikealquit (Quit: Leaving.)
04:09:15  <Raynos>isaacs: https://www.gittip.com/on/github/isaacs/
04:19:27  <dominictarr>holy shit
04:19:28  <dominictarr>https://www.gittip.com/dominictarr/
04:19:41  <dominictarr>this is a surprise
04:19:57  <Nexxy>dominictarr, I found $52 on gittip for me by surprise!
04:20:31  <dominictarr>Nexxy: WIN!
04:22:15  * thl0quit (Remote host closed the connection)
04:23:33  <Raynos>Recursion. Fuck, yes.
04:58:09  <dominictarr>rvagg: what should happen on an iterator if you call next, and then call end?
04:58:21  <dominictarr>should the next(cb) return an error?
04:58:28  <dominictarr>or should end(cb) return an error?
04:58:31  <rvagg>dominictarr: hang on and I'll tell you
04:59:04  <dominictarr>(I mean, calling end before next has called back, of course)
04:59:40  <rvagg>dominictarr: end() only returns an error if (1) there is an underlying error or (2) end() has already been called
05:00:41  <rvagg>dominictarr: next() will return an error if (1) it is called after an end() has been called or (2) it is called before the previous next() has returned
05:00:51  <dominictarr>yes
05:01:04  <rvagg>dominictarr: next() will always return on cb, even after end()
05:01:13  <dominictarr>so if end is called before a previous next has return
05:01:16  <dominictarr>d
05:01:20  <rvagg>mind you, this is all very simplistic, and needs reassessing
05:01:33  <dominictarr>right - so what do we want the spec to be?
05:01:57  <dominictarr>I think end should probably error
05:02:00  <dominictarr>that is simpler
05:02:04  <rvagg>currently if you call end() before a next() has returned then the end() is simply queued and run after next() has returned
05:02:22  <rvagg>so it'll work without error that way, but it won't prevent the next() in progress from returning
05:02:24  <rvagg>currently
05:02:40  <rvagg>leveldown manages this already
05:02:47  <dominictarr>hmm, okay actually, second thoughts, that is simpler
05:03:06  <rvagg>yeah, it's annoying if you can't end() while a next() is in progress
05:03:24  <dominictarr>if you could end while it is,
05:03:46  <dominictarr>then iterators would need to have some way to abort a next() that is in progress
05:03:52  <dominictarr>while that is a nice idea
05:04:08  <dominictarr>it's also quite complicated and a lot of work for a tiny edgecase
05:04:25  <dominictarr>BATTERY LOW, RELOCATING
05:04:26  <LOUDBOT>ACHIEVEMENT UNLOCKED: EXPLOSIVE GARMENTS
05:04:27  * dominictarrquit (Quit: dominictarr)
05:05:47  * marcello3dquit (Remote host closed the connection)
05:27:20  * dominictarrjoined
05:28:47  <dominictarr>rvagg: I think end should probably not error if it's already ended.
05:28:52  <dominictarr>that is kinda annoying
05:29:01  <dominictarr>because then the user has to track the state
05:29:08  <dominictarr>instead it should just cb immediately
05:29:42  <dominictarr>hmm, I guess the user can just ignore AlreadyEnded errors
05:29:48  <rvagg>dominictarr: ok, perhaps I just did that cause I happened to have an `ended` boolean available and got overexcited!
05:30:29  <dominictarr>that did cause a few bugs
05:30:38  <rvagg>yeah, if already ended then immediate callback, or next-tick callback at a minimum would be fine I reckon
05:30:50  <rvagg>those bugs were elsewhere
05:31:06  <dominictarr>or, maybe expose the ended property?
05:31:06  <rvagg>next() after end(), or end() while next() was in progress
05:31:22  <rvagg>yeah, I guess, like stream's .readable / .writable
05:42:44  <Raynos>defunctzombie: how do I use tryme ?
05:44:06  <defunctzombie>Raynos: install it (probably with -g if you want command line usage)
05:44:15  <defunctzombie>and then just tryme /path/to/module/root
05:44:22  <defunctzombie>and it will start a server at port 8080
05:44:27  <defunctzombie>similar to the tryme website
05:47:28  <Raynos>i dont know how to use it
05:47:42  <Raynos>I did tryme .
05:47:51  <Raynos>and http://localhost:8080/examples/react/mouse-position.js just returns the js file
05:47:56  <defunctzombie>Raynos: yea, that should start the tryme server
05:48:10  <Raynos>and http://localhost:8080/examples/react/mouse-position returns 404
05:48:16  <defunctzombie>Raynos: I just published version 0.0.2
05:48:21  <defunctzombie>so make sure you have that
05:48:28  <defunctzombie>and yes, you need the .js extension
05:48:35  <Raynos>a -h helps a lot
05:48:38  <Raynos>or --help
05:48:39  <Raynos>or help
05:48:39  <defunctzombie>I tried it on your project earlier and it was working
05:48:41  <defunctzombie>:D
05:48:58  <defunctzombie>it needs some local CLI love for sure
05:49:02  <Raynos>ok now it works locally
05:50:53  <Raynos>defunctzombie: I'm going to need to hack it a ton :D
05:51:10  <defunctzombie>Raynos: by all means go right ahead
05:51:19  <Raynos>live reload and indexes
05:51:23  <Raynos>are the first thigns :)(
05:51:39  <defunctzombie>it is a bit of a mess currently cause I just hacked it together from the interactivate stuff
05:51:39  <Raynos>what do you think about persisting changes back to the file locally?
05:51:50  <defunctzombie>Raynos: you would need a dialog
05:51:58  <Raynos>a confirmation one?
05:52:02  <defunctzombie>Raynos: unless in local mode or something
05:52:05  <Raynos>what about if ctrl + S then safe to file
05:52:09  <defunctzombie>I wouldn't want the server version to do this
05:52:10  <Raynos>well in local mode only
05:52:27  <defunctzombie>Raynos: in local mode it could be ok, or you can just dataurl it and the person can save it
05:52:41  <Raynos>well I want the server to do it for me
05:52:42  <defunctzombie>Raynos: it would certainly help in setting up the examples initially
05:52:47  <Raynos>ok
05:52:47  <defunctzombie>that or live reloading
05:52:51  <Raynos>so im gonna hack
05:52:52  <Raynos>the hell out of it
05:52:55  * simcop2387quit (Excess Flood)
05:54:06  * tim_smartchanged nick to tim_smart|away
05:56:14  * simcop2387joined
05:56:48  <defunctzombie>Raynos: excellent!
05:58:19  <Raynos>defunctzombie: how are bin/cli & view different?
05:58:41  <defunctzombie>view handles the git checkout stuff
05:58:46  <Raynos>for the hosted one?
05:58:46  <defunctzombie>and bootstrapping
05:58:48  <defunctzombie>yea
05:58:59  <defunctzombie>should probably be called server.js or some shit
05:59:04  <defunctzombie>it was migrated from a different file
05:59:11  <Raynos>whats project?
05:59:18  <defunctzombie>interactivate iirc
05:59:24  <defunctzombie>not the git parts
05:59:33  <defunctzombie>I mean the name was when I was hacking on it differently
05:59:37  <defunctzombie>and just never renamed it
05:59:46  <defunctzombie>the git stuff is all from this project
06:03:42  * dguttmanquit (Quit: dguttman)
06:15:38  <Raynos>defunctzombie: https://github.com/shtylman/tryme/pull/1
06:15:39  <Raynos>thats live reload
06:16:12  <Raynos>btw is the README supposed to be live?
06:16:45  <defunctzombie>Raynos: the readme is supposed to work
06:16:53  <defunctzombie>less so critical of it being live I think
06:17:00  <Raynos>its not edible
06:17:01  <defunctzombie>Raynos: also, don't be adding that floating dep shit
06:17:08  <defunctzombie>Raynos: it is if you add // => to a code section
06:17:17  <defunctzombie>otherwise it won't activate a code section
06:17:33  <Raynos>I also use `require("graphics")` instead of relative
06:18:00  <Raynos>seriously
06:18:03  <Raynos>you dont want my patches >:(
06:18:26  <defunctzombie>Raynos: yea, for that to work locally you need the symlink
06:18:31  <defunctzombie>back to self in node_modules
06:18:35  <Raynos>blargh
06:18:36  <defunctzombie>the server version does it automatically
06:18:43  <defunctzombie>but the local version doesn't do that for you yet
06:18:55  <defunctzombie>yea, not much to do about that :/
06:18:58  <defunctzombie>just how things are
06:19:07  <Raynos>also the server crashes a ton :D
06:19:13  <Raynos>https://gist.github.com/Raynos/95ece0c44bdeef99942f
06:19:18  <Raynos>ill figure out who throws and catch it
06:19:37  <defunctzombie>Raynos: yea, that is from module not found stuff in browserify
06:19:49  <defunctzombie>Raynos: how does livereload work?
06:19:55  <Raynos>it spawns a server
06:20:03  <Raynos>and sends messages to clients when files changes
06:20:18  <Raynos>the script tag to < localhost:LIVE_RELOAD_PORT> listens to messages and hard refreshse the page
06:21:58  <Raynos>fuck where is that error in the pipe coming from
06:22:24  <Raynos>oh its one in the fucking middle :/
06:22:25  <Raynos>ragequit
06:22:38  <Raynos>would creating a domain solve the issue
06:22:40  <Raynos>I think it would
06:22:45  <substack>yes
06:23:07  * mikealjoined
06:23:51  <Raynos>yeah domains catch it :D
06:24:00  <Raynos>substack: i'd be way nicer if I didnt need to run bundle() in a domain
06:24:05  <Raynos>and you forwarded errors for intermediate streams
06:25:06  <substack>which stream is emitting the error?
06:26:13  <Raynos>substack: https://gist.github.com/Raynos/95ece0c44bdeef99942f
06:26:16  <Raynos>something somewhere, not sure which one
06:29:10  <Raynos>defunctzombie: when and where should it print an index?
06:29:17  <Raynos>I think it should print an index at / instead of the README
06:29:34  <defunctzombie>Raynos: it should print an index only when it cannot find an index.js or a README.md or such
06:29:42  <defunctzombie>and the user is on a directory url
06:29:46  <Raynos>but locally
06:29:52  <defunctzombie>same thing
06:29:53  <Raynos>Oh I see
06:29:57  <Raynos>I guess it can print an index
06:29:59  <Raynos>at examplse/
06:30:01  <Raynos>examples/
06:30:03  <defunctzombie>Raynos: all that would be in router btw
06:30:09  <defunctzombie>so it will work the same locally as for server
06:30:20  <defunctzombie>router is the thing that handles serving everything up
06:30:25  <defunctzombie>once it has been bootstrapped
06:30:28  <defunctzombie>also, don't use domains
06:30:37  <defunctzombie>we probably need to just add a try catch
06:30:41  <defunctzombie>over detective
06:32:22  <Raynos>ok
06:32:32  <Raynos>using domains for now
06:32:52  <Raynos>someone else can fix browserify :D
06:34:19  <defunctzombie>substack: is something throwing when a module cannot be found versus returning?
06:34:24  <defunctzombie>substack: my guess is resolve maybe?
06:40:45  <Raynos>defunctzombie: many hacks ( https://github.com/shtylman/tryme/pull/2 )
06:43:36  <Raynos>defunctzombie: can I get rid of the temporary file somehow ;(
06:43:47  <defunctzombie>Raynos: nope
06:44:10  <Raynos>why not
06:44:15  <Raynos>cant the server blob be a seperate file?
06:44:37  <Raynos>oh fuck it needs to eval in that scope -.-
06:44:40  <defunctzombie>the temp file is needed yep
06:44:43  <defunctzombie>exactly :)
06:44:46  <defunctzombie>Raynos: https://github.com/Raynos/tryme/commit/59cd5fbb489ed81e9269528b35e48058eda0abf9#L0R54
06:44:50  <defunctzombie>why checking for string?
06:45:06  <Raynos>defunctzombie: because someone does `stream.emit("error", SOME_STRING)
06:45:14  <defunctzombie>wtf really?
06:45:17  <Raynos>yes :D
06:45:20  <defunctzombie>who
06:45:24  <defunctzombie>we must find them and hurt them
06:45:28  <defunctzombie>even if that them is me
06:45:33  <Raynos>:D
06:45:34  <defunctzombie>what is the string?
06:45:56  <Raynos>someone needs to delete this temp file
06:45:58  <Raynos>when its done
06:46:20  <defunctzombie>Raynos: that should be there
06:46:22  <defunctzombie>already
06:46:42  <Raynos>oh I see
06:46:45  <Raynos>it doesnt delete on error
06:47:06  <defunctzombie>ah :(
06:47:07  * nicholasfquit (Read error: Connection reset by peer)
06:47:35  * nicholasfjoined
06:48:18  <defunctzombie>Raynos: I have found the evil
06:48:19  <defunctzombie>https://github.com/substack/module-deps/blob/master/index.js#L56
06:48:20  <defunctzombie>substack: ^
06:48:26  <defunctzombie>that needs to become an error object plz
06:48:59  <defunctzombie>the join seems a bit much, just concat new Error(string + string + foo) haha
06:49:38  <defunctzombie>Raynos: please add a comment about the string err check so that it can be removed later once module-deps is fixed
06:51:07  <defunctzombie>Raynos: I opened an issue on module-deps
06:51:09  <defunctzombie>will be an easy fix
06:52:02  <Raynos>cool
06:58:21  * stlsaintquit (Ping timeout: 245 seconds)
07:00:03  <Raynos>defunctzombie: can you get the indexing out to jitsu?
07:00:34  * defunctzombiechanged nick to defunctzombie_zz
07:02:29  * owenbquit (Ping timeout: 245 seconds)
07:02:41  <Raynos>added the nitpicks https://github.com/shtylman/tryme/pull/2
07:06:09  * robertjd_quit (Ping timeout: 248 seconds)
07:06:43  * duncanbeeversquit (Ping timeout: 240 seconds)
07:07:00  * pikpikquit (Ping timeout: 250 seconds)
07:10:21  * ryanseddonquit (Ping timeout: 276 seconds)
07:12:04  * gozalaquit (Ping timeout: 256 seconds)
07:39:22  * dominictarrquit (Quit: dominictarr)
07:40:04  * dominictarrjoined
07:40:06  * dominictarrquit (Client Quit)
07:41:20  * dominictarrjoined
07:48:37  * st_lukejoined
07:53:36  * dominictarrquit (Quit: dominictarr)
07:56:02  * duncanbeeversjoined
07:56:56  <ralphtheninja>about to anger quit :) https://gist.github.com/ralphtheninja/5097511
07:57:06  <ralphtheninja>I can't for my life see what I'm doing wrong
08:00:37  * mmckeggquit (Quit: mmckegg)
08:18:13  * AvianFluquit (Remote host closed the connection)
08:23:18  <Raynos>http://raynos.graphics-server.jit.su/
08:23:23  <Raynos>I put graphics online
08:25:53  * ryanseddonjoined
08:27:41  * robertjd_joined
08:28:55  * gozalajoined
08:30:59  <juliangruber>ralphtheninja: I'll have a look at it
08:32:12  <juliangruber>ralphtheninja: at server-nope.js: line 11 after line 14
08:32:29  <juliangruber>ralphtheninja: perhaps you also need to move var d = dnode(...) in there
08:34:12  <juliangruber>dnode is saying which methods it has as soon as it's piped somewhere afaik, and in your case it wrote that do mux-demux before there was a tcp connection to the other side
08:45:59  <juliangruber>Raynos: what I find difficult about FRP is that you (looking at http://raynos.graphics-server.jit.su/react/mouse-position-image.js) either have to read a program from bottom to top or have so many functions in your brain's stack
08:46:12  <Raynos>oh
08:46:16  <Raynos>I just ordered them funny\
08:46:43  <Raynos>juliangruber: https://gist.github.com/Raynos/339b053a85848d4fea5c
08:46:59  <Raynos>map input to state
08:47:02  <Raynos>map state to scene
08:47:04  <Raynos>render(scene)
08:47:09  <Raynos>very logical
08:47:21  <juliangruber>Raynos: yeah I see. Then it's really elegant
08:47:50  <Raynos>the real question is
08:48:00  <Raynos>does it scale beyond hello world demos
08:48:52  <juliangruber>I think there is just one way to find out ;)
08:48:59  <Raynos>build more :D
08:49:04  <juliangruber>you could start by rewriting the wizards game with frp
08:49:18  <Raynos>i want to write mario
08:50:14  * st_lukequit (Remote host closed the connection)
08:51:11  <juliangruber>or that
08:51:40  <juliangruber>hm, or something simpler first, like a rockets shooting game
08:51:45  <juliangruber>like rawket
08:59:54  * owenbjoined
09:01:32  * defunctzombie_zzchanged nick to defunctzombie
09:03:39  * pikpikjoined
09:37:10  * simcop2387quit (Excess Flood)
09:38:53  * shuaibjoined
09:40:14  * simcop2387joined
09:43:31  * cianomaidinjoined
09:54:09  * cianomaidin_joined
09:56:28  * cianomaidinquit (Ping timeout: 276 seconds)
09:56:28  * cianomaidin_changed nick to cianomaidin
10:00:51  * cianomaidinquit (Ping timeout: 245 seconds)
10:03:56  * simcop2387quit (Excess Flood)
10:06:14  * simcop2387joined
10:31:47  * defunctzombiechanged nick to defunctzombie_zz
10:56:44  * spionquit (Ping timeout: 246 seconds)
11:14:25  * jibayjoined
11:16:24  * jibayquit (Remote host closed the connection)
11:16:28  * saijanai_joined
11:29:16  * cianomaidinjoined
11:39:59  * dominictarrjoined
11:51:40  * dominictarrquit (Quit: dominictarr)
12:01:17  * spionjoined
12:07:07  * shuaibquit (Quit: Textual IRC Client: http://www.textualapp.com/)
12:23:09  * thl0joined
12:35:28  * ins0mniajoined
12:38:12  <juliangruber>substack: how did the demos go?
12:43:22  * marcello3djoined
12:51:03  <ralphtheninja>juliangruber: thanks, I've been looking at multilevel as the model
12:52:44  <ralphtheninja>juliangruber: but line 11 should come in the same order as your d.pipe(server.createStream('dnode')).pipe(d) in server.js, no?
12:54:36  <ralphtheninja>https://github.com/juliangruber/multilevel/blob/master/lib/server.js#L77
12:55:21  <juliangruber>ralphtheninja: hmm true
12:55:38  <juliangruber>I had my headaches with muxdemux too
12:55:46  <juliangruber>I'll try to get your demos working :)
12:57:04  <ralphtheninja>juliangruber: I moved the line as you suggested, then the client starts reacting a little bit :)
12:57:46  <ralphtheninja>https://gist.github.com/ralphtheninja/5097511#file-client-nope-js-L16
12:57:47  * cianomaidinquit (Read error: Connection reset by peer)
12:57:52  <ralphtheninja>this one signals
12:58:22  * cianomaidinjoined
12:59:53  <ralphtheninja>it's probably the same story on the client
13:00:05  <juliangruber>you needn't touch the client
13:00:21  <juliangruber>just move everything into net.createServer()
13:01:07  <ralphtheninja>juliangruber: awesome, thanks!
13:01:39  <ralphtheninja>juliangruber: does your multilevel sample work?
13:01:49  <juliangruber>ralphtheninja: multilevel's tests pass
13:02:01  <juliangruber>I'll check, why :D
13:03:40  <ralphtheninja>you call it the same way in the test but differently in the REAME I guess
13:03:45  <juliangruber>the tests work, because https://github.com/juliangruber/multilevel/blob/master/test/util.js#L13
13:03:49  <ralphtheninja>aye :)
13:03:56  <juliangruber>*becourse
13:04:33  <ralphtheninja>I can patch your README if you want
13:07:21  <ralphtheninja>juliangruber: PR sent, if you want it :)
13:08:01  <juliangruber>thanks
13:08:27  <juliangruber>that means though that you can't use the syntax multilevel.server('path-to-db') anymore
13:13:07  * cianomaidinquit (Ping timeout: 260 seconds)
13:15:03  * cianomaidinjoined
13:22:25  <ins0mnia>Raynos: ping
13:24:14  * cianomaidinquit (Ping timeout: 252 seconds)
13:35:50  * cianomaidinjoined
13:41:00  * cianomaidin_joined
13:41:00  * cianomaidinquit (Read error: Connection reset by peer)
13:41:00  * cianomaidin_changed nick to cianomaidin
13:41:45  * simcop2387quit (Quit: ZNC - http://znc.sourceforge.net)
13:43:16  * simcop2387joined
13:43:53  <juliangruber>ralphtheninja: https://github.com/dominictarr/mux-demux/issues/23
13:53:30  <ralphtheninja>juliangruber: ✔
13:54:13  <ralphtheninja>juliangruber: what do you use to inspect the traffic?
13:56:35  <juliangruber>ralphtheninja: https://gist.github.com/juliangruber/5099457
13:56:49  <juliangruber>and similarly for the client
14:02:00  * thl0quit (Remote host closed the connection)
14:28:00  * thl0joined
14:36:18  * jibayjoined
14:46:29  * mikolalysenkojoined
14:56:56  * tmcwjoined
15:12:16  * kirbysayshijoined
15:12:34  * nicholasfquit (Read error: Connection reset by peer)
15:12:45  * nicholasfjoined
15:14:43  <tmcw>substack: any idea what's needed to fix js-traverse tests?
15:15:41  * nicholasfquit (Read error: Connection reset by peer)
15:15:50  * yorick_joined
15:15:50  * yorick_quit (Changing host)
15:15:50  * yorick_joined
15:16:06  * nicholasfjoined
15:25:40  * cianomaidinquit (Quit: cianomaidin)
15:27:30  * nicholasfquit (Ping timeout: 250 seconds)
15:33:46  * mikealquit (Quit: Leaving.)
15:38:37  * cianomaidinjoined
15:40:10  * dguttmanjoined
15:45:26  * zero_coderjoined
15:46:22  * Domenic_joined
15:58:36  * zero_coderquit (Remote host closed the connection)
16:01:23  * zero_coderjoined
16:08:16  * defunctzombie_zzchanged nick to defunctzombie
16:10:44  * mikealjoined
16:19:01  * dguttmanquit (Quit: dguttman)
16:26:39  * dguttmanjoined
16:29:13  * kenperkinsjoined
16:35:38  * marcello3dquit (Remote host closed the connection)
16:39:04  * dguttmanquit (Quit: dguttman)
16:41:40  <Raynos>ins0mnia: pong
16:42:17  <ins0mnia>Raynos: +1 on https://github.com/Raynos/graphics
16:42:32  <ins0mnia>Raynos: this is very very interesting
16:43:00  * dguttmanjoined
16:43:45  <Raynos>ins0mnia: Look at Elm & the Elm video for mloc
16:44:51  <ins0mnia>ins0mnia: yeah, already seen the vid, which is why I was smiling this morning when I saw your repo
16:45:14  <Raynos>well
16:45:20  <Raynos>feel free to port more over :D
16:45:28  <ins0mnia>alot of work to be done though
16:45:36  <ins0mnia>Raynos: yeah that's the plan :)
16:45:48  <Raynos>I got as far as http://raynos.graphics-server.jit.su/react/window-centering.js last night
16:46:21  <ins0mnia>cool
16:46:29  <ins0mnia>what would be great is to get List ported
16:46:36  <Raynos>the nice thing is that setting up the REPL interactive demo is trivial due to earlier work
16:47:06  <ins0mnia>yeah
16:47:22  <Raynos>I don't know what List is
16:47:33  <ins0mnia>I'll show you holdon
16:48:12  <Raynos>Oh a List data type?
16:48:17  <ins0mnia>yup
16:48:41  <Raynos>You can just use array
16:48:43  <Raynos>or reducers for that
16:48:45  <Raynos>or underscore
16:49:06  <ins0mnia>that works
16:49:10  <ins0mnia>(no underscore)
16:49:15  <ins0mnia>reducers
16:49:18  <ins0mnia>is good
16:49:36  <ins0mnia>I'm more thinking of mapping the functionalities one to one
16:50:24  <ins0mnia>anyway I'll spend few hours this weekend to study the repo a bit more then I'll start (try to at least) porting following your code style
16:51:11  <Raynos>the hard part is porting all the canvas stuff
16:51:25  <Raynos>the second hard part is writing complex examples you cant just copy paste from elm
16:51:55  <ins0mnia>true
16:52:21  <ins0mnia>will start with the basics:)
17:01:34  * calvinfoquit (Ping timeout: 276 seconds)
17:07:14  * calvinfojoined
17:07:46  * AvianFlujoined
17:07:51  <tanepiper>so can someone explain why LevelDB is the new hotness?
17:14:42  * cianomaidinquit (Ping timeout: 240 seconds)
17:15:57  <jesusabdullah>tanepiper: also it sounds hackable, people like hacking even if they don't have an immediate need for it
17:17:10  * mikealquit (Quit: Leaving.)
17:18:39  <tanepiper>jesusabdullah: it looks like less fuckery than mongo or redis, or couch
17:25:53  <jesusabdullah>well yeah, for sure
17:27:09  <jesusabdullah>mongo from a distance seems to involve much fuckery
17:27:16  <jesusabdullah>ZOUNDS! THERE'S FUCKERY AFOOT!!
17:27:16  <LOUDBOT>DO THEY FLY OVER THE CUCKOOS NEST?
17:30:26  <jesusabdullah>redis, to me, seems to involve surprisingly low amounts of fuckery, though the API does make some odd decisions here n' there!
17:47:43  * cianomaidinjoined
17:56:21  * mikealjoined
17:58:36  * Domenic_quit (Remote host closed the connection)
18:02:26  * marcello3djoined
18:10:12  <Raynos>tanepiper: Its modular
18:10:14  * mikolalysenkoquit (Ping timeout: 252 seconds)
18:28:59  * Domenic_joined
18:34:18  * shamajoined
18:37:01  * zero_coderquit (Read error: Connection reset by peer)
18:37:07  * Domenic_quit (Ping timeout: 245 seconds)
18:38:15  * cianomaidinquit (Quit: cianomaidin)
18:45:21  * esterellajoined
18:49:00  * nk109joined
18:55:46  * Domenic_joined
18:56:08  * esterellaquit (Quit: esterella)
19:02:28  * mikealquit (Quit: Leaving.)
19:02:32  * spionquit (Ping timeout: 246 seconds)
19:08:56  <ralphtheninja>tanepiper: it's in npm :) no external daemons have to be installed, just npm install and go
19:13:17  * mikealjoined
19:14:57  * defunctzombiechanged nick to defunctzombie_zz
19:19:34  * Domenic_quit (Remote host closed the connection)
19:22:58  <substack>Raynos, defunctzombie_zz: error event bugs fixed
19:23:09  <Raynos>nice :)
19:29:39  * marcello3dquit (Remote host closed the connection)
19:42:31  * Domenic_joined
19:48:52  * mikealquit (Quit: Leaving.)
19:57:25  * Domenic_quit (Remote host closed the connection)
19:58:19  <ralphtheninja>substack: can multiple hosts register with seaport on the same identifier?
19:58:52  <ralphtheninja>like server A and B and when I query the seaport I get A and B
19:59:03  <ralphtheninja>or A or B :)
20:02:30  * Domenic_joined
20:04:05  * marcello3djoined
20:10:22  * spionjoined
20:18:50  * saijanai_quit (Quit: saijanai_)
20:22:18  <spion>WHAT IS LOUDBOT?
20:22:19  <LOUDBOT>"GIVE ME A BOTTLE OF WHISKEY AND A PACK OF CIGARRETTES AND DON'T FUCKNIG TALK TO ME"
20:29:52  <substack>ralphtheninja: that is exactly how seaport works
20:30:05  <substack>a.register('beep')
20:30:08  <substack>b.register('beep')
20:30:26  <substack>c.query('beep') will be an array with a and b's records
20:32:49  <thl0>substack: I created a gist to nail down browser pack input to support sourcemaps so we can agree on it or correct it before I implement it https://gist.github.com/thlorenz/5102756
20:33:44  <tanepiper>jesusabdullah: I've met Jim Kerr
20:33:46  <thl0>substack: I also got inlined sourcemaps working in Chrome beta and up: https://github.com/thlorenz/browserify-sourcemap-poc
20:36:58  <jesusabdullah>tanepiper: forgive my ignorance, but I don't recognize the name
20:37:11  <tanepiper>jesusabdullah: singer in Simple Minds, sang that song
20:37:21  <tanepiper>DON'T YOOOOOOOUUU
20:37:22  <LOUDBOT>REBASE ALL THE THINGS
20:37:27  <tanepiper>FORGET ABOUT MEEEEEE
20:37:27  <LOUDBOT>FUCK THAT MOTHERFUCKER AM I RIGHT OR AM I RIGHT
20:37:48  <jesusabdullah>tanepiper: lol nice :D
20:39:38  * mikolalysenkojoined
20:41:26  * esterellajoined
20:53:31  * defunctzombie_zzchanged nick to defunctzombie
21:00:33  * sbpjoined
21:06:46  * esterellaquit (Quit: esterella)
21:07:19  * mikealjoined
21:13:43  * Domenic_quit (Remote host closed the connection)
21:20:35  * CryptoQuickjoined
21:24:04  * dominictarrjoined
21:26:14  <ralphtheninja>substack: ✔
21:32:37  * dominictarrquit (Quit: dominictarr)
21:32:45  <isaacs>substack: landing in 0.9.12: https://github.com/isaacs/node/commit/5a99b4fb8506dddee2228fcc7ea21f921ffa5180
21:33:35  <isaacs>substack: basically: you can set the default "destroy-after-idle" time by doing server.timeout = 12345
21:33:53  <isaacs>substack: or you can hijack the whole enterprise by doing server.setTimeout(12345, function(socket) { hadnle it })
21:34:03  <isaacs>substack: or req/res.setTimeout(..)
21:34:20  <isaacs>substack: if server, req, or res have a timeout listener, then the socket is not destroyed automaticlaly, and it's your timeout to deal with how you please.
21:34:25  <isaacs>just an event
21:34:26  <substack>yes that is much simpler!
21:34:32  <substack>what about the client api for timeouts?
21:34:38  <isaacs>substack: client api is nchanged.
21:34:41  <isaacs>*unchanged
21:34:44  <isaacs>in 0.12, we'll revisit
21:34:52  <isaacs>because the whole http stuff is getting cleaned up a lot
21:35:23  <substack>1 thing
21:35:25  <substack>setTimeout(0)
21:35:30  <substack>should turn timeouts off
21:35:34  <substack>full stop
21:35:34  <isaacs>yes, it does
21:35:45  <isaacs>unless you then do req.setTimeout(100) or something
21:35:47  <isaacs>to turn them back on
21:35:54  <substack>it doesn't in 0.8
21:35:57  <isaacs>you can already do req.socket.setTimeout(0)
21:36:06  <isaacs>ohhh, but you have to opass the cb
21:36:07  <isaacs>right
21:36:22  <isaacs>but yeah, it does now.
21:36:29  <substack>ok great
21:36:34  <substack>and about pooling
21:36:43  <isaacs>substack: yeah
21:36:53  <substack>so the reason why I keep hitting this
21:37:03  <substack>is I have a lot of streams open to stitch together http backends
21:37:11  <substack>and if I open more than 5 of these
21:37:26  <isaacs>yeah, it sure does suck, doesn't it?
21:37:32  <isaacs>5 is like the worst of all possible choices.
21:37:36  <substack>then the next time I open an http connection it just hangs until a new connection pool becomes available
21:37:39  <isaacs>you want either 1, or a zillion
21:37:43  <substack>yes
21:37:49  <substack>it is pretty much the worst possible thing
21:37:50  <isaacs>and you definitely do not ever want 5
21:37:58  <isaacs>any more or any less would be a better default.
21:38:03  <isaacs>it's the local minimum of value.
21:38:07  <substack>but it's deeper than this
21:38:25  <isaacs>also, you want ot pool sockets per-host, not just limit them
21:38:34  <substack>how it hangs at all if the number of open connections hits an upper-bound is the problem
21:38:37  <substack>it should never hang ever
21:38:39  <isaacs>and you want them kept around indefinitely, not exactly as long as they're in use.
21:38:49  <substack>no
21:39:04  <isaacs>substack: so, you're saying, we should keep opening new sockets, until you hit EMFILE?
21:39:07  <substack>yes
21:39:07  <isaacs>substack: i'd be fine with that.
21:39:10  <substack>exactly
21:39:13  <isaacs>substack: or should we hang when you hit EMFILE?
21:39:14  <substack>that'd be perfect
21:39:21  <substack>no just let EMFILE happen
21:39:28  <isaacs>yeah, that's definitely simpler.
21:39:39  <isaacs>we could have a configurable max if people wnat the throttling behavior.
21:39:45  <substack>just like tcp
21:39:47  <isaacs>set it to 0 by default or something
21:39:51  <substack>that would be ok
21:39:52  <isaacs>well, http is not tcp
21:39:57  <isaacs>there ARE more semantics in play there.
21:39:59  <substack>but I personally can't imagine myself ever turning that on
21:40:03  <isaacs>and it is good to be "well-behaved"
21:40:11  <isaacs>but people disagree about what exactly that means
21:40:21  <substack>it's a user-space problem
21:40:29  <isaacs>a lot of people have told me that they do actually want exactly 1 connection to another service, and no more.
21:40:35  <isaacs>and they want it kept alive all the time.
21:40:52  <isaacs>joyent has some crazy code to do this in our stack.
21:41:07  <substack>they could build something like that if core http took away more magic as I am advocating
21:41:10  <isaacs>like, it makes a TCP connection, then we have an agent that always passes that one same socket, and reconnects on resets.
21:41:14  <isaacs>yeah
21:41:34  <isaacs>or they could just use the API to say "limit to 1 connection per host/port"
21:41:42  <substack>those are pretty much my only 2 specific complaints about core http
21:41:45  <isaacs>whereas you'd never set that limit, and bump into EMFILE if you need to
21:41:54  <substack>fix those and http will be pretty great
21:42:12  <substack>especially with a nice streaming parser under the hood
21:42:13  <isaacs>for some situations, also, people have come to rely on a bit of throttling.
21:42:33  <isaacs>like, for instance, npm would grind to a halt if http wasn't preventing more than 5 downloads at a time.
21:42:50  <isaacs>it's kind of like a nice little built-in queue system to prevent it from trying to unpack 50 things all at the same time.
21:43:14  <substack>but it's kind of nice the same way that express is kind of nice
21:43:23  <isaacs>yeah
21:43:31  <isaacs>it's nice in the "omg really? i cna't turn this off?" kind of way
21:43:46  <isaacs>cruise control is on ALL THE TIME.
21:43:51  <isaacs>it's the best cruise control EVER!
21:44:02  <isaacs>this car doesn't even CONSIDER stopping! or going over or under 25mph!
21:44:03  <isaacs>it's great!
21:44:48  <marcello3d>ok so I like the tape API much better than mochajs---feels much cleaner and simpler, and doesn't need configuration
21:45:05  <substack>marcello3d: hooray!
21:45:12  <substack>it's because tests are actually just programs
21:45:25  <isaacs>hooray! tap is helping!
21:45:28  <marcello3d>yes, I agree
21:45:38  <marcello3d>but the output UI is crap
21:45:48  <substack>marcello3d: npm install tap; tap test/*.js
21:45:53  <substack>tap's harness runs tape tests just fine
21:45:59  <marcello3d>yea, that's ugly, too
21:46:02  <substack>since all it does is parse stdout
21:46:06  <gozala>isaacs: is there way to say I depend on the latest version published ?
21:46:10  <substack>marcello3d: you could write a "pretty" tap filter
21:46:17  <substack>that turns tap output into pretty
21:46:22  <substack>I personally prefer tap output
21:46:28  <substack>so I'm not likely to write this
21:46:34  <marcello3d>yea so my question is if that already exists
21:46:35  <gozala>something like "foo": ">=x.x.x"
21:46:43  <marcello3d>basically I want mocha's "spec" output
21:46:53  <marcello3d>just a little bit of coloring and I like the colored DIFF comparison when strings don't match
21:47:19  <substack>tape is pretty much done feature-wise
21:47:33  <marcello3d>yea, I'm not saying it needs to be part of tape
21:47:52  <isaacs>gozala: what about "foo":"latest"
21:47:56  <isaacs>gozala: or any other tag
21:48:04  <isaacs>gozala: you could also say "foo":"" since that's the default anyway
21:48:18  <isaacs>gozala: or, like you asked for, "foo":">=1.2.3"
21:48:31  <isaacs>gozala: of ocurse, that's putting a lot of trust that the API will never change on you
21:48:33  <gozala>isaacs: oh so everything has tag latest by default
21:48:34  <isaacs>but go ahead :)
21:48:48  <isaacs>gozala: yes, the "latest" tag is the last published version
21:48:55  <isaacs>(not always the highest version number)
21:48:55  <gozala>isaacs: no in this case it's compiler that compiles itself with last published version
21:49:03  <isaacs>you can also voerride this with: npm publish --tag=beta
21:49:05  <gozala>so it's what intended
21:49:07  <isaacs>and then it'll get the "Beta" tag instead
21:49:33  <gozala>isaacs: thanks
21:50:34  <marcello3d>if you're using 'latest' you probably don't want to
21:59:22  <defunctzombie>gozala: you should never depend on the latest version :)
21:59:32  <defunctzombie>you are asking for a world of pain later
22:00:46  <gozala>defunctzombie: in my case that's exactly what I need
22:00:56  <gozala>but yes I agree in general you should not
22:01:12  <gozala>defunctzombie: in my case it's language that compiles to js and compiler is in that language
22:01:20  * mikolalysenkoquit (Ping timeout: 251 seconds)
22:01:20  * CryptoQuick_joined
22:01:28  <gozala>so every new version should be compiled with a previous version of itself
22:01:47  <gozala>so I need to depend on last published version of the project itself
22:01:52  * thl0quit (Remote host closed the connection)
22:01:59  <gozala>to compile that project with last version
22:02:11  * CryptoQuickquit (Ping timeout: 240 seconds)
22:02:12  * CryptoQuick_changed nick to CryptoQuick
22:02:39  * thl0joined
22:02:42  * thl0quit (Read error: Connection reset by peer)
22:02:47  <defunctzombie>gozala: that sounds very meta
22:02:53  <gozala>It is :)
22:04:04  * thl0joined
22:04:23  * thl0quit (Read error: Connection reset by peer)
22:04:54  * thl0joined
22:05:24  * thl0quit (Read error: Connection reset by peer)
22:05:47  * thl0joined
22:06:17  * thl0quit (Read error: Connection reset by peer)
22:06:34  * thl0joined
22:06:41  * thl0quit (Read error: Connection reset by peer)
22:07:08  * thl0joined
22:07:20  * thl0quit (Read error: Connection reset by peer)
22:09:03  * thl0joined
22:09:22  * thl0quit (Read error: Connection reset by peer)
22:09:53  * thl0joined
22:10:15  * thl0quit (Read error: Connection reset by peer)
22:10:43  * thl0joined
22:11:05  * thl0quit (Read error: Connection reset by peer)
22:11:24  * thl0joined
22:14:28  * CryptoQuickquit (Quit: CryptoQuick)
22:16:49  * tilgovijoined
22:18:32  * stlsaintjoined
22:27:38  * ins0mniaquit (Ping timeout: 252 seconds)
22:30:39  * nicholasfjoined
22:31:07  * mikolalysenkojoined
22:31:21  <mbalho>what do you guys think of this crazy idea https://gist.github.com/maxogden/5103740
22:31:35  * ins0mniajoined
22:32:32  * spionquit (Ping timeout: 246 seconds)
22:33:59  * esterellajoined
22:35:16  <mbalho>the main problem i'm trying to solve is to allow modules have markup + style dependencies
22:38:35  * mikolalysenkoquit (Ping timeout: 256 seconds)
22:46:41  * wiwilliajoined
22:49:17  * mikealquit (Quit: Leaving.)
22:50:34  <kenperkins>are there plans for a wiki page similar to https://github.com/joyent/node/wiki/API-changes-between-v0.6-and-v0.8
22:51:32  <Raynos>mbalho: `fs.readFileSync`
22:51:35  <Raynos>is for markup dependencies
22:51:51  * st_lukejoined
22:52:08  <Raynos>mbalho: I also think https://github.com/dominictarr/hyperscript is a better direction
22:55:03  <mbalho>Raynos: i go back and forth on whether or not i think declaring markup in JS is a good idea or not
23:03:55  * chadskidmorequit (Ping timeout: 260 seconds)
23:06:03  * dominictarrjoined
23:06:31  <chrisdickinson>dominictarr: maybe of interest to you? npm.im/json-parse-stream
23:07:59  * Domenic_joined
23:08:06  <dominictarr>chrisdickinson: looks good
23:08:36  * sindresorhusjoined
23:09:24  * dominictarrquit (Client Quit)
23:10:58  * mikolalysenkojoined
23:13:30  * marcello3dquit (Remote host closed the connection)
23:14:11  * marcello3djoined
23:15:54  * dominictarrjoined
23:16:30  <mbalho>updated https://gist.github.com/maxogden/5103740 with moar info
23:16:35  <mbalho>dominictarr: would be keen on your thoughts
23:19:25  * marcello3dquit (Ping timeout: 252 seconds)
23:19:32  <defunctzombie>isaacs: what would it take to get you to consider "require('process');" ?
23:19:36  * mikealjoined
23:19:51  <defunctzombie>would really help the cross environment case of bundling and user education on the process global :/
23:20:08  <dominictarr>mbalho: don't have time to check that right now, about to step out, will have a look later
23:20:10  * dominictarrquit (Client Quit)
23:20:45  <defunctzombie>Raynos: can we get rid of the string err check in tryme now, also, did you get it to do what you wanted?
23:20:55  <jesusabdullah>string errs? :6
23:21:11  <Raynos>defunctzombie: I made some progress on tryme
23:21:16  <Raynos>i need to do some more tweaks
23:21:18  <Raynos>but its a good start
23:21:20  <defunctzombie>k
23:21:35  <defunctzombie>jesusabdullah: yea, small issue we discovered in module-deps, but has been fixed
23:21:54  <Raynos>mbalho: I'm starting to think fuck HTML+CSS. Canvas all the things
23:22:06  <defunctzombie>haha
23:22:20  <mbalho>Raynos: webgl++
23:22:27  <Raynos>webgl is hard
23:22:49  <mbalho>Raynos: n00b
23:24:11  <Raynos>mbalho: you had to write an abstraction layer on top of threejs to be productive :D
23:24:11  <jesusabdullah>the one thing I hate more than anything is errors that are not instances of Error
23:24:24  <jesusabdullah>that's the one thing that makes me rage hard
23:24:25  <chrisdickinson>webgl is pretty fun :D
23:24:36  <chrisdickinson>three.js makes some things easier, and other things incredibly weird and confusing
23:24:38  <Raynos>mbalho: I highly recommend you solve templates & styles orthogonally
23:24:41  <Raynos>they are two different beasts
23:25:21  <jesusabdullah>speaking of https://gist.github.com/jesusabdullah/4951769 needs a name so I can publish it
23:36:37  * jden|zzz_joined
23:37:22  * jden|zzzquit (Ping timeout: 252 seconds)
23:38:05  * yorick_quit (Remote host closed the connection)
23:39:21  * marcello3djoined
23:40:27  * mikolalysenkoquit (Ping timeout: 245 seconds)
23:41:27  <isaacs>defunctzombie: nope.
23:41:33  <isaacs>defunctzombie: it'd take a 2.0 version of node.
23:41:34  <defunctzombie>sadpanda
23:41:36  <isaacs>defunctzombie: which may never happen
23:42:10  <jesusabdullah>yeah by then everyone will realize that python is the best language for these things
23:42:15  <jesusabdullah>obvs