00:01:56
| * tphummel | quit (Quit: tphummel) |
00:19:37
| * AvianFlu | quit (Remote host closed the connection) |
00:24:27
| * ryan_stevens | quit (Quit: Leaving.) |
00:26:18
| * ryan_stevens | joined |
00:32:44
| * yug__ | joined |
00:33:51
| <yug__> | when will you update the browsers? |
00:34:02
| <yug__> | they are pretty old |
00:35:10
| <yug__> | anyone here? |
00:39:04
| * paul_irish | changed nick to paul_irish_ |
00:42:48
| <pkrumins> | yug__: i started updating them yesterday |
00:42:51
| <pkrumins> | yug__: will finish soon |
00:44:57
| <yug__> | soon like a week or a day? |
00:45:00
| <yug__> | and regardless |
00:45:09
| <yug__> | how does the srvice work |
00:45:15
| <yug__> | i do not really understand |
00:45:30
| <yug__> | can i run like 1000 browsers together ? |
00:45:56
| <pkrumins> | tomorrow |
00:46:22
| <pkrumins> | no you can run 1 browser at a time |
00:47:51
| <yug__> | i see |
00:47:56
| <yug__> | that does not help me |
00:47:59
| <yug__> | thanks anyway |
00:49:13
| <yug__> | but maybe you know of something i can do |
00:49:21
| <yug__> | i need to make like a 100 computers |
00:49:28
| <yug__> | go to my url at the same time |
00:49:42
| <yug__> | and stay there for like 10 minutes |
00:49:45
| <dools> | is this for load testing? |
00:49:49
| <dools> | there are other products that do that for you |
00:49:57
| <pkrumins> | yeah we dont do load testing |
00:50:01
| <pkrumins> | try browsermob.com |
00:50:30
| <dools> | swarm is one i've heard of but not used: http://swarm.minjar.com/ |
00:52:50
| <yug__> | it's not exactly load testing |
00:53:02
| <yug__> | i need the computer to stay on the website for an hor |
00:53:04
| <yug__> | hour |
00:53:10
| <yug__> | it's an algorithm test |
00:54:23
| <yug__> | but i need also the ui to work |
00:54:28
| <yug__> | because they are related |
00:54:48
| <yug__> | the server performance depends on the client |
00:56:34
| <rowbit> | Hourly usage stats: [developer: 1, free: 36] |
01:19:47
| * AvianFlu | joined |
01:24:41
| * urlwolf | quit (Quit: Konversation terminated!) |
01:33:03
| <rowbit> | /!\ ATTENTION: (default-local) [email protected] successfully signed up for developer browserling plan ($20). Cash money! /!\ |
01:33:03
| <rowbit> | /!\ ATTENTION: (default-local) paid account successfully upgraded /!\ |
01:39:22
| <dools> | au! |
01:39:23
| <dools> | reprasent |
01:43:15
| * jibay | quit (Quit: Leaving) |
01:52:01
| <pkrumins> | 197. |
01:56:34
| <rowbit> | Hourly usage stats: [developer: 4, free: 47] |
02:27:46
| * yug__ | quit (Ping timeout: 240 seconds) |
02:32:43
| * tilgovi | quit (Remote host closed the connection) |
02:56:14
| * shykes | changed nick to zz_shykes |
02:56:34
| <rowbit> | Hourly usage stats: [developer: 3, free: 14] |
03:01:07
| * munro | quit (*.net *.split) |
03:06:33
| * munro | joined |
03:16:40
| * mike-d | quit (Quit: mike-d) |
03:25:31
| * wiwillia | joined |
03:29:34
| <Raynos> | substack: https://github.com/ianb/doctestjs#doctestjs |
03:29:48
| <Raynos> | substack: I want to build somethign similar. What should I use to parse JS? |
03:34:45
| * ryan_stevens | quit (Quit: Leaving.) |
03:50:46
| <Raynos> | isaacs, mikeal, substack: Should your entire test suite run in a single process or one process per test? |
03:52:42
| * shuaib | quit (Ping timeout: 252 seconds) |
03:55:13
| * shuaib | joined |
03:56:34
| <rowbit> | Hourly usage stats: [developer: 0, free: 40] |
03:59:49
| * tomshreds | quit (Quit: Leaving...) |
04:05:02
| * ryan_stevens | joined |
04:09:57
| <AvianFlu> | I just called this channel "streamtopia" |
04:10:04
| <AvianFlu> | I THOUGHT YOU GUYS WOULD WANT TO KNOW |
04:10:05
| <LOUDBOT> | MAYBE YOU JUST AREN'T SMART ENOUGH TO COMPREHEND THE SHEER BLINDING AND OVER POWERING LOGIC |
04:16:09
| * wiwillia | quit (Ping timeout: 252 seconds) |
04:27:40
| * wiwillia | joined |
04:55:53
| * st_luke_ | joined |
04:55:53
| * st_luke | quit (Disconnected by services) |
04:56:00
| * st_luke_ | changed nick to st_luke |
04:56:23
| * st_luke_ | joined |
04:56:34
| <rowbit> | Hourly usage stats: [developer: 0, free: 6] |
04:59:56
| * wiwillia | quit (Ping timeout: 240 seconds) |
05:18:42
| * zz_shykes | changed nick to shykes |
05:55:02
| * st_luke | quit (Remote host closed the connection) |
05:56:34
| <rowbit> | Hourly usage stats: [developer: 0, free: 15] |
06:51:35
| <Raynos> | You know what would be awesome |
06:51:37
| <Raynos> | repl stream! |
06:51:52
| <Raynos> | fs.createReadStream(file).pipe(Repl()).pipe(process.stdout)! |
06:56:34
| <rowbit> | Hourly usage stats: [developer: 0, free: 22] |
07:01:28
| * shuaib | quit (Ping timeout: 240 seconds) |
07:02:14
| * thatguydan | joined |
07:03:14
| * shuaib | joined |
07:04:57
| * shuaib | quit (Client Quit) |
07:18:22
| * shykes | changed nick to zz_shykes |
07:47:58
| * mikeal | quit (Quit: Leaving.) |
07:56:34
| <rowbit> | Hourly usage stats: [developer: 1, free: 47] |
08:09:27
| * AvianFlu | quit (Remote host closed the connection) |
08:18:39
| * thatguydan | quit (Quit: thatguydan) |
08:28:16
| * zz_shykes | changed nick to shykes |
08:33:31
| * shykes | changed nick to zz_shykes |
08:56:34
| <rowbit> | Hourly usage stats: [developer: 1, free: 49] |
08:59:18
| * stlsaint | quit (Ping timeout: 244 seconds) |
09:01:11
| * stlsaint | joined |
09:01:49
| * stlsaint | quit (Changing host) |
09:01:49
| * stlsaint | joined |
09:03:03
| * thatguydan | joined |
09:24:11
| * mikeal | joined |
09:32:46
| * ryan_stevens | quit (Quit: Leaving.) |
09:39:44
| * thatguydan | quit (Quit: thatguydan) |
09:40:43
| * mikeal | quit (Ping timeout: 256 seconds) |
09:47:50
| <mbalho> | paul_irish_: can you get canary on android? or chromium? |
09:52:43
| * jibay | joined |
09:56:34
| <rowbit> | Hourly usage stats: [developer: 5, free: 54] |
10:56:34
| <rowbit> | Hourly usage stats: [developer: 4, free: 69] |
11:56:34
| <rowbit> | Hourly usage stats: [developer: 4, free: 63] |
12:56:34
| <rowbit> | Hourly usage stats: [developer: 6, free: 49] |
13:20:54
| * AvianFlu | joined |
13:28:51
| * thatguydan | joined |
13:29:47
| * wiwillia | joined |
13:33:31
| * thatguydan | quit (Ping timeout: 264 seconds) |
13:34:01
| * thatguydan | joined |
13:54:42
| * tomshreds | joined |
13:56:34
| <rowbit> | Hourly usage stats: [developer: 3, free: 60] |
14:02:19
| * thatguydan | quit (Read error: Connection reset by peer) |
14:03:32
| * thatguydan | joined |
14:04:54
| * antix_ | quit (Read error: Connection reset by peer) |
14:13:04
| * wiwillia | quit (Ping timeout: 256 seconds) |
14:14:52
| <isaacs> | Raynos: depends. |
14:15:06
| <isaacs> | Raynos: tap runs one process per file |
14:15:15
| <isaacs> | Raynos: but one file can have more than one test in it |
14:18:42
| <isaacs> | new-streams are proceeding apace in node-core. fs and zlib are implemented on streams2. |
14:18:51
| <isaacs> | net is the scary one, though. |
14:20:50
| * rannmann | joined |
14:20:50
| * rannmann | quit (Changing host) |
14:20:50
| * rannmann | joined |
14:24:43
| <pkrumins> | this is cool http://en.wikipedia.org/wiki/Billion_laughs |
14:34:04
| * wiwillia | joined |
14:45:19
| * tomshreds | quit (Ping timeout: 245 seconds) |
14:56:34
| <rowbit> | Hourly usage stats: [developer: 4, free: 47] |
15:01:18
| * st_luke_ | changed nick to st_luke |
15:03:39
| * thatguydan | quit (Ping timeout: 245 seconds) |
15:04:04
| * thatguydan | joined |
15:05:03
| <isaacs> | pkrumins: one of the many reasons why sax-js does not handle custom or recursive entity definition |
15:08:21
| * thatguydan | quit (Ping timeout: 246 seconds) |
15:09:32
| <pkrumins> | aha |
15:10:57
| * thatguydan | joined |
15:11:08
| * thatguydan | quit (Client Quit) |
15:16:20
| * saijanai_ | joined |
15:16:20
| * saijanai_ | quit (Excess Flood) |
15:23:22
| * tomshreds | joined |
15:29:59
| * tphummel | joined |
15:31:55
| <isaacs> | pkrumins: you can also make (some) xml validators make http requests by providing remote doctype defs |
15:32:40
| <isaacs> | pkrumins: so, with a slightly bigger document, you can do the same 1E9lolz, but with http traffic. |
15:33:14
| <isaacs> | pkrumins: the thing about xml, is that everyone *knows* it's bad, but they kind of apologize for it, and say it's not really THAT bad. |
15:33:32
| <isaacs> | pkrumins: then you write an xml parser, and you read the specs, and you go HOLY MOTHER OF FUCK this is SO MUCH WORSE than i ever IMAGINED! |
15:34:20
| * tphummel | quit (Ping timeout: 246 seconds) |
15:44:14
| * tphummel | joined |
15:51:03
| <st_luke> | but I can imagine it being the most awful thing ever |
15:56:34
| <rowbit> | Daily usage stats: [developer: 60, free: 935] |
15:56:35
| <rowbit> | Hourly usage stats: [developer: 3, free: 60] |
16:08:55
| * wiwillia | quit (Ping timeout: 264 seconds) |
16:10:38
| * wiwillia | joined |
16:25:43
| * mike-d | joined |
16:30:57
| <pkrumins> | isaacs: haha |
16:31:06
| <pkrumins> | this should make a great article |
16:31:15
| <pkrumins> | i didnt know about xml bomb before |
16:32:22
| <pkrumins> | i should make this a series of posts |
16:32:24
| <pkrumins> | about various bombs |
16:32:28
| <pkrumins> | zip bomb, fork bomb, xml bokb |
16:32:31
| * shuaib | joined |
16:42:07
| * ryan_stevens | joined |
16:45:18
| <pkrumins> | isaacs: know any other bombs? |
16:45:22
| <pkrumins> | there must be a ton |
16:45:33
| <pkrumins> | alert(1) bomb |
16:45:36
| <pkrumins> | dom bomb |
16:45:45
| <isaacs> | somebody set us up the bomb |
16:45:57
| <ircretary> | :(){:|:&};: #BOOM |
16:46:00
| <pkrumins> | haha |
16:46:01
| <isaacs> | pkrumins: ^ |
16:46:06
| <pkrumins> | that's the fork bomb |
16:46:18
| <isaacs> | ircretary: bomb pkrumins |
16:46:18
| <ircretary> | isaacs: Arming the charges... |
16:46:40
| <pkrumins> | wat |
16:48:37
| <rowbit> | /!\ ATTENTION: (default-local) [email protected] successfully signed up for developer browserling plan ($20). Cash money! /!\ |
16:48:37
| <rowbit> | /!\ ATTENTION: (default-local) paid account successfully upgraded /!\ |
16:50:19
| <pkrumins> | 198! |
16:50:25
| <pkrumins> | blog post at 200! |
16:50:40
| <pkrumins> | title: "Browserling reaches 200 customers" |
16:50:41
| <pkrumins> | woo |
16:56:34
| <rowbit> | Hourly usage stats: [developer: 11, free: 53] |
17:13:45
| * zz_shykes | changed nick to shykes |
17:52:48
| <rowbit> | /!\ ATTENTION: (default-local) [email protected] successfully signed up for developer browserling plan ($20). Cash money! /!\ |
17:52:48
| <rowbit> | /!\ ATTENTION: (default-local) paid account successfully upgraded /!\ |
17:55:50
| <pkrumins> | 199!!! |
17:56:34
| <rowbit> | Hourly usage stats: [developer: 9, free: 41] |
18:01:25
| * rannmann | quit (Quit: No one is so old as those who have outlived enthusiasm. - Henry David Thoreau) |
18:08:27
| * shuaib | quit (Quit: Textual IRC Client: http://www.textualapp.com/) |
18:10:38
| <Raynos> | isaacs: what's the advantage of one process per file? |
18:13:49
| * rannmann | joined |
18:13:50
| * rannmann | quit (Changing host) |
18:13:50
| * rannmann | joined |
18:17:31
| * rannmann | quit (Client Quit) |
18:25:06
| * rannmann | joined |
18:27:55
| <isaacs> | Raynos: those files can crash and you can track the exit status of each test. |
18:28:05
| <isaacs> | Raynos: separate memory space, v8 instance, etc. |
18:28:13
| <isaacs> | i do sometimes have one test file require() another |
18:28:28
| <isaacs> | just to run the same test code in multiple different configurations |
18:28:29
| <Raynos> | isaacs: My internal issue is that when testing a server I shouldnt be reconstructing and deconstructing it |
18:28:38
| <Raynos> | it would be a better integration test if the entire server ran in one process |
18:28:45
| <Raynos> | I guess I can spawn the server as a seperate process |
18:28:57
| <isaacs> | Raynos: have a 00-setup.js that runs the server as a detached child proc, and a zz-teardown.js test that destroys it |
18:29:01
| <isaacs> | Raynos: write the pid to a file |
18:29:11
| <isaacs> | Raynos: then in zz-teardown.js, call process.kill(pid) |
18:29:12
| <Raynos> | isaacs: tap runs things in order? |
18:29:24
| <isaacs> | Raynos: yeah, it alphabetized |
18:29:32
| <isaacs> | Raynos: check out the tests for couch-login or redsess |
18:29:36
| <Raynos> | isaacs: including folders 00-setup.js bar folder foo folder zz-teardown.js |
18:29:48
| <isaacs> | Raynos: hm... not sure? maybe? |
18:29:54
| <isaacs> | Raynos: try it! |
18:29:57
| <Raynos> | ill try it later |
18:30:05
| <isaacs> | it should be just alpha by nam |
18:30:06
| <Raynos> | how often do you track exit status and let files crash? |
18:30:07
| <isaacs> | e |
18:30:09
| <Raynos> | like why is that useful? |
18:30:16
| <isaacs> | Raynos: if (er) throw er |
18:30:24
| <Raynos> | oh interesting |
18:30:33
| <Raynos> | so you can test things that throw errors cleanly |
18:30:33
| <isaacs> | Raynos: if you're using tap for tests, then it tracks thatas a fail, and skips to the next test |
18:30:50
| <Raynos> | isaacs: tap can use better docs. |
18:30:51
| <isaacs> | Raynos: but yeah, also, you can do process.exit(1) to say "This whole test is fail" |
18:30:54
| <isaacs> | Raynos: agreed. |
18:30:56
| <Raynos> | isaacs: I may do some for it |
18:30:57
| <isaacs> | Raynos: and better code :) |
18:31:11
| <pkrumins> | is there a node bomb? |
18:31:20
| <isaacs> | pkrumins: hmm.... good question! |
18:31:28
| <isaacs> | pkrumins: you can run child procs. |
18:31:57
| <pkrumins> | yeah but that would be like the same fork bomb |
18:32:03
| <pkrumins> | not unique |
18:32:09
| <pkrumins> | like zip bomb is unique to compression |
18:32:22
| <pkrumins> | hmm fork bomb to system programming |
18:32:40
| <pkrumins> | xml bomb to a data standard that includes recursion |
18:33:00
| <pkrumins> | i guess node falls under fork bomb |
18:33:19
| <isaacs> | pkrumins: and you can reference the node -e value with process._eval |
18:33:22
| <isaacs> | pkrumins: node -e 'console.log("node -e %j", process._eval)' |
18:33:58
| <isaacs> | pkrumins: you'll have to run detached child procs. |
18:34:01
| <isaacs> | to really be a bomb |
18:34:27
| <pkrumins> | sweet! |
18:34:32
| <pkrumins> | love this |
18:34:42
| <isaacs> | pkrumins: maybe: while(true) child_process.spawk(process.execPath, [__filename], {detached: true,stdio:ignore}); |
18:35:05
| <isaacs> | pkrumins: suddely there are an infinite number of infinitely self-spawning nodes! |
18:35:11
| <rowbit> | /!\ ATTENTION: (default-local) [email protected] successfully signed up for developer browserling plan ($20). Cash money! /!\ |
18:35:11
| <rowbit> | /!\ ATTENTION: (default-local) paid account successfully upgraded /!\ |
18:35:15
| <pkrumins> | 200!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
18:35:20
| <pkrumins> | isaacs: that is awesome |
18:35:23
| <isaacs> | pkrumins: if you do process.fork() then they can even talk to one another :) |
18:35:33
| <isaacs> | oops, bug, s/spawk/spawn/ |
18:35:44
| <isaacs> | and s/process.fork/child_process.fork/ |
18:36:12
| <pkrumins> | i'll do a blog post :) |
18:36:16
| <pkrumins> | about node bomb too |
18:36:47
| <isaacs> | node -e 'while true require("child_process").spawn(process.execPath,process.arguments,{detached:true,stdio:ignore})' |
18:36:53
| <isaacs> | node -e 'while (true) require("child_process").spawn(process.execPath,process.arguments,{detached:true,stdio:ignore})' |
18:56:34
| <rowbit> | Hourly usage stats: [developer: 17, free: 55] |
19:01:24
| * tilgovi | joined |
19:02:41
| <pkrumins> | isaacs: copied this to the draft post. |
19:56:34
| <rowbit> | Hourly usage stats: [developer: 5, free: 29] |
20:07:39
| * tilgovi | quit (Remote host closed the connection) |
20:36:02
| * tomshreds | quit (Quit: Linkinus - http://linkinus.com) |
20:56:34
| <rowbit> | Hourly usage stats: [developer: 1, free: 24] |
21:05:18
| * rannmann | quit (Remote host closed the connection) |
21:11:16
| * AvianFlu | quit (Remote host closed the connection) |
21:13:26
| * rannmann | joined |
21:56:34
| <rowbit> | Hourly usage stats: [developer: 6, free: 39] |
22:10:26
| * wiwillia | quit (Ping timeout: 248 seconds) |
22:32:53
| <rowbit> | /!\ ATTENTION: (default-local) [email protected] successfully signed up for developer browserling plan ($20). Cash money! /!\ |
22:32:53
| <rowbit> | /!\ ATTENTION: (default-local) paid account successfully upgraded /!\ |
22:34:25
| <pkrumins> | 201 |
22:35:01
| <dools> | pkrumins-bot |
22:48:16
| <isaacs> | pkrumins: can you do a browserling bomb? |
22:48:55
| <isaacs> | pkrumins: like, a browserling page that tries to load itself in browserling? |
22:49:29
| <pkrumins> | haha yes you can! |
22:49:43
| <pkrumins> | http://browserling.com/firefox/13.0/http://browserling.com |
22:49:50
| <pkrumins> | hmm no wait |
22:50:00
| <pkrumins> | http://browserling.com/firefox/13.0/http://browserling.com/firefox/13.0/http://browserling.com/firefox/13.0/http://browserling.com |
22:50:03
| <pkrumins> | like that |
22:50:15
| <dools> | aww Cannot GET /encoder.html |
22:50:22
| <pkrumins> | oh i see |
22:50:28
| <pkrumins> | url sharing is broken right now |
22:56:34
| <rowbit> | Hourly usage stats: [developer: 3, free: 29] |
23:00:47
| <mike-d> | isaacs: liking 'net' over 'http' for handling http requests |
23:29:23
| * st_luke | quit (Remote host closed the connection) |
23:38:23
| * ryan_stevens | quit (Quit: Leaving.) |
23:39:35
| * ryan_stevens | joined |
23:56:34
| <rowbit> | Hourly usage stats: [developer: 0, free: 8] |