00:00:00  * ircretaryquit (Remote host closed the connection)
00:00:08  * ircretaryjoined
00:18:11  <dominictarr>idea: settle all module name disputes with this: https://en.bitcoin.it/wiki/Vanitygen
00:20:31  <mikeal>had to change the api
00:20:31  <mikeal>https://github.com/mikeal/broquire
00:20:43  <mikeal>gotta pass in require or else you can't resolve modules correctly
00:21:08  <mikeal>but this is so much easier than do that big browser hash to alternate files for things
00:22:21  <ralphtheninja>I'm looking for a module that handles process trees for me where dependent processes are restarted when parents are killed etc, any ideas?
00:22:36  * nicholasfquit (Ping timeout: 268 seconds)
00:23:22  <ralphtheninja>dominictarr: vanitygen is cool! means you can create 'custom' bitcoin addresses! :)
00:23:43  <dominictarr>yeah, you just pay compute.
00:23:50  <ralphtheninja>yup
00:24:03  <dominictarr>it's like the cyber version of an animal sacrifice.
00:24:11  <ralphtheninja>could use it to identify a node in a p2p system
00:24:20  <ralphtheninja>or a service
00:24:24  <dominictarr>anything
00:24:51  <ralphtheninja>sure, but you have a valid bitcoin address that you can pay to
00:24:55  * mikealquit (Quit: Leaving.)
00:24:56  <dominictarr>could even pack your module until it has your initials in the hash.
00:25:19  <dominictarr>but it's not about bit coins, it's just about hashes.
00:26:07  <dominictarr>I saw one where they made the leading characters in git log all sort in order.
00:26:32  <dominictarr>heh, maybe you could use that to stop a comments thread getting too long
00:26:44  <dominictarr>the hashes of each comment have to sort
00:26:48  * timoxleyjoined
00:27:00  <dominictarr>so it gets exponentially more expensive to generate a valid message.
00:27:08  <ralphtheninja>aaah ok hehe
00:27:36  <dominictarr>but in a year's time, computers have gotten better, so maybe you can add another message.
00:28:09  <dominictarr>it could protect us from godwin's law!
00:28:24  <ralphtheninja>I was just saying that you can use vanitygen to create valid bitcoin addresses, nothing more :)
00:29:17  <ralphtheninja>hehe not a bad idea, there are so many useful things you can do with hashes
00:29:56  <dominictarr>yeah, like bloom filters are really cool
00:31:15  <ralphtheninja>nods .. they seem to show up all over the place lately
00:33:48  * timoxleyquit (Ping timeout: 264 seconds)
00:41:38  * dguttmanjoined
00:50:10  * AvianFluquit (Remote host closed the connection)
00:55:13  * mikealjoined
01:01:03  * timoxleyjoined
01:01:05  * crankquit (Ping timeout: 255 seconds)
01:02:33  * jibayquit (Quit: Leaving)
01:05:09  * mikealquit (Ping timeout: 268 seconds)
01:05:16  * crankjoined
01:15:39  * mikealjoined
01:16:41  * timoxleyquit (Ping timeout: 245 seconds)
01:17:18  * kevino80quit (Remote host closed the connection)
01:20:39  * thl0joined
01:23:25  * cianomaidinjoined
01:27:31  * mikealquit (Quit: Leaving.)
01:27:41  * stlsaintquit (Ping timeout: 256 seconds)
01:28:06  * fallsemoquit (Ping timeout: 256 seconds)
01:28:35  * maksimlinjoined
01:28:59  <jesusabdullah>thl0: Yeah unfortunately nodejitsu had no interest in keeping browserify.jit.su running :( but the code works, you could spawn it up somewhere if you wanted to
01:29:14  <jesusabdullah>thl0: I guess I could too, I just haven't
01:29:19  <thl0>good to know
01:29:30  <jesusabdullah>thl0: Maybe I should re-rewrite it for minimalism
01:29:33  * fallsemojoined
01:29:49  <jesusabdullah>thl0: oh also if I go through a rewrite (kinda unlikely) I'd love some feature requests :)
01:30:04  <thl0>that'd be cool
01:30:20  <thl0>could you make it umd compat (https://github.com/substack/node-browserify#bbundleopts-cb)
01:31:00  <jesusabdullah>oshit yeah I'd have to rewrite it for new browserify too, it uses a really old version
01:31:01  <thl0>it should be consumable from any other module system or somehow be instructed to attach something to the window (for people still stuck in the 90s)
01:31:37  <jesusabdullah>idk what umd is or how any of that stuff works :/
01:32:09  <thl0>https://github.com/umdjs/umd
01:33:00  <thl0>I like the umd idea a lot since it allows people to be agnostic to the modulesystem/bundler they use when they choose a library they need
01:33:37  <jesusabdullah>that sounds like a whole thing though, the way the "browserify cdn" worked was that you POSTed an entry point document and anything that needed to be required had to come off npm
01:33:44  <jesusabdullah>so pretty limited
01:34:23  <jesusabdullah>https://github.com/umdjs/umd/blob/master/returnExports.js Is this what we're talking about?
01:34:23  <thl0>it would allow people who can't agree on a script loader to at least agree on how to expose their stuff so it can be used anywhere
01:34:42  * jcrugzzjoined
01:34:46  * jcrugzzquit (Client Quit)
01:35:30  <thl0>yep
01:35:51  <thl0>not ideal (since you'd still have to generate a bundle with all the dependencies)
01:35:59  * jcrugzzjoined
01:36:22  <thl0>you'd totally loose patches of those dependencies, but still better than totally limiting your users to browserify people
01:38:07  <thl0>jesusabdullah: I do that for some of my modules (i.e. recommend browserify, but offer another way to consume it) i.e.: https://github.com/thlorenz/thlorenz.com-blog/blob/master/scriptie-talkie/post.md#browserify-recommended
01:42:26  <dominictarr>some one click here and play max's game against me http://maxogden.github.io/ludum-dare-26/#
01:44:00  * no9quit (Ping timeout: 264 seconds)
01:44:47  <jez0990_>dominictarr: "you are the only one waiting..."
01:45:07  <dominictarr>mbalho: I can't place blocks!
01:47:33  <dominictarr>okay, figured it out.
01:47:57  <dominictarr>jez0990_: try again
01:48:05  <jesusabdullah>thl0: Yeah I'm not really sure how to do it better, browserify alone is fairly limiting in what you can do because it's designed to make full bundles instead of separable files
01:48:48  <jesusabdullah>thl0: I suspect there are a number of hacks though that could be leveraged though
01:49:09  <thl0>jesusabdullah: I know, we need a deoptimizer for v2 ^^ Domenic_
01:49:36  <jesusabdullah>Yeah I mean, v2 seems less limiting than v1, which is what browserify-cdn does
01:50:13  <thl0>well hopefully some of us can come up with a good solution
01:50:46  <thl0>was just throwing around ideas after I saw this lib autmatically building different versions for all different bundlers (arrgh)
01:51:04  <jez0990_>dominictarr: sorry about the disconnects... I'm having hard time avoiding the crtl+w combo!!
01:52:17  <dominictarr>3760 blocks!
01:53:45  <dominictarr>thl0: check this out: https://github.com/dominictarr/npm-browserify
01:54:15  <dominictarr>uses browserify modules to bundle each module into a bundle
01:54:27  <dominictarr>then they could be "installed" with a script loader.
01:54:33  <dominictarr>npm in the browser
01:54:54  <dominictarr>2/3 of it is ready.
01:55:35  <jesusabdullah>dominictarr: This sounds like the right thing
01:55:43  <jesusabdullah>dominictarr: keep me posted I think I might need/want this
01:55:55  <dominictarr>it's not what you'd want for pro site
01:56:15  <dominictarr>but it would be great for a coding sand box for kids
01:56:21  <dominictarr>voxels, or audio, etc
01:57:19  <dominictarr>because it doesn't care about overhead, it only cares that you can do npm.install('foo', function () { require("foo")})
01:58:07  <dominictarr>it's my bed time. catch you all later.
02:02:53  <jesusabdullah>dominictarr: Hard to say, that does enable async code loading...
02:03:48  <dominictarr>well, it will add a header that does the loading, and since it also resolves from a registry it might be largeish
02:04:09  <dominictarr>but if you had a local cash, then it mightn't matter
02:04:22  <dominictarr>depends
02:04:42  <dominictarr>it's only 2/3 fininshed, and a low priority for me.
02:10:44  <jesusabdullah>wow, actual movement on node.couchapp.js
02:10:52  <jesusabdullah>surprised, I thought it was mostly dead not gonna lie
02:11:05  <jesusabdullah>dominictarr: yeah I feel that
02:13:02  <dominictarr>mbalho: wish you could fly up at the end so you can see the huge mess you've made!
02:15:52  <thl0>anyone know a good simple json2xml, xml2json parser?
02:16:04  <thl0>no need to stream (small files)
02:16:19  <thl0>also xml has no attributes, so simple solution should work
02:19:10  * dominictarrquit (Quit: dominictarr)
02:19:35  * mikealjoined
02:24:05  * mikealquit (Ping timeout: 268 seconds)
02:29:37  * thl0quit (Remote host closed the connection)
02:33:32  * ralphtheninjaquit (Ping timeout: 260 seconds)
02:51:34  * mikealjoined
02:56:01  * mikealquit (Ping timeout: 246 seconds)
02:59:50  * thatguydanjoined
03:13:20  * mikealjoined
03:42:55  * cianomaidinquit (Quit: cianomaidin)
03:44:14  * ryanseddonjoined
04:41:38  * maksimlinquit (Quit: ChatZilla 0.9.90 [Firefox 20.0/20130329030832])
04:42:26  * dguttmanquit (Quit: dguttman)
04:48:00  * dguttmanjoined
04:59:35  * mikolalysenkoquit (Ping timeout: 260 seconds)
05:22:33  * fallsemoquit (Quit: Leaving.)
05:39:49  * shuaibjoined
05:43:36  <juliangruber>isaacs is fixing coffeescript, THIS WILL BE EPIC
05:44:19  <jesusabdullah>fixing coffeescript, eh? I didn't know it was broken
05:45:01  <juliangruber>jesusabdullah: https://github.com/isaacs/coffee-script/commit/8302a1577f1660e54b6fc434a53ef44bd6cac109
05:46:09  <jesusabdullah>idk dude, seems kinda unnecessary to me
05:46:27  <jesusabdullah>they should just remove require.extensions if it's such a hassle
05:46:31  <juliangruber>coffeescript?
05:46:40  <jesusabdullah>no, "fixing" coffeescript
05:47:03  <juliangruber>yeah I think so too
05:47:08  <juliangruber>but this way it will be more fun
05:48:40  <jesusabdullah>at some point I kind of lost interest in having opinions
05:48:42  <jesusabdullah>is that bad?
05:48:53  * jcrugzzquit (Ping timeout: 248 seconds)
05:52:11  * dguttmanquit (Quit: dguttman)
06:03:10  * mikealquit (Quit: Leaving.)
06:15:54  * jcrugzzjoined
06:23:03  * jcrugzzquit (Ping timeout: 256 seconds)
06:27:11  <Raynos>dominictarr: i dont use nested tests
06:27:57  <jesusabdullah>I nest the shit out of tests
06:28:00  <jesusabdullah>if it makes sense to
06:29:45  <Raynos>i just use multiple files
07:06:26  * wolfeidauquit (Remote host closed the connection)
07:36:16  * wolfeidaujoined
07:37:28  * nicholasfjoined
07:38:38  * nicholasfquit (Remote host closed the connection)
07:39:12  * nicholasfjoined
07:50:08  * thatguydanquit (Quit: thatguydan)
07:50:14  <rvagg>CAPSLOCKSCRIPT still uses require.extensions, for great benefit
07:50:31  * cianomaidinjoined
07:59:31  <jesusabdullah>^__^
08:31:03  * dominictarrjoined
08:35:23  * stagasjoined
08:35:37  * cianomaidinquit (Quit: cianomaidin)
08:56:02  * mcollinajoined
09:42:00  * kevino80joined
09:45:05  * jcrugzzjoined
09:46:22  * kevino80quit (Remote host closed the connection)
09:49:37  * jcrugzzquit (Ping timeout: 245 seconds)
09:53:21  * timoxleyjoined
10:08:55  * no9joined
10:10:54  * dominictarrquit (Quit: dominictarr)
10:22:36  * no9quit (Ping timeout: 272 seconds)
10:27:54  * ralphtheninjajoined
10:28:01  * ralphtheninjaquit (Client Quit)
10:28:10  * ralphtheninjajoined
10:31:11  * thl0joined
10:41:54  * dominictarrjoined
11:07:54  * timoxleyquit (Quit: Computer has gone to sleep.)
11:25:43  * timoxleyjoined
11:37:21  * no9joined
11:44:26  * no9quit (Ping timeout: 252 seconds)
12:21:19  * thl0quit (Remote host closed the connection)
12:33:22  * kevino80joined
13:00:16  * niixjoined
13:03:09  * fallsemojoined
13:08:05  * timoxleyquit (Quit: Computer has gone to sleep.)
13:10:56  * shuaibquit (Quit: Computer has gone to sleep.)
13:14:15  * thl0joined
13:25:11  * fallsemoquit (Quit: Leaving.)
13:29:44  * no9joined
13:33:22  * AvianFlujoined
13:37:41  * niixquit (Ping timeout: 256 seconds)
13:42:35  * shuaibjoined
13:55:25  * jibayjoined
13:58:40  * thatguydanjoined
14:08:13  * defunctzombie_zzchanged nick to defunctzombie
14:13:24  <defunctzombie>does - 0.10 work in travis.yml now?
14:13:29  <defunctzombie>or do you still have to quote it?
14:13:58  <dominictarr>that is a yaml thing, so probably.
14:17:54  * fallsemojoined
14:18:25  <substack> still have to quote it
14:20:56  <defunctzombie>do you guys think this is a reasonable way to support domains? https://github.com/ncb000gt/node.bcrypt.js/commit/1769698047d8c18551efbc167dbf31f31dfd75eb
14:21:12  <defunctzombie>I don't see process.domain documented anywhere actually
14:23:01  <defunctzombie>actually, after thinking about this
14:23:03  <defunctzombie>I don't like this change
14:27:03  <defunctzombie>substack: https://github.com/shtylman/node-process/pull/3
14:27:22  <defunctzombie>also https://github.com/shtylman/node-process/pull/4
14:27:29  <defunctzombie>the first seems fair game
14:27:41  <defunctzombie>although, one could argue it could try to close the window hahaa
14:30:46  * mcollina_joined
14:32:50  * nicholasfquit (Ping timeout: 252 seconds)
14:34:02  * mcollinaquit (Ping timeout: 272 seconds)
14:34:02  * mcollina_changed nick to mcollina
14:36:41  * no9quit (Ping timeout: 268 seconds)
14:39:03  <juliangruber>defunctzombie: it should somehow make the browser not execute js anymore
14:39:33  * defunctzombiechanged nick to defunctzombie_zz
14:49:05  * no9joined
14:50:47  <dominictarr>ralphtheninja: browserify(npm) + webRTC(levelup/scuttlebutt) = ???
14:52:26  * mikolalysenkojoined
14:53:53  * defunctzombie_zzchanged nick to defunctzombie
14:55:01  <ralphtheninja>dominictarr: = some crazy shit :)
14:55:12  <dominictarr>crazy idea of the last 10 minutes: replace tar with a json "blob"
14:55:22  <dominictarr>and maybe zip it
14:55:46  <dominictarr>the zip will take out all the extra crap from the json, anyway!
14:56:02  <ralphtheninja>aye
14:56:31  <dominictarr>it's what the achients would have done, if they had json.
14:56:40  <ralphtheninja>hahaha
14:57:12  <dominictarr>then we can get consistent hashes
14:58:16  <ralphtheninja>where in the architecture are your thoughts right now?
14:58:36  <ralphtheninja>what does the json blob contain?
14:59:21  <defunctzombie>substack: so I want to change browser-resolve in a radical way
15:00:27  <defunctzombie>substack: I want to remove all of the browser shims/core module things and make that an option you pass to browser-resolve()
15:00:39  <defunctzombie>substack: that way all browser resolve does, it do the browser field stuffs
15:00:58  <defunctzombie>substack: and any packagers, bundlers, etc can use whatever shim set they want
15:01:09  <defunctzombie>without waiting on browser-resolve to have the changes/fixes
15:02:20  <dominictarr>ralphtheninja: it looks like:
15:02:51  <dominictarr>{"package.json": {"source": …, stat: …}}
15:03:08  <dominictarr>stat is optional, but could be used to perserve permissions, etc
15:03:43  <dominictarr>could also set encoding, so that binary files are base64
15:03:53  <ralphtheninja>so it's only package.json data?
15:04:13  <dominictarr>replace "package.json" with any file path.
15:04:23  <ralphtheninja>
15:04:32  <dominictarr>this is just what module-deps outputs
15:05:22  <ralphtheninja>so it's basically some meta data about a file resource
15:05:28  <dominictarr>yeah
15:05:31  <ralphtheninja>cool
15:05:46  <dominictarr>and it's in json, instead of tar
15:05:59  <ralphtheninja>so .. and this metadata is stored in levelup?
15:06:01  <ralphtheninja>nods
15:06:14  <dominictarr>"Tape Archive Format"
15:06:41  <ralphtheninja>you could have optional zip, the "source" could be zipped if the meta data says it is
15:06:45  <substack>dominic "tape archive format" tarr
15:06:50  <dominictarr>not sure which is more absurd, that this json idea might make sense, or that we still use Tape Archive Format
15:06:50  <ralphtheninja>so you could skip zipping/unzipping small files
15:07:15  <dominictarr>you'd probably want to zip the whole thing
15:07:34  <dominictarr>because you'd have to base64 the zip, otherwise.
15:08:22  * tmcwjoined
15:08:53  <ralphtheninja>dominictarr: and the json blobs are stored in levelup?
15:09:18  <ralphtheninja>I'm asking stupid questions right now, but just want to get a mental picture of what's going on where
15:09:48  <dominictarr>store them wherever you like.
15:09:54  * fotoveritequit (Quit: fotoverite)
15:10:02  <dominictarr>not necessarily related to previous idea.
15:10:37  <ralphtheninja>right
15:12:22  * AvianFluquit (Remote host closed the connection)
15:12:27  <ralphtheninja>let's go the other way instead, who creates the json blobs?
15:12:43  <isaacs>jesusabdullah: removing require.extensions would be way too destabilizing.
15:12:47  <ralphtheninja>or when are they created rather
15:12:56  <isaacs>jesusabdullah: i think it's stupid, but the fact is, a lot of people DO use coffeescript that way
15:13:13  <isaacs>jesusabdullah: jashkenas has to remove it first. then when no one's using it, fine, we can remove it.
15:13:20  <isaacs>jesusabdullah: but that'll probably not happen in time for 1.0
15:13:59  <dominictarr>ralphtheninja: it would just be a tool, jsar, or a lib, which could turn a directory into a file.
15:14:36  <dominictarr>isaacs: what if npm packed it's tarballs with consistent mtime (etc) so it always hashed the same?
15:14:57  <dominictarr>oh, except you'd have to not add anything to the package.json
15:16:09  <ralphtheninja>dominictarr: definitely a good building block
15:16:46  <isaacs>dominictarr: right.
15:16:55  <isaacs>dominictarr: the answer is to rewite that bit so that it knows about streams.
15:17:06  <isaacs>dominictarr: any other change will rely on that change anyway
15:17:28  <dominictarr>right - I had a quick look - but it's like 12k lines!
15:17:31  <isaacs>dominictarr: usually it's best to make small changes, but there are some hills you can't nudge your way up
15:17:37  <isaacs>dominictarr: yeah, exactly :)
15:17:41  * mcollina_joined
15:17:52  <isaacs>it'd be like a week or two of work for me
15:17:58  <isaacs>since i'm really familiar with it
15:18:00  <dominictarr>maybe approach it so that normal module are installed the new way
15:18:08  <isaacs>someone not so familiar with it, working part time on it, months easily
15:18:10  <dominictarr>and falls back to the old way if it's someting else
15:18:29  <isaacs>though, actually, you wouldn't have to rewrite all the same code.
15:18:32  <isaacs>the rewrite should be smaller.
15:18:42  <isaacs>it's doing a lot of unnecessary shit in that code.
15:18:52  <dominictarr>what needs to happen apart from downloading a file, and then dropping it somewhere?
15:19:00  <ralphtheninja>perhaps that's why it's 12k lines :)
15:19:04  <isaacs>yep
15:19:24  * mcollinaquit (Ping timeout: 264 seconds)
15:19:25  * mcollina_changed nick to mcollina
15:20:04  <isaacs>dominictarr: i'd like it to stream thusly: (request to registry) -> ((cache), (tar unpack)->(target folder))
15:20:30  <isaacs>dominictarr: if the tarball is in the cache, then just do (cache)->(tar unpack)->(target folder)
15:20:56  <isaacs>dominictarr: for publishing, it should stream: (target folder)->(tar pack)->((cache), (registry PUT))
15:20:59  <dominictarr>so, currently, it also changes the package.sjon
15:21:04  <isaacs>yeah
15:21:10  <dominictarr>is that necessary?
15:21:15  <isaacs>yes
15:21:30  <isaacs>i want fstream-npm to normalize the package data
15:21:31  <dominictarr>you need that when you install, later?
15:21:43  <isaacs>and it should rewrite the package.json when it's unpacking it later.
15:21:50  <isaacs>so that we know where it came from, the shasum we found, etc.
15:22:07  <isaacs>mostly, i just want to guaratnee that the data isn't idiotic
15:22:25  <dominictarr>what uses the extra data, like _from?
15:22:39  <dominictarr>and the bundled readme?
15:23:35  <juliangruber>dominictarr: the npm website i think
15:24:08  <dominictarr>juliangruber no, this is added to the tarballs before it's put in the cache.
15:24:28  <dominictarr>www already has that, cause it's in the registry.
15:25:21  <isaacs>dominictarr: it's used mostly by shrinkwrap
15:25:31  <isaacs>dominictarr: the thing that sucks is that the checksum changes.
15:25:38  <isaacs>dominictarr: so shrinkwrap can't shrink as tightly
15:26:10  <isaacs>dominictarr: we don't add _from and _resolved to the tarball
15:26:13  <isaacs>dominictarr: that's added at install time
15:26:35  <dominictarr>okay, so if shrink wrap worked differently, it would not need that stuff?
15:27:14  <isaacs>hahah, no, shrinkwrap needs that stuff, that stuff is not the problem.
15:27:29  <isaacs>the problem is that we unpack and re-pack the tarballs repeatedly, which is dumb and insecure
15:27:39  <dominictarr>yes
15:27:59  <isaacs>if we did the streaming approach detailed above, it'd be trivial to fix shrinkwrap to be checksum-secure
15:28:05  <dominictarr>so, what does get added to the package.json before the first repack?
15:28:14  <dominictarr>anything?
15:28:14  <isaacs>we just normalize it
15:28:19  <isaacs>(or,ought to, if we don't0
15:28:27  <isaacs>read-package-json does that
15:28:30  <dominictarr>normalize?
15:29:25  <isaacs>so if you have: "repository":"git://github.com/user/project" then you'll get "repository":{"type":"git","url":"git://github.com/user/project"},"bugs":{"url":"https://github.com/user/project/issues"}
15:29:30  <isaacs>that kind of think
15:29:36  * mikolalysenkoquit (Ping timeout: 258 seconds)
15:29:43  <dominictarr>right - you could just do that on read, instead.
15:29:44  <isaacs>so that later, when we read the data, it's simpler.
15:29:49  <isaacs>sure, or that.
15:29:56  <isaacs>but making data consistent yields benefits
15:29:59  <isaacs>easier to run views on teh db, etc.
15:30:18  <dominictarr>sure, well, do that prepublish
15:31:02  <isaacs>not sure what the difference is
15:31:10  <isaacs>i don't want to muck with the actual package.json in source control
15:31:18  <isaacs>i just want to make it look like how i interpret it, in the registry db
15:31:29  <dominictarr>no, do it to the side, if you have to.
15:31:37  <isaacs>not sure what that menas
15:31:39  <isaacs>"to the side"?
15:31:46  <dominictarr> /tmp
15:31:55  <isaacs>the point of this is to get rid of any reliance on a tmp dir.
15:31:58  <isaacs>there's really no need for it
15:32:01  <isaacs>and it's the problem.
15:32:35  <isaacs>the cache folder should be full of tarballs and json downloaded from the registry, and nothing else should be necessary at all.
15:32:48  <dominictarr>yes
15:33:04  <dominictarr>and it should have the same hash as the registry says.
15:33:43  <isaacs>yep.
15:33:53  <isaacs>that's what my plan will give us
15:33:59  <dominictarr>cool.
15:34:03  <ralphtheninja>awesome plan! :)
15:34:06  <isaacs>:D
15:34:20  <isaacs>it's mostly designed around the constraint of not having streaming tar parsing.
15:34:21  <dominictarr>what thing(s?) calls into lib/cache.js
15:34:27  <isaacs>dominictarr: too many!
15:34:40  <isaacs>dominictarr: so, that's another thing... publish should be 1 single atomic (large) PUT
15:34:49  <dominictarr>agree
15:34:53  <isaacs>dominictarr: with the tarball as a base64 inline attachment
15:34:59  <dominictarr>can you do that in couchdb?
15:35:03  <isaacs>dominictarr: yes
15:35:07  <isaacs>in fact, couchdb prefers it that way :)
15:35:10  <dominictarr>right
15:35:58  <ralphtheninja>isaacs: is there something special with _inline_ attachment?
15:35:58  <dominictarr>isaacs: so let me rephrase my last question
15:36:10  <isaacs>so, what i'm going to do is: (folder)->(tar pack)->((cache), {PUT /url "{start of json", (base64 encoder), "end of json}")
15:36:30  <dominictarr>what is the interface that cache exposes
15:36:30  <isaacs>and also, be tracking the checksum, and add that after the base64 data
15:36:44  <defunctzombie>substack: https://github.com/shtylman/node-browser-resolve/tree/remove-shims
15:36:46  <isaacs>ralphtheninja: you just have to structure the object properly
15:36:49  <defunctzombie>substack: this is what I am thinking
15:36:57  <dominictarr>ralphtheninja: it's somewhat like the idea I was talking about 10 minutes ago
15:37:12  <isaacs>dominictarr: the wrong interface :)
15:37:23  <ralphtheninja>dominictarr isaacs ✔
15:37:24  <dominictarr>isaacs: similar
15:37:27  <defunctzombie>substack: would mean we need to move the shims back to browserify codebase (or some other module), but I think in browserify makes more sense
15:39:16  * jcrugzzjoined
15:41:13  * jcrugzz_joined
15:42:03  * kevino80quit (Remote host closed the connection)
15:44:31  * jcrugzzquit (Ping timeout: 268 seconds)
15:44:31  * jcrugzz_changed nick to jcrugzz
15:44:53  <dominictarr>isaacs: publish is in cache.js too?
15:46:21  * mikolalysenkojoined
15:49:25  * defunctzombiechanged nick to defunctzombie_zz
15:51:02  <dominictarr>isaacs: a module for the one round trip doc + attachment in couchdb needs to exist.
15:53:42  * dguttmanjoined
15:58:26  <substack>defunctzombie_zz: this sounds like more work with an unclear upside
16:11:00  * jcrugzzquit (Ping timeout: 264 seconds)
16:17:59  * jcrugzzjoined
16:22:06  * defunctzombie_zzchanged nick to defunctzombie
16:22:47  <defunctzombie>substack: the upside is that browser-resolve no longer is responsible for all this "compat" shim stuff
16:22:49  <defunctzombie>it just supports resolution and browser field
16:22:54  <isaacs>dominictarr: correct
16:23:06  <isaacs>dominictarr: riht now, everything just blindly adds to cache, and then assumes it's in the cahce, and pulls from there
16:23:17  <defunctzombie>substack: basically, when a shim is updated, I don't think browser-resolve should be the place that has to publish new versions
16:23:29  <dominictarr>isaacs: so, this is pretty much the heart of npm
16:23:41  <defunctzombie>substack: browser resolve just implements an algo to handle browser field, but provide compat layers, etc
16:24:13  <defunctzombie>substack: this would let modules like browserify have better control over what shims they use yet still benefiting from the browser resolve module
16:24:19  <isaacs>dominictarr: yes.
16:24:29  <isaacs>dominictarr: i would like to rip out npm's heart, and replace it with a better robot
16:24:49  <dominictarr>yes
16:44:55  * niixjoined
16:46:08  * tmcwquit (Remote host closed the connection)
16:52:10  <thl0>jden: using your minq module, how do I close the db with it?
16:56:25  * thatguydanquit (Quit: thatguydan)
16:56:53  * shamajoined
17:03:32  * AvianFlujoined
17:07:04  * shuaibquit (Ping timeout: 252 seconds)
17:08:36  * shuaibjoined
17:12:26  <defunctzombie>substack: has the server testing stuff for testling changed?
17:12:41  <substack>nope
17:15:06  * jxsonjoined
17:15:50  <chrisdickinson>defunctzombie: +1, this would also make it easy to replace certain shims (buffers)
17:15:57  <chrisdickinson>which would be of great use to me :)
17:16:09  * tmcwjoined
17:21:21  * niixquit (Remote host closed the connection)
17:34:57  * dguttmanquit (Quit: dguttman)
17:51:09  * cianomaidinjoined
17:52:32  * shuaibquit (Ping timeout: 252 seconds)
17:54:38  * shuaibjoined
18:05:25  * dguttmanjoined
18:16:29  * jxsonquit (Ping timeout: 256 seconds)
18:27:32  * kevino80joined
18:29:49  * jcrugzzquit (Ping timeout: 246 seconds)
18:36:17  * tilgovijoined
18:40:30  * cianomaidinquit (Quit: cianomaidin)
18:50:14  * cianomaidinjoined
18:52:59  * jxsonjoined
18:54:57  * niixjoined
19:09:45  * defunctzombiechanged nick to defunctzombie_zz
19:22:22  * mcollinaquit (Quit: mcollina)
19:22:42  * cianomaidinquit (Quit: cianomaidin)
19:23:01  * thatguydanjoined
19:25:19  * jcrugzzjoined
19:28:44  * thatguydanquit (Quit: thatguydan)
19:35:55  * shuaibquit (Ping timeout: 252 seconds)
19:38:39  * cianomaidinjoined
19:38:50  * jxsonquit (Remote host closed the connection)
19:54:01  <dominictarr>hmm, I wrote this thing
19:54:36  <dominictarr>but if feel like somehow I missed a few hours of debugging somewhere
19:55:01  <dominictarr>but it hasn't happened
19:55:30  <dominictarr>strange feeling that it could strike at anytime, but all the tests are passing.
20:01:26  * defunctzombie_zzchanged nick to defunctzombie
20:01:47  * shuaibjoined
20:05:18  * timoxleyjoined
20:05:42  * timoxleyquit (Client Quit)
20:13:47  * mikolalysenkoquit (Ping timeout: 245 seconds)
20:14:56  * shuaibquit (Ping timeout: 252 seconds)
20:16:20  * shuaibjoined
20:18:39  * tilgoviquit (Remote host closed the connection)
20:20:54  * tilgovijoined
20:22:59  * ins0mniajoined
20:27:02  * no9quit (Ping timeout: 252 seconds)
20:32:34  * ins0mniaquit (Ping timeout: 240 seconds)
20:32:55  * shuaibquit (Ping timeout: 264 seconds)
20:33:29  * cianomaidinquit (Quit: cianomaidin)
20:34:16  * shuaibjoined
20:39:09  * no9joined
20:39:41  * niixquit (Remote host closed the connection)
20:41:35  * jxsonjoined
20:42:39  * jxsonquit (Remote host closed the connection)
20:43:13  * jxsonjoined
20:59:21  * tmcwquit (Remote host closed the connection)
21:03:24  * mikolalysenkojoined
21:05:02  * tmcwjoined
21:07:37  * yorickjoined
21:24:34  * FireFlyjoined
21:25:47  * defunctzombiechanged nick to defunctzombie_zz
21:27:32  * no9quit (Ping timeout: 252 seconds)
21:34:18  * yorickquit (Remote host closed the connection)
21:40:31  * no9joined
22:01:23  <jesusabdullah>you guys seen ryan stevens kickin' 'round lately?
22:04:39  * kevino80quit (Remote host closed the connection)
22:10:28  * mcollinajoined
22:15:54  * stagasquit (Read error: Connection reset by peer)
22:18:47  * shuaibquit (Ping timeout: 245 seconds)
22:36:21  * wolfeidauquit (Remote host closed the connection)
22:48:13  * thl0quit (Remote host closed the connection)
22:57:45  * wolfeidaujoined
23:03:58  * shuaibjoined
23:15:45  * thl0joined
23:23:58  * thl0quit (Remote host closed the connection)
23:25:00  * mcollinaquit (Quit: mcollina)
23:25:58  * tmcwquit (Remote host closed the connection)
23:29:36  <jesusabdullah>dominictarr: My 'rents just bought pigs
23:30:00  <dominictarr>yeah, grew up on a farm too.
23:30:35  <jesusabdullah>hmmm
23:31:49  * defunctzombie_zzchanged nick to defunctzombie
23:34:20  <substack>tending to the server farm, raising chickens and plowing fields
23:34:40  <defunctzombie>wut
23:35:44  <substack>imagining a dominictarr cyberhobo farm
23:36:01  <defunctzombie>I am a bit scared
23:36:02  <substack>getting some bytes from the iostream
23:36:03  <jesusabdullah>solar powered feeders?
23:36:50  <dominictarr>send the quadcopter off to round up the sheep
23:38:15  <jesusabdullah>indeed
23:40:44  * tilgoviquit (Remote host closed the connection)
23:41:37  * mikealjoined
23:42:10  <mikeal>i'm doing some file concatenation before i output browserify
23:42:23  <mikeal>and it's breaking sourcemaps
23:42:32  <mikeal>anything I can change to stop that?
23:43:54  <substack>that's really too broad of a thing for me to offer a specific recommendation
23:44:02  <substack>I didn't even write the source map stuff that was thl0
23:44:26  <mikeal>strangely, its only an issue in Chrome, Firefox is fine
23:47:10  <jesusabdullah>what if you turn off sourcemaps?
23:47:57  <substack>or what if you don't do hacky concatenation steps?
23:48:14  <substack>hacky things tend to break other things
23:48:27  <jesusabdullah>is concatenation really all that hacky?
23:51:15  <dominictarr>just put the thing you want to require inside a module.exports = function () {...
23:51:20  <dominictarr>and then require it
23:52:18  <mikeal>dominictarr: that won't work
23:52:35  <mikeal>i need to stick a js library that is not a node library in front
23:53:08  <dominictarr>so, it assigns to window or something?
23:53:10  <substack>so there's your problem
23:53:15  <dominictarr>you can require that
23:53:22  <substack>that doesn't work with how sourcemap offsets work
23:53:26  <mikeal>much worse, it's a thing written in component that was generated ahead of time
23:53:48  <substack>if you want to do that you'll need to parse the source map and add in the appropriate offsets
23:53:53  <dominictarr>it's a component bundle?
23:54:04  <substack>if it's component just rewrite it to use brfs
23:54:09  <dominictarr>or concat it after?
23:54:19  <jesusabdullah>or ditch sourcemaps
23:54:30  <dominictarr>two files?
23:54:32  <mikeal>sourcemaps make debugging not aweful
23:54:58  <mikeal>has to be before, because one of the files in browseifying needs it on the window
23:55:02  <substack>but you can't have them if you want concatenation in the same file
23:55:06  <substack>just use 2 script tags
23:55:08  <substack>pow done
23:55:20  <defunctzombie>mikeal: serve it separately?
23:55:26  <defunctzombie>substack: +1
23:55:55  <substack>if you have script tags on that is a massive payload hit anyways
23:56:01  <substack>*source maps
23:56:04  <mikeal>how big is the difference between sourcemaps that are generated as a different file from those that are embedded in the same file?
23:58:39  * thl0joined