Timestamps are in GMT/BST.
| 00:08:01 | | Platskies has joined |
| 01:07:11 | | Nothing_Much Quit (Ping timeout: 255 seconds) |
| 01:12:28 | | Nothing_Much has joined |
| 01:31:55 | | SolumnMushroom has joined |
| 01:46:17 | | kaen has joined |
| 01:53:43 | kaen | that was pretty dense for only three days worth of forum posts. |
| 01:59:12 | kaen | irclogs were mercifully thin though. |
| 02:26:50 | | Platskies Quit (Remote host closed the connection) |
| 02:56:53 | | Nothing_Much Quit (Ping timeout: 248 seconds) |
| 02:59:51 | | Platskies has joined |
| 03:10:07 | | Nothing_Much has joined |
| 03:24:12 | | Platskies Quit (Remote host closed the connection) |
| 03:37:49 | | Platskies has joined |
| 03:38:21 | | raptor has joined |
| 03:38:21 | | ChanServ sets mode +o raptor |
| 03:44:59 | raptor | oh hey kaen, welcome back |
| 03:45:07 | raptor | yes... i spoke little in IRC.. |
| 04:14:45 | raptor | wow, i'm reading up on curling... i had no idea how involved it was |
| 04:43:16 | | SolumnMushroom Quit (Quit: Leaving) |
| 05:09:42 | | bobdaduck has joined |
| 05:09:53 | bobdaduck | Oh, there's all the people |
| 05:10:23 | bobdaduck | Got on earlier and it was just me and logbot |
| 05:10:40 | raptor | BFLogBot appreciates your company |
| 05:11:00 | bobdaduck | I'll bet he does |
| 05:11:04 | bobdaduck | Wait, its a he right? |
| 05:11:08 | raptor | !bot |
| 05:11:08 | BFLogBot | I'm a real boy! |
| 05:11:24 | raptor | i think he self identifies that way, yes |
| 05:11:33 | bobdaduck | ah okay. |
| 05:17:55 | | bobdaduck Quit (Quit: Page closed) |
| 05:47:49 | | raptor Quit () |
| 06:03:09 | | Platskies Quit (Remote host closed the connection) |
| 06:06:21 | | Wuzzy Quit (Quit: Wuzzy) |
| 06:06:35 | | Platskies has joined |
| 07:34:19 | | Darrel has joined |
| 08:10:11 | | kodaws has joined |
| 08:17:45 | | Platskies Quit (Remote host closed the connection) |
| 08:30:26 | | Platskies has joined |
| 08:59:01 | | watusimoto has joined |
| 08:59:01 | | ChanServ sets mode +o watusimoto |
| 09:08:27 | | Platskies Quit (Remote host closed the connection) |
| 09:50:12 | | LordDVG has joined |
| 09:52:57 | | LordDVG Quit (Remote host closed the connection) |
| 10:02:08 | | Platskies has joined |
| 10:21:18 | | Platskie_ has joined |
| 10:21:18 | | Platskies Quit (Read error: Connection reset by peer) |
| 10:40:24 | | Darrel Quit (Ping timeout: 248 seconds) |
| 10:52:38 | | Darriel has joined |
| 11:30:51 | kaen | <raptor> i think he self identifies that way, yes |
| 11:31:02 | kaen | oh, my sides |
| 12:16:48 | | Watusimoto_ has joined |
| 12:18:18 | | Platskie_ Quit (Remote host closed the connection) |
| 12:18:57 | | Darriel Quit (Ping timeout: 240 seconds) |
| 12:22:45 | | Darriel has joined |
| 12:23:01 | | Darriel is now known as Darrel |
| 12:30:16 | | Darrel Quit (Ping timeout: 248 seconds) |
| 12:31:28 | | Darrel has joined |
| 12:31:45 | | watusimoto Quit (Ping timeout: 252 seconds) |
| 12:37:32 | | Nothing_Much Quit (Ping timeout: 252 seconds) |
| 12:44:57 | | Darrel Quit (Ping timeout: 252 seconds) |
| 12:50:16 | | Watusimoto has joined |
| 12:50:35 | | Nothing_Much has joined |
| 12:53:21 | | Watusimoto_ Quit (Ping timeout: 252 seconds) |
| 13:22:16 | | Watusimoto Quit (Ping timeout: 256 seconds) |
| 15:00:47 | | raptor has joined |
| 15:00:47 | | ChanServ sets mode +o raptor |
| 15:33:42 | raptor | argh |
| 15:33:59 | raptor | i've been trying the suggestions in that SO question I started about the levelgen |
| 15:34:30 | raptor | everything looks normal |
| 17:03:26 | | Wuzzy has joined |
| 17:07:56 | | watusimoto has joined |
| 17:07:56 | | ChanServ sets mode +o watusimoto |
| 17:20:20 | raptor | happy president's day! |
| 17:20:45 | raptor | although, honestly, i feel like this day was introduced just so gov't workers could get a day off on the taxpayer's dime |
| 17:21:01 | raptor | and i say that because my dad said that, and he worked for the state of connecticut |
| 17:21:06 | raptor | :) |
| 17:21:23 | raptor | but at least i have school off... |
| 17:28:04 | watusimoto | I don't buy it |
| 17:28:20 | raptor | hi |
| 17:28:25 | watusimoto | we used to get washington's birthday off when I was a kid, then they combined it all into presidents day |
| 17:28:26 | watusimoto | hi |
| 17:28:32 | raptor | oh yeah! |
| 17:28:39 | raptor | i remember now.. lincoln's and washingtons |
| 17:28:53 | watusimoto | so maybe they get fewer days off now |
| 17:28:58 | raptor | heh |
| 17:31:38 | watusimoto | so here's a lua test to try |
| 17:31:45 | raptor | so i've been doing loads of Lua test |
| 17:31:50 | watusimoto | take the levelgen that crashes |
| 17:31:53 | raptor | ok |
| 17:31:56 | watusimoto | add the pcall wrapper test to it |
| 17:31:58 | raptor | (i have it up right now..) |
| 17:32:33 | watusimoto | then if the pcall fails, print a message, and try calling the same function using the "never fails" method from my SO question |
| 17:32:42 | watusimoto | and see if it really never fails |
| 17:32:53 | watusimoto | and if so, post that info on your SO question |
| 17:32:56 | raptor | which SO question? |
| 17:33:10 | watusimoto | the one I posted about the same issue -- you linked to it in yours |
| 17:33:17 | raptor | ah ok |
| 17:33:23 | watusimoto | http://stackoverflow.com/questions/14655949/why-does-one-work-and-one-crash |
| 17:33:29 | raptor | so basically in the failed pcall, just call it again? |
| 17:33:38 | watusimoto | yes, but using the other method |
| 17:34:11 | watusimoto | Perhaps put the whole thing ina loop, and try it 1000 times; perhaps seeing if after it fails it ever succeeds again |
| 17:34:14 | watusimoto | and so on |
| 17:34:37 | watusimoto | do you follow what I'm describing? |
| 17:34:44 | watusimoto | for i = 1 to 10000 |
| 17:34:56 | watusimoto | t = new textItem |
| 17:35:10 | watusimoto | pcall(t:setText("b0rk") |
| 17:35:10 | raptor | oh, the grab metatable first method? |
| 17:35:27 | watusimoto | if error then grab metatable; try again end |
| 17:35:31 | watusimoto | next |
| 17:35:45 | watusimoto | something like that |
| 17:35:55 | watusimoto | with logging at the various steps to show what's happening |
| 17:36:32 | raptor | ok |
| 17:36:44 | watusimoto | I also have another theory |
| 17:36:49 | watusimoto | because the levelgens are failing |
| 17:36:51 | raptor | just so you know |
| 17:37:13 | raptor | i've been printing out every conceivable object before and after something fails |
| 17:37:15 | watusimoto | perhaps it was a problem introduced by the refactors of other lua stuff I did |
| 17:37:25 | raptor | and they *always* match like nothing is wrong |
| 17:37:35 | watusimoto | yes, that was my finding as well |
| 17:37:53 | watusimoto | it has to be either 1) a lua error or 2) memory corruption |
| 17:38:09 | raptor | i did find where in Lua to add a break point when it fails |
| 17:38:15 | raptor | ldo.c:466 |
| 17:38:17 | watusimoto | I did too at one point |
| 17:38:18 | watusimoto | ok |
| 17:38:23 | raptor | but i can't read anything there |
| 17:38:35 | watusimoto | one thing to think about is to trace the lua stuff during a non-failing call |
| 17:38:44 | watusimoto | then trace it during a failing call |
| 17:38:48 | watusimoto | and see where the two diverge |
| 17:39:11 | watusimoto | I started doing that, but got completely lost in the lua |
| 17:39:34 | watusimoto | of course, it was harder for me to do that with the bots because they might cycle 1000 times before failing |
| 17:39:36 | | kodaws Quit (Ping timeout: 248 seconds) |
| 17:39:52 | watusimoto | it sounds like you can reproduce more easily with the levelgens |
| 17:39:56 | raptor | by 'trace' you mean follow a call path |
| 17:39:58 | raptor | ? |
| 17:39:59 | watusimoto | yes |
| 17:40:13 | watusimoto | I need to go in about 2 mins -- any progress on desura? |
| 17:40:25 | watusimoto | do I need to ping them again? |
| 17:41:12 | raptor | oh hey |
| 17:41:17 | raptor | i got a response! |
| 17:41:22 | raptor | (after a week) |
| 17:41:51 | raptor | "We have decided to change the way we do things on Linux. You will need to include those libraries yourself with the game. We are trying to phase out the dependencies libraries and have developers just include them with their game. We are also moving to one Linux branch and then the developer will need a script to choose between the 32/64 and launch the right one." |
| 17:42:30 | watusimoto | what a pain |
| 17:42:36 | watusimoto | or is that ok? |
| 17:42:41 | raptor | so honestly, it sounds like they're giving up on Linux |
| 17:42:43 | raptor | it's a pain |
| 17:42:45 | raptor | for sure |
| 17:43:01 | watusimoto | why can't we just gzip those libraries up with our binary? |
| 17:43:12 | raptor | we can |
| 17:43:19 | watusimoto | why is that a pain? |
| 17:43:47 | raptor | we'd need a wrapper script to load the libraries from some directory first |
| 17:43:52 | raptor | i hate wrapper scripts |
| 17:44:32 | watusimoto | should we not distribute a linux build via desura? |
| 17:45:10 | raptor | i'm thinking no, for now |
| 17:45:34 | watusimoto | ok, I'll contact them and tell them to move forward with the windows release while we work out the linux one |
| 17:45:41 | raptor | ok |
| 17:45:46 | watusimoto | and we can silently drop it |
| 17:45:50 | raptor | sounds good |
| 17:50:16 | watusimoto | ok, later |
| 17:50:20 | raptor | bye bye |
| 17:55:55 | | watusimoto Quit (Ping timeout: 260 seconds) |
| 18:16:10 | | Watusimoto has joined |
| 18:16:58 | raptor | new badge idea: Read documentation in the INI |
| 18:19:39 | raptor | oops, sorry |
| 18:43:36 | | Watusimoto Quit (Ping timeout: 248 seconds) |
| 19:54:07 | raptor | kaen: you around? |
| 20:08:26 | | Watusimoto has joined |
| 20:11:15 | Watusimoto | hi |
| 20:11:20 | raptor | hi hi |
| 20:11:23 | raptor | ok, new idea |
| 20:11:33 | raptor | stackoverflow.com/questions/13606066/lua-avoid-overloading-of-pcall-and-lua-callstack |
| 20:11:41 | raptor | also, i did the test you wanted |
| 20:11:59 | Watusimoto | result? |
| 20:12:55 | raptor | result: http://pastie.org/6217025 |
| 20:13:02 | Watusimoto | wait, you aren't qix, are you? |
| 20:13:05 | raptor | and everything worked! |
| 20:13:11 | raptor | no |
| 20:13:21 | raptor | but i found that when searching by symptom |
| 20:14:11 | Watusimoto | ok, but that seems to be all about threads |
| 20:14:15 | Watusimoto | which we aren't using |
| 20:14:16 | raptor | i've also asked the naev guys if they had any thoughts - their response: "please tell me you're executing a copy of each script in each thread" |
| 20:14:35 | raptor | "and not the same thread or same copy" |
| 20:14:49 | Watusimoto | yeah, same thread |
| 20:15:01 | Watusimoto | because... why not? |
| 20:15:34 | Watusimoto | lua threads != threads |
| 20:16:11 | Watusimoto | as in a lua script with multiple threads isn't really "multithreaded" in the sense you would ordinarily refer to |
| 20:16:12 | Watusimoto | I think |
| 20:16:25 | raptor | this is a world i have not explored yet.. |
| 20:16:36 | | YoshiSmb has joined |
| 20:17:17 | Watusimoto | ok |
| 20:17:21 | Watusimoto | so read the pastie |
| 20:17:23 | raptor | our problems just feel suspiciously like thread issues |
| 20:17:33 | Watusimoto | and I don't understand |
| 20:17:45 | raptor | when the script runs, i dump the metatable |
| 20:17:49 | Watusimoto | you said everything worked |
| 20:17:52 | raptor | let me get you my test script |
| 20:18:00 | Watusimoto | yet I see lots of pcall failed |
| 20:18:22 | raptor | http://pastie.org/6217138 |
| 20:18:25 | raptor | yes, so |
| 20:18:38 | | YoshiSmb has left |
| 20:19:13 | raptor | the pcall failed at all 441 calls, but grabbing the metatable in the 'catch' error method and calling the method again worked for all 441 |
| 20:19:19 | raptor | 441 = 21^2 |
| 20:19:22 | raptor | 0...20 |
| 20:23:03 | | LordDVG has joined |
| 20:24:14 | Watusimoto | raptor: who does our linux building? i.e. what service do you use to create all the different installers? |
| 20:24:23 | raptor | build.opensuse.org |
| 20:24:27 | raptor | the open build service |
| 20:24:45 | raptor | here is the package page: https://build.opensuse.org/package/show?package=bitfighter&project=games |
| 20:30:06 | Watusimoto | ok, sent message to desura |
| 20:30:15 | raptor | great, thanks |
| 20:31:00 | Watusimoto | debian 6 == Ubuntu (as well as debian) right? |
| 20:31:06 | raptor | yes |
| 20:31:16 | Watusimoto | so we are building for debian and suse only |
| 20:31:29 | raptor | well... we *were* also doing mandriva and fedora |
| 20:31:29 | Watusimoto | I thought there were more platforms included |
| 20:31:35 | Watusimoto | yes, I thought so |
| 20:31:40 | Watusimoto | what happened there? |
| 20:32:01 | raptor | someone went in and cleared out all the non-suse builds of anything in the games repo (just last week) |
| 20:32:15 | raptor | i got debian back in |
| 20:32:21 | raptor | i need to get fedora back i think... |
| 20:32:33 | Watusimoto | why did they do that? |
| 20:33:20 | raptor | it was a little rash, in my opinion: they said building all the games for those platforms was wasting a lot of server resources because 100s were failing to build |
| 20:33:35 | raptor | but the simple solution is to just turn off the platforms by default |
| 20:33:51 | Watusimoto | ye |
| 20:33:52 | Watusimoto | s |
| 20:33:59 | raptor | so i have to get fedora back still |
| 20:34:14 | Watusimoto | or they could have deleted just the failing ones |
| 20:34:16 | raptor | i don't think mandriva is that important... it's a practically dead distro |
| 20:34:19 | raptor | yes! |
| 20:34:23 | Watusimoto | duh! |
| 20:34:47 | Watusimoto | I am rather confused by the desura email system -- did you get a copy of my message? |
| 20:34:54 | raptor | uhh |
| 20:34:55 | raptor | looking |
| 20:35:18 | Watusimoto | I'm happy to paste it -- just trying to understand as the system provides no feedback who gets the msg |
| 20:36:10 | raptor | didn't get an e-mail... |
| 20:36:15 | Watusimoto | ok |
| 20:36:23 | raptor | but i see your message |
| 20:36:25 | raptor | in desura |
| 20:36:35 | Watusimoto | ok, that's all I expected |
| 20:36:44 | Watusimoto | this structure is overly confusing: http://download.opensuse.org/repositories/games/Debian_6.0/ |
| 20:36:58 | Watusimoto | how's a sorry little ubuntu user going to find their package? |
| 20:37:13 | raptor | heh |
| 20:37:13 | Watusimoto | the folders are hidden amongst a lot of noise |
| 20:37:19 | raptor | here: |
| 20:37:43 | raptor | wait... finding the *proper* link |
| 20:38:26 | raptor | http://software.opensuse.org/download.html?project=games&package=bitfighter |
| 20:38:39 | raptor | there are front pages that work better... |
| 20:39:19 | raptor | good message to desura, thanks |
| 20:39:46 | Watusimoto | oh great, apt-get support! |
| 20:39:51 | raptor | :) |
| 20:40:01 | raptor | see... the OBS is great! |
| 20:40:14 | Watusimoto | yes, it really is |
| 20:40:24 | Watusimoto | installing in Linux is such a mess |
| 20:40:37 | Watusimoto | someone really needs to engineer a uniform solution |
| 20:40:44 | raptor | heh |
| 20:40:59 | raptor | the OBS is pretty much the state-of-the-art solution... |
| 20:41:02 | raptor | to the problem |
| 20:41:02 | Watusimoto | the build service is a good step, but really it's kind of a hack |
| 20:41:07 | raptor | it totally is |
| 20:41:14 | Watusimoto | it's a sign of deeper rot |
| 20:41:23 | raptor | yeah, the issue is 'fragmentation' |
| 20:41:33 | raptor | I don't even consider Linux a cohesive platform |
| 20:41:46 | Watusimoto | I do, but I probably shouldn't |
| 20:42:05 | raptor | every few years some system gets popular (like with Ubuntu) |
| 20:42:08 | Watusimoto | I mean, we can;t even agree on apt-get vs. yum vs. rpm... why all the duplication? |
| 20:42:10 | raptor | then replaced |
| 20:42:18 | raptor | so |
| 20:42:30 | raptor | just to correct your terminology |
| 20:42:38 | raptor | apt-get is to DEB as yum is to RPM |
| 20:42:59 | Watusimoto | I thought there was a separate rpm system... perhaps I was mistaken |
| 20:43:09 | raptor | RPM is just the file format |
| 20:43:11 | Watusimoto | so are there only two? |
| 20:43:14 | raptor | with it's won system database |
| 20:43:16 | raptor | *own |
| 20:43:19 | raptor | just like DEB |
| 20:43:52 | raptor | yum/apt-get are installation frameworks that interface with the file formats |
| 20:43:57 | raptor | well |
| 20:44:01 | raptor | actually there's more |
| 20:44:17 | raptor | slackware / arch /etc. use straight tarballs |
| 20:44:24 | Watusimoto | I will say that (when it works, and when the versions installed aren't pathetically out of date) apt-get works great, much easier than windows installers |
| 20:44:25 | raptor | and somehow keep their own database |
| 20:44:40 | Watusimoto | source tarballs? |
| 20:44:59 | raptor | nope, precompiled binaries distributed as tar.xz or tar.bz2 etc |
| 20:45:17 | Watusimoto | which we do not distribute, correct? |
| 20:45:29 | raptor | nope |
| 20:45:46 | raptor | the arch guys are pretty good at staying on top of things themselves |
| 20:45:54 | raptor | they have a highly motivated distro.. |
| 20:45:57 | Watusimoto | I have no idea if anyone uses arch, but slackware always seemed popular |
| 20:46:08 | raptor | suse actually came from slackware originally |
| 20:46:29 | Watusimoto | what do you mean by "staying on top themselves"? Surely they aren't building Bitfighter packages! |
| 20:46:43 | raptor | they are! |
| 20:47:01 | raptor | https://aur.archlinux.org/packages/bitfighter/ |
| 20:47:06 | raptor | oh... they missed 018 |
| 20:47:14 | raptor | usually they've been better than getdeb |
| 20:47:47 | raptor | but i think getdeb is dead.. |
| 20:48:18 | Watusimoto | wow |
| 20:48:26 | raptor | yeah so linux... |
| 20:48:36 | Watusimoto | any way we can trigger them to rebuild? |
| 20:48:54 | raptor | i could spend all my time trying to get things built for the various distros |
| 20:49:01 | raptor | not sure.. |
| 20:49:18 | Watusimoto | ah, pacman, that's another apt-get like thing |
| 20:49:29 | raptor | generally speaking, the page hit ranking on the right of this page: http://distrowatch.com/ |
| 20:49:43 | raptor | is a good indicator of what distros to build for |
| 20:49:51 | raptor | oh no! |
| 20:49:57 | raptor | mageia is there |
| 20:50:07 | raptor | argh, thats the mandriva fork fork |
| 20:50:33 | Watusimoto | Mageia? never heard of them! |
| 20:50:44 | Watusimoto | ha, didn't see your comment |
| 20:50:58 | raptor | or madrake fork fork fork |
| 20:51:02 | raptor | *mandrake |
| 20:51:09 | Watusimoto | "goal is to develop a free Linux-based operating system." |
| 20:51:09 | raptor | something like that.. |
| 20:51:14 | Watusimoto | unlike... everyone else? |
| 20:51:14 | raptor | haahaha |
| 20:52:11 | Watusimoto | wow... there aer a lot of linuxes out there... I would have guessed 10 or 12 |
| 20:52:47 | raptor | you need to look at this: https://upload.wikimedia.org/wikipedia/commons/thumb/1/1b/Linux_Distribution_Timeline.svg/131px-Linux_Distribution_Timeline.svg.png |
| 20:53:00 | raptor | oops: https://upload.wikimedia.org/wikipedia/commons/1/1b/Linux_Distribution_Timeline.svg |
| 20:53:11 | raptor | that will give you a *proper* feel for the linux world |
| 20:53:55 | | bobdaduck_mobile has joined |
| 20:54:02 | bobdaduck_mobile | mornin gents |
| 20:54:10 | raptor | good afternoon |
| 20:54:17 | Watusimoto | good lord |
| 20:54:22 | Watusimoto | hi |
| 20:54:31 | bobdaduck_mobile | what? |
| 20:54:33 | raptor | yeah, so, lots of history |
| 20:54:45 | Watusimoto | We need a Bitfighter Linux, customised to playing Bitfighter |
| 20:54:53 | Watusimoto | we could take mint and repackage it |
| 20:55:00 | Watusimoto | Bintfighter |
| 20:55:05 | Watusimoto | Mintfighter |
| 20:55:11 | raptor | bobdaduck_mobile: this will give you a good feel for the linux world and its highly cohesive ecosystem: https://upload.wikimedia.org/wikipedia/commons/1/1b/Linux_Distribution_Timeline.svg |
| 20:55:15 | raptor | i like mintfighter |
| 20:55:49 | Watusimoto | yeah... that's way too much duplication. How many different approaches could there really be? |
| 20:56:00 | raptor | as many as there are different people in the world |
| 20:56:50 | Watusimoto | but really... a different splash screen is not a different approach |
| 20:57:33 | raptor | so i fully understand desura's problem with Linux.. because it's everyone's problem with Linux |
| 20:57:41 | raptor | oh |
| 20:57:45 | Watusimoto | yup |
| 20:57:54 | raptor | Valve's steam client just went gold on Linux |
| 20:57:55 | Watusimoto | I understand it too, but didn't know quite how bad it was |
| 20:58:00 | Watusimoto | I heard that |
| 20:58:07 | Watusimoto | I wonder how they deal with it |
| 20:58:48 | | Wuzzy2 has joined |
| 20:58:55 | raptor | they say it's supported well on ubuntu 12.04 |
| 20:59:16 | raptor | and allow other distros to repackage the client how they see fit |
| 20:59:22 | raptor | as for games + libraries, i'm not sure |
| 20:59:42 | raptor | but i bet they provide their own libraries because it's in their best interest to make it easy for the end user |
| 20:59:48 | raptor | unlike the rest of the Linux world... |
| 21:00:52 | bobdaduck_mobile | I think trying to load that crashed my phone. |
| 21:00:59 | raptor | ha! |
| 21:01:50 | | Wuzzy Quit (Ping timeout: 255 seconds) |
| 21:02:32 | Watusimoto | ok well, we can be done with desura until we hear back |
| 21:02:38 | Watusimoto | or get tired of waiting |
| 21:02:38 | raptor | yay |
| 21:04:45 | raptor | this looks interesting: http://unknownworlds.com/decoda/download/ |
| 21:04:52 | raptor | too bad i'd need to run it in a VM.. |
| 21:05:21 | raptor | a new age has dawned!: our 2nd-born can now climb onto chairs |
| 21:05:34 | raptor | (and he's been able to push them around for a while..) |
| 21:07:52 | Watusimoto | quick favor: |
| 21:07:53 | Watusimoto | What is the output of "date -u +%V$(uname)|sha256sum|sed 's/\W//g'"? |
| 21:08:06 | raptor | d2a291c6bf4fad8aaf7442433364ab6bfb2eecd969885543bfd1e4071db8633b |
| 21:08:21 | Watusimoto | I'm trying to register for the arch forms to ask how to update the bf package, and that's their captcha |
| 21:08:25 | Watusimoto | useless to me |
| 21:08:28 | raptor | hahaha |
| 21:08:33 | raptor | wow |
| 21:08:37 | raptor | i love those guys already |
| 21:08:38 | Watusimoto | almost like they don't want me around |
| 21:09:49 | | Darrel has joined |
| 21:10:04 | raptor | the arch forums are notorious for being very helpful |
| 21:10:15 | raptor | and having really smart people |
| 21:10:34 | raptor | and making you feel stupid because the intelligence gap sometimes seems so large |
| 21:10:39 | raptor | but very helpful |
| 21:11:22 | | raptor goes to check out mageia |
| 21:14:29 | | bobdaduck_mobile Quit (Ping timeout: 245 seconds) |
| 21:15:51 | raptor | i'm not going to build for mageia yet... it looks like it may just be popular at the moment.. |
| 21:21:00 | Watusimoto | https://bbs.archlinux.org/viewtopic.php?pid=1233797#p1233797 |
| 21:21:15 | Watusimoto | hopefully we can just trigger something at reubuild time to keep them up-to-date |
| 21:21:16 | raptor | haha, 'general' |
| 21:23:45 | raptor | so yeah, i'd say the popular distros would be good to have: debian, ubuntu, fedora, opensuse, arch |
| 21:24:08 | Watusimoto | and mint |
| 21:24:17 | raptor | debian + ubuntu + derivatives would take care of like 80% |
| 21:24:22 | raptor | mint == derivative |
| 21:24:33 | Watusimoto | regardless, we have all of them except fedora |
| 21:24:39 | Watusimoto | (assuming arch comes through) |
| 21:24:42 | raptor | ok, working on it! |
| 21:26:01 | Watusimoto | do you think desura changed their linux strategy because of us? |
| 21:26:11 | raptor | maybe! :) |
| 21:26:22 | raptor | we broke the came's back |
| 21:26:26 | raptor | *camel's |
| 21:26:37 | Watusimoto | the way tim's email sounds, I think it may be |
| 21:27:01 | Watusimoto | maybe things weren |
| 21:27:08 | Watusimoto | 't working well anyway |
| 21:27:20 | Watusimoto | and, as you said, we were the final nail in the coffin |
| 21:27:26 | raptor | yeah - and it's worse because we're completely free and would generate no revenue for them, but making a lot of work |
| 21:27:33 | Watusimoto | yup |
| 21:27:42 | Watusimoto | though we would help build their system |
| 21:27:53 | Watusimoto | or rather add more content |
| 21:28:23 | raptor | i keep wondering if we did something wrong... but maybe we just woke them up to the realities of Linux |
| 21:28:42 | Watusimoto | but surely we presented no issues they hadn't encoutered before |
| 21:28:48 | raptor | yes |
| 21:28:59 | Watusimoto | maybe speex is an unusual lib, but everything else was pretty common |
| 21:29:12 | Watusimoto | and many other games must use their own unusual libs |
| 21:30:16 | raptor | sadly fedora doesn't build bitfighter: http://koji.fedoraproject.org/koji/search?match=glob&type=package&terms=bitfighter |
| 21:30:28 | raptor | but i was sure CrazyLinuxNerd got it there at one point |
| 21:31:35 | raptor | so I have a choice |
| 21:31:53 | raptor | i *could* use my home project in the OBS to build and add any repo I want |
| 21:32:22 | raptor | OR, I can try and convince the 'games' project maintainers to put back fedora, etc. |
| 21:32:54 | raptor | using home repo == more control, a little lack of legitimacy |
| 21:39:09 | Watusimoto | I think better to try to convince, if that's feasible |
| 21:39:28 | raptor | already chose that route :) |
| 21:40:50 | Watusimoto | ok, flagged package as out of date on Arch, added that step to the release checklist |
| 21:42:53 | raptor | ok |
| 21:44:02 | raptor | I don't even know how to respond to my Lua question |
| 21:44:23 | raptor | tried everything, everything looks good, it still fails |
| 21:44:26 | raptor | "" |
| 21:44:35 | Watusimoto | see https://bbs.archlinux.org/viewtopic.php?pid=1233813#p1233813, frank604 |
| 21:45:10 | raptor | actually, that's a good idea |
| 21:45:17 | raptor | OBS allows that, in fact... i forgot about that |
| 21:47:55 | kaen | hi all |
| 21:48:09 | kaen | just read the log, I'm familiar with the arch pacman system if you all have questions. |
| 21:48:22 | kaen | AUR is user-run stuff, you just register and update it yourself iirc |
| 21:48:40 | kaen | bitfighter likely wouldn't make it into the main repo |
| 21:49:40 | | Darrel Quit (Read error: Connection reset by peer) |
| 21:49:46 | raptor | hi kaen |
| 21:49:55 | kaen | hello hello |
| 21:50:21 | Watusimoto | should we add that to the checklist? |
| 21:50:39 | Watusimoto | hi kaen |
| 21:50:43 | raptor | add it under the section of OBS |
| 21:50:47 | Watusimoto | ok |
| 21:50:57 | raptor | update linux build systems': OBS, AUS, etc. |
| 21:51:08 | kaen | I only say that because you'd have to convince an Arch dev to maintain the package, but any user can update the AUR |
| 21:51:18 | kaen | including a skilled bitfighter fan |
| 21:51:24 | raptor | heh |
| 21:52:01 | Watusimoto | anyone can update aur?? |
| 21:52:02 | raptor | wow, did they write their own variation of a SPEC file?: https://aur.archlinux.org/packages/bi/bitfighter/PKGBUILD |
| 21:52:08 | kaen | well, you submit the update |
| 21:52:09 | kaen | but yes |
| 21:52:46 | kaen | yep that's pretty much exactly what it looks like raptor |
| 21:53:11 | kaen | there's a command to make a scaffold file, but all you need is the PKGBUILD and there are tools to pull in the rest |
| 21:53:35 | kaen | but there's no apt-get style system for AUR packages, they (or the PKGBUILDs) have to be manually retrieved |
| 21:55:32 | Watusimoto | Don't forget to vote! |
| 21:55:33 | Watusimoto | https://aur.archlinux.org/packages/bitfighter/vote/ |
| 21:57:44 | raptor | need to register... and raptor is taken! |
| 21:57:49 | kaen | D: |
| 21:58:03 | kaen | "kaen" is taken nethack.alt.org |
| 21:58:05 | Watusimoto | generalraptor! |
| 21:58:10 | kaen | by someone who has never even played a single game :< |
| 21:58:22 | kaen | taken on* |
| 21:58:33 | Watusimoto | or, if you are feeling less grandiose, colonelraptor, or maybe leutennantraptor |
| 21:58:39 | Watusimoto | or whatever |
| 21:58:44 | raptor | haha, i actually did use 'generalraptor' |
| 21:58:52 | Watusimoto | ha |
| 21:59:06 | Watusimoto | not airmanfirstclassraptor |
| 21:59:16 | Watusimoto | staffseargantraptor |
| 22:00:02 | raptor | ok wait |
| 22:00:05 | raptor | i registered on AUR |
| 22:00:13 | raptor | different login than forums?? |
| 22:00:18 | kaen | I believe so. |
| 22:00:22 | raptor | bah |
| 22:01:30 | Watusimoto | yes |
| 22:01:38 | Watusimoto | different |
| 22:01:44 | Watusimoto | so where were we on the lua bug thing |
| 22:02:18 | raptor | i hate his bug |
| 22:02:24 | kaen | I'm lost in the sauce on this one guys... |
| 22:02:32 | Watusimoto | you were saying everything worked, by which I think you meant that the script triggered 4xx failuures, but that the alternative attempt to access the metatable always worked |
| 22:02:40 | raptor | kaen: did you see this?: stackoverflow.com/questions/13606066/lua-avoid-overloading-of-pcall-and-lua-callstack |
| 22:02:43 | kaen | yep |
| 22:02:48 | raptor | Watusimoto: yes |
| 22:02:52 | raptor | err, correct |
| 22:03:05 | Watusimoto | did you confirm that once the pcall fails, it never works again? |
| 22:03:37 | raptor | how do you mean? when the script starts the first call fails, then every one after that fails... |
| 22:03:43 | Watusimoto | yes |
| 22:03:47 | Watusimoto | ok, you confirmed that? |
| 22:03:56 | raptor | so far it looks that way... |
| 22:03:58 | Watusimoto | ok |
| 22:04:06 | raptor | i should test with sam686's original test case |
| 22:04:17 | Watusimoto | so that argues against the mutlple metatable theory |
| 22:04:26 | Watusimoto | under that theory, it would randomly work again |
| 22:04:48 | Watusimoto | if you know what I'm talking about |
| 22:04:51 | raptor | yes |
| 22:04:57 | Watusimoto | referring to the idea ... ok |
| 22:05:05 | raptor | i was thinking that that was one cause |
| 22:05:08 | Watusimoto | so kaen, here's my assessment of where we are with the sauce |
| 22:05:27 | Watusimoto | I think it's either 1) memory corruption or 2) lua bug |
| 22:06:11 | raptor | Watusimoto: we have two 'branches' now in the repo |
| 22:06:12 | Watusimoto | and I think it's not 1) because corruption is very consistent, and seems to affect program space, not really heap space (or whatever mallocable memory is called) |
| 22:06:20 | Watusimoto | raptor: is that good? |
| 22:06:20 | raptor | the 'lua52' branch, and 'main' |
| 22:06:41 | Watusimoto | there is one other theory we haven't explored at all |
| 22:07:10 | kaen | misanthropic code-dwelling gnomes? |
| 22:07:12 | Watusimoto | we've been focusing on luaw stuff (or at least I was before I left for a week) because that's what bisect suggested |
| 22:07:19 | Watusimoto | ok, two theories |
| 22:07:27 | Watusimoto | gnomes and... |
| 22:08:12 | Watusimoto | could it be possible that changes to the other lua stuff broke something? that is, I refactored a ton of lua related code leading up to the fateful change that seems to have broken everything |
| 22:08:34 | kaen | and perhaps that revision merely exposed? |
| 22:08:40 | kaen | certainly seems worth exploring |
| 22:09:08 | Watusimoto | yes -- bisect suggests that it was the fateful corruption was the uncommenting of the luaw_holds statement |
| 22:09:38 | Watusimoto | but when I uncommented that earlier (it was uncommented before it was commented), we never experienced this issue |
| 22:09:40 | raptor | well |
| 22:09:44 | raptor | this levelgen bug was in 018 |
| 22:09:47 | Watusimoto | or if we did we didn't recognize it as such |
| 22:09:52 | Watusimoto | really |
| 22:09:54 | raptor | yes |
| 22:09:55 | Watusimoto | really?????? |
| 22:09:56 | kaen | whoa |
| 22:09:59 | raptor | yes!! |
| 22:10:00 | kaen | I had no idea |
| 22:10:08 | Watusimoto | me neither |
| 22:10:23 | raptor | that's when sam686 added his test-case... after it failed a few times during the level design contest on his 'blizzard' map |
| 22:10:45 | raptor | i... i had no idea you had no idea |
| 22:10:51 | Watusimoto | ok, if that is true, then that eliminates everything I've been testing |
| 22:10:58 | Watusimoto | and everything I've proposed testing |
| 22:11:12 | raptor | up until a week ago i was operating under the impression that they were different bugs |
| 22:11:26 | Watusimoto | if it exists in 018 then... it is compleetely unrelated to any lua-related work I did since 018 |
| 22:11:32 | raptor | yes |
| 22:11:37 | raptor | at least the levelgen one |
| 22:11:43 | Watusimoto | it's the same bug |
| 22:11:46 | raptor | but bots worked back then |
| 22:12:18 | Watusimoto | well... do bots work now? |
| 22:12:22 | kaen | yes. |
| 22:12:29 | raptor | yes, after i made that luaW_hold change |
| 22:12:39 | raptor | and probably introduced a memory leak.. |
| 22:12:40 | Watusimoto | ok |
| 22:12:42 | Watusimoto | good |
| 22:12:52 | Watusimoto | that's why bots worked in 018 |
| 22:13:06 | raptor | because we had a leak in 018? |
| 22:13:10 | raptor | ok, that makes sense |
| 22:13:10 | Watusimoto | probably |
| 22:13:16 | Watusimoto | it's a small leak |
| 22:13:28 | Watusimoto | userdatas are only... what... 8 bytes? |
| 22:13:34 | kaen | yes |
| 22:13:42 | kaen | maybe 16 on a 64 bit system. |
| 22:13:46 | kaen | it's like a pointer and an int. |
| 22:13:46 | Watusimoto | so... 8 million lost userdatas is only 8mb |
| 22:13:51 | Watusimoto | on the server |
| 22:13:54 | kaen | yeah |
| 22:14:02 | Watusimoto | and we'd never get that on a client |
| 22:14:06 | Watusimoto | it shuts down too soon |
| 22:14:15 | Watusimoto | and 8mb is hardly noticible |
| 22:14:18 | Watusimoto | so. |
| 22:14:21 | kaen | agreed. |
| 22:14:23 | raptor | so buttons! |
| 22:14:29 | Watusimoto | it probably leaks/ed, and no one cared |
| 22:14:35 | kaen | raptor, I've never met anyone else who says that... |
| 22:14:35 | raptor | yes |
| 22:14:38 | raptor | i agree |
| 22:14:42 | kaen | except my old boss and I |
| 22:14:43 | raptor | :) |
| 22:14:54 | Watusimoto | I said it growing up... so what? sew buttons on an old man's shirt! |
| 22:15:08 | kaen | heh |
| 22:15:47 | kaen | question: any idea why luaW_hold'ing it causes(do I have that straight?) the crash |
| 22:16:22 | kaen | it seems like telling lua to manage it rather than luaW would make it *more* likely that lua would GC it out from under luaW. |
| 22:16:46 | Watusimoto | do you guys understand what the luaw_hold does? |
| 22:17:02 | kaen | I believe so |
| 22:17:08 | kaen | my understanding: |
| 22:17:34 | kaen | luaW adds a ref to it in its __holds table as long as the proxie's count is greater than zero |
| 22:17:39 | raptor | make it so luaW manages the userdata memory, right? |
| 22:17:40 | kaen | and nils the ref once it's zero. |
| 22:17:48 | Watusimoto | sounds about right |
| 22:17:53 | Watusimoto | ok, what if we tested this? |
| 22:17:55 | kaen | thus dictating lua's GC'ing of it |
| 22:17:56 | raptor | our current version of luaW uses the ref count |
| 22:18:05 | Watusimoto | add back the luaw_hold |
| 22:18:19 | Watusimoto | but remove the delete in the hold |
| 22:18:58 | raptor | ok |
| 22:19:00 | Watusimoto | that would establish if the deletion of the proxy was the issue, or whether it was something in the lua code that was the problem |
| 22:19:18 | raptor | wher eis the delete.. |
| 22:19:20 | Watusimoto | because we keep thinking of memory corruption, and deletes seem to be dangerous somehow |
| 22:19:28 | Watusimoto | I'll find it |
| 22:19:37 | Watusimoto | there's only one in luaW, I think |
| 22:20:10 | raptor | i see luaW_release being called from luaW_gc |
| 22:20:10 | Watusimoto | 636 |
| 22:21:17 | raptor | so never call the gc |
| 22:21:19 | Watusimoto | btw, please add an assert c. 640, just after the block surrounding the delete: TNLAssert(false, "Never gets here"); just to eliminate anything later |
| 22:21:34 | raptor | err, never let gc delete, you mean? |
| 22:21:56 | Watusimoto | lua will delete the userdata |
| 22:22:05 | Watusimoto | but c++ will not delete the proxy object |
| 22:22:16 | Watusimoto | if you comment out that delete |
| 22:22:35 | raptor | should i do the decUseCount? |
| 22:22:43 | Watusimoto | sure |
| 22:22:49 | raptor | i mean, comment it out |
| 22:22:51 | Watusimoto | I hardly think that's likely to cause a problem |
| 22:22:56 | Watusimoto | leave it in |
| 22:22:59 | raptor | ok |
| 22:23:10 | Watusimoto | or not... it's jsut a blah-- statement |
| 22:23:26 | Watusimoto | bool decUseCount() |
| 22:23:26 | Watusimoto | { |
| 22:23:26 | Watusimoto | mUseCount--; |
| 22:23:26 | Watusimoto | return mUseCount == 0; |
| 22:23:27 | Watusimoto | } |
| 22:23:45 | raptor | and you want me to.. test bots now? |
| 22:23:59 | Watusimoto | test whatever most reliably crashes |
| 22:24:03 | Watusimoto | so probably levelgen |
| 22:24:06 | raptor | levelgen |
| 22:24:20 | Watusimoto | this will eliminate the c++ delete |
| 22:24:26 | raptor | crash! |
| 22:24:32 | Watusimoto | that was fast |
| 22:24:36 | raptor | yep |
| 22:24:45 | Watusimoto | ok, so it seems to be a bug in lua g |
| 22:24:47 | Watusimoto | gc |
| 22:25:01 | raptor | i'm not sure I understand your reasoning... |
| 22:25:24 | Watusimoto | I'm not sure I do either... ;-( |
| 22:25:45 | Watusimoto | ok |
| 22:25:53 | Watusimoto | luaw_holds has only one effect |
| 22:26:14 | Watusimoto | that is it tells luaw not to prevent lua from collecting the userdata |
| 22:26:33 | Watusimoto | lua starts to collect, calls _gc, then is either allowed to not |
| 22:27:17 | Watusimoto | hell, try commenting out the entire contents of luaW_gc and try again |
| 22:27:27 | raptor | ok |
| 22:28:24 | Watusimoto | so lua calls luaW_gc, |
| 22:28:26 | Watusimoto | wait a minute |
| 22:28:35 | Watusimoto | hold on here |
| 22:28:41 | Watusimoto | ok |
| 22:29:01 | Watusimoto | let's just think this through |
| 22:29:01 | raptor | crash! |
| 22:29:14 | Watusimoto | lua goes go collect the userdata |
| 22:29:43 | Watusimoto | because luaw_holds was called, it calls luaw_gc immediately before collecting |
| 22:29:53 | Watusimoto | the if(proxy) is always true |
| 22:30:09 | Watusimoto | so all luaw_gc does is deletes the proxy object |
| 22:30:10 | raptor | http://sam6.25u.com/upload/7screenshot_5.png |
| 22:30:11 | raptor | http://sam6.25u.com/upload/3screenshot_6.png |
| 22:30:12 | Watusimoto | and returns |
| 22:30:23 | raptor | 1st load, then /restart |
| 22:30:40 | raptor | it seems as though if(proxy) is always true |
| 22:30:45 | Watusimoto | it should be |
| 22:30:50 | Watusimoto | but that's what's got me thinking |
| 22:31:09 | Watusimoto | because the proxy stuff does not exist in regular luaw |
| 22:31:24 | Watusimoto | so in regular luaw, all that code after the if(proxy) block ran |
| 22:31:51 | Watusimoto | so I'm wondering if something important was done in that code, that we're not doing any more, that's causing luaw to get messed up |
| 22:32:01 | Watusimoto | so I'm just reading it now |