00:08:53 * boxofrox joined 00:36:13 * Akagi201 joined 00:36:14 * Akagi201 quit (Remote host closed the connection) 00:36:43 * Akagi201 joined 00:54:58 * DarkGod quit (Ping timeout: 256 seconds) 01:07:14 * a_le quit (Remote host closed the connection) 01:26:26 * kazupon joined 01:39:51 https://github.com/blog/2014-filter-pull-requests-by-status 02:05:36 rphillips, do you remember how to set buildbot env variables? (i want to do it per build slave to set CMAKE_GENERATOR) 02:06:41 * kazupon quit (Remote host closed the connection) 02:07:09 * kazupon joined 02:07:10 * kazupon quit (Read error: Connection reset by peer) 02:07:18 * kazupon joined 02:11:55 * a_le joined 02:14:54 rje: isn't CMAKE_GENERATOR defined by cmake 02:14:55 ? 02:15:04 http://www.cmake.org/cmake/help/v3.0/variable/CMAKE_GENERATOR.html 02:15:23 it should be automatic from what I can tell 02:15:44 er yeah, i misread it from http://www.cmake.org/Wiki/CMake_Useful_Variables 02:16:39 my question still stands about the buildbot 02:16:54 how do i specify an env var per builter 02:17:18 rje: https://github.com/racker/buildbot/blob/master/master_agentbuild_cm/agent2.py#L42 02:17:20 i'll have to pass the env var as the param to -G 02:17:44 you can probably define it on the slave definition 02:17:53 that 02:18:00 that's exactly what i want to do 02:19:15 with the packager not having -G specified it doesn't find the right Win32/Win64 02:19:52 * rje adds env var reading to some batch files 02:20:03 yippee 02:20:04 do you have the buildbot changes committed somewhere? 02:20:14 er no 02:20:30 lemme do that 02:20:31 i was thinking https://github.com/racker/buildbot/blob/master/master_agentbuild_cm/agent2.py#L68 02:21:14 lemme commit my changes.... 02:21:15 instead of a make_build() for unix, I was thinking a make_windows_build or something 02:21:24 that's exactly what i do 02:21:26 cool 02:22:31 * rje seriously swapped out buildbot code from his brain 02:30:13 i just wish I had ECC parity bits 02:30:57 oh faulty memory is bad 04:03:34 * a_le quit (Ping timeout: 255 seconds) 04:07:39 * a_le joined 05:02:42 * kazupon quit (Remote host closed the connection) 05:09:08 https://github.com/virgo-agent-toolkit/rackspace-monitoring-agent/pull/738 05:09:22 https://github.com/racker/buildbot/pull/234 05:29:59 * kazupon joined 05:39:54 * SkyRocknRoll joined 05:39:54 * SkyRocknRoll quit (Changing host) 05:39:54 * SkyRocknRoll joined 05:58:28 * bjorn joined 06:29:42 * a_le quit (Remote host closed the connection) 07:35:20 * DarkGod joined 08:07:04 * necrophcodr joined 08:29:10 * kazupon quit (Remote host closed the connection) 08:40:22 * kazupon joined 10:06:23 * Akagi201 quit 10:12:56 * necrophcodr quit (Ping timeout: 272 seconds) 10:19:51 * necrophcodr joined 11:44:50 * kazupon quit (Remote host closed the connection) 12:16:38 * SkyRocknRoll quit (Ping timeout: 244 seconds) 12:53:34 * ldub joined 13:22:29 good morning 13:44:41 * SkyRocknRoll joined 13:58:24 * piernov quit (Ping timeout: 272 seconds) 14:27:40 * dan336 joined 15:01:47 * piernov joined 15:02:17 * necrophcodr quit (Quit: WeeChat 1.2) 15:34:51 * a_le joined 15:35:55 * ldub quit (Read error: Connection reset by peer) 16:08:12 rphillips: what do you think about moving some of lits larger deps to submodules? https://github.com/luvit/lit/tree/master/deps 16:08:26 it makes bootstrapping tricker since github tarballs don’t include submodules 16:08:37 I could publish a custom tarball like I do for luvi 16:08:48 just makes lit releases more wor 16:08:50 *work 16:08:56 which ones would get migrated? 16:09:14 I just moved git so that it has it’s own homepage, docs, and tests 16:09:28 the coro-* stuff might go to another 16:10:08 websocket might make sense as well 16:10:23 +1, a script checked in to create the tarballs would be nice as well 16:10:24 * a_le quit (Remote host closed the connection) 16:12:00 btw, with the git refactor, I merged in the code fro rye to handle packed refs and objects 16:12:07 so lit can now run out of packed git repos 16:13:13 sweet 16:37:24 * SkyRocknRoll quit (Ping timeout: 264 seconds) 16:38:57 * a_le joined 16:51:12 * SkyRocknRoll joined 17:22:23 * DarkGod quit (Ping timeout: 265 seconds) 17:56:19 is there a Win32 bit version of lit? 18:03:49 lit is pure lua 18:03:55 but building it from 32-bit luvi is pretty simple 18:04:26 path\to\luvi.exe path\to\lit — make path\to\lit lit.exe 18:04:49 and lit can be a zip file or a folder 18:12:54 Though I am considering starting to publish prebuilt lit binaries since the submodules now require me to publish something other than a git tag for lit releases 18:13:38 maybe a tarball containing luvi, luvit, and lit? .tar.gz should compress the duplicated luvi binary nicly assuming the window is large enough 18:14:49 that would be a pretty big window though since luvi is around 3mb 18:19:11 hmm that won’t work lzma windows are around 32k 18:19:39 we could ship luvi.exe, lit.zip, and luvit.zip along with make.bat 18:20:29 this is essentially what get-lit.ps1 does, but it assembles the pieces on the fly so they can be versioned independently 18:22:59 I know, I could add a service to lit.luvit.io that generates lit friendly zip files with all dependencies pre-included 18:23:40 then all that would matter is what’s published to lit 18:51:54 * travis-ci joined 18:51:55 luvit/luv#360 (master - c3f5d7d : Tim Caswell): The build passed. 18:51:55 Change view : https://github.com/luvit/luv/compare/6bb8779e8dfe...c3f5d7dc44d0 18:51:55 Build details : http://travis-ci.org/luvit/luv/builds/65293917 18:51:55 * travis-ci part 18:53:27 * travis-ci joined 18:53:28 luvit/luvi#543 (master - e35b661 : Tim Caswell): The build passed. 18:53:28 Change view : https://github.com/luvit/luvi/compare/c97922c64163...e35b6619dca1 18:53:28 Build details : http://travis-ci.org/luvit/luvi/builds/65294021 18:53:28 * travis-ci part 19:03:45 rje: what if lit allowed you to specify a target arch when building luvi apps using lit make? 19:05:21 creationix, that would be ok, we'd still have to build lit with the least common denominator or run luvi for the arch pointed to a lit.zip 19:06:26 the buildbot is 64-bit windows right? 19:06:37 is it building luvi custom itself? 19:07:04 creationix, yeas to 64bit, no to building 19:07:22 that functionality is even removed from make.bat in virgo 19:07:48 are you using get-lit.ps1 in the build script to get lit? 19:08:31 https://github.com/virgo-agent-toolkit/rackspace-monitoring-agent/blob/fix/windows_package_uploads/Make.bat#L18 19:11:41 so how do you build the 32-bit version? Is you os 32-bit in that case or is it always 64-bit 19:12:49 we've always built both versions on 64 bit machines (there hasn't been a windows 32bit cloud server in a while). we have dedicated customers still running 32bit machines 19:13:23 so the CMAKE_GENERATOR variable is what chooses the type to build? 19:13:57 that's what i just added to get the packaging right, cmake ALWAYS defaults to 32bit 19:14:13 * rje finds that annoying 19:15:55 so the quickest solution is to add an option to get-lit.ps1 where you can choose the version of luvi to download through an environment variable or argument 19:16:10 and then set that variable or argument before building lit 19:16:24 right now it’s just hard-coded to 64-bit 19:16:56 https://github.com/luvit/lit/blob/master/get-lit.ps1#L5 19:17:42 replace amd64 with ia32 in LUVI_ARCH 19:18:10 that would be ideal, i can add another env var to the buildbot to choose the right luvi https://github.com/racker/buildbot/blob/master/master_agentbuild_cm/agent2.py#L73 19:20:28 * SkyRocknRoll quit (Remote host closed the connection) 19:21:45 I don’t know enough powershell, but it would be great if you could just set LUVI_ARCH in the cmake file and have it somehow use the custom version in the powershell script. 19:22:11 I know in Makefile you can do this where you use the env variable if set of use a default if not. 19:31:50 rje: I think this is how it’s done https://github.com/luvit/lit/blob/master/get-lit.ps1#L5-L10 19:32:27 creationix, that's exacly what i was going to try :) 19:32:55 cool 19:33:29 it’s very interesting that environment variables are a drive called env: 19:33:42 how very unix-like to expose them as files ;) 19:34:06 yeah, my head hurts thinking about it 20:03:40 creationix, does this change require a lit_version change? 20:04:00 depends on what url you’re using to download get-lit.ps1 20:04:07 if you’re using master it doesn't 20:04:14 if you’re using a lit tag, I need to cut a new tag 20:04:28 (and lit is currently not releasable so I’d need to move my current work to a topic branch) 20:04:49 I imagine you’re using a tag 20:04:56 https://github.com/virgo-agent-toolkit/rackspace-monitoring-agent/blob/fix/windows_package_uploads/Make.bat#L20 20:05:46 yep, tag 20:09:17 rje: https://github.com/virgo-agent-toolkit/rackspace-monitoring-agent/pull/739 20:16:33 rje: ok, update to 1.2.14 https://github.com/luvit/lit/tree/1.2.14 20:18:39 erm, I mean 1.2.15 20:19:06 * rphillips sets up httpd for proxy testing 20:19:55 https://github.com/luvit/lit/tree/1.2.15 20:29:03 thanks 20:33:30 * travis-ci joined 20:33:31 luvit/luv#361 (master - faff48d : Tim Caswell): The build passed. 20:33:31 Change view : https://github.com/luvit/luv/compare/c3f5d7dc44d0...faff48d2a635 20:33:31 Build details : http://travis-ci.org/luvit/luv/builds/65308581 20:33:31 * travis-ci part 20:35:40 * kazupon joined 20:36:28 * travis-ci joined 20:36:29 luvit/luv#362 (master - 2ebe83e : Tim Caswell): The build passed. 20:36:29 Change view : https://github.com/luvit/luv/compare/faff48d2a635...2ebe83e19957 20:36:29 Build details : http://travis-ci.org/luvit/luv/builds/65308893 20:36:29 * travis-ci part 20:42:56 * travis-ci joined 20:42:57 luvit/luv#363 (master - d29db98 : Tim Caswell): The build passed. 20:42:57 Change view : https://github.com/luvit/luv/compare/2ebe83e19957...d29db984d555 20:42:57 Build details : http://travis-ci.org/luvit/luv/builds/65309818 20:42:57 * travis-ci part 20:43:43 * travis-ci joined 20:43:44 luvit/luvi#544 (master - bdf1f51 : Tim Caswell): The build has errored. 20:43:45 Change view : https://github.com/luvit/luvi/compare/e35b6619dca1...bdf1f5189fee 20:43:45 Build details : http://travis-ci.org/luvit/luvi/builds/65309452 20:43:45 * travis-ci part 20:55:04 * ldub_ joined 21:03:20 hello you all 21:03:27 sup ldub_ 21:03:44 how things go ? 21:04:07 was wondering, do you have any roadmap or something ? 21:04:32 i said last time that i will maybe one day talk at a local conf first, and why not abroad if i feel it good. 21:04:43 are there any slides or resources about luvit's project ? 21:05:04 there were some old slides from luvit 0.x 21:05:21 I gave a couple talks and phillips (now at coreos) gave a few talks 21:05:41 okay are they still accurent ? 21:05:50 some parts are 21:05:57 luvit 2.0 is a little different architecture 21:06:10 in particular the binary bits are split apart from the lua bits and we now have lit 21:06:32 the luvit APIs are still based on node.js, we still use luajit + libuv 21:06:45 ok 21:06:58 i need to dig more in the general philosophy behind that 21:07:17 the original idea was to recreate node.js, but using luajit in place of v8 21:07:38 it worked, but there was very little interest in the project 21:08:15 JavaScript people didn’t like it because it was lua 21:08:28 i see yes 21:08:32 lua people didn’t like it because it had so much opinion and conventions (and used callbacks instead of coroutines) 21:08:36 and do you see things changing ? 21:09:10 well, the luvit metapackage still keep the old node.js style API, but luvit 2.0’s ecosystem is much easier to customize 21:09:27 I’ve been using coroutine based APIs almost exclusivly with lit and weblit 21:10:01 since luvit is not just a set of libraries you can pick and choose from, I can keep things like the require system and the pretty-printer, but provide my own I/O abstractions on top of libuv 21:10:05 s/not/now/ 21:10:32 also luv can be used standalone with lua, luajit, luarocks, etc 21:10:49 so it’s gaining some interest from the lua community 21:11:47 internally at rackspace we’re porting everything from luvit 0.x to luvit 2.0. The transition is almost complete 21:12:05 at production ? 21:12:12 yep 21:12:29 https://github.com/virgo-agent-toolkit/rackspace-monitoring-agent 21:13:01 the agent is packaged as a luvi app and published to lit https://github.com/virgo-agent-toolkit/rackspace-monitoring-agent/blob/luvi-up/package.lua 21:13:20 yes i've noticed that 21:13:38 i like Luvit's projects 21:14:10 I think lit is helping luvit do better this time around 21:14:24 having a way to share libraries is a large part of what made node popular 21:14:59 yes 21:15:14 i like very much this project's 21:15:49 i'm a beginner in Lua, coming from JEE world /php 21:16:07 full of potentiality 21:16:25 lua is pretty easy to learn. I like it 21:16:33 I learned both C and Lua when I originally made luvit 21:16:47 my background is PHP, Basic, Ruby, Python, and lots of JavaScript 21:16:49 are you coming from low level languages ? 21:17:08 ok 21:17:11 but the other members of the luvit core team come from more C level background 21:17:50 Lua is a very good abstraction layer 21:18:07 I’m designing a language like lua, but “better”. We’ll see if I ever finish it 21:18:26 ^^ 21:18:34 I want it to run on microcontrollers and servers and in browsers via a fast vm 21:18:53 will it be possible you only ? 21:19:03 would be great 21:19:17 * kazupon quit (Remote host closed the connection) 21:19:42 I was playing around with lisp style semantics last night, but using significant whitespace to remove most parens 21:20:04 impressive 21:20:11 i'm not at your level ^^ 21:20:33 https://gist.github.com/creationix/ab9e99102d2a40c0f82c 21:21:35 I’m not sure about the → and @ syntax, but it seems to work 21:23:01 .jkl ? 21:23:10 jack-lisp 21:23:25 the syntax and name are still in flux 21:24:01 i don't read def fib → λ [n] 21:24:06 don't understand 21:24:18 do you know any lisp dialects? 21:24:27 no ;-) 21:24:37 so much things to learn 21:24:42 :'( 21:24:44 in normal syntax it’s (def fib (lambda (n) …) 21:25:15 or in lua local fib = function (n) … end 21:25:29 i see ^^ 21:25:59 racket and some lisps combine assignment with lambda like (def (fib n) …) 21:26:09 but I find that the function name and arguments are hard to tell apart 21:26:16 interesting 21:26:32 and my arrow syntax makes it much terser to nest the lambda inside the def 21:27:03 easy later to understand so 21:27:28 right, lisp tends to introduce lots of macros to ease the pain of the verbose syntax 21:27:34 but if you don’t know the macros, it won’t make sense 21:27:41 you'r right 21:27:51 my system uses a couple rules around whitespace, indentation, arrows and @ instead 21:28:03 rphillips, creationix: 32 bit is good :) https://github.com/virgo-agent-toolkit/rackspace-monitoring-agent/pull/738 21:28:26 ok, and you did the compiler so ? 21:28:33 sweet! 21:28:48 rje: awesome 21:29:08 ldub_: I haven’t written this one yet, I just invented the syntax last night. But I’ve written several parsers and compilers in the past 21:29:41 ldub_: for a more conventional syntax, see the current jack syntax https://github.com/creationix/jack/blob/master/samples/syntax.jack 21:29:48 this one has a full interpreter implemented in node 21:30:20 creationix: so in your plan Luvit is just a short term goal but later want to rewrite all in jackl ? 21:30:31 not sure about that 21:30:47 jack and jackl are for my other project of teaching kids to code 21:31:17 ok 21:31:37 that's sounds good 21:31:38 luvit fits nicly into network servers/clients that use little memory 21:31:56 Iot things also ? 21:35:45 yep 21:36:00 games, robots, gui applications, cli tools 21:40:56 but performances and behavior are also good at high traffic http 21:41:07 (it seems to) 21:42:12 i did not precise benchmarks, but CPU and RAM are well managed for tiny tests 21:42:27 yep 21:42:43 compared to node, luvit is much better at memory usage and startup cpu costs 21:42:58 overall speed is similar, the two VMs have unique strengths 21:43:17 yes 21:43:28 plus with coroutines, you can block on I/O in app logic but still keep the performance of a single-threaded non-blocking event loop 21:43:52 that’s the main reason I created luvit. The memory savings and fast startup were the other big factor 21:44:25 and if we add share-nothing workers in threads, we can even do background processing on other CPU threads 21:46:22 * ldub_1 joined 21:46:32 rphillips, why does this return a 0 when its a FAIL? https://agentbuild.cm.k1k.me/builders/agent2-win2008_x64-Win64/builds/11/steps/run%20build/logs/stdio 21:47:33 * ldub_ quit (Ping timeout: 244 seconds) 21:47:38 creationix: Inter Luvi's Process communication can only be by pipes or sockets ? 21:48:13 rje: i think the batch file needs to call exit 21:48:28 with the %ERRORLEVEL% 21:48:39 ldub_1: right, same as node 21:49:00 you can pass file descriptors between processes though 21:49:10 I used that to make a high-performance http cluster 21:49:24 creationix: unix only ? 21:49:34 master process is bound and listening to the TCP port, but only the child processes accept the connections and process the request 21:49:43 I believe it works on windows too. Libuv did some magic 21:50:20 great 21:51:16 load balancing with a luvi's app also ? 21:53:14 right, FD sharing is a very fast and simple form of load balancing 21:53:26 you just can’t share state between the workers unless there is some other IPC channel 21:53:42 creationix: will you one day make it open source (http cluster) 21:53:45 but at least you don’t need to proxy between the master and workers 21:54:00 https://github.com/luvit/luvit/tree/master/bench/http-cluster 21:54:38 awesome 21:54:46 pretty much everything I do is open source, even internal rackspace stuff 21:55:01 you are lucky ^^ 21:55:23 :) 21:55:38 we are hireing btw if you’re ever looking 21:55:48 i've heard about 21:55:58 but i'm not sure i have the level 21:56:12 mostly what matters is a desire to learn 21:56:23 that's my primary goal 21:56:30 but yes experience with large production systems helps a lot 21:56:51 I’ve actually got some of the least production experience on the team, but I have tons of experience in other areas to make up for it 21:57:07 very impressive 21:58:23 do you have any details about what rackspace is looking for ? 22:00:00 don't have too many experiences in large production systems, but i can conceptualize it 22:00:42 https://github.com/rackspace/rackspace_jobs/tree/master/sfo_jobs 22:01:23 Cloud Monitoring is my team 22:01:33 like the philosophy behind 22:01:53 rje: are there any openings for the lua stuff? 22:02:21 creationix: yes 22:02:41 ok, the posting on github seems to focus on node and java, I was just wondering 22:02:53 how do you work, mostly decentralized ? 22:02:57 not that lua is hard to learn 22:03:22 the team is based in San Francisco, but it seems half the team is remote most days 22:03:40 I’m almost always remote as is the rest of us working on the lua stuff 22:04:06 very interesting 22:04:23 do you work with foreigns country ? 22:05:03 we have one guy on the team from Europe. I’ve had trouble referrinf people from South America due to visa issues. I don’t know much about it 22:05:37 still boundaries 22:06:26 It never hurts to ask. Each of the postings has contact info at the bottom. 22:07:07 creationix: thanks for it, i will dive more into it 22:07:27 I know other teams within rackspace have offices in LATAM, for example http://www.rackspace.com/blog/newsarticles/rackspace-opens-in-mexico-its-first-office-for-latin-america/ 22:07:39 rackspace as a whole is pretty open source friendly, not just my team 22:07:45 i'm in France right now 22:07:54 that should be fine I would expect 22:08:04 I know we have a huge office in UK 22:08:15 but can move 22:08:19 and one in Geneva i think 22:08:33 I’m in a small town in Texas 22:08:43 like me 22:09:41 ok, thank you for all, got to go 22:09:46 take care 22:10:46 * ldub_1 quit (Quit: Leaving.) 22:15:10 woo... got http proxy working... needs patches 22:15:19 but it's dinner time 22:16:29 [email protected] 22:16:30 ! 22:17:24 rphillips, do you remember some ICE validation fixes we had to do when building and msi on the buildbot? i have a vague memory of this... 22:27:40 so the new libuv has a new function to get the user’s home directory portably 22:27:56 rphillips, found it -sval 22:28:07 uv.os_homedir() 22:35:25 rphillips: do you care if I give Brian Maher credit for the lstat fix? 22:36:12 Nope. He should get it 22:37:16 https://github.com/luvit/luvi/commit/729175c556f1942c4cfc867c851904871f5335ae 22:37:27 dinner time, I can start the luvi build later if all looks good 22:37:53 rphillips, exes, msis built on the buildbot :) just need to sort out why uploads don't work. https://agentbuild.cm.k1k.me/builders/agent2-win2008_x64-Win64/builds/18/steps/run%20build/logs/stdio 22:38:57 so close 22:40:30 * travis-ci joined 22:40:31 luvit/luvi#545 (master - 729175c : Tim Caswell): The build has errored. 22:40:31 Change view : https://github.com/luvit/luvi/compare/bdf1f5189fee...729175c556f1 22:40:31 Build details : http://travis-ci.org/luvit/luvi/builds/65325410 22:40:31 * travis-ci part 22:40:38 nice 22:41:48 hmm, seems I forgot to push my luv changes 22:43:30 ok, dinner time for real 22:43:42 rje: the packagerepo target doesn't exist i bet 22:44:17 createrepo.cmake is for rhel, and reprepro.cmake is for debian 22:44:37 they only get included if we are building for that platform 22:46:05 * travis-ci joined 22:46:06 luvit/luv#364 (master - 278774c : Tim Caswell): The build passed. 22:46:06 Change view : https://github.com/luvit/luv/compare/d29db984d555...278774c2f00b 22:46:06 Build details : http://travis-ci.org/luvit/luv/builds/65326000 22:46:06 * travis-ci part 22:51:03 rphillips, k, will make a windows version of that, sigh 22:58:37 * a_le quit (Remote host closed the connection) 22:58:46 sorry it wasn't clearer 23:00:34 if i don't get it figured out tonight, i'll bug you for help tomorrow. 23:00:52 np 23:02:12 rje: i would put a else block here https://github.com/virgo-agent-toolkit/rackspace-monitoring-agent/blob/88f0f1fa456cc76664034d36471a1a5726428a89/CMakeLists.txt#L154 23:02:14 looking for windows 23:02:35 on line 75 it's checking for linux 23:03:09 or plop it into the win32 block on line 156 23:03:11 i think i see where i need to add it, i just need to set up all the variables fir the directories 23:03:18 sweet 23:04:40 * dan336 quit (Quit: Leaving.) 23:34:16 rphillips, simplified and works https://github.com/virgo-agent-toolkit/rackspace-monitoring-agent/commit/6dfbdc8015ab53afcbd181d83edb19d8b4e94217 23:35:11 just need a good way to detect if the msi is the ia32 version and copy that version up with the ia32 stripped 23:35:21 would like a bright idea for that 23:38:32 hmm. can we glob the filename? 23:39:16 not sure how to for that 23:39:21 within cmake 23:39:41 http://www.cmake.org/cmake/help/v3.0/command/file.html 23:40:04 file(glob SOME_VAR pattern(s) 23:40:06 ) 23:41:39 * a_le joined 23:41:49 rphillips, maybe you misunderstand me, we want to copy rackspace-agent-1.2.0-ia32.msi up as is AND up as rackspace-agent-1.2.0.msi 23:43:20 we also need to not upload on branch builds 23:45:11 creationix: hmmm. i need to rotate my ssh key with lit :/ 23:45:29 * a_le quit (Remote host closed the connection) 23:47:24 wait... perhaps my keyfile is mismatched 23:52:03 creationix: https://gist.github.com/rphillips/973492b99d3dc5f08eb8 23:52:42 i rotated my keys on github... lit auth rphillips completes successfully