--- Log opened Sat Mar 12 00:00:12 2016 --- Day changed Sat Mar 12 2016 20160312 00:00:12-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160312 00:11:54-!- prkc [~prkc@563BD958.dsl.pool.telekom.hu] has joined #wesnoth-dev 20160312 00:14:11-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Remote host closed the connection] 20160312 00:15:06-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160312 00:16:02-!- boucman [~rosen@wesnoth/developer/boucman] has quit [Remote host closed the connection] 20160312 00:16:24-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Remote host closed the connection] 20160312 00:16:31-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160312 00:19:10-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has quit [Ping timeout: 252 seconds] 20160312 00:43:06-!- gfgtdf [~chatzilla@f054056011.adsl.alicedsl.de] has joined #wesnoth-dev 20160312 00:43:36< gfgtdf> celticminstrel: maybe we can make a cleaner implementaion of lua units using boost::variant for the different states 20160312 00:44:09< gfgtdf> celticminstrel: not sure what woudl be the implications perroamcen sise though 20160312 00:44:19< gfgtdf> wise* 20160312 00:44:27< gfgtdf> performance wise* 20160312 00:44:36-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Remote host closed the connection] 20160312 00:45:42-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160312 00:49:39-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Remote host closed the connection] 20160312 00:49:46-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160312 00:53:02< celticminstrel> gfgtdf: Heh, I thought of that too, actually. 20160312 00:59:33< celticminstrel> gfgtdf: config::attribute_value already uses boost::variant, and that's a pretty widely used class. 20160312 00:59:57-!- Waste [~Cracker@blk-138-75-115.eastlink.ca] has quit [Remote host closed the connection] 20160312 01:00:44< gfgtdf> celticminstrel: iirc when i wrote variable_info(_detail).hpp my first implementation of the variable_info_state struct used a boost::variant and i then decided to do it differently because testing shows that it was noticable slower that the current implementation. 20160312 01:02:04< gfgtdf> celticminstrel: but that doesn't mean that we cannot use it here 20160312 01:04:29< celticminstrel> gfgtdf: I think the problem though isn't the implementation but rather the interface. 20160312 01:05:21< celticminstrel> Though you do have a comment specifying what the meaning of each constructor is (unfortunately above the class rather than above each individual constructor), it's not very clear at a call site which type is being created. 20160312 01:05:23< gfgtdf> celticminstrel: hmm i'd think with a cleeaner implementation it woudl also be much easier to implement a cleaner interface 20160312 01:05:30< celticminstrel> Perhaps so. 20160312 01:09:19< celticminstrel> I don't quite get the difference between lua_unit(unit_ptr) and lua_unit(unit&) 20160312 01:13:10-!- louis94 [~~louis94@91.178.242.191] has quit [Quit: Konversation terminated!] 20160312 01:13:25< gfgtdf> celticminstrel: the first gives teh ownership of that unit to lua 20160312 01:14:37< gfgtdf> celticminstrel: the second is used for functions that want to execute lua code on a local unit& variable (currently only wesnoth.add_modification, but i'll also change wesnoth,match_unit to use that ) 20160312 01:15:05< celticminstrel> The second is where you pushed the unit twice onto the Lua stack, right? 20160312 01:15:49-!- irker504 [~irker@uruz.ai0867.net] has quit [Quit: transmission timeout] 20160312 01:17:32< gfgtdf> celticminstrel: yes 20160312 01:17:47< celticminstrel> This is another issue with the interface, then. 20160312 01:18:43< gfgtdf> celticminstrel: which issue you mean ? 20160312 01:18:52< celticminstrel> That you need to push it twice. 20160312 01:19:12< gfgtdf> celticminstrel: hmm i dont realyl think that there is a better solution for that 20160312 01:20:00< celticminstrel> And the fact that you apparently need to call clear_ref() when done with it. 20160312 01:21:01< celticminstrel> I'm still confused about why this "local unit" method is needed, too... 20160312 01:21:25< gfgtdf> celticminstrel: hmm, whyt exactly are you unsure about ? 20160312 01:21:43< celticminstrel> Well, the one place it is used that I know of us in apply_effect. 20160312 01:22:27< celticminstrel> I think there might be a couple of other places too, but... in apply_effect, you have an already established unit being worked with. 20160312 01:23:05< gfgtdf> celticminstrel: what you you mean by 'established' ? 20160312 01:23:36< celticminstrel> It's a unit that already exists in some capacity, but you don't know exactly how - it might be on the map, or on a recall list, or owned by Lua. 20160312 01:23:46< gfgtdf> celticminstrel: hmm no thats wrong 20160312 01:24:09< celticminstrel> It's not wrong. 20160312 01:24:11< gfgtdf> celticminstrel: apply_effect is usually called from unit::advance which is usually called from the units constructor 20160312 01:24:38< celticminstrel> Hmm, so you're saying it might be before it's placed on the map or a recall list? 20160312 01:24:50< gfgtdf> celticminstrel: yes 20160312 01:24:58< celticminstrel> Hmm. 20160312 01:25:33-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Remote host closed the connection] 20160312 01:26:09< celticminstrel> I'm guessing u.valid would return "private" in that case. 20160312 01:26:10< gfgtdf> celticminstrel: or for exampel it might be a private units used by internally be the advance unit dialog to show the possible 'advanced types' of that unit. 20160312 01:26:21< celticminstrel> Ah. 20160312 01:26:22-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160312 01:27:46< celticminstrel> So, why do you need to push it twice onto the Lua stack? 20160312 01:29:07< gfgtdf> celticminstrel: becasue it need to make sure it still exists when calling clear_ref() 20160312 01:30:14< celticminstrel> I don't see how that answers the question. 20160312 01:30:21< gfgtdf> celticminstrel: if i just pished it once and the called function overwrote it given unit_ptr* i still have teh second one to make sure it doesnt get freed 20160312 01:30:42< celticminstrel> If the called function did what now? 20160312 01:30:58-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Remote host closed the connection] 20160312 01:31:06< gfgtdf> celticminstrel: clear its lua refernce to the lua_unit 20160312 01:31:09< gfgtdf> cleared* 20160312 01:31:30< celticminstrel> You mean if the code has something like "u = nil"? 20160312 01:32:09< gfgtdf> celticminstrel: yes 20160312 01:32:27< celticminstrel> Okay, that'd be pretty stupid code, but I guess it's not bad to safeguard against it. 20160312 01:33:31< celticminstrel> Why do you need to call clear_ref()? 20160312 01:34:20< gfgtdf> celticminstrel: well in case the lua code stored u for exampel in a global variable, i must make sure its not accesses aftzre the function is called 20160312 01:34:31< gfgtdf> celticminstrel: becasue taht lua_unit contains a raw unit* 20160312 01:34:40< gfgtdf> celticminstrel: and i dotn know whether it still eists then 20160312 01:34:45< gfgtdf> exists* 20160312 01:35:12< gfgtdf> the unit i mean 20160312 01:35:33< celticminstrel> Oh, right. I was thinking clear_ref() didn't do anything, but I guess it actually means that u.valid will now return nil. 20160312 01:36:02< celticminstrel> Would it cause any problems if clear_ref() were called as part of the __gc metamethod? 20160312 01:36:14 * celticminstrel suspects not. 20160312 01:37:51< gfgtdf> celticminstrel: hmm you mea moving it there or calling it there too ? 20160312 01:37:55< gfgtdf> mean* 20160312 01:38:02< celticminstrel> It doesn't change any data, just makes the object point nowhere, so I'm thinking you should probably just get rid of clear_ref() and move that code to the lua_unit destructor. 20160312 01:38:13< celticminstrel> Unless I'm missing something here. 20160312 01:38:13< gfgtdf> celticminstrel: no that woudnt work 20160312 01:38:17< celticminstrel> Why not? 20160312 01:38:34< gfgtdf> celticminstrel: well becase it then only get called when the unit is colected 20160312 01:38:44< celticminstrel> Not so. 20160312 01:38:55< gfgtdf> celticminstrel: ? 20160312 01:39:33< celticminstrel> Oh, wait, hmm, there's that lua_newuserdata thing... 20160312 01:39:41< celticminstrel> Maybe I'm wrong then. 20160312 01:40:57< celticminstrel> "light user data" cannot have a metatable set for it, right? 20160312 01:42:48< gfgtdf> celticminstrel: hmm i always thought unit has its custom metatable 20160312 01:42:52 * celticminstrel was thinking that you could have a local lua_unit object where the destructor performs the current work of clear_ref, but this seems frustratingly not possible. 20160312 01:43:07< celticminstrel> gfgtdf: There are two types of userdata in Lua. 20160312 01:43:07< gfgtdf> celticminstrel: with __gc, __index metamthods and such 20160312 01:43:15< celticminstrel> Units are "full userdata". 20160312 01:43:29< celticminstrel> You can also push an opaque pointer as "light userdata". 20160312 01:43:45< celticminstrel> But I think that doesn't support metatables or anything, so it doesn't help here at all. 20160312 01:44:11< gfgtdf> celticminstrel: well yes you cna have such a object, just call push_locaclunit in teh ctor , store the returned lua_unit, in a a mambervariable and call .clear_ref() in the dtor 20160312 01:44:40< gfgtdf> celticminstrel: it woudl be just a different class then. 20160312 01:44:42< celticminstrel> Yes, that would be a new class though, not a local lua_unit object. :P 20160312 01:47:28-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160312 01:47:29< celticminstrel> Speaking of local lua_unit objects, they are currently possible to create, which is probably not a good thing since if actually passed to Lua they would lead to Lua freeing something on a stack frame that no longer exists. 20160312 01:47:42-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Remote host closed the connection] 20160312 01:48:05< celticminstrel> Here we have another reason to make all the constructors private. 20160312 01:49:54< gfgtdf> celticminstrel: well yes lua_unit s are assumes to always live inside the lua controlled memory. 20160312 01:50:03< celticminstrel> Yeah. 20160312 01:51:43< celticminstrel> Unrelatedly, the fact that luaW_ functions use different idioms than lua_ and luaL_ methods (for getting things from and putting things on the stack) has been bugging me lately. :/ 20160312 01:52:45< celticminstrel> ...I just had the idea of overriding placement new to take a lua_State* argument. 20160312 01:53:17< celticminstrel> Though maybe it'd have to be lua_State&, if that's even possible. 20160312 01:53:39< gfgtdf> celticminstrel: which different idioms you mean ? 20160312 01:55:02< celticminstrel> The Lua API provides the following functions for a given type: lua_toxxx, lua_pushxxx, luaL_check_xxx, luaL_optxxx. 20160312 01:56:16< celticminstrel> lua_toxxx simply tries to convert without checking if it's really of the requested type. I'm not quite sure what it returns if it turns out not to be, probably a default value. (So, for many Wesnoth types, that version is probably impossible since they're returning references.) 20160312 01:56:49< celticminstrel> luaL_checkstring returns it if it's of the requested type and raises an error otherwise. 20160312 01:56:58< celticminstrel> ^checkxxx 20160312 01:57:20< celticminstrel> luaL_optxxx is similar, but doesn'r raise an error if it's nonexistent. 20160312 01:57:52< gfgtdf> celticminstrel: hmm ok i have to go now 20160312 01:57:56< celticminstrel> For Wesnoth types on the other hand, you have luaW_toxxx which returns a boolean specifying whether it was of the requested type. 20160312 01:57:59< celticminstrel> Okay, bye. 20160312 01:58:07-!- gfgtdf [~chatzilla@f054056011.adsl.alicedsl.de] has quit [Quit: ChatZilla 0.9.92 [Firefox 45.0/20160303134406]] 20160312 02:18:36-!- ToBeCloud [uid51591@wikimedia/ToBeFree] has joined #wesnoth-dev 20160312 02:20:09< Aginor> g'day 20160312 02:21:09< celticminstrel> 'lo 20160312 02:23:06< Aginor> we should revisit https://wiki.wesnoth.org/User:Shadowmaster/DevelopmentRoadmap and see what still needs to be done 20160312 02:23:20< Aginor> how far away we are 20160312 02:23:57< Aginor> and see how many development releases we may be from 1.14 20160312 02:25:54< Aginor> try to structure stuff a bit and decide where polish is needed 20160312 02:32:41 * celticminstrel wonders what the secret changes are. 20160312 02:32:54< celticminstrel> UtBS stuff is not yet finished, I know that much. 20160312 02:33:14< celticminstrel> SDL 1.2 support not yet removed, but I assume you'll be doing that soon... 20160312 02:34:12< celticminstrel> Before dropping SDL_ttf I'd say we need to find a workaround for the OSX font issue, if at all possible. 20160312 02:55:22< Aginor> celticminstrel: dropping 1.2 is my weekend plan .) 20160312 02:56:42< celticminstrel> I see. 20160312 02:56:59< celticminstrel> Well, I finally got the formula unit tests to compile. Next step is to get them to pass. 20160312 03:02:08-!- fendrin_ [~quassel@176.4.22.84] has quit [Remote host closed the connection] 20160312 03:05:23-!- fabi [~quassel@176.4.22.84] has joined #wesnoth-dev 20160312 03:05:23-!- fabi [~quassel@176.4.22.84] has quit [Changing host] 20160312 03:05:23-!- fabi [~quassel@wesnoth/developer/fendrin] has joined #wesnoth-dev 20160312 03:07:11-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Quit: Konversation terminated!] 20160312 03:13:02-!- ancestral [~ancestral@71-220-49-102.mpls.qwest.net] has joined #wesnoth-dev 20160312 03:46:13-!- aeonchild [enchilado@defocus/yummy/enchilado] has quit [Remote host closed the connection] 20160312 03:46:53-!- aeonchild [enchilado@defocus/yummy/enchilado] has joined #wesnoth-dev 20160312 03:50:15-!- Greywhind [~Greywhind@c-50-133-231-228.hsd1.ma.comcast.net] has quit [Ping timeout: 276 seconds] 20160312 03:58:39-!- Greywhind [~Greywhind@c-71-232-29-126.hsd1.ma.comcast.net] has joined #wesnoth-dev 20160312 03:59:46-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160312 04:04:13-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Ping timeout: 248 seconds] 20160312 04:09:13-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has quit [Remote host closed the connection] 20160312 04:09:19-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has joined #wesnoth-dev 20160312 04:42:39-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has quit [Remote host closed the connection] 20160312 04:42:45-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has joined #wesnoth-dev 20160312 04:54:16-!- ToBeCloud [uid51591@wikimedia/ToBeFree] has quit [Quit: Connection closed for inactivity] 20160312 04:55:26< ancestral> vultraz, shadowm: It would only take editing two lines in https://www.wesnoth.org/mw/skins/glamdrol/main.css to get the new logo looking good at the top of the page 20160312 04:56:25< ancestral> Line 270: change ‘repeat-x 20160312 04:56:37< ancestral> ‘repeat-x’ to ‘repeat’ 20160312 04:57:54< ancestral> Okay, just that fix in main.css; the other is just linking/replacing the logo url (which I guess is actually part of the html and not the css) 20160312 04:58:47< celticminstrel> Actually it's probably in LocalSettings.php. 20160312 05:01:22< ancestral> celticminstrel: It wouldn’t take much to finally upgrade the masthead 20160312 05:01:41< ancestral> Untouched in almost 10 years? 20160312 05:01:50< celticminstrel> Huh? 20160312 05:02:21 * celticminstrel has no idea what you mean by "masthead". 20160312 05:08:20< vultraz> I don't have access to the MW stylesheets 20160312 05:08:35< celticminstrel> Are you sure? 20160312 05:08:42< celticminstrel> They can usually be edited as wiki pages. 20160312 05:08:58< celticminstrel> You do need permission for that though. 20160312 05:29:16< vultraz> where? 20160312 05:30:48< celticminstrel> Oh huh, it can be disabled. I didn't know that. 20160312 05:30:52< celticminstrel> https://wiki.wesnoth.org/Special:AllMessages 20160312 05:31:19< celticminstrel> It would be nice if the logo appeared at all on the monobook skin. 20160312 05:32:36< vultraz> "This page cannot be used because $wgUseDatabaseMessages has been disabled." 20160312 05:32:54< celticminstrel> Apparently. 20160312 05:34:30< vultraz> well I'm not going to ask certain people about this, because apparently I've pissed certain people off 20160312 05:40:51< ancestral> celticminstrel: Masthead == header 20160312 05:41:12< celticminstrel> Ah. 20160312 05:41:42< ancestral> People need to chill 20160312 06:09:26-!- ancestral [~ancestral@71-220-49-102.mpls.qwest.net] has quit [Quit: i go nstuf kthxbai] 20160312 06:34:58-!- boucman [~rosen@wesnoth/developer/boucman] has joined #wesnoth-dev 20160312 06:58:26-!- celticminstrel is now known as celmin|sleep 20160312 06:59:15-!- ancestral [~ancestral@71-220-49-102.mpls.qwest.net] has joined #wesnoth-dev 20160312 07:00:03-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160312 07:04:52-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Ping timeout: 260 seconds] 20160312 08:01:06< shadowm> celmin|sleep: Weren't you supposed to remind me to look at a MW extension? 20160312 08:01:18< shadowm> I forgot what it was. Or maybe you decided against it later when I wasn't looking? 20160312 08:02:09< shadowm> This is the glamdrol stylesheet repo, by the way: https://github.com/wesnoth/glamdrol 20160312 08:02:51< shadowm> I just push my changes there and pull them from the server (by hand, and the .git is not in a publicly-served location). 20160312 08:03:35< shadowm> That said, my original plan was to never deploy the new logo on glamdrol since I want(ed) to complete wesmere instead. 20160312 08:04:01< shadowm> My fallback plan was to only do so once 1.14.0 was released (1.13.x is not recommended for users, and 1.12.x carries the old logo). 20160312 08:05:31< shadowm> I haven't really given up on wesmere either, I just need... I don't know, feel more like myself again. 20160312 08:06:27< shadowm> 1.14.0 still seems very far ahead, and I built my latest personal website stylesheet almost from the ground up in less than two months, so... there's still some hope, probably. 20160312 08:06:55< shadowm> (Less than a month, really, but I spent longer finishing up details.) 20160312 08:11:32< shadowm> No promises as to whether I'll deliver the new GUI2 file dialog yet, though. It'll only take me a few hours as soon as I figure out how to deal with the double-click issue and add the remaining FS traversing logic, but I get a migraine from merely thinking about... 20160312 08:11:38< shadowm> tgenerator_... and tgenerator... 20160312 08:11:58< shadowm> And tgenerator and tgenerator and tgenerator and tgenerator and I'm not sure how many other template instantiations of it we get. 20160312 08:13:49< shadowm> Since I concluded that the only solution is brute-forcing the event handling I guess a huge motivator would be for someone to give me a code snippet that can actually iterate over tlistbox rows (from client side) and connect double click events to their ttoggle_panels replacing the tgenerator-defined ones. 20160312 08:14:47< shadowm> Or maybe just somehow make an interface to make it possible for someone other than the instantiations of tgenerator to define the double click events. 20160312 08:15:09< shadowm> tgenerator. 20160312 08:15:45< shadowm> Years from now, people will fondly remember tgenerator as the one thing that made me leave. :V 20160312 08:16:16< shadowm> Countries all over the world will build monuments in tgenerator's honor. 20160312 08:16:51< shadowm> As soon as they discover how to bend space-time to better imitate tgenerator's true form. 20160312 08:17:59< Aginor> maybe tgenerator is in fact an Elder God 20160312 08:18:17< ancestral> shadowm: Feel free to make a meme about it: http://memegenerator.net/Kermit-The-Frog-Drinking-Tea 20160312 08:18:40< ancestral> tgenerator… “tea”? 20160312 08:19:03< ancestral> close enough 20160312 08:19:33< shadowm> As an avid tea drinker, I find the irony devastating. 20160312 08:20:47< shadowm> (Especially since, like most puns regardless of language, I don't see them until someone goes and points them out.) 20160312 08:21:46< Aginor> shadowm: I had a look at https://wiki.wesnoth.org/User:Shadowmaster/DevelopmentRoadmap earlier today, do you have the time/inclination to talk a bit about it? 20160312 08:22:07< shadowm> Sure, if you have any specific questions? 20160312 08:22:44< Aginor> I do :) Has there been any progress on the three secret items on the list? 20160312 08:22:57< shadowm> Not at all. 20160312 08:23:05< Aginor> ok 20160312 08:23:10< Aginor> that makes it easy 20160312 08:23:15< Aginor> should they be blockers for 1.14? 20160312 08:23:33< shadowm> They needn't concern the development team, except for #3, which is related to #2. 20160312 08:23:55< shadowm> Then again, vultraz might be able to work something out. It's a tricky issue. 20160312 08:24:07< Aginor> well, if we want to draw up a more specific roadmap of what still needs to be done, it has some impact 20160312 08:24:34< shadowm> Okay, since I'm no longer in official capability, I don't need to dispense punishment if the issue is discussed in public, so... 20160312 08:24:55< Aginor> looking at the state of it, I'm thinking we're going to need 2-3 more development releases, then we might be able to hit 1.14 20160312 08:24:59< shadowm> #1 is about requiring people to assign copyright to their code to Wesnoth Inc _in addition_ to themselves (if they wish to retain copyright). 20160312 08:25:18< Aginor> ah 20160312 08:25:20< shadowm> This was intended to protect us against spurious DMCAs on platforms such as Steam and GitHub. 20160312 08:25:29< Aginor> make sense 20160312 08:26:19-!- Kwandulin [~Miranda@p200300760F7D7398BCDF04F1B09C1A25.dip0.t-ipconnect.de] has joined #wesnoth-dev 20160312 08:26:20< shadowm> #2.1 is about relicensing mainline assets to a more sensible license (CC-BY-SA was suggested several times over the years). 20160312 08:26:28< ancestral> \o/ 20160312 08:26:37< shadowm> #2.2 is about allowing content authors to specify more restrictive licenses for their content if they wish so. 20160312 08:27:21< shadowm> (With the obvious implication that this would disallow their content from being used in mainline without explicit relicensing -- I've said several times that this shouldn't be an issue, we almost never mainline content these days (sadly)) 20160312 08:27:50< shadowm> #3 is about implementing protocol in campaignd (the add-ons server daemon) and UI in the add-ons client to clearly visualize content as per #2.2. 20160312 08:28:07< Aginor> all makes a lot of sense 20160312 08:28:07< shadowm> Is/was, since it's no longer in my hands. 20160312 08:28:26< Aginor> is anyone looking after that process now? 20160312 08:29:08< shadowm> (Why #2.2: because some artists (like me) don't want their content reused without permission, and sometimes we might in turn make use of more restrictive content licensed under, say, CC-BY-SA ND or NC or NC-ND.) 20160312 08:29:42< shadowm> (Our current one-size-fits-all approach is backwards and restrictive regardless of the license chosen.) 20160312 08:30:04< shadowm> vultraz will decide who (if anyone) will make this happen. 20160312 08:30:12< Aginor> ok 20160312 08:31:13< shadowm> #2.1 is actually much easier than the other secret tasks because we more or less have already secured the musicians' approval. Artists might be harder to contact and no-one has properly decided how the transition from GPL to / will work. 20160312 08:31:20-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has joined #wesnoth-dev 20160312 08:31:47< Aginor> how is the copright/license assignment done? 20160312 08:31:52< shadowm> And the one person I tried to persuade into helping me refused. 20160312 08:32:14< Aginor> ah 20160312 08:32:28< shadowm> Aginor: It's very informal right now. Presumably, we'd keep doing it informally in that case. 20160312 08:32:48< shadowm> Requiring people to file assignment forms via email FSF-style would be very... inefficient, to say the least. 20160312 08:32:55< shadowm> *via snail-mail 20160312 08:33:11< shadowm> (That's what the FSF used to do years ago I think, anyway.) 20160312 08:33:31< Aginor> yeah, because that's the only legally binding way in the US 20160312 08:33:35< Aginor> but IANAL 20160312 08:33:48< shadowm> Exactly, and Wesnoth Inc doesn't have a lawyer either. :p 20160312 08:33:59 * Aginor ponders 20160312 08:34:07< ancestral> It took MAME 10 months to contact its contributors to do this sort of thing 20160312 08:34:26< shadowm> The motivation is the following: I hold copyright on several files in our source code distribution. 20160312 08:34:40< Aginor> I'll ask around, but I guess it needst o be someone who's familiar with copyright law in multiple countries 20160312 08:34:47< shadowm> If you publish Wesnoth on platform X, I can file a spurious DMCA complaint on platform X just to give you a bad time. 20160312 08:34:59< Aginor> it's a shame I don't have any of the local law professors owe me favours :D 20160312 08:35:25< Aginor> yeah, I can certainly see the reason for doing it 20160312 08:35:25< shadowm> Of course, that hypothetical scenario implies some degree of assholery on my part, as well as fearlessness of legal retribution (spurious DMCAs are _not_ a joke). 20160312 08:35:44< shadowm> That said, someone did use this against a Minecraft-related project on GitHub. 20160312 08:35:56< shadowm> So there _is_ some precedent. 20160312 08:35:57< Aginor> here's the kicker though, your claim would be valid 20160312 08:36:21< Aginor> because you hold copyright to the code in the repo, and if you decide to cause trouble you could 20160312 08:36:29< Aginor> and so can anyone who's ever had a PR accepted 20160312 08:36:37< shadowm> Only if you ignore the fact that I hold copyright on my code _but_ using a license that permits redistribution by pretty much anyone. 20160312 08:36:41-!- wedge010 [~Thunderbi@60-241-236-92.static.tpgi.com.au] has joined #wesnoth-dev 20160312 08:36:51< shadowm> A company like GitHub will not check this before taking it down, of course. 20160312 08:36:58< Aginor> no 20160312 08:37:25< shadowm> It's up to the maintainers to enforce the license and counter-claim the DMCA, hence "giving people a bad time". 20160312 08:37:38< Aginor> you can probably argue a lot as well about submitting a change to a file that already has a license header doesn't constitute your code being subject to same license 20160312 08:37:45< shadowm> For things like a Steam Greenlight campaign, that little downtime can make quite a difference, especially for the project's reputation. 20160312 08:37:47< zookeeper> ...will it even check whether you hold copyright on the code? 20160312 08:38:22< shadowm> (I'm fairly sure Valve would care about as much as YouTube would on the matter and just take it down forever.) 20160312 08:38:47< Aginor> zookeeper: probably not until someone complains 20160312 08:39:42< shadowm> Anyway, was that all or did you want to ask me about happier subjects too? :p 20160312 08:39:57-!- wedge009 [~Thunderbi@60-241-236-92.static.tpgi.com.au] has quit [Ping timeout: 260 seconds] 20160312 08:39:58-!- wedge010 is now known as wedge009 20160312 08:40:13< shadowm> (I hate talking about this one in particular, because some people around here don't seem to parse me well when I present them with hypothetical scenarios to illustrate a point.) 20160312 08:40:41< Aginor> shadowm: I did want to ask about happier subjects too :) 20160312 08:41:03< Aginor> shadowm: I appreciate your candor, and I think doing that work is well worthwhile 20160312 08:41:45< Aginor> There's a couple of points related to the theme 20160312 08:42:21< Aginor> would you mind explaining what the plan as there? or is there already a wiki page for it? 20160312 08:42:26< Aginor> Display engine and theme UI decoupling (TBD) 20160312 08:42:50< Aginor> Theme UI manipulation (TBD) 20160312 08:43:03< shadowm> So one thing that fabi's theme additions in 1.11.x exposed is that our in-game theme UI engine sucks at every level, not just the WML API. 20160312 08:43:19< shadowm> Case in point: widgets need to be re-created all the time. 20160312 08:43:45< Aginor> mmm 20160312 08:43:47< shadowm> And most of the time, when they are recreated, it's in reaction to a more general request like "we changed fog, update the map and minimap". 20160312 08:43:49< Aginor> I hit that quite a bit 20160312 08:44:02< Aginor> it took some thinking to figure out how to work around that 20160312 08:44:08< shadowm> And when they are recreated, they tend to be recreated without their icon overlays, which need to be manually set every time to reflect the hotkey engine's status. 20160312 08:44:48< shadowm> This bug haunted me in 1.12.x for quite a while and I tried fixing it several times to no avail, because there are just _so_ many entry points to the display class' "redraw everything" logic. 20160312 08:44:51< Aginor> are those limitations a part of GUI2 too? 20160312 08:45:11< Aginor> shadowm: I've started slaying that behaviour :) 20160312 08:45:25< shadowm> So I concluded that the best solution was to redo the API and make the map (and minimap) separate from the theme UI display logic. 20160312 08:45:55< shadowm> And by redo I really mean redo, so that there can't be any doubt that people are calling the right redraw function for their particular task. 20160312 08:46:00< shadowm> Principle of least privilege, etc. 20160312 08:46:17< shadowm> Never worked on it, I'm afraid. 20160312 08:46:26< Aginor> by theme ui display logic, do you mean the display.?pp classes? 20160312 08:46:31< shadowm> Yes. 20160312 08:46:55< shadowm> display class OP, nerf pls. 20160312 08:47:13< Aginor> it's work in progress 20160312 08:47:22< Aginor> it'll take a long time 20160312 08:47:37< Aginor> ideally, I'd like to see it slain altogether and replaced with GUI2 20160312 08:47:50< shadowm> Oh, and the most imprtant part of all is I was led to believe that this was a crucial step in preparing the engine for OpenGL usage. 20160312 08:48:04 * Aginor nods 20160312 08:48:14< Aginor> it'll certainly help 20160312 08:48:16< shadowm> Because this inevitably means that we have someone who knows how it works and how it can be optimized to decrease texture usage, etc. 20160312 08:48:29< shadowm> So, it's good to hear that it's being worked on! 20160312 08:48:38< Aginor> :) 20160312 08:48:56< shadowm> The "theme UI manipulation" task which I didn't even start research on was about making the WML API for the theme UI more flexible. 20160312 08:49:05< Aginor> right 20160312 08:49:18< shadowm> That wouldn't be about making it more _understandable_ per se, but rather about making it dynamically-configurable. 20160312 08:49:43< shadowm> Right now, the theme UI layout is defined in WML and it's an immutable thing forever (until the display class is recreated I think?). 20160312 08:49:55< shadowm> There is no way for content authors to add new UI items as they see fit. 20160312 08:50:24< shadowm> For example, a content author could introduce a fourth metric to unit states in addition to the existing HP, XP, and MP stats. 20160312 08:50:33< shadowm> Like, "mana", maybe. 20160312 08:50:46 * Aginor grins a bit 20160312 08:50:48< shadowm> They can do that right now with WML, but they can't integrate it with the sidebar UI. 20160312 08:50:53< Aginor> that'd break a lot 20160312 08:51:18< shadowm> It's just an example. Other examples that came up over the years where embarking units. 20160312 08:51:23< shadowm> *were 20160312 08:51:37< shadowm> Team resources (other than gold). 20160312 08:51:41< Aginor> it makes sense 20160312 08:52:04< Aginor> the real problem I see there is that it impacts minimum resolution as well 20160312 08:52:10< shadowm> That kind of stuff that we _can_ already do by slapping extra UIs through context menus, which is awkward to say the least. 20160312 08:52:21< Aginor> yesh 20160312 08:52:26< shadowm> It gives that kind of content a third-class citizen feel. 20160312 08:53:19< shadowm> One obvious risk involved is giving content authors too much power (they'd be able to manipulate existing theme UI items as well), but then again... 20160312 08:53:40< shadowm> We have Lua: while(true) { dos_me(); } 20160312 08:53:46< shadowm> (Or whatever the Lua equivalent is.) 20160312 08:54:12< Aginor> I don't really see a problem with that, but we would almost need to make a GUI editor to go with it 20160312 08:54:21< shadowm> (You can bring Wesnoth down to a crawl by spawning a million bats on a 200x200 map, I'm sure.) 20160312 08:54:31< Aginor> :D 20160312 08:54:56< shadowm> Not necessarily -- and that point would lead back to the issue of theme WML not being intended to be read by humans. 20160312 08:55:27< Aginor> yeah 20160312 08:55:38< shadowm> So I'd suggest restricting such functionality to Lua and defining proper theme UI elements that authors should expect to exist to be manipulated. 20160312 08:56:24< shadowm> So they can, for example, know that there's an area somewhere where unit abilities are listed, then opt into adding another area immediately below it listing unit inventory items. 20160312 08:56:41< shadowm> And that this is guaranteed to be provided by the dev team as an API of sorts. 20160312 08:57:16< shadowm> We kind of have a very limited version of this already for unit statuses, but it's kind of finicky and not very powerful I believe. 20160312 08:57:16 * Aginor ponders 20160312 08:57:35< shadowm> (Statuses as in poisoned, petrified, slowed.) 20160312 08:59:13-!- ChipmunkV [~vova@d0017-2-88-172-31-68.fbx.proxad.net] has joined #wesnoth-dev 20160312 09:00:04< shadowm> GUI2 would be ideal for implementing the theme UI save for two things: 20160312 09:00:55< shadowm> 1) mordante himself has stated time and again that it was not _yet_ intended for dynamically-changing layouts (which is why he never approved of the implementation of the Lua GUI2 API, which was done without his consent). 20160312 09:01:40< shadowm> 2) GUI2 obviously doesn't deal with animations and non-user events well yet (crucial for the map viewport, which is more or less part of the theme UI). 20160312 09:01:45< Aginor> which is fair enough, given the asserts spread through it. those would be a minefield for a content developer 20160312 09:02:01 * Aginor nods 20160312 09:02:26< Aginor> I think wesnoth may need to move to a more classical game loop to facilitate some of these things better 20160312 09:02:28< shadowm> 3) GUI2 is still very limited with regards to establishing layout limits (you don't want the sidebar growing to be 2000px wide just because someone added a text field wrong). 20160312 09:03:02< fabi> Aginor: More classical game loop? 20160312 09:03:06< shadowm> Incidentally, Wesnoth is over-reliant on exceptions for internal communication. 20160312 09:03:09< Aginor> (handle inputs, update game state, render) 20160312 09:03:15< shadowm> People generally agree that this is a bad idea. 20160312 09:03:34< Aginor> yes, that's not ideal 20160312 09:03:45< Aginor> fabi: 3^ 20160312 09:04:37< Aginor> that'd facilitate animations, interleaved game state with GUI excecutions and similar issues 20160312 09:04:57< Aginor> but changing that would be a seriously big task 20160312 09:05:39< fabi> The search for c++ code to port into lua brought me into controller.cpp. But half of controller.cpp is full of stuff that I don't touch because it belongs into the potential display server. 20160312 09:05:56< fabi> That made me think about how deeply this stuff is merged in wesnoth. 20160312 09:06:11-!- mjs-de [~mjs-de@x4db54175.dyn.telefonica.de] has joined #wesnoth-dev 20160312 09:06:30< fabi> Display vs Game State 20160312 09:06:32< shadowm> (*controller.cpp? The only file literally named controller.cpp is part of my storyscreen crap.) 20160312 09:06:51< shadowm> Aginor: So, what's next? 20160312 09:08:42< shadowm> I considered OpenGL as a goal for 1.16.x instead of 1.14.x because at the time it seemed like it had too much potential to break stuff that would be otherwise releasable, but if you feel that OpenGL is a must to have a SDL 2-based engine that isn't horribly regressed from 1.12.x, then that's great too. 20160312 09:08:47< Aginor> shadowm: fix bugs, kill all current references to flip() and have it happen at the end of drawing 20160312 09:08:56< shadowm> Oh, I mean about the page. 20160312 09:09:26< Aginor> shadowm: I think that answers all my questions, and then a few I hadn't thought up 20160312 09:09:46< Aginor> my takeaway is that 1.14 is further away than I thought 20160312 09:10:03< shadowm> Ambient lighting, particle effects, animation lighting? Stuff that'd make me drool all over the screen and make me feel like my campaigns' crappy art is worth something. 20160312 09:10:08< Aginor> unless some of these things are moved to 1.16 to bring 1.14 forward 20160312 09:10:16< shadowm> Visual effects are like sprinkles, you can use them to fix anything. :3 20160312 09:10:32< Aginor> we can make unicorns puking rainbows later :) 20160312 09:10:48< shadowm> (That's not even hyperbole. Much of my campaign's cutscenes consists of visual tricks to make things seem much cooler than they actually are.) 20160312 09:11:00-!- atarocch [~atarocch@151.64.78.59] has joined #wesnoth-dev 20160312 09:11:35< Aginor> yeah 20160312 09:11:41< Aginor> I see the need 20160312 09:11:55< Aginor> getting OGL support is easy, I've even done it just for fun 20160312 09:12:11< Aginor> having it be efficient is a different kettle of fish altogether 20160312 09:12:18< shadowm> But it's very glitchy and non-performant with our current engine model, yes. 20160312 09:12:23< Aginor> there's substantial changes needed 20160312 09:12:25< shadowm> alink and Dave hit the same issue before. 20160312 09:12:27-!- Nobun [~nobun@host62-49-dynamic.12-79-r.retail.telecomitalia.it] has joined #wesnoth-dev 20160312 09:12:55< shadowm> And lipkab did as well when porting to SDL_gpu, I believe. 20160312 09:13:13< shadowm> Speaking of which, you should probably purge the SDL_gpu support if it's not going to be used. 20160312 09:13:28< Aginor> SDL2 might actually not be too bad, because we are in effect using a compatability layer that will just turn everything to textures for us 20160312 09:13:54< shadowm> The more #ifdef's a piece of code has, the greater potential for regressions and mistakes. 20160312 09:14:04< Aginor> by requesting a hw renderer we would suddenly do OGL (currently a SW one) 20160312 09:14:22< shadowm> (Also why I proposed purging SDL 1.2 support following the first production release with SDL 2 support.) 20160312 09:14:42< Aginor> Yes, I'm tempted to argue for dropping the SDL_gpu stuff because that code is likely to be so rotten it's not even funny 20160312 09:14:53< shadowm> (And why I got rid of the non-Boost.Filesystem FS API as soon as I could.) 20160312 09:16:22< shadowm> So, alink (a past dev who knew our rendering code the best at the time) attempted an OpenGL port back in 2010 or so. Dave (our founder) did too back in 2007 or 2008. 20160312 09:16:52< shadowm> Both reached the same conclusion ("this needs to be redesigned"), both didn't really get much farther after that point. 20160312 09:17:01< Aginor> yeah 20160312 09:17:12< Aginor> I reached that conclusion early on, now I'm working on it :) 20160312 09:17:15< shadowm> Dave in particular moved onto new OpenGL-based game projects of his own. 20160312 09:17:41< shadowm> If you manage to land this in production, you'll be lauded as a hero. 20160312 09:17:56< shadowm> *land a fully-working version 20160312 09:18:03< Aginor> finding bits and pieces that won't work and rewriting them to do better things 20160312 09:18:10< Aginor> hopefully without too many regressions in the process 20160312 09:19:01< Aginor> I could probably have it done in a no too long while if it wasn't for the fact that I need to work, sleep, eat, and have a life 20160312 09:19:25< Nobun> however I see a potetial problem on using OpenGL instead SDL 20160312 09:19:29< shadowm> That's one thing that made me give up on attempting to enforce a business-like release schedule right after proposing it. It's just too demanding from developers and it's not technically feasible with big large-picture features like OpenGL support. 20160312 09:19:43< Aginor> Nobun: it's OGL through SDL, not instead of 20160312 09:19:51< Nobun> ah ok 20160312 09:20:03< Nobun> this sounds very nice 20160312 09:20:07< shadowm> SDL is still in charge of setting up the GL context and managing input and audio and windowing interaction. 20160312 09:20:20< Aginor> and a lot of the OGL stuff itself 20160312 09:20:35< Aginor> most of the rendering doesn't need soecial stuff 20160312 09:20:47< zookeeper> not to be overly obstructionist, but i don't really see what all sorts of lighting and particle effects would really do for the game. it's nice flashy tech bling, yeah, but... 20160312 09:21:05< loonycyborg> It can make you motion sick :P 20160312 09:21:28< Aginor> zookeeper: you will be amazed the day I release the proof-of-concept uncorn unit that barfs rainbows across the screen as an attack animation 20160312 09:21:35< zookeeper> D: 20160312 09:21:47< Aginor> hmm 20160312 09:22:03< loonycyborg> It's a silly hat smilie 20160312 09:22:05< shadowm> zookeeper: Reduced artistic burden. 20160312 09:22:38< shadowm> No more drawing crappy halo overlays just to make it seem like the lighting changed in a particular area, making particle effects when things hit each other, et cetera. 20160312 09:22:55< zookeeper> to be fair, some forms of particle effects could be _convenient_. like making a magic projectile automatically consist of 5 smaller randomly wobbling projectiles instead of having to do it with subanimations or in the frames. 20160312 09:23:17< Aginor> lightmaps are neat, shaders are useful, otherstuff just reduces burden 20160312 09:23:57< zookeeper> and if by lighting you mean ToD lighting, then yes absolutely. i believe it'd unburden the graphics engine quite a bit if that could be done in shaders. 20160312 09:24:04< shadowm> Animated lighting effects would do a lot of wonders for some of the environments I made. :V 20160312 09:24:32< Aginor> sounds great, eh? 20160312 09:24:44< Aginor> now help me slay all undrawing code that goes on 20160312 09:25:06< Aginor> that particular pattern isn't very compatible with a nice OGL based game 20160312 09:25:15 * zookeeper only knows the terrain drawing code 20160312 09:25:26 * shadowm doesn't know how to draw a square on the screen. 20160312 09:25:29< Aginor> it's in the GUI code 20160312 09:25:38< Aginor> ideally, we only fix GUI2 and slay GUI1 20160312 09:25:44< zookeeper> shadowm, well i don't know how to do that! our abilities complement each other 20160312 09:25:48< shadowm> Something something SDL_FillRect(). 20160312 09:26:27< shadowm> Oh look, I remembered the name right, even though I last touched that stuff back in 2006. 20160312 09:27:08-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160312 09:28:02< shadowm> Oh, and another thing that would benefit from enhanced visuals with OpenGL: the UI. 20160312 09:28:14< Aginor> yes 20160312 09:28:35< Aginor> although it'd benefit even more from someone running it through a profiler :) 20160312 09:28:37< shadowm> We wouldn't want to force an artist to draw 16 frames of a button slowly being lit up on hover. :32 20160312 09:28:53< shadowm> :3 20160312 09:28:58< zookeeper> in case you're not, you might also consider that the gamemap (everything that goes in it, that is) drawing seems rather well-separated from the other drawing code and maybe can be ported/improved/etc reasonably separately from the rest. 20160312 09:29:06< zookeeper> not that i know if that's possible, but just saying. 20160312 09:29:40< Aginor> zookeeper: it isn't 20160312 09:29:55< Aginor> it's an all or nothing approach to doing hardware acceleration 20160312 09:30:14< Aginor> but it's something I'll investigate more after squshing bugs 20160312 09:31:09< shadowm> Aginor: Since you've been looking at GUI2's internals too, maybe you can tell whether they'd benefit from C++11 move semantics? 20160312 09:31:34< shadowm> As well as emplace methods and other R-value reference-using idioms. 20160312 09:31:52-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Ping timeout: 260 seconds] 20160312 09:32:00< Aginor> shadowm: I'm not well enough versed with c++11 to make that call 20160312 09:32:55< shadowm> Okay. 20160312 09:33:17< Aginor> I haven't looked that much on GUI2 internals, only extremely specific parts of it 20160312 09:33:48< Aginor> which reminds me, I should document the event handling code in wesnoth and the rendering code 20160312 09:33:54< shadowm> I've been under the impression thus far that GUI2 tends to perform worse than GUI1 at times, though I've never made an objective analysis of the situation and there are a few factors in play. 20160312 09:34:24< Aginor> it may be useful for other people to be able to read through stuff 20160312 09:34:53< Aginor> shadowm: I only have anecdotal, unscientific, evidence to support that 20160312 09:34:55< shadowm> (GUI1 caches text render results, has hardcoded presentation; GUI2 doesn't cache text render results (AFAIK), has dynamic presentation using gui2::tcanvas; etc.) 20160312 09:35:31< Aginor> the start-game-screen seems to take a lot more time to re-render than the main in-game-screen 20160312 09:35:55< Aginor> but that may be because it does a full layout computation 20160312 09:36:00< Aginor> BUT! 20160312 09:36:15< shadowm> The in-game theme UI is much more naïve about layout. 20160312 09:36:27< Aginor> GUI2 has poor performance if I can notice that it's slow in a such a simple scenario 20160312 09:36:31< shadowm> "Oh, it doesn't fit? Why should I even care about that?" 20160312 09:36:53< Aginor> hence, why I think it would benefit from looking at it with a performance analyser 20160312 09:37:01< Aginor> it'd be useful to find the bottlenecks 20160312 09:37:47< Aginor> I suspect there's a number of things going on that either has a huge constant, or there's a few very bad tightly-bound cases in terms of performance vs complexity 20160312 09:41:05 * Aginor rolls out algorithmic performance and complexity theory and harps on for a while longer 20160312 09:41:34< zookeeper> what the... have the grass->sand transitions always looked so horrible in HttT:BoP? O.o 20160312 09:41:44< zookeeper> or is that my fault somehow 20160312 09:42:54< zookeeper> my fault 20160312 09:43:12-!- Appleman1234 [~Appleman1@KD106161150090.au-net.ne.jp] has quit [Ping timeout: 276 seconds] 20160312 09:47:17< zookeeper> but i managed to miss that, i don't know. oh, the shame. 20160312 09:47:25< zookeeper> s/but/how (what a strange typo) 20160312 09:47:56< zookeeper> (or maybe i intended it as "but how" and just forgot one word?) 20160312 09:49:45< zookeeper> looks like i have fixing to do on that tonight. 20160312 10:17:12< zookeeper> oh, phew, that was just my local code changes it seems. no idea how they caused what i'm seeing though. 20160312 10:19:57< vultraz> One reason I'd like to switch to c++11 is then we can roll out iceiceice's nice Spirit-based po file reader 20160312 10:20:56 * vultraz just finished reading the huge backlog 20160312 10:21:34< vultraz> GUI2 does perform worse than GUI1 in some sense 20160312 10:23:38-!- ancestral [~ancestral@71-220-49-102.mpls.qwest.net] has quit [Quit: i go nstuf kthxbai] 20160312 10:23:40< shadowm> I assume it has more merits than just being C++11 code. 20160312 10:24:06< shadowm> (I also assume I'm the only one here who's never heard of it before.) 20160312 10:24:36< vultraz> It would allow us to drop mo files 20160312 10:24:47< shadowm> Oh. OH. 20160312 10:25:08< vultraz> and wescamp, I think he said, since UMC authors could directly ship po files. 20160312 10:25:11< shadowm> I forgot gettext can only read compiled crap for some reason. 20160312 10:27:08< shadowm> I remember that back in the day, no-one using MSVC++ could use translations because GNU gettext was almost-deliberately unbuildable with it. I wonder if that's been addressed since? 20160312 10:27:19< shadowm> (Back in the day was back when we were using MSVC++ 6.0.) 20160312 10:31:01< vultraz> I assume so 20160312 10:32:50< shadowm> (Also, why gettext can only read compiled crap? I just realized that we're talking of software that was written back in the 90s, with the typical hardware constraints of the time in mind.) 20160312 10:33:28< shadowm> (I'm genuinely curious of the actual reason anyway. Google has failed me.) 20160312 10:33:57< shadowm> (Also, I just remembered that we use Boost.Locale now, not gettext.) 20160312 10:36:46< vultraz> An unrelated to this: Lambdas are cool. 20160312 10:38:11< Nobun> well... let me know if you want to find a way to use xgettext instead of wmlxgettext since I'm near the end of the development of the python 3.x version of wmlxgettext :P 20160312 10:39:21-!- Appleman1234 [~Appleman1@KD106161139026.au-net.ne.jp] has joined #wesnoth-dev 20160312 10:39:35< vultraz> oh, and "Stock API for syncing horizontal_listbox and stacked_widget" 20160312 10:39:46< vultraz> I think my tgroup helper class... *might* be useful for that 20160312 10:39:50< vultraz> I'd have to think 20160312 10:40:21< zookeeper> heh. parallelizing one loop in the terrain builder with openmp caused the grass transitions to go haywire. 20160312 10:44:04< vultraz> maybe not.. 20160312 10:45:59< vultraz> Aginor: are you going to work on dropping sdl 1.2 this weekend? 20160312 11:36:08< fabi> I wonder why the wml api says that the current turn can't be set beyond the turn limit but the unit test scenarios like to do that. 20160312 11:37:10< fabi> don't mind. My fault. 20160312 11:37:28< fabi> -1 is also a valid value 20160312 11:37:31< fabi> I forgot. 20160312 11:44:09< shadowm> {V}: 23:55:24 celticminstrel: dropping 1.2 is my weekend plan .) 20160312 11:44:13< shadowm> Er, vultraz. 20160312 11:44:27< vultraz> blagh 20160312 11:44:29< vultraz> I missed that 20160312 11:44:36-!- edgrey [~edgrey@176.59.119.78] has joined #wesnoth-dev 20160312 11:44:42< vultraz> sorry Aginor 20160312 11:54:13-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160312 11:55:05-!- vultraz [~chatzilla@124.109.10.167] has quit [Ping timeout: 244 seconds] 20160312 11:58:09-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has joined #wesnoth-dev 20160312 11:59:03-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Ping timeout: 276 seconds] 20160312 12:02:05-!- prkc [~prkc@563BD958.dsl.pool.telekom.hu] has quit [Remote host closed the connection] 20160312 12:03:33-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has quit [Ping timeout: 240 seconds] 20160312 12:04:34-!- vultraz [~chatzilla@124.109.10.167] has joined #wesnoth-dev 20160312 12:04:34-!- vultraz [~chatzilla@124.109.10.167] has quit [Changing host] 20160312 12:04:34-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has joined #wesnoth-dev 20160312 12:08:09-!- edgrey [~edgrey@176.59.119.78] has quit [Ping timeout: 276 seconds] 20160312 12:36:12-!- Kwandulin [~Miranda@p200300760F7D7398BCDF04F1B09C1A25.dip0.t-ipconnect.de] has quit [Ping timeout: 250 seconds] 20160312 12:41:36-!- gfgtdf [~chatzilla@f054156061.adsl.alicedsl.de] has joined #wesnoth-dev 20160312 12:41:49-!- gfgtdf [~chatzilla@f054156061.adsl.alicedsl.de] has quit [Client Quit] 20160312 12:51:16-!- Kwandulin [~Miranda@p200300760F7D7366BCDF04F1B09C1A25.dip0.t-ipconnect.de] has joined #wesnoth-dev 20160312 12:55:22-!- louis94 [~~louis94@91.178.240.41] has joined #wesnoth-dev 20160312 13:06:35-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20160312 13:24:24-!- louis94 [~~louis94@91.178.240.41] has quit [Ping timeout: 260 seconds] 20160312 13:24:49-!- Kwandulin [~Miranda@p200300760F7D7366BCDF04F1B09C1A25.dip0.t-ipconnect.de] has quit [Read error: Connection reset by peer] 20160312 13:25:42-!- louis94 [~~louis94@91.178.240.41] has joined #wesnoth-dev 20160312 14:22:03-!- mjs-de [~mjs-de@x4db54175.dyn.telefonica.de] has quit [Remote host closed the connection] 20160312 14:52:38-!- Kwandulin [~Miranda@p200300760F7D736624DC1C89E8003021.dip0.t-ipconnect.de] has joined #wesnoth-dev 20160312 15:11:32-!- StandYourGround [~Adium@2602:30a:c02f:d050:6d02:5952:d2d0:f7cd] has joined #wesnoth-dev 20160312 15:12:56-!- StandYourGround [~Adium@2602:30a:c02f:d050:6d02:5952:d2d0:f7cd] has quit [Client Quit] 20160312 15:13:33< zookeeper> vultraz, wanna add devfeature notes to the usage/border_size bits? https://wiki.wesnoth.org/TerrainCodesWML 20160312 15:14:29< vultraz> I should 20160312 15:14:38< vultraz> zookeeper: btw, see doofus's post in the 1.13.4 thread 20160312 15:14:45< zookeeper> yes 20160312 15:14:48< zookeeper> that's what led me there 20160312 15:15:12-!- StandYourGround [~Adium@2602:30a:c02f:d050:6d02:5952:d2d0:f7cd] has joined #wesnoth-dev 20160312 15:15:50< StandYourGround> First off, thanks to everyone involved in fixing the graphical glitches on OS X 10.11 for Wesnoth 1.13 20160312 15:16:29< StandYourGround> My next issue is that I'm trying to find a way to use Wesnoth comfortably on my HDTV, which my Mac is often connected to 20160312 15:16:43< StandYourGround> Font scaling tends to break the interface 20160312 15:17:27< StandYourGround> Only the default theme seems capable of handling font scaling well at all, but the interface can't scale well beyond about 130% or so 20160312 15:17:47< StandYourGround> by the time the font is large enough to be read comfortably on a HDTV, it is too big for the interface 20160312 15:19:42< StandYourGround> But thanks again so much for SDL2 20160312 15:19:47< vultraz> we can't help you there 20160312 15:20:34< StandYourGround> I tried loweing the resolution, but that just shrinks everything into a smaller box 20160312 15:20:55< StandYourGround> instead of stretching a smaller picture into a bigger box 20160312 15:20:57< vultraz> but we'll keep it in mind 20160312 15:23:24< StandYourGround> GUI scaling including fonts would be preferable to font scaling by itself 20160312 15:23:51< StandYourGround> basically the text grows until it's as big as the box containing it, then maybe the box starts to grow 20160312 15:24:27-!- mjs-de [~mjs-de@x4db54175.dyn.telefonica.de] has joined #wesnoth-dev 20160312 15:24:49< StandYourGround> It would be nicer if the buttons and menus and such were always the same size relative to the text 20160312 15:25:49< vultraz> we're expecting improvements to our UI in the following months 20160312 15:26:39< StandYourGround> thanks for your hard work 20160312 15:26:42< StandYourGround> gtg 20160312 15:26:47-!- StandYourGround [~Adium@2602:30a:c02f:d050:6d02:5952:d2d0:f7cd] has quit [Quit: Leaving.] 20160312 15:28:57-!- Ravana_ [~Ravana@unaffiliated/ravana/x-2327071] has quit [Disconnected by services] 20160312 15:29:26-!- Ravana_ [~Ravana@unaffiliated/ravana/x-2327071] has joined #wesnoth-dev 20160312 15:48:51< celmin|sleep> shadowm: https://www.mediawiki.org/wiki/Extension:SyntaxHighlight 20160312 15:49:53-!- celmin|sleep is now known as celticminstrel 20160312 15:56:19-!- prkc [~prkc@563BD958.dsl.pool.telekom.hu] has joined #wesnoth-dev 20160312 16:05:53< Nobun> celticminstrel: I committed the wmlxgettext changes 20160312 16:06:06< Nobun> the final regexp I used for WmlTagState was: 20160312 16:06:35< Nobun> ^\s*(?:[^"]+\(\s*)?\[\s*([\/+-]?)\s*([A-Za-z0-9_]+)\s*\] 20160312 16:07:07< Nobun> wich is, substantially the one you suggested 20160312 16:07:50-!- zookeeper_ [~lmsnie@37.35.27.57] has joined #wesnoth-dev 20160312 16:08:09< Nobun> I updated also the regexp documentation on chapter 6... when you have time you could take an eye (if you want) and let me know if it is enough clear and complete 20160312 16:08:42-!- Ivanovic_ [~ivanovic@p579FBD31.dip0.t-ipconnect.de] has joined #wesnoth-dev 20160312 16:09:35< Nobun> its at http://wmlxgettext-unoff.readthedocs.org/en/latest/srcdoc/regexes.html#regexes-used-on-wml-states (paragraph 6.1.5) 20160312 16:12:18-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has quit [Ping timeout: 246 seconds] 20160312 16:12:18-!- boucman [~rosen@wesnoth/developer/boucman] has quit [Ping timeout: 246 seconds] 20160312 16:12:19-!- Ivanovic [~ivanovic@wesnoth/developer/ivanovic] has quit [Ping timeout: 246 seconds] 20160312 16:12:36-!- Ivanovic_ is now known as Ivanovic 20160312 16:13:24-!- boucman [~rosen@wesnoth/developer/boucman] has joined #wesnoth-dev 20160312 16:18:24-!- ancestral [~ancestral@71-220-49-102.mpls.qwest.net] has joined #wesnoth-dev 20160312 16:41:02-!- ancestral [~ancestral@71-220-49-102.mpls.qwest.net] has quit [Quit: i go nstuf kthxbai] 20160312 16:54:40-!- Nobun [~nobun@host62-49-dynamic.12-79-r.retail.telecomitalia.it] has quit [Quit: Salve a tutti] 20160312 17:01:00-!- zookeeper_ is now known as zookeeper 20160312 17:01:02-!- zookeeper [~lmsnie@37.35.27.57] has quit [Changing host] 20160312 17:01:02-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has joined #wesnoth-dev 20160312 17:08:00-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Read error: Connection reset by peer] 20160312 17:08:13-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20160312 17:10:27-!- prkc [~prkc@563BD958.dsl.pool.telekom.hu] has quit [Read error: Connection reset by peer] 20160312 17:26:47-!- Nobun [~nobun@host62-49-dynamic.12-79-r.retail.telecomitalia.it] has joined #wesnoth-dev 20160312 17:29:58-!- prkc [~prkc@563BD958.dsl.pool.telekom.hu] has joined #wesnoth-dev 20160312 17:41:13-!- louis94 [~~louis94@91.178.240.41] has quit [Ping timeout: 244 seconds] 20160312 17:58:21-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has quit [Remote host closed the connection] 20160312 17:58:27-!- janebot_ [~Gambot@unaffiliated/gambit/bot/gambot] has joined #wesnoth-dev 20160312 18:01:35-!- bumbadadabum [~bumbadada@wesnoth/developer/bumbadadabum] has joined #wesnoth-dev 20160312 18:10:47< celticminstrel> vultraz: You around? 20160312 18:10:52< vultraz> allos 20160312 18:11:10< celticminstrel> Any idea what all these GUI2 errors are on my PR's Travis? https://travis-ci.org/wesnoth/wesnoth/jobs/115539594 20160312 18:11:39 * celticminstrel should probably poke Aginor and gfgtdf too, in case they might know. 20160312 18:12:54< vultraz> I'm in a dota match right now will get abck to you 20160312 18:12:59< celticminstrel> 'kay 20160312 18:26:50-!- louis94 [~~louis94@91.178.240.41] has joined #wesnoth-dev 20160312 18:27:58< vultraz> have you rebased with master? 20160312 18:36:45< celticminstrel> I have. 20160312 18:37:04< celticminstrel> That particular build was rebased with master... last night, I think. 20160312 18:37:16< celticminstrel> So about 12 hours ago. 20160312 18:50:25< celticminstrel> Huh, I have Image Not Found for hotkeys. Wonder why. Probably not an actual master issue. 20160312 18:51:18< celticminstrel> vultraz/Aginor: You really need to fix how the prefs dialog is not re-centred when you set a preset resolution. 20160312 18:52:48< vultraz> ehh? 20160312 18:53:18< celticminstrel> You know how, if you resize the window by dragging, any GUI2 dialogs onscreen are relaid out? 20160312 18:53:31< celticminstrel> This does not happen if you change resolution with the combobox in prefs. 20160312 18:59:04-!- janebot_ [~Gambot@unaffiliated/gambit/bot/gambot] has quit [Remote host closed the connection] 20160312 18:59:10-!- janebot_ [~Gambot@grickit.us] has joined #wesnoth-dev 20160312 19:34:24-!- louis94 [~~louis94@91.178.240.41] has quit [Ping timeout: 244 seconds] 20160312 19:51:47< vultraz> ah 20160312 19:51:53< vultraz> Aginor would know how to fix that 20160312 19:52:28< vultraz> in fact I know what it involves (making setMode call the same code path manual window resize does), just not the exact place that is.. 20160312 19:55:15< aeth> In case anyone is wondering, I've made some progress with designing a Lua-friendly wrapper over GUI2. Apparently the trick in Lua is to do as much as possible in tables. 20160312 19:56:42< celticminstrel> I assume you mean a wrapper around the current Lua GUI2 API... but what about changing said API? 20160312 19:56:43< vultraz> eh? 20160312 19:56:46< aeth> So e.g. https://github.com/Aethaeryn/wesnoth-umc/blob/406c93a35fb3fc1ea54773a48a08543bcd8024ee/Aethaeryns_Mod/lua/menu.lua#L343 20160312 19:56:59< aeth> I probably picked the wrong example because in my testing that function seems to be broken :P 20160312 19:57:25< vultraz> but we have lua gui2 functionality 20160312 19:57:37< aeth> I haven't yet found a good way to flatten it yet, so a lot of it is just menu3{} with a menu3{} action. 20160312 19:57:51< celticminstrel> I don't understand why two of my unit tests are causing segfaults... :| 20160312 19:57:56< aeth> vultraz: We have Lua GUI2 functionality. We do not have Lua GUI2 in idiomatic Lua. It's about as far from idiomatic Lua as possible. 20160312 19:58:47< aeth> What I'm doing is sorta OOP because Lua is sorta object oriented. Table oriented, really. Ideally, in the end, I'll have something that covers a wide range of uses just through attributes on a table. 20160312 19:58:51< celticminstrel> aeth: Where is this menu3 defined. 20160312 19:59:18< celticminstrel> If you want to pick one paradigm to describe Lua, it would be "procedural". 20160312 19:59:24< aeth> celticminstrel: https://github.com/Aethaeryn/wesnoth-umc/blob/406c93a35fb3fc1ea54773a48a08543bcd8024ee/Aethaeryns_Mod/lua/gui2.lua 20160312 19:59:31< celticminstrel> But sure, it supports OOP. 20160312 19:59:49< aeth> That file is a mess, and the name reflects that I was originally on [message] 20160312 20:00:09< aeth> The name menu3{} is because I currently have a menu() that menu3{} calls. I will integrate menu3{} into menu() once I replace all uses of menu 20160312 20:00:15< aeth> I have quite a few menus so switching something takes a while. 20160312 20:00:21< celticminstrel> Ah. 20160312 20:00:31< celticminstrel> So basically you switched from positional to keyword arguments. 20160312 20:00:39< celticminstrel> ("keyword" arguments) 20160312 20:00:42< aeth> yes, because it's a mess without keyword arguments. 20160312 20:00:44 * celticminstrel lunch 20160312 20:00:54< aeth> Especially because sometimes you can have two or more nils in the positional arguments 20160312 20:01:13< aeth> And once I merge all the menus into menu() it'll be worse (currently slider, etc. are separate, but similar functions) 20160312 20:01:49< aeth> And yes, it's procedural, but organized in a sorta OOP way because my menu code gets quite complex, and right now I'm only doing simple uses of menus. 20160312 20:02:06< aeth> It will get increasingly pseudo-OOP, and maybe even properly OOP, by the time I'm done. 20160312 20:03:01< aeth> If I don't organize things this way, I can run into quite a few bugs (especially with an improper number of nils... an IDE would fix this but I'm not sure I should be using a Lua IDE). 20160312 20:03:48< aeth> Eventually I'll have essentially an idiomatic Lua wrapper, although I will have to add more bindings to the Lua API to make it fully possible. Hopefully, I'll get to that point before the feature freeze. 20160312 20:05:44< aeth> Once it's in Lua tables, it would also provide a more concise WML wrapper over gui2 too, assuming there's an easy (and performant!) way to map WML to the idiomatic Lua tables (instead of the complex WML metatables in Lua). It might even reduce the code size of mainline significantly if I can generalize the uses enough. Currently, it only supports simple windows, so e.g. one slider, or one list, etc. 20160312 20:07:23< aeth> The goal is really to greatly reduce the required code size for GUIs. If that means eventually moving this into C++ as a second (or replacement) Lua API so it can be fast enough, that could be an alternative to switching GUI systems. 20160312 20:13:25-!- trewe [~trewe@bl20-6-237.dsl.telepac.pt] has joined #wesnoth-dev 20160312 20:31:22< celticminstrel> Attempting to document in detail the WML for configuring AI (post-PR): http://celmin.pwcsite.com/wesnoth/ai-overview.txt 20160312 20:31:33< celticminstrel> Eventually this will probably be transferred to the wiki. 20160312 20:33:17< celticminstrel> Oh right, I forgot goals. Will update in a few minutes. 20160312 20:36:41-!- wedge010 [~Thunderbi@60-241-236-92.static.tpgi.com.au] has joined #wesnoth-dev 20160312 20:38:57-!- wedge009 [~Thunderbi@60-241-236-92.static.tpgi.com.au] has quit [Ping timeout: 244 seconds] 20160312 20:38:58-!- wedge010 is now known as wedge009 20160312 20:43:12< celticminstrel> mattsc might want to take a look at that whenever he's around (I know I linked it before, but I've now updated it based on my PR and what I've learned from looking through the code). 20160312 20:45:36< Aginor> good morning 20160312 20:45:42< celticminstrel> Hi. 20160312 20:46:03< Aginor> 07:53 < celticminstrel> This does not happen if you change resolution with the combobox in prefs. 20160312 20:46:06< Aginor> 07:53 < celticminstrel> This does not happen if you change resolution with the combobox in prefs. 20160312 20:46:21< celticminstrel> Uh, why'd you paste it twice. 20160312 20:46:26< Aginor> send a manual resize_event 20160312 20:46:34< celticminstrel> Right. 20160312 20:46:40< Aginor> celticminstrel: because I wanted to make it extra clear 20160312 20:46:55< Aginor> celticminstrel: not because I didn't realise the pasting worked 20160312 20:47:50< celticminstrel> Is this suspiciously specific denial I hear? 20160312 20:49:02< Aginor> not at all, you are given a true accounting of events, and the reasons behind said events 20160312 20:49:31< celticminstrel> I really can't tell if that's sarcastic or serious. 20160312 20:49:46< Aginor> it's meant to be sarcastic :D 20160312 20:50:41< celticminstrel> Uhuh. I see. 20160312 20:51:40< Aginor> good 20160312 20:52:01< Aginor> it's not a requirement, but it certainly makes things easier when interacting with computers :) 20160312 20:53:22-!- louis94 [~~louis94@91.178.240.41] has joined #wesnoth-dev 20160312 20:56:01-!- celticminstrel [~celmin@unaffiliated/celticminstrel] has quit [Ping timeout: 244 seconds] 20160312 20:58:32-!- celticminstrel [~celmin@unaffiliated/celticminstrel] has joined #wesnoth-dev 20160312 21:00:59< celticminstrel> I wonder if there's any way to tell how many 1.12 addons are using FormulaAI. 20160312 21:01:46< Aginor> download them all and grep for it? 20160312 21:01:58< celticminstrel> I really don't want to download every addon. 20160312 21:02:15< celticminstrel> Grepping for it may be a bit difficult, too. 20160312 21:02:16< Aginor> :D 20160312 21:02:19< Aginor> andreas@goddess:~/projects/wesnoth$git branch remove_sdl_1.2 20160312 21:02:35< celticminstrel> Though, hmm. I guess any scenario using it would have to have "engine=fai" somewhere in it. 20160312 21:02:44< Aginor> yeah 20160312 21:02:49< Aginor> that'd be enough to grep for 20160312 21:02:51< celticminstrel> Or I guess "engine\s*=\s*fai". 20160312 21:03:13< Aginor> I don't see a way out of downloading them all 20160312 21:03:50< celticminstrel> The only way out would be logging onto the server itself, which requires someone who has permission to do that. 20160312 21:04:03< shadowm> What do you need to check? 20160312 21:04:33< celticminstrel> [Mar 12@4:02:51pm] celticminstrel: Or I guess "engine\s*=\s*fai". 20160312 21:04:55< celticminstrel> Also: 20160312 21:04:56< celticminstrel> [Mar 12@10:48:51am] celmin|sleep: shadowm: https://www.mediawiki.org/wiki/Extension:SyntaxHighlight 20160312 21:05:03< shadowm> I saw that. 20160312 21:05:07< celticminstrel> Ah, okay. 20160312 21:05:19< celticminstrel> Sorry. 20160312 21:08:15< shadowm> http://pastebin.com/raw/Mt3JPuQi 20160312 21:08:34< celticminstrel> Thanks. 20160312 21:08:38< celticminstrel> Several, then. 20160312 21:08:48< celticminstrel> LoW also uses it for one scenario. 20160312 21:22:30-!- irker296 [~irker@uruz.ai0867.net] has joined #wesnoth-dev 20160312 21:22:30< irker296> wesnoth: Ignacio R. Morelle glamdrol:master 51656d33d9c2 / glamdrol/main.css: Add styling for SyntaxHighlight MW extension https://github.com/wesnoth/glamdrol/commit/51656d33d9c27c74f459fbb60aeddf8329c67951 20160312 21:29:51< Aginor> ok, CMake and Scons have been updated to remove SDL1 20160312 21:30:14< Aginor> time to try to deal with all of the #ifs without making a bug mess of it 20160312 21:32:56< shadowm> celticminstrel: https://wiki.wesnoth.org/User:Shadowmaster/HighlightTest 20160312 21:33:33< shadowm> I'm trying to figure out the classes to style for the line highlight option. 20160312 21:34:27< shadowm> It's a bit annoying because the built-in version has too much specifity: .cpp.source-cpp .ln-xtra, .cpp.source-cpp li.ln-xtra, .cpp.source-cpp div.ln-xtra {background-color: #ffc;} 20160312 21:34:55< shadowm> (And also appears to involve the language name.) 20160312 21:35:47< shadowm> Also, for some reason, line numbers that are multiples of 5 are emboldened. 20160312 21:36:07< shadowm> And this isn't documented as a thing that can be configured. 20160312 21:37:50< celticminstrel> Looks nice. 20160312 21:38:21< celticminstrel> Do you know if it's difficult to install a highlighting module for WML, such as the one I made? 20160312 21:40:50< shadowm> ls extensions/SyntaxHighlight_GeSHi/geshi/geshi -> 20160312 21:40:57< celticminstrel> Looks like you can customize the multiple-of-5 behaviour with a .li2 rule. 20160312 21:41:14< shadowm> Yes, I (obviously) noticed, but it's annoying. 20160312 21:41:44< shadowm> So can I see this WML module? 20160312 21:41:53< celticminstrel> Hmm, okay, sounds like it maybe does use GeSHI rather than Pygments as the MediaWiki claimed... 20160312 21:42:22< shadowm> "Since June 2015" 20160312 21:42:38< shadowm> Because there people don't know how to document their own crap, it's up to me to guess that's MW 1.26 or so. 20160312 21:42:42< shadowm> *these 20160312 21:42:54< shadowm> We are running a previous LTS release: https://wiki.wesnoth.org/Special:Version 20160312 21:43:32< shadowm> MediaWiki 1.26.0 was released on November 2015, so that must be it. 20160312 21:43:40< celticminstrel> Well, anyway, the WML module (still a bit WIP, and for Pygments, not GeSHI) is currently at http://celmin.pwcsite.com/wesnoth/wesnoth.py 20160312 21:44:24< celticminstrel> LTS? 20160312 21:44:29< shadowm> Long Term Support. 20160312 21:44:35< celticminstrel> Ah. 20160312 21:44:58< shadowm> I _could_ upgrade us to 1.26 but I was led to believe by their sloppily redacted release notes for later releases than 1.23.x that I'll have to deal with some compatibility breaking changes. 20160312 21:45:35< shadowm> That's why I've stuck with an LTS release thus far. 20160312 21:46:00< celticminstrel> Fair enough. It's nice even just to be able to use it for Lua. 20160312 21:46:06< shadowm> (And I also had to deal with compatibility-breaking changes when upgrading to 1.23.x first. It wasn't a great experience.) 20160312 21:46:17-!- TC01 [~quassel@128.220.251.37] has quit [Ping timeout: 260 seconds] 20160312 21:47:07< shadowm> Well, you should keep that code somewhere safe because I will obviously have to upgrade to the next LTS release at some point. 20160312 21:47:14< celticminstrel> Alright. 20160312 21:47:15< shadowm> s/release/series/ 20160312 21:47:25< celticminstrel> Perhaps it'll be less WIP by then, too. 20160312 21:47:27< shadowm> No idea which that'll be though, I'm assuming 1.26.x. 20160312 21:47:55< shadowm> Or maybe 1.27.x. Do these people document this stuff anywhere. 20160312 21:49:23-!- TC01 [~quassel@london.acm.jhu.edu] has joined #wesnoth-dev 20160312 21:51:47-!- ToBeCloud [uid51591@wikimedia/ToBeFree] has joined #wesnoth-dev 20160312 21:52:52< irker296> wesnoth: Ignacio R. Morelle glamdrol:master 4c720375e5f3 / glamdrol/main.css: Additional styles for SyntaxHighlight MW extension https://github.com/wesnoth/glamdrol/commit/4c720375e5f37633032539e8a42ed4f4c64759dd 20160312 21:53:22< shadowm> Blargh. 20160312 21:59:01< Nobun> celticminstrel: I am curios... what is WFL and FAI? 20160312 21:59:13< celticminstrel> WFL - Wesnoth Formula Language 20160312 21:59:16< celticminstrel> FAI - FormulaAI 20160312 21:59:21< celticminstrel> AI - Artificial Intelligence 20160312 21:59:24< Nobun> ok thank :) 20160312 21:59:30< celticminstrel> Do you need more than just the acronym expansion? 20160312 21:59:36< celticminstrel> Or is that sufficient? 20160312 21:59:38< Nobun> no, thank xD 20160312 21:59:43< Nobun> it is sufficient :) 20160312 21:59:57< celticminstrel> Oh, are you looking at my parser perchance? 20160312 22:00:15< Nobun> yes... I am reading your code now... I am curious :) 20160312 22:00:39< celticminstrel> It's actually sort of similar to your wmlxgettext parser in that it uses a state machine. 20160312 22:00:59< celticminstrel> However, Pygments does most of the work for me, I just need to define the states and, sometimes, special callbacks. 20160312 22:01:30< celticminstrel> (Of course, unlike wmlxgettext, mine needs to be able to parse everything, not just strings.) 20160312 22:01:45< shadowm> Oh no wonder the built-in style has more specifity than mine. I was reading a dot as a hyphen. 20160312 22:02:23< Nobun> yep... it is something I could not realize... I am not enough skilled to think to develop a true parser 20160312 22:02:29< shadowm> Well, I ran out of options to boost my specifity anyway. 20160312 22:04:38< Nobun> you defined lexer and parser tokens for the highlighter as far as I could understand (but I cannot understand more than that... as I said a true parser is something I cannot develop) 20160312 22:05:06< irker296> wesnoth: Ignacio R. Morelle glamdrol:master c056c92b6ef0 / glamdrol/main.css: Boost specifity of SyntaxHighlight styles to defeat the evil extension's CSS https://github.com/wesnoth/glamdrol/commit/c056c92b6ef035c550c0b223b8f44359af78b85e 20160312 22:05:48< shadowm> And in the end, glamdrol prevails: https://wiki.wesnoth.org/User:Shadowmaster/HighlightTest 20160312 22:05:48< Nobun> however it souns a very nice work... the problem is... it is a python script... so it is harder to add it in a site wich does not support python code, except if mediawiki itself can parse somehow a python script 20160312 22:06:16< celticminstrel> Basically the goal of my parser is to assign a "token type" to each run of text. 20160312 22:06:25< celticminstrel> Each "token type" is then assigned a colour. 20160312 22:07:17< celticminstrel> I'm still seeing the bold 5 and 10, both in monobook and in glamdrol. 20160312 22:07:26< shadowm> Refresh. 20160312 22:08:02< celticminstrel> Nobun: As far as I know, it is in fact, possible for MediaWiki to read a parser script, in a later version which isn't installed on this wiki. 20160312 22:08:26< celticminstrel> I refreshed, and even purged, and still seeing bold 5 and 10. 20160312 22:08:36< shadowm> Well then your browser is broken. 20160312 22:08:41< celticminstrel> Maybe. 20160312 22:08:52< shadowm> I threw an id bomb into that CSS, there's no way it can be beaten into submission by the extension's. 20160312 22:08:59< celticminstrel> Oh, there we go. 20160312 22:09:06< Nobun> what browser are you using? Firefox? 20160312 22:09:14< celticminstrel> I would've thought purge would tell my browser not to use its cache, but apparently not. 20160312 22:09:22< shadowm> I am using Firefox 46. 20160312 22:09:24< Nobun> I experienced that Firefox sometimes has problems... 20160312 22:10:13< celticminstrel> Of course, I still see the bold 5 and 10 in monobook, but I don't really mind it, honestly. 20160312 22:10:34< shadowm> Oh, you are using monobook? Your problem then. 20160312 22:10:54< shadowm> I'm not going to change a built-in style's CSS because that _will_ cause me problems during upgrade eventually. 20160312 22:11:02< celticminstrel> I dislike how glamdrol shoves all the tools to the bottom, so yeah. 20160312 22:11:12< celticminstrel> That's fine. 20160312 22:12:07< celticminstrel> ...I wonder if user styles are enabled. Not that I care enough to actually try making one for myself. 20160312 22:12:37-!- _trewe [~trewe@bl20-11-56.dsl.telepac.pt] has joined #wesnoth-dev 20160312 22:13:24< shadowm> I hate MW's wiki. 20160312 22:14:01< shadowm> Of _course_ the whole page on the extension is based around the latest version and doesn't mention that the CSS class names changed at some point. 20160312 22:15:26 * shadowm types "MediaWiki release [Notes]" into the address bar. 20160312 22:15:41 * shadowm notices that apparently at some point I googled for "mediawiki release team sucks". 20160312 22:15:48< Nobun> shadowm: it is strange... as far as I remember, when you install mediawiki on your site, you could also install a copy of the documentation of the version you used for that MW... but I can remember bad... 20160312 22:16:24-!- trewe [~trewe@bl20-6-237.dsl.telepac.pt] has quit [Ping timeout: 260 seconds] 20160312 22:16:44< shadowm> Yes, bundled extensions ship with their individual README files. This one however makes no mention of the CSS configuration that people will reasonably want to make. 20160312 22:17:29< celticminstrel> I wonder if each language is allowed to set its own CSS classes. It sort of looked to me like that might be the case when I glanced at the GeSHI documentation. That would be a nightmare. >_> 20160312 22:17:36< shadowm> Yes, they are. 20160312 22:17:52-!- boucman [~rosen@wesnoth/developer/boucman] has quit [Remote host closed the connection] 20160312 22:17:55< shadowm> .cpp.source-cpp .ln-xtra, .cpp.source-cpp li.ln-xtra, .cpp.source-cpp div.ln-xtra {background-color: #ffc;} 20160312 22:18:05< shadowm> .lua.source-lua .ln-xtra, .lua.source-lua li.ln-xtra, .lua.source-lua div.ln-xtra {background-color: #ffc;} 20160312 22:18:15< shadowm> This is just an example of the CSS emited by MW with the extension enabled. 20160312 22:20:16 * Aginor laughs manically 20160312 22:20:19< Aginor> it's alive! 20160312 22:20:25< celticminstrel> ? 20160312 22:20:33< Aginor> I've removed SDL1.2 20160312 22:20:40< celticminstrel> Ah! 20160312 22:20:57< Aginor> a few minutes ago actually, now I'm tidying up other bits and bobs 20160312 22:21:03< celticminstrel> Oh huh, it highlights escape sequences in Lua strings, nice. 20160312 22:21:55< Aginor> I am wondering if I should try to remove the compatability layer as well or if that's better doen later 20160312 22:22:01< Aginor> I'm inclined towards the latter 20160312 22:22:01< shadowm> Okay, so it doesn't look like there are actually breaking changes along the road to 1.26 that impact us, actually. 20160312 22:22:13< shadowm> I'll try upgrading my local instance first to see what happens. 20160312 22:22:27< shadowm> Actually. 20160312 22:22:28< celticminstrel> I'm actually a little surprised that you have a local instance. 20160312 22:22:38< shadowm> (There is one I actually fixed when preparing the 1.23 upgrade.) 20160312 22:23:25< shadowm> celticminstrel: Never deploy big upgrades in production without testing them in a safe test environment first. :p 20160312 22:23:36< celticminstrel> Well, true. >_> 20160312 22:24:26< Aginor> an important lesson, but best to never learn directly yourself :D 20160312 22:24:42< shadowm> *1.22 upgrade 20160312 22:24:48-!- Kwandulin [~Miranda@p200300760F7D736624DC1C89E8003021.dip0.t-ipconnect.de] has quit [Read error: Connection reset by peer] 20160312 22:26:37< shadowm> Yay, a 24 MiB download... for... some... reason. 20160312 22:27:31< shadowm> Fortunately my carrier is in a good mood today so I'm downloading at 340 KiB/s in average. 20160312 22:31:23< shadowm> Hm, yes, we can upgrade. 20160312 22:32:36< Aginor> I need to learn how to spell. 20160312 22:35:40< Aginor> does anyone want to review/test this before I merge it? https://github.com/wesnoth/wesnoth/pull/627 20160312 22:38:42< Aginor> vultraz: what's the status on https://github.com/wesnoth/wesnoth/tree/help_gui2 ? :D 20160312 22:41:34-!- bumbadadabum [~bumbadada@wesnoth/developer/bumbadadabum] has quit [Ping timeout: 250 seconds] 20160312 22:41:46 * celticminstrel looks over the SDL1 PR. 20160312 22:43:16< celticminstrel> Oh huh, SDL2 actually offers clipboard support. o.O I did not know that. 20160312 22:44:27< Aginor> yeah, it made getting that bit working rather easy 20160312 22:44:45< Aginor> although that was all lipk 20160312 22:44:47< celticminstrel> Does it support images too? 20160312 22:45:01< celticminstrel> Obviously Wesnoth doesn't need that though. 20160312 22:45:02< Aginor> no, we can't do away with SDL_image yet 20160312 22:45:08< Aginor> and I don't know 20160312 22:45:12< celticminstrel> Ah. 20160312 22:45:36 * celticminstrel meant whether SDL2 allows putting images on the clipboard and getting them from the clipboard. 20160312 22:45:41< Aginor> ah 20160312 22:46:00< Aginor> no, it looks like it only offers text 20160312 22:46:08 * celticminstrel was struggling with implementing that using WinAPI awhile back. 20160312 22:46:10< celticminstrel> Aw. 20160312 22:46:16< Aginor> https://wiki.libsdl.org/CategoryClipboard 20160312 22:46:50< Aginor> it could probably be expanded on, but then you have to figure out how to turn each platform's little quirks into generic stuff 20160312 22:47:00< Aginor> I've seen it done in Java, and it's clunky :/ 20160312 22:47:18< celticminstrel> Seen what done? Clipboard in general, or specifically with images? 20160312 22:47:54< Aginor> arbitrary data types, not just text 20160312 22:52:07-!- Nobun [~nobun@host62-49-dynamic.12-79-r.retail.telecomitalia.it] has quit [Quit: Salve a tutti] 20160312 22:53:08< celticminstrel> Aginor: Isn't fake_event_source.cpp unneeded now? 20160312 22:53:40< celticminstrel> Asking because it looks like you've removed its entire contents. 20160312 22:54:04< celticminstrel> Ditto to the accompanying header. 20160312 22:54:51< celticminstrel> ...play_scenario.?pp too, seemingly. Unless github is just not showing me that there's more file after the deleted portions. 20160312 22:55:24< Aginor> celticminstrel: you may be right 20160312 22:55:46< Aginor> I probably missed that because I didn't know about them, and I didn't review on github 20160312 22:56:01< celticminstrel> I guess you used a tool to do this? 20160312 22:56:16< Aginor> yes 20160312 22:56:27< Aginor> the exact command is in the second commit 20160312 22:56:42< Aginor> doing it manually would have been too fraught with errors 20160312 22:56:46-!- _trewe [~trewe@bl20-11-56.dsl.telepac.pt] has quit [Quit: quit] 20160312 22:57:08< celticminstrel> Oh, you even caught SDLMain.m, good. 20160312 22:57:36< Aginor> I may have done a lot of grepping :) 20160312 22:57:44< celticminstrel> The XCode project references those four files I mentioned, so it'll need to be updated if they're removed. 20160312 22:58:12< celticminstrel> (It's easy to remove files from an XCode project by editing the file directly - simply remove all lines containing the filename. Adding files is another story.) 20160312 22:58:20< Aginor> I'll see if I can do that as well 20160312 22:58:32 * celticminstrel assumes that applies to the MSVC and CB projects too. 20160312 22:58:53< celticminstrel> The XCode project does not, however, reference keyboard.?pp 20160312 22:59:39< celticminstrel> Anyway, looks good to me. 20160312 22:59:42< Aginor> apparently not, or I would have removed them already 20160312 22:59:58< celticminstrel> Really? 20160312 22:59:58< Aginor> it looks like I slayed all of test_save_dialog.cpp too 20160312 23:00:11 * Aginor humms 20160312 23:00:16< celticminstrel> So you grepped for the filenames or something? 20160312 23:00:20< Aginor> yes 20160312 23:00:27< Aginor> when I removed them 20160312 23:01:07< Aginor> I'm not sure I want to remove these empty test files, I think it might be better to rewrite the tests in SDL2 instead 20160312 23:01:17< Aginor> which also means the fake event source 20160312 23:01:28< Aginor> so I'll not remove them if that's ok with you 20160312 23:01:57< celticminstrel> I don't especially mind. I was just pointing it out. 20160312 23:02:13< celticminstrel> If you're going to do that though, should it be done before merging? 20160312 23:03:12< Aginor> I'd argue not, simply because the tests are already missing 20160312 23:03:26< Aginor> I'd treat that as a separate task 20160312 23:03:28< celticminstrel> vultraz: I really think the race/alignment icons need tooltips. 20160312 23:03:38< celticminstrel> Or to be changed back to text. 20160312 23:03:58-!- ChipmunkV [~vova@d0017-2-88-172-31-68.fbx.proxad.net] has quit [Quit: ChipmunkV] 20160312 23:04:11< celticminstrel> Tooltips could be like how the preferences shows informative text at the bottom of the screen when you mouse over something. 20160312 23:05:27-!- gfgtdf [~chatzilla@f054156061.adsl.alicedsl.de] has joined #wesnoth-dev 20160312 23:05:53< shadowm> Wiki downtime starting now. 20160312 23:06:07< celticminstrel> Is the attack dialog GUI2 now? Does it use the unit preview pane widget? 20160312 23:06:19< celticminstrel> Oh right, it has text alignments, so probably not. 20160312 23:06:28< gfgtdf> celticminstrel: hmm if the gui2 tests fail with on your formua refactor branch then my first guess woudl be thats becasue one of the forulas used by gui2 were broekn. 20160312 23:06:45< celticminstrel> Hmm. An interesting thought. 20160312 23:07:18< Aginor> gfgtdf: do you want to have a look at https://github.com/wesnoth/wesnoth/pull/627 before I merge it? - It's dropping SDL1.2 support 20160312 23:07:49< celticminstrel> If I can identify exactly which dialogs are the problem and how to get to them in-game, I could investigate your theory... 20160312 23:08:00< gfgtdf> Aginor: so it basically removes all code inside #if sdl_version < 2 ? 20160312 23:08:05< gfgtdf> Aginor: or does it more ? 20160312 23:08:08< celticminstrel> data_manage 20160312 23:08:18< celticminstrel> game_load 20160312 23:08:35< celticminstrel> ...and gamestate_inspector. 20160312 23:08:40< celticminstrel> ...is that all of them... 20160312 23:08:49< gfgtdf> celticminstrel: all dialogs fail ? 20160312 23:09:22< celticminstrel> I don't think it's all of them. 20160312 23:09:41< Aginor> gfgtdf: no, it's all it does 20160312 23:09:44< celticminstrel> The three I listed. Also mp_change_control. 20160312 23:10:00< celticminstrel> Just those four, it seems. 20160312 23:10:10< celticminstrel> Is data_manage the one vultraz noticed before that is unused? 20160312 23:10:24< celticminstrel> How do I get to mp_change_control? 20160312 23:10:38< gfgtdf> celticminstrel: hmm the dialogs itelfs afaik usually dont sue forula firectly its teh widgets that use it insde their drawing code to maybe tehy have a common widget that all the other dont have ? 20160312 23:11:00< celticminstrel> gfgtdf: Perhaps, let me look through this list again. 20160312 23:11:21< celticminstrel> Ah, looks like they're all listboxes. 20160312 23:11:58< celticminstrel> I don't see any formula errors in relation to them though. 20160312 23:12:06 * celticminstrel goes to look up the listbox definition(s). 20160312 23:12:10< gfgtdf> celticminstrel: hmm from looking at the code it seems liek you canbring the dialog up by using 'give_control' command 20160312 23:13:11< celticminstrel> Hmm, I don't see any formulas in the listbox definitions... 20160312 23:14:03< shadowm> Oh yeah, the wiki is not the only thing that will be completely broken for the next couple of minutes. 20160312 23:14:14< celticminstrel> Oh, fun! 20160312 23:14:23< shadowm> You will probably see the front page naked or something. 20160312 23:15:13< gfgtdf> celticminstrel: hmm accroring the travis this seems t be a double free of variant 20160312 23:15:31< celticminstrel> Eh? 20160312 23:16:10< celticminstrel> Are you looking at my PR's travis log, around line 2200? 20160312 23:16:40< gfgtdf> celticminstrel: well it doesnt show me line number but this coudol be the case 20160312 23:16:45< gfgtdf> could* 20160312 23:17:51< celticminstrel> Does Boost.UnitTest actually catch SIGABRT and continue the tests? 20160312 23:18:03< celticminstrel> It almost looks that way. 20160312 23:18:12< celticminstrel> (Not important, just curious.) 20160312 23:18:15< gfgtdf> celticminstrel: no wait i think teh double free is in your newly added rforula tests 20160312 23:18:21< gfgtdf> formula 20160312 23:18:32< celticminstrel> Right, I was assuming that too, specifically test_formula_callable. 20160312 23:19:01< gfgtdf> celticminstrel: maybe taht tests does the refcounting wrong 20160312 23:19:13< celticminstrel> Maybe. 20160312 23:19:35< celticminstrel> When I do something similar in-game, I'm not seeing a problem, but in the test it's using that mock_party class, so I'm not sure if that could be related. 20160312 23:19:49-!- janebot_ [~Gambot@grickit.us] has quit [Changing host] 20160312 23:19:49-!- janebot_ [~Gambot@unaffiliated/gambit/bot/gambot] has joined #wesnoth-dev 20160312 23:19:52< gfgtdf> celticminstrel: about the other thing (mp_change_control etc) issue: i'd first check if teh current master travis test also has that problem 20160312 23:20:07-!- janebot_ is now known as janebot 20160312 23:20:09< celticminstrel> Right... 20160312 23:21:30< gfgtdf> celticminstrel: iirc there was some gui issue in the travis tests 20160312 23:21:35< gfgtdf> celticminstrel: aginor might remember more 20160312 23:21:43< celticminstrel> Aw, it won't let me use monobook now. 20160312 23:21:57< gfgtdf> dont know what monobook is 20160312 23:22:05< celticminstrel> The old default MW skin. 20160312 23:23:16< irker296> wesnoth: Ignacio R. Morelle glamdrol:master 4d2af6c164b1 / glamdrol/main.css: Update SyntaxHighlight styles for newer versions https://github.com/wesnoth/glamdrol/commit/4d2af6c164b1afcdbba98682620bafe623f6b09a 20160312 23:23:27< celticminstrel> The syntax highlighing colours are nicer though. 20160312 23:23:30< shadowm> I can fix that. 20160312 23:27:21< celticminstrel> Seems like the wiki broke again. 20160312 23:27:58< celticminstrel> Ah, it's back already. 20160312 23:28:57< celticminstrel> I should probably wait for an announcement before doing wiki stuff. >_> 20160312 23:30:03< shadowm> celticminstrel: MonoBook should be back now. 20160312 23:30:44< celticminstrel> Yay! 20160312 23:31:19< shadowm> I think I stopped breaking the wiki overall too. :p 20160312 23:31:28< shadowm> Although I'll look into deploying the WML highlighting schema next. 20160312 23:31:56< Aginor> anyon object to me dropping sdl1.2 support now? 20160312 23:35:59< Aginor> I'm taking the silance as "no" :) 20160312 23:36:42< celticminstrel> :) 20160312 23:36:43< irker296> wesnoth: Andreas Löf wesnoth:master 5c6e7c7d2000 / CMakeLists.txt SConstruct src/CMakeLists.txt: Remove SDL1 from SCons and CMake https://github.com/wesnoth/wesnoth/commit/5c6e7c7d2000c024ddf9adc19a369a7672b63095 20160312 23:36:45< irker296> wesnoth: Andreas Löf wesnoth:master 358bd1235f07 / / (77 files in 18 dirs): Remove SDL1.2 code https://github.com/wesnoth/wesnoth/commit/358bd1235f07d8d577bdb2bb0b4aafcff2e93093 20160312 23:36:47< irker296> wesnoth: Andreas Löf wesnoth:master 1d56fbb384b7 / / (5 files in 3 dirs): Remove superfluous keyboard files https://github.com/wesnoth/wesnoth/commit/1d56fbb384b705d7209ff08aaa90df800eb11ba0 20160312 23:36:49< irker296> wesnoth: Andreas wesnoth:master 8da954b4a095 / / (82 files in 20 dirs): Merge pull request #627 from aginor/remove_sdl_1.2 https://github.com/wesnoth/wesnoth/commit/8da954b4a095b7035aa62e701c8eb9541a1a29dd 20160312 23:38:12< gfgtdf> celticminstrel: you said there are lua_opt functions that return a pointzer or something? 20160312 23:41:05< shadowm> Hm, the option to select two arbitrary page history entries to diff them is gone in this version, even with the bundled skins. 20160312 23:41:26< shadowm> That's very annoying. 20160312 23:41:46< celticminstrel> ...seriously. 20160312 23:42:25< celticminstrel> Wait, I can see that interface though... 20160312 23:42:52< shadowm> I can't? 20160312 23:43:04< celticminstrel> gfgtdf: luaL_optxxx returns the argument if it is an xxx, a specified default if it is nil, and raises an error otherwise. 20160312 23:43:23< celticminstrel> I can see it in glamdrol too... 20160312 23:43:56< shadowm> https://dl.dropboxusercontent.com/u/21371130/Screenshots/65567.png 20160312 23:44:20< celticminstrel> Hmm. 20160312 23:44:36< celticminstrel> Oh, that's Special:RecentChanges though. 20160312 23:44:45< celticminstrel> I was looking at the history tab of a specific page. 20160312 23:44:56< shadowm> Oh! 20160312 23:44:58< celticminstrel> eg, click the history link beside LuaWML. 20160312 23:44:59< gfgtdf> celticminstrel: hmm cannot find luaL_optboolean 20160312 23:45:07< shadowm> Silly me. 20160312 23:45:13< celticminstrel> gfgtdf: It may be luaL_optbool, or it may be missing for boolean. 20160312 23:45:27< gfgtdf> celticminstrel: maybe its just bad to have boolean values do default to reu 20160312 23:45:43< celticminstrel> I don't think it's bad; config::attribute_value does it. 20160312 23:45:47< gfgtdf> celticminstrel: i types luaL_optb tried autocomplete and nothign happened 20160312 23:46:19< gfgtdf> celticminstrel: y but attribute_value not really lua thing . 20160312 23:47:16-!- TC01 [~quassel@london.acm.jhu.edu] has quit [Quit: http://quassel-irc.org - Chat comfortably. Anywhere.] 20160312 23:47:55-!- TC01 [~quassel@128.220.251.37] has joined #wesnoth-dev --- Log closed Sun Mar 13 00:00:13 2016