00:04:25
| * daviddias | quit (Remote host closed the connection) |
00:04:55
| * daviddias | joined |
00:05:46
| * tomerd | joined |
00:09:17
| * daviddias | quit (Ping timeout: 260 seconds) |
00:12:52
| * mikeal | joined |
00:17:50
| * jjmalina | joined |
00:22:54
| * tomerd | quit (Remote host closed the connection) |
00:27:51
| * jerrysv | quit (Remote host closed the connection) |
00:28:07
| * paulfryzel | joined |
00:32:29
| * paulfryzel | quit (Ping timeout: 250 seconds) |
00:33:39
| * mikeal | quit (Quit: Leaving.) |
00:41:45
| * jxson | joined |
01:00:27
| * rsole | quit (Ping timeout: 260 seconds) |
01:04:03
| * Pwnna | quit (Ping timeout: 252 seconds) |
01:05:27
| * Pwnna | joined |
01:07:01
| * jjmalina | quit (Read error: Operation timed out) |
01:10:59
| * pfraze | quit (Ping timeout: 246 seconds) |
01:22:27
| * jcrugzz | joined |
01:28:54
| * paulfryzel | joined |
01:32:16
| * jxson | quit (Remote host closed the connection) |
01:33:10
| * paulfryzel | quit (Ping timeout: 250 seconds) |
01:33:23
| <kenansulayman> | rescrv Do you have thoughts on kyoto tycoon? I like it; the tests are shitty though (might be my mac) — normal hdd takes ~35s for 213000 random writes / puts (tries to simulate "usual" payloads; it's even called alike) |
01:34:03
| <kenansulayman> | Either my expectations are too much or I should really consider jumping to the new Mac Pro |
01:43:29
| * jxson | joined |
01:48:21
| * Sorella | quit (Quit: It is tiem!) |
01:57:33
| <rescrv> | kenansulayman: I tried it, it lost to bdb. We then eventually went with leveldb |
01:57:53
| <kenansulayman> | bdb? |
01:59:01
| <rescrv> | berkeley db |
01:59:31
| <kenansulayman> | Well I am talking about Kyoto Tycoon rather than Kyoto Cabinet |
01:59:40
| <kenansulayman> | it's the server-variant with replication |
01:59:44
| <rescrv> | oh |
01:59:49
| <rescrv> | never tried it |
01:59:59
| <kenansulayman> | wait |
02:00:20
| <kenansulayman> | http://quick.as/zzjYh8QJ rescrv |
02:01:14
| <kenansulayman> | it's pretty much like hyperdex afaik |
02:01:30
| <kenansulayman> | you setup a server and connect over different nodes to the main node |
02:05:36
| <kenansulayman> | there's http://kyoto-client.org for the kyoto tycoon client (node.js); it's implemented in plain JS though and won't perform exactly well I fear |
02:09:20
| <rescrv> | kenansulayman: I'm working on HyperDex node bindings |
02:09:52
| <kenansulayman> | Yes and I am looking forward to it :) Just experimenting with kyoto |
02:10:36
| <rescrv> | I'd be interested in feedback about what we do right/wrong that they do wrong/right in your eyes. |
02:12:45
| <kenansulayman> | Actually I don't find anything bad in either thing; I just experimented with Kyoto's "replace" operation (atomic del-put) |
02:13:15
| <kenansulayman> | And they implement the multiget :> |
02:13:41
| <rescrv> | I'm still not sold on the whole "multiget" idea. |
02:14:23
| <kenansulayman> | Well it's a query after all and a single call will return all keys |
02:14:35
| <kenansulayman> | else we'd have N-times network overhead for a payload |
02:15:13
| <rescrv> | I don't think that's true. I've yet to see a system where "multi-get" was better than async ops that return results as they arrive |
02:16:11
| <Aria> | Agreed. |
02:16:16
| <Aria> | They only make sense in a sync API |
02:16:58
| <kenansulayman> | To be honest, I don't know either. I didn't do any benchmarking on that. It's just that it seems logical to me that many single requests would be slower than one single request |
02:17:48
| <rescrv> | kenansulayman: which is more expensive, O(N) or N * O(1) |
02:17:55
| <kenansulayman> | :F |
02:18:13
| <kenansulayman> | You're right, yes |
02:18:22
| <kenansulayman> | but does that apply to a network? |
02:19:02
| <kenansulayman> | O(N) + X <=> N * (O(1) + X) => (N * O(1)) * ( N * X ) |
02:19:23
| <rescrv> | yes and no. If the calls are "get(); get(); get();", then multi-get makes sense as Aria said |
02:19:30
| <kenansulayman> | uhm + (N * X) at the end, sorry |
02:19:43
| <rescrv> | if it's three gets in parallel, then that doesn't have any difference from a multiget |
02:20:03
| <kenansulayman> | Well our real world example would be this: |
02:20:16
| <kenansulayman> | We have a list of documents where each entry points to a user id |
02:20:19
| <Aria> | Except if the timing of getting all three varies. You can start processing the first response right away with async. |
02:20:29
| <Aria> | Not hard and fast, but a multiget that let you would be effectively async. |
02:20:34
| <kenansulayman> | 200 user ids => 200 gets to construct the payload |
02:21:14
| <kenansulayman> | Also the maintainability is better with a multiget |
02:21:45
| <kenansulayman> | I issue one query and handle one response; all the sugar for constructing my desired "response" vanishes |
02:22:14
| <Aria> | error in any 1 = failure of the whole batch, usually, with multiget. And you can still wrap an async API in something that looks like a multiget. It really depends on how you're going to consume the results or handle errors. |
02:22:23
| <rescrv> | that's valid point. Multi-get as a performance optimization is less useful |
02:22:46
| <Aria> | Yeah, they're roughly equivalent, modulo when you get to start handling the response. |
02:22:54
| <Aria> | That's usually pretty similar. |
02:22:58
| <Aria> | But error handling. |
02:23:28
| <kenansulayman> | True for bad references (deleted user ids) |
02:23:48
| <kenansulayman> | But why would the whole batch fail? |
02:23:55
| <Aria> | Depends on one's API. |
02:24:02
| <kenansulayman> | I understand that for puts |
02:24:03
| <Aria> | Depends on what moving parts are involved. |
02:24:31
| <Aria> | Bad disk sector? Fail one request. |
02:24:38
| <kenansulayman> | but for gets I'd expect a field with an error attached |
02:24:48
| <kenansulayman> | Aria true |
02:24:52
| <Aria> | Yeah, if that's how your API works. |
02:25:05
| <Aria> | The devil's in the details. Error handling always makes everything hard ;-) |
02:25:10
| <kenansulayman> | How does RocksDB do it? |
02:25:34
| <kenansulayman> | Aria well yes, but it's pretty much the most important thing :> |
02:25:42
| <Aria> | Yup. |
02:26:01
| <Aria> | Everyone always shows me their happy new API, and I say "What happens when an error happens?" and then they get all sad and go redesign it. |
02:28:34
| <kenansulayman> | https://github.com/facebook/rocksdb/blob/1771ed2628e4bc61230886646e5525faddc70cd0/db/db_impl.cc#L2912-L3004 |
02:29:40
| * paulfryzel | joined |
02:29:45
| <kenansulayman> | Puzzling to me what happens in case of an error tho |
02:30:55
| * stagas | joined |
02:31:40
| <kenansulayman> | it seriously looks like they are not doing any error checking there ._. |
02:33:49
| * paulfryzel | quit (Ping timeout: 250 seconds) |
02:35:09
| <kenansulayman> | Whatever; it's 3:30 am already. gn |
02:35:25
| * kenansulayman | changed nick to kenan|afk |
02:35:34
| * DTrejo | quit (Remote host closed the connection) |
02:57:57
| * jxson | quit (Remote host closed the connection) |
03:00:42
| * jjmalina | joined |
03:00:42
| * jjmalina | quit (Client Quit) |
03:07:59
| * stagas | quit (Remote host closed the connection) |
03:08:04
| * jxson | joined |
03:08:39
| * stagas | joined |
03:14:27
| * ramitos | joined |
03:27:42
| * jxson | quit (Remote host closed the connection) |
03:30:15
| * paulfryzel | joined |
03:34:29
| * paulfryzel | quit (Ping timeout: 250 seconds) |
04:08:03
| * thlorenz | joined |
04:08:33
| * stagas | quit (Read error: Connection reset by peer) |
04:16:09
| * thlorenz | quit (Remote host closed the connection) |
04:31:07
| * paulfryzel | joined |
04:35:35
| * paulfryzel | quit (Ping timeout: 250 seconds) |
04:57:17
| * dguttman | quit (Quit: dguttman) |
05:19:01
| * dguttman | joined |
05:24:03
| * dguttman | quit (Quit: dguttman) |
05:31:17
| * blessYahu | quit (Ping timeout: 265 seconds) |
05:31:50
| * paulfryzel | joined |
05:36:15
| * paulfryzel | quit (Ping timeout: 250 seconds) |
05:54:45
| * jxson | joined |
06:27:42
| * jxson | quit (Remote host closed the connection) |
06:29:41
| * ednapiranha | quit (Quit: Leaving...) |
06:32:33
| * paulfryzel | joined |
06:36:56
| * paulfryzel | quit (Ping timeout: 245 seconds) |
06:46:09
| * mikeal | joined |
07:33:20
| * paulfryzel | joined |
07:37:35
| * paulfryzel | quit (Ping timeout: 250 seconds) |
07:44:33
| * ramitos | quit (Quit: Textual IRC Client: www.textualapp.com) |
07:47:47
| * tomerd | joined |
07:49:45
| * tomerd | quit (Remote host closed the connection) |
07:51:00
| * tomerd | joined |
07:51:41
| * tomerd | quit (Remote host closed the connection) |
08:26:45
| * rsole | joined |
08:30:50
| * tomerd | joined |
08:34:11
| * paulfryzel | joined |
08:38:41
| * paulfryzel | quit (Ping timeout: 250 seconds) |
08:52:07
| * tomerd | quit (Remote host closed the connection) |
08:53:30
| * tomerd | joined |
09:08:07
| * rsole | quit (Ping timeout: 260 seconds) |
09:16:32
| * tomerd | quit (Remote host closed the connection) |
09:18:04
| * tomerd | joined |
09:18:12
| * tomerd | quit (Remote host closed the connection) |
09:28:41
| * jxson | joined |
09:31:58
| * stagas | joined |
09:33:17
| * jxson | quit (Ping timeout: 250 seconds) |
09:34:55
| * paulfryzel | joined |
09:39:21
| * paulfryzel | quit (Ping timeout: 250 seconds) |
09:40:53
| * kenan|afk | changed nick to kenansulayman |
10:08:10
| * tomerd | joined |
10:16:24
| * rsole | joined |
10:22:29
| * jcrugzz | quit (Ping timeout: 248 seconds) |
10:26:18
| * tomerd | quit (Remote host closed the connection) |
10:35:41
| * paulfryzel | joined |
10:40:01
| * paulfryzel | quit (Ping timeout: 250 seconds) |
10:44:35
| * tomerd | joined |
10:57:17
| * tomerd | quit (Remote host closed the connection) |
11:00:45
| * daviddias | joined |
11:24:16
| * tomerd | joined |
11:26:48
| * tomerd | quit (Remote host closed the connection) |
11:30:27
| * rsole | quit (Ping timeout: 260 seconds) |
11:34:06
| * rsole | joined |
11:36:25
| * paulfryzel | joined |
11:40:41
| * paulfryzel | quit (Ping timeout: 250 seconds) |
11:45:23
| * rsole | quit (Ping timeout: 260 seconds) |
12:02:22
| * stagas | quit (Read error: Connection reset by peer) |
12:02:47
| * rsole | joined |
12:06:51
| * cwmma | joined |
12:13:04
| * daviddias | quit (Read error: Connection reset by peer) |
12:24:02
| * rsole1 | joined |
12:24:24
| * rsole | quit (Read error: Connection reset by peer) |
12:34:09
| * alanhoff | joined |
12:37:12
| * paulfryzel | joined |
12:37:42
| * alanhoff | part |
12:39:25
| * Sorella | joined |
12:41:47
| * paulfryzel | quit (Ping timeout: 250 seconds) |
12:45:55
| * daviddias | joined |
12:48:50
| * daviddias | quit (Read error: Connection reset by peer) |
12:48:56
| * daviddia_ | joined |
12:51:26
| * daviddias | joined |
12:55:28
| * daviddia_ | quit (Ping timeout: 252 seconds) |
13:03:01
| * rsole1 | quit (Quit: rsole1) |
13:37:58
| * paulfryzel | joined |
13:42:27
| * paulfryzel | quit (Ping timeout: 250 seconds) |
14:14:49
| * thlorenz | joined |
14:26:55
| * blessYahu | joined |
14:38:45
| * paulfryzel | joined |
14:43:07
| * paulfryzel | quit (Ping timeout: 250 seconds) |
14:56:01
| * pfraze | joined |
15:07:33
| * jjmalina | joined |
15:33:35
| * dguttman | joined |
15:39:28
| * paulfryzel | joined |
15:43:47
| * paulfryzel | quit (Ping timeout: 250 seconds) |
16:02:18
| * mikeal | quit (Quit: Leaving.) |
16:03:06
| * tomerd | joined |
16:10:33
| * tomerd | quit (Remote host closed the connection) |
16:11:07
| * tomerd | joined |
16:15:57
| * tomerd | quit (Ping timeout: 272 seconds) |
16:40:16
| * paulfryzel | joined |
16:44:27
| * paulfryzel | quit (Ping timeout: 250 seconds) |
16:50:09
| * stagas | joined |
16:52:58
| * ednapiranha | joined |
17:03:31
| * daviddias | quit (Ping timeout: 245 seconds) |
17:05:48
| * mikeal | joined |
17:06:37
| * daviddias | joined |
17:09:12
| * mikeal | quit (Client Quit) |
17:18:54
| * DTrejo | joined |
17:29:35
| * stagas | quit (Read error: Connection reset by peer) |
17:40:24
| * cwmma | quit (Quit: cwmma) |
17:41:02
| * paulfryzel | joined |
17:45:33
| * paulfryzel | quit (Ping timeout: 250 seconds) |
17:49:36
| * cwmma | joined |
17:53:36
| * mcavage | quit (Remote host closed the connection) |
17:57:14
| * mcavage | joined |
17:58:49
| * mcavage | quit (Remote host closed the connection) |
18:02:11
| * jcrugzz | joined |
18:06:34
| * thlorenz | quit (Remote host closed the connection) |
18:40:01
| * mikeal | joined |
18:41:42
| * daviddias | quit (Remote host closed the connection) |
18:41:49
| * paulfryzel | joined |
18:42:54
| * mcavage | joined |
18:44:16
| * thlorenz | joined |
18:44:51
| * daviddias | joined |
18:46:13
| * paulfryzel | quit (Ping timeout: 250 seconds) |
19:30:44
| * mikeal | quit (Quit: Leaving.) |
19:31:02
| * mikeal | joined |
19:38:18
| * mikeal | quit (Quit: Leaving.) |
19:42:33
| * paulfryzel | joined |
19:46:53
| * paulfryzel | quit (Ping timeout: 250 seconds) |
19:54:24
| * mikeal | joined |
20:00:05
| * paulfryzel | joined |
20:03:00
| * paulfryzel | quit (Read error: Connection reset by peer) |
20:03:19
| * paulfryzel | joined |
20:06:16
| * mikeal | quit (Quit: Leaving.) |
20:06:20
| * paulfryzel | quit (Read error: Connection reset by peer) |
20:06:41
| * mikeal | joined |
20:13:22
| * mikeal | quit (Quit: Leaving.) |
20:16:50
| * mikeal | joined |
20:18:48
| * daviddias | quit (Remote host closed the connection) |
20:19:10
| * mikeal | quit (Client Quit) |
20:34:13
| * mikeal | joined |
20:40:35
| * jjmalina1 | joined |
20:41:26
| * jjmalina | quit (Ping timeout: 245 seconds) |
20:42:43
| * daviddias | joined |
20:46:59
| * daviddias | quit (Ping timeout: 246 seconds) |
20:47:01
| * miketheprogramme | joined |
20:48:01
| * tomerd | joined |
20:54:59
| * mikeal | quit (Quit: Leaving.) |
20:57:18
| * mikeal | joined |
20:58:37
| * thlorenz | quit (Remote host closed the connection) |
20:58:51
| * thlorenz | joined |
21:07:07
| * paulfryzel | joined |
21:07:54
| * jxson | joined |
21:09:11
| * daviddias | joined |
21:11:23
| * paulfryzel | quit (Ping timeout: 250 seconds) |
21:36:58
| * mikeal | quit (Quit: Leaving.) |
21:45:24
| * sygi | joined |
21:45:33
| <daleharvey_> | rvagg: you got any idea what is up with https://gist.github.com/sygi/8872507 |
21:45:34
| <daleharvey_> | ? |
21:47:58
| <kenansulayman> | daleharvey_ did you install from npm or from git? |
21:50:04
| <daleharvey_> | kenansulayman: npm, this via via npm install pouchdb |
21:50:10
| * daleharvey_ | changed nick to daleharvey |
21:50:23
| <kenansulayman> | ok. try npm cache clean |
21:50:34
| <kenansulayman> | and then npm i level |
21:51:04
| <kenansulayman> | to see if it's an upstream issue (puchdb referencing an old version) or level-specific |
21:51:33
| <sygi> | it gives the same error |
21:51:58
| * daviddia_ | joined |
21:52:23
| <kenansulayman> | sygi are you daleharvey — or do you have the same issue? |
21:52:34
| <sygi> | no/yes |
21:52:54
| <kenansulayman> | Could you provide more explanative ways to reproduce your issue? |
21:53:27
| <sygi> | the only thing i've done is git clone <pouchdb> && npm install |
21:53:34
| <miketheprogramme> | what OS are you using |
21:53:51
| <sygi> | it's lubuntu linux |
21:54:21
| * daviddias | quit (Ping timeout: 245 seconds) |
21:54:29
| <kenansulayman> | One second, I am trying to reproduce it. |
21:54:47
| <sygi> | lubuntu 13.10, linux 3.11.0-13-generic (x86_64) |
21:55:13
| <kenansulayman> | Well yes that doesn't correlate much to the issue shown by daleharvey ; it's rather a missing NAN dependency |
21:55:31
| * tomerd | quit (Remote host closed the connection) |
21:55:58
| <daleharvey> | kenansulayman: I was posting sygi's gist, I dont have this issue |
21:56:03
| <kenansulayman> | sygi try this: 1. npm cache clean 2. npm i git://github.com/daleharvey/pouchdb.git |
21:56:12
| <kenansulayman> | still fails? just worked for me |
21:56:38
| <miketheprogramme> | why is this git repo so huge |
21:56:46
| * ncthom91_ | joined |
21:57:59
| <kenansulayman> | miketheprogramme 1k+ commits |
21:58:52
| <kenansulayman> | sygi does it work? |
21:58:57
| <ggreer> | so huge? you should try cloning https://github.com/JetBrains/intellij-community |
21:59:04
| <sygi> | I'm trying |
21:59:18
| <kenansulayman> | ggreer well.... they have over 10k commits |
21:59:26
| <ggreer> | it's over 1.5GB |
21:59:38
| <ggreer> | and you can't resume an interrupted clone, so if there's a network hiccup you have to start from 0 |
21:59:57
| <kenansulayman> | Java is always giving me cancer |
22:00:04
| <ggreer> | :) |
22:00:05
| <kenansulayman> | Sorry :) |
22:00:14
| <ggreer> | no. I do not willingly write java |
22:00:16
| <kenansulayman> | daleharvey What does Pouch do? |
22:00:47
| <daleharvey> | couchdb clone in javascript |
22:01:27
| <daleharvey> | the large size and the java is from using selenium |
22:02:15
| <daleharvey> | we dont do anything fancy with level though, its just a "level": "~0.18.0", in package.json |
22:03:09
| <kenansulayman> | daleharvey NAN is just the compatibility layer for the breaking changes in the v8 API |
22:03:24
| <kenansulayman> | though sygi didn't specify at all what Node he's running |
22:04:10
| <sygi> | npm i git:// takes eternity to run, but I cloned a clean repo again and it's returning error |
22:04:23
| <kenansulayman> | Yes the registry is slow |
22:04:24
| <daleharvey> | kenansulayman: ubuntu is using nodejs as the bin name |
22:04:34
| <kenansulayman> | what? |
22:04:42
| <kenansulayman> | sygi try alias node="nodejs" |
22:04:50
| <daleharvey> | thats how debian packaged it |
22:05:01
| <kenansulayman> | That's rather a pain for portability |
22:05:22
| * jxson | quit (Remote host closed the connection) |
22:05:43
| <sygi> | alias didn't help either |
22:06:12
| <kenansulayman> | can you please gist the >whole< log |
22:06:23
| <kenansulayman> | from clone to failure |
22:06:30
| <kenansulayman> | not just what you posted earlier |
22:06:34
| <ggreer> | and maybe run node --version at some point |
22:06:34
| <sygi> | sure. |
22:06:53
| <kenansulayman> | yes. npm -v ; node -v ; uname -a |
22:06:59
| <ggreer> | ^^ +1 |
22:07:56
| * paulfryzel | joined |
22:08:43
| * soldair | joined |
22:12:30
| * paulfryzel | quit (Ping timeout: 250 seconds) |
22:13:31
| * daviddia_ | quit (Remote host closed the connection) |
22:14:02
| * daviddias | joined |
22:19:57
| <sygi> | ok, it's here https://gist.github.com/sygi/8873178 |
22:20:53
| <sygi> | I took a bit of time because of downloading at 100KBps speed :P |
22:21:39
| * soldair | quit (Quit: Page closed) |
22:22:16
| <kenansulayman> | I see |
22:22:33
| <kenansulayman> | you might try to do this: |
22:22:52
| <kenansulayman> | ln -s /usr/local/bin/nodejs /usr/local/bin/node |
22:22:58
| <kenansulayman> | (with root permissions) |
22:23:03
| <sygi> | should I remove the alias |
22:23:03
| <sygi> | ? |
22:23:11
| <kenansulayman> | then do ldconfig |
22:23:29
| <kenansulayman> | for the alias, just exit the session and start a new one |
22:23:34
| <kenansulayman> | or whatever you like |
22:24:21
| <sygi> | i dont have nodejs in /usr/local/bin/ but in /usr/bin, but i think it's fine? |
22:32:53
| * aivanov93 | joined |
22:35:10
| <kenansulayman> | sygi well just symlink it to the folder where your nodejs is |
22:35:17
| <kenansulayman> | then do "ldconfig" to reload these |
22:35:25
| <aivanov93> | hi.. i'm having a problem installing leveldb.. https://gist.github.com/aivanov93/8873375 log from npm install leveldown |
22:35:42
| <kenansulayman> | meh |
22:35:45
| <sygi> | ok, i did it and now it stopped a moment later so I think that it worked, thanks! |
22:35:58
| <kenansulayman> | sygi glad it works :) |
22:36:05
| <kenansulayman> | aivanov93 npm -v ; node -v ; uname -a |
22:44:28
| <kenansulayman> | aivanov93? |
22:53:12
| * thlorenz | quit (Remote host closed the connection) |
22:57:31
| * sneakyness | joined |
23:00:25
| * paulfryzel | joined |
23:00:39
| * stagas | joined |
23:04:29
| * paulfryzel | quit (Ping timeout: 250 seconds) |
23:08:51
| * paulfryzel | joined |
23:10:04
| <aivanov93> | npm v1.3.25, node v0.11.11 |
23:10:08
| * paulfryzel | quit (Read error: Connection reset by peer) |
23:10:09
| <aivanov93> | uname Linux ubuntu 3.8.0-29-generic #42~precise1-Ubuntu SMP Wed Aug 14 16:19:23 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux |
23:10:39
| * paulfryzel | joined |
23:11:17
| <kenansulayman> | aivanov93 could you try npm cache clean and retry? |
23:13:41
| <aivanov93> | i tried that.. didnt help |
23:14:53
| * paulfryzel | quit (Ping timeout: 250 seconds) |
23:17:49
| <aivanov93> | this is the full log https://gist.github.com/aivanov93/8873934 |
23:18:41
| * cwmma | quit (Quit: cwmma) |
23:25:01
| * wolfeidau | quit (Remote host closed the connection) |
23:28:55
| <kenansulayman> | aivanov93 |
23:29:03
| <kenansulayman> | checkout the topic of this channel |
23:29:08
| <kenansulayman> | 0.11.11 is broken |
23:29:34
| <kenansulayman> | please downgrade to 0.11.10 for the time being or fix the issue yourself (https://github.com/joyent/node/pull/6992) |
23:30:00
| * nnnnathann | joined |
23:31:04
| <kenansulayman> | I'm off for today, if there's anything else ask someone else or just mention me. My bnc will catch it |
23:34:22
| * kenansulayman | changed nick to kenan|afk |
23:40:01
| * jjmalina1 | quit (Ping timeout: 250 seconds) |
23:44:21
| * daviddias | quit (Remote host closed the connection) |
23:50:45
| * miketheprogramme | quit (Remote host closed the connection) |
23:54:52
| * sneakyness | part ("¡") |
23:56:00
| * ncthom91_ | quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
23:57:23
| * thlorenz | joined |