[08:22] Morning. [09:17] Morning [09:40] morn [12:11] Morning peoples, critters and everything else [12:11] Morning v2 [12:12] o/ [12:24] \o/ [12:27] hey hey hey (come to FOSSCON) [12:43] I signed up! [22:22] Why are there so many ways to install Ruby? [22:48] ChinnoDog: ah! [22:48] arey ou still around? [22:48] for a change i'm not 100% focused on work and can actually lend a hand. [22:56] I'm about to attempt to fix the ruby problem on my server right now. It actually came up again because I was using a different piece of software. [22:56] I'm going to try taking the advice I found here: https://medium.com/@rdsubhas/ruby-in-production-lessons-learned-36d7ab726d99 [23:04] brightbox works [23:04] but i still prefer to use rbenv + binstubs to do my deployments [23:04] it tends to make them a little more bulletproof [23:05] i know several people who shun having build tools on prod servers though, so ymmv [23:05] and the bright box ppa is of high quality, and stays reasonably up to date [23:09] I tried installing ruby 2.0 and 2.2 and my ruby script in weechat is still broken. Maybe it is the script. [23:10] I dont recall the trace you were seeing, but i also dont know what the script is doing [23:10] The script file starts with a few requires. Do I have to build those? [23:11] if they are in the stdlib no - if they are gems you should probably gem install bundler, and bundle install the gems. [23:11] ruby gems are a lot like python modules, isolation is the best bet when workign with them. [23:12] lazyPower: Here you go. http://pastebin.com/SVRNu858 [23:13] ok so for context, this is with relation to the irc => slack gateway? [23:14] Yes. I'm trying to load a weechat script that preloads history when I connect to the gateway. [23:14] ok, do you have a .bundle directory there somewhere? [23:15] I pulled the script from https://github.com/thoughtbot/weechat-slacklog [23:15] Where do I look for that? Home directory? [23:15] in the directory your weechat plugins are located [23:15] i want to ensure there's not some bundler config override happening [23:16] There aren't any other folders in the plugin directory with that ruby file [23:16] ok, and when you run ruby -v what do you see? [23:17] Sorry, there is one folder that is called "autoload" that contains a link back to the ruby file. It is only intended to cause weechat to load it at startup. [23:17] Now that I've upgraded from BrightBox I get: https://github.com/thoughtbot/weechat-slacklog [23:17] oops [23:17] ruby 2.2.2p95 (2015-04-13 revision 50295) [x86_64-linux-gnu] [23:17] that [23:18] ok so far so good [23:18] I just did "sudo gem install bundler" since you thought I should have it. [23:19] can you run `irb` in the directory containing that script, then execute `require file` [23:19] looking over the header, this is all stdlib [23:19] we're goign to try to piss off ruby, and see if we cant dump some environment and figure out where its looking for gems [23:19] i imagine this is related to a malformed, or improper GEM_HOME [23:20] using "require file" in irb throws an error. [23:20] well `require file` - should be require weechat-slack [23:20] with quotes around weechat-slack [23:20] require "weechat-slack" [23:21] irb(main):006:0> require "./slacklog.rb" [23:21] => true [23:21] That? [23:21] ok, so slacklog isnt' throwing an error on load [23:22] s = SlackAPI(token=''foobazbar") [23:23] Where are you suggesting I type that? [23:23] in the irb console [23:23] if you have your token, use the actual token [23:25] I used the actual token and it doesn't do anything [23:25] still good [23:25] s is now an API object, we''re going to initate an HTTP request, 1 sec [23:26] It changed the last character of the irb prompt to a quotation mark. [23:26] ah that means you didn't close the quotes properly [23:26] perhaps a mismatch in quote type? or missing quote? [23:26] You used two single quotes to open the string and one double quote to close it. Which should it be? [23:27] use double quotes [23:27] my b [23:27] its late on a friday is my poor excuse :) [23:27] Now I get: NoMethodError: undefined method `SlackAPI' for main:Object [23:28] schenanigans [23:28] hang on [23:29] ok i've been in python too long [23:29] irb(main):006:0> s = SlackAPI.new(token='foobar') [23:29] you initialize classes in ruby with .new(**params) [23:30] with your module initialized, try fetching 2 messages from teh backlog [23:30] s.backlog('#dev', count=2) [23:30] i'm using #dev as an e xample, replace with a room that exists in your slack instance [23:31] It returned a message that I assume means it is successful since it is not an error. [23:31] will try backlog function now [23:32] It worked. It returned two lines from my #training channel [23:32] ok, try fetching a large amount and lets see if its the data thats coming back causing the error. [23:32] like if someone has a unicode character in their handle for example [23:33] like: Athénaïs [23:34] I just returned 50 lines and that was fine. [23:34] I am joined to a number of channels. It would take me awhile to test them all. [23:35] theres a way to do it programmatically - but theres 1 of 2 things going on [23:35] data coming back over the wire is causing this, or there's something in teh weechat init that is pointing to an older version of ruby [23:35] or an improper gem location or some such [23:35] its one of those two things, we've established the plugin loads and functions under normal circumstances [23:36] I looked back at the errors. It says it can't load net/https [23:36] and net/https is whats wraising the encoding error [23:36] But I don't know how that can be since I just returned files from Slack using irb. Wouldn't irb load the dependencies when it created the object? [23:37] yep [23:37] hmm [23:38] I'm going to restart weechat. One second. [23:41] Well, I created a new problem. lol [23:41] wooo [23:41] My /script command appears to be MIA [23:41] progress, different errors [23:41] ok - but [23:41] does the slack-backlog work? [23:41] or is that a prerequisit? [23:42] I don't know how to test it without /script! [23:43] are you running whats in archive or upstream ChinnoDog? [23:43] I just did an apt-get autoremove and it removed Ruby 1.9. idk if that will make a difference. [23:43] Of weechat? I'm using 1.3-dev from the PPA [23:43] that should keep you from having two rubies on your system. which is a good th ing [23:43] I'm going to try quitting weechat entirely instead of using the in place upgrade. brb [23:43] when you installed brigtbox it should have updated-defaults to the 2.x [23:44] right [23:44] ... [23:44] wait [23:44] you had not nuked the weechat instance since we started this? [23:44] that very well could be the issue. Stale environment surrounding weechat [23:44] which would make sense that net::http was failing to load encoding [23:44] The issue came up right after restarting weechat so I assumed that was nto the issue [23:45] hmm ok [23:45] I did an in place /upgrade a few minutes ago in case I accidentally downloaded a newer weechat binary since I did that. [23:46] I still have no /script command. lol [23:46] Clearly something has gone horribly wrong. [23:46] join me #weechat [23:47] lets ask upstream if they know why the missing /script [23:50] * lazyPower twiddles thumbs - and now we wait. [23:51] I didn't break openstack today \o/ [23:51] \o/ [23:51] Howdy pleia2 [23:52] o/ JonathanD [23:52] congrats pleia2! [23:52] ChinnoDog: looking over the docs, i wonder if it didn't brick your session files... i have no way of knowing [23:52] but sounds plausible [23:52] https://weechat.org/files/doc/stable/weechat_user.en.html <-- in here, looking for /upgrade [23:53] or maybe you need to run with the --upgrade flag? [23:54] ooh [23:54] I'll try that [23:54] didn't help [23:54] drat [23:55] You know what would be nice? Error messages. [23:55] ^ [23:56] I'm going to have to come back to this later. [23:57] allright, sorry this wasn't a simple fix ChinnoDog [23:57] 'sokay. I'll have to unbreak my weechat before any more "fixing" occurs. [23:57] well, at least we compound fractured it [23:57] * lazyPower hands you the duct tape [23:58] I need to do a quick investigation without any channel buffers.