13:51:37  * creationixtopic: Lua + libUV + jiT = pure awesome-sauce | http://luvit.io | https://github.com/luvit/luvit | https://github.com/luvit/luv
14:05:35  * torporquit (Quit: Leaving.)
14:22:39  * james2doylejoined
14:48:27  * piernovquit (Ping timeout: 252 seconds)
14:50:22  * piernovjoined
14:55:20  * piernovquit (Ping timeout: 272 seconds)
14:55:49  * piernovjoined
15:01:02  * piernovquit (Ping timeout: 272 seconds)
15:01:11  * piernovjoined
15:10:47  <creationix>rje: rphillips: so funny think, when using ffi.load, the dll name and exe name don’t seem to matter
15:10:52  * SouL_joined
15:11:09  * torporjoined
15:11:30  <creationix>ahh, it must be because since my .dll isn’t a lua binding, it doesn’t need any code from the lua binary
15:12:34  <creationix>so that is one idea, to use ffi for everything and just wrap C apis in C wrappers that expose a ffi friendly interface. i don’t want to redo libuv and openssl right now (way too much work), but it might be feasable for sigar
15:13:17  <creationix>for glfw, ffi can use it directly mostly, the C callbacks just cause trouble. But I tried writing a pull-based wrapper last night, it almost worked
15:15:43  <rphillips>neat
15:16:18  <creationix>I made a wrapper that supplied the callbacks in C land. The calbacks simply put the event data into an event queue that you could read from using ffi
15:16:35  <creationix>only problem is, the event poll or wait command blocks for a long time
15:17:00  <creationix>for example, if you are resizing a window, it’s blocked as long as the mouse is pressed, even if you’ve paused resizing
15:17:13  <creationix>so you won’t get any of the resize events till after the mouse lets up, then you’ll get a ton
15:18:31  <rphillips>https://github.com/kkaefer/gluv
15:18:36  <rphillips>interesting solution
15:19:25  <creationix>yep, that’s probably the best way to do it currently, not perfect
15:20:59  <creationix>but even with that, https://github.com/kkaefer/gluv/blob/master/src/main.c#L122 won’t unblock the entire time you’re resizing a window
15:21:13  <creationix>(even with the other thread telling it to unblock by sending empty events)
15:24:41  <creationix>but that’s a issue with glfw’s API, not sure how to get around it
15:28:41  <rphillips>going to work ont he process.{stdout, stdin, stderr} support
15:28:45  <creationix>cool
15:29:03  <creationix>so I found an issue with my platform filter code in lit
15:29:21  <creationix>the filters currently apply when importing from filesystem to lit db
15:29:33  <creationix>but when publishing a module, you want to publish all platforms, and when installing, you want only the files for your platform
15:30:36  <creationix>so that complicates things. I need to run the filters when importing from local db to local exe, and make the filter more permissive when importing from fs to db for publishing, but not more permissive when importing from fs to exe
15:39:53  * travis-cijoined
15:39:54  <travis-ci>luvit/luvit#1790 (luvi-up - 9ebeb52 : Ryan Phillips): The build passed.
15:39:54  <travis-ci>Change view : https://github.com/luvit/luvit/compare/b3870cdcd6e1...9ebeb5212d83
15:39:54  <travis-ci>Build details : http://travis-ci.org/luvit/luvit/builds/53354925
15:39:54  * travis-cipart
15:45:42  * dan336joined
15:55:13  * torporpart
15:55:39  * hdmsquit (Ping timeout: 245 seconds)
16:07:59  * arek_deepinitquit (Quit: Konversation terminated!)
16:13:14  * piernovquit (Ping timeout: 272 seconds)
16:13:27  * rchjoined
16:13:42  * piernovjoined
16:18:18  * piernovquit (Ping timeout: 272 seconds)
16:18:25  * piernovjoined
16:20:53  * hdmsjoined
16:23:22  * piernovquit (Ping timeout: 272 seconds)
16:23:35  * piernovjoined
16:30:37  * hdmsquit (Read error: Connection reset by peer)
16:31:09  * hdmsjoined
16:32:04  <rch>creationix: really looking forward to seeing what you do between a workshop-type-thing and glfw and lit
16:32:12  <creationix>me too
16:32:28  <rch>enough potential for cool things there that i am confused and can't tell exactly what they will be
16:32:56  <rch>but i know that if i can give people i know an easy way to write native cross-platform gui apps they will go insane
16:34:58  <creationix>rch: well, there won’t be any framework out of the box
16:35:03  <creationix>basically raw gl and glfw calls
16:35:11  <creationix>but libraries can be built on top and published to lit
16:35:22  <rch>yup
16:35:36  <rch>like npm for native cross platform desktop applications
16:36:01  <creationix>and it works great for server and command-line apps too
16:36:24  <rch>sure it's just i already know how to build those easily
16:36:40  <rch>the native windowing / opengl thing is just blowing my mind this morning
16:36:51  <creationix>I
16:37:01  <creationix>I’ve been trying to build this for years, but it’s hard
16:37:05  <creationix>glfw is close to the missing piece
17:05:04  * SouL_quit (Ping timeout: 244 seconds)
17:18:18  * travis-cijoined
17:18:19  <travis-ci>luvit/luvit#1792 (luvi-up - 01e01fa : Tim Caswell): The build passed.
17:18:19  <travis-ci>Change view : https://github.com/luvit/luvit/compare/9ebeb5212d83...01e01fa0d149
17:18:19  <travis-ci>Build details : http://travis-ci.org/luvit/luvit/builds/53368065
17:18:19  * travis-cipart
17:19:28  * travis-cijoined
17:19:29  <travis-ci>luvit/luvit#1791 (fixes/add_test_fs_readstream - 8184404 : Tim Caswell): The build passed.
17:19:29  <travis-ci>Change view : https://github.com/luvit/luvit/compare/3ed9b072deb2...8184404c15b9
17:19:29  <travis-ci>Build details : http://travis-ci.org/luvit/luvit/builds/53368006
17:19:29  * travis-cipart
17:41:39  * nateratorjoined
17:46:04  <rphillips>do we have a function in luvit to wrap a uv handle and make a stream?
17:47:28  * joconnorjoined
18:10:12  * SouL_joined
18:12:46  * nateratorquit (Quit: naterator)
18:13:13  * nateratorjoined
18:13:23  <creationix>rphillips: I do for coro-* stuff, but I thought there was one for luvit streams too
18:14:28  <rphillips>there is one for luvit Emitters... i'm working on one to wrap uv handles
18:23:05  * nateratorquit (Quit: naterator)
18:23:32  * nateratorjoined
18:33:27  <creationix>rphillips: how do I get my custom dll to export functions on windows
18:33:39  <creationix>I added the macro for declspec like used in lua and glfw
18:33:45  <creationix>but I think I need something in cmake too
18:34:05  <rphillips>__declspec(dllexport) to the begining of the function declaration
18:34:24  <rphillips>usually, libraries define a LUA_LIB or something
18:36:58  <creationix>yeah, I’m using the macro used internally in glfw https://github.com/creationix/lit-glfw/blob/master/wrapper.h#L61
18:37:26  <creationix>defined here in the header I include https://github.com/glfw/glfw/blob/d90f5e0429076e3242b6cd0cc71da09c8c4776d5/include/GLFW/glfw3.h#L171-L186
18:37:49  <creationix>maybe I’m not passing in _GLFW_BUILD_DLL somehow
18:40:38  <creationix>hmm, still no exports, dumpbin says I’ve got nothing in my dll
18:42:08  <rphillips>could put an #error in there for sanity... make sure cmake picked up the definition
18:43:37  <rphillips>creationix: https://github.com/creationix/lit-glfw/blob/master/CMakeLists.txt#L6
18:43:45  <rphillips>should be add_definitions(-D ... )
18:44:09  <rphillips>add_definitions(-D_GLFW_BUILD_DLL)
18:48:30  <creationix>nope
18:48:43  <creationix>I’m sure it’s something simple
18:51:22  <rphillips>creationix: https://github.com/creationix/lit-glfw/blob/master/CMakeLists.txt#L5
18:51:26  <rphillips>needs to be WIN32 probably
18:51:45  <creationix>I got it running! Now to remove all my hacks to see which change it was
18:53:33  <creationix>if you want to test, do a recursive clone of https://github.com/creationix/lit-glfw and run `make test` on windows, osx, or linux
18:53:59  <creationix>this was the fix for windows https://github.com/creationix/lit-glfw/commit/da3056b6e8f5bff802262780bc8ff32301034309
18:54:31  <creationix>the wrapper lib gives me a non-callback based interface to glfw so luajit ffi doesn’t crash constantly
18:55:18  <rphillips>cool
18:56:27  <creationix>now to fix the lit bug so that publishing includes binaries for all platforms, but building a local binary only includes the native ones
18:57:25  <rphillips>creationix: the glfw-test directory appears empty
18:57:34  <creationix>did you do a recursive clone?
18:57:38  <creationix>if not init submodules
18:57:59  <creationix>I could add that to the makefile I guess
18:58:42  <rphillips>ah... nope
18:59:05  * nateratorquit (Quit: naterator)
18:59:12  <rphillips>got an 'access rights' violation
18:59:33  * nateratorjoined
18:59:35  <rphillips>https://www.evernote.com/shard/s9/sh/be4bc211-10b9-4a76-a4f3-2ef0111247a5/316127935d83cb5c376ef7e0ea66bf25
18:59:57  <creationix>I should change the remote to https
19:01:00  <creationix>ok, now with a fresh clone it should work on unix
19:01:09  <creationix>still need to add submodule stuff to windows make.bar=t
19:11:28  * james2doylequit (Quit: Sleeping. Be back later ...)
19:25:42  * SouL_quit (Remote host closed the connection)
19:25:58  * SouL_joined
20:15:10  * travis-cijoined
20:15:11  <travis-ci>luvit/luvit#1793 (feat/process_std_support - b2f1f73 : Ryan Phillips): The build passed.
20:15:11  <travis-ci>Change view : https://github.com/luvit/luvit/commit/b2f1f73e6995
20:15:11  <travis-ci>Build details : http://travis-ci.org/luvit/luvit/builds/53390362
20:15:11  * travis-cipart
20:15:58  <rphillips>https://github.com/luvit/luvit/pull/650
20:16:07  <rphillips>reuses some of pretty printer... thinking that is ok
20:19:52  * travis-cijoined
20:19:53  <travis-ci>luvit/luvit#1795 (feat/process_std_support - c2d825f : Ryan Phillips): The build passed.
20:19:53  <travis-ci>Change view : https://github.com/luvit/luvit/compare/b2f1f73e6995...c2d825ff3237
20:19:53  <travis-ci>Build details : http://travis-ci.org/luvit/luvit/builds/53390750
20:19:53  * travis-cipart
20:52:43  * james2doylejoined
21:11:02  <rje>.
21:20:40  <rje>rphillips, we're you able to get access to that box with the memory issues?
21:21:07  <rphillips>yep
21:21:12  <rphillips>machine was overloaded
21:21:18  <rphillips>1 cpu pegged
21:21:30  <rphillips>90% memory usage
21:21:37  <rphillips>agent was at 9 MB
21:22:22  <rphillips>i asked chris to bump the server to 16 GB
21:22:33  <rje>so not the agent's fault. were you able to get RPC to see that?
21:22:55  <rphillips>not sure... I told chris about it, and he is checking on it
21:23:07  <rphillips>likely testing it out
21:23:18  <rphillips>i think their logstash config is messed up as well
21:23:26  <rphillips>that is the service that is pegging 1 cpu
21:23:36  <rje>thank you for digging in
21:23:49  <rphillips>btw, they are running 30 agent plugins
21:24:17  <rje>what's the record?
21:26:59  <rphillips>well
21:27:04  <rphillips>chris just said it did it again
21:28:05  * travis-cijoined
21:28:06  <travis-ci>luvit/luvit#1797 (feat/process_std_support - c16be73 : Ryan Phillips): The build passed.
21:28:07  <travis-ci>Change view : https://github.com/luvit/luvit/compare/c2d825ff3237...c16be73adeb7
21:28:07  <travis-ci>Build details : http://travis-ci.org/luvit/luvit/builds/53398401
21:28:07  * travis-cipart
21:28:25  <rphillips>i'm going to be agentv2 on their machine and see if it crashes as well
21:31:45  <rphillips>ok running
21:33:44  <rphillips>rje: can you test agent.plugins with the luvi-up branch?
21:33:59  <rphillips>i need to run to get get my car from the fixit shop
21:34:14  <rje>rphillips, what os?
21:34:16  <rphillips>linux
21:34:23  <rje>k, sure
21:34:30  <rphillips>might be the runner thing I changed yesterday
21:34:45  <rphillips>if that is working, it'll be a good test for RPC
21:34:53  <rphillips>bbiab an hour
22:26:39  <rje>rphillips: this is what i get with a linux plugin https://gist.github.com/rjemanuele/fc578fff4d548f60ecaf
22:29:24  * james2doylequit (Quit: Sleeping. Be back later ...)
22:30:53  <creationix>rphillips: when you’re back, let me know what you think of this convention https://github.com/luvit/lit/wiki/Publishing-Compiled-Code#bundling-lua-c-api-libraries
22:53:19  <rphillips>.
22:53:27  <rphillips>catalitic converters++
22:53:32  <rphillips>cool tech
23:00:04  <rphillips>rje: figured it out
23:00:06  <rje>expensive to replace though
23:00:17  <rje>the plugins?
23:01:05  <rphillips>yeah, we called it check_runner
23:01:19  <rphillips>let me see if that fixes it on heat
23:03:18  <rphillips>hmm
23:08:06  <rch>creationix: awesome wiki page
23:08:45  <creationix>rch: I’m currently writing a tutorial for making a new module from scratch, testing, and publishing
23:09:43  <rch>awesome
23:21:23  <creationix>dinner time, enjoy https://github.com/luvit/lit/wiki/Package-Metadata and https://github.com/luvit/lit/wiki/Creating-Your-First-Package
23:21:33  <creationix>feel free to fix any typoes, I haven’t had time to proofread it
23:23:19  <rphillips>woo... plugins work
23:23:33  <rphillips>rje: the path in constants.lua is a hack :/
23:23:35  <rphillips>i'll fix it
23:23:48  <rphillips>it's the wrong directory
23:33:58  <rphillips>creationix: really a great wiki doc
23:45:15  <rch>looks real good
23:54:41  * dan336quit (Quit: Leaving.)