14:25 <@Dune> hello 14:25 <@heinrich5991> we could collect the source files using a glob in cmake, but is there a big benefit to that? 14:25 <@heinrich5991> as Dune said, adding/removing source files is rare, so that doesn't really matter 14:26 <@Dune> heinrich5991, well that means you need to know that you have to modify the cmake file everytime you commit a file addition/removal 14:26 <@heinrich5991> yes. how often does that happen? 14:26 <@Dune> infrequently 14:26 <@heinrich5991> I've been bitten by files being compiled by bam although they were only left-overs from a stash or so 14:26 <@heinrich5991> the inverse problem exists as well (with bam) 14:26 <@Dune> hm :/ 14:27 <@Dune> I think both positions are legit 14:27 <@heinrich5991> I think adding/removing a line for files is not such a big deal as it doesn't happen very often 14:27 <@Dune> I personally think consistency with the behavior of bam would be nice 14:27 <@Dune> in both cases it's not a huge deal yes 14:28 <@heinrich5991> but cmake should also work without translations etc. in place 14:28 <@heinrich5991> I should fix that I guess 14:28 <@Dune> you could also argue having to deal with potential problems of left-over files is rare too 14:28 <@heinrich5991> yes 14:28 <@heinrich5991> it is 14:28 <@Dune> ah yeah that one is important 14:28 <@Dune> by the way https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=921274 14:28 <@Dune> there is a debate about that SSE stuff Oy 14:31 <@Dune> heinrich5991, tbh I'm annoyed to have to carefully maintain and test cmake, because I don't like having to deal with cmake. so I'm biased in that regard ^^ 14:37 <@Dune> I'm surprised default filters aren't properly localized btw 14:47 <@Dune> some people on transifex have requested for ngettext support because some languages don't play so nice with using plural for everything (e.g. %d players online) :/ 14:50 <@heinrich5991> yea, we should probably do that at some point 14:50 <@heinrich5991> e.g. russian has different plural for 2-5, 21-25, 31-35, etc. 14:52 <@Dune> I don't think there is an open issue 14:55 <@heinrich5991> https://github.com/teeworlds/teeworlds/issues/2030 14:55 <@heinrich5991> fixed 14:55 <@Dune> :D 15:03 < Oy> Dune: it didn't build without the flag? 15:03 <@Dune> not on linux 32 bit iirc 15:04 <@Dune> (nor 64 bit?) 15:04 <@Dune> hold on I try 15:05 < Oy> that discussion/patch suggest otherwise 15:05 <@heinrich5991> 64bit worked without the flag 15:12 < bridge> [teeworlds] `/usr/lib/gcc/i586-linux-gnu/4.9/include/xmmintrin.h:1238:1: error: inlining failed in call to always_inline 'void _mm_pause()': target specific option mismatch 15:12 < bridge> [teeworlds] _mm_pause (void)` 15:12 <@Dune> (32 bit) 16:23 < day> is the teeworlds jungle background screen time dependent? i.e in the night it's darker than during the day? 16:23 < day> screen/theme 16:27 < day> is this a skin render bug? The skin looks like a mix of two different skins https://i.imgur.com/ULpkpeb.png 16:28 < day> or rather three. (blue)kitty, redboob, cammo 16:29 < day> nvm. i just found the custom skin feature :^) 16:40 <@Dune> themes have day/night time detection yes 16:40 <@Dune> you should read the patch notes :D 17:00 < Oy> Dune: seems that was patched in gcc 5 years ago https://gcc-patches.gcc.gnu.narkive.com/Ypx83P9u/patch-rfa-move-x86-mm-pause-out-of-pragma-target-sse-scope 17:00 <@Dune> oh, interesting find, Oy 17:03 < Oy> could remove the flag on default and set a config option for that, which you can turn on for old distros 17:04 <@Dune> hmm. how comes I don't have it in my gcc :/ 17:04 <@Dune> hold on 17:04 <@Dune> 5 years sounds long 17:05 < Oy> seems u are using 4.9 and the guy from the link has 4.10 17:07 <@Dune> yeah I used an old distro for 32 bit :| 17:07 <@Dune> > could remove the flag on default and set a config option for that maybe we should propose that fix on the tracker? 17:12 <@heinrich5991> we can just manually set the flag when we build it on an old distro I guess 17:15 <@Dune> something needs to be done for packaging though 17:16 <@Dune> e.g require gcc >= 4.10 17:17 <@heinrich5991> this is the things that distributions figure out by themselves, normally (which versions of gcc they need to compile packages) 17:19 <@Dune> that would be hard to figure, it should be somewhere in the notes 17:19 <@Dune> wouldn4t it? 17:24 <@Dune> heinrich5991, there is a stray commit in your PR (?) 17:24 <@heinrich5991> oops 17:25 <@heinrich5991> fixed 18:23 <@heinrich5991> ok, so reordering substitutions is now possible 18:23 <@heinrich5991> Dune: do you know where this could be documented so translators know of this possibility? 18:23 <@Dune> hmm 18:23 <@Dune> it sounds difficult to do that on Transifex 18:24 <@Dune> There is always https://github.com/teeworlds/teeworlds-translation/wiki 18:24 <@Dune> and then use the announcements at https://www.transifex.com/teeworlds/teeworlds/announcements/ 18:25 < Oy> Dune: could u test on ur 32bit system using this bam.lua https://pastebin.com/yGdaXRk2 18:26 <@Dune> okay 18:37 < bridge> [teeworlds] https://pastebin.com/YbLVd14d 18:37 <@Dune> I had to copy the patch so I might have messed up something but it doesn't seem to work, Oy 18:38 < Oy> did u do bam config? 18:38 <@Dune> yes 18:38 < Oy> did the compiler option turned to no? 18:38 < bridge> [teeworlds] AUTO buildwithoutsseflag no 18:40 <@heinrich5991> you could try replacing the == 0 with a ! 18:40 <@heinrich5991> !config.buildwithoutsseflag.value 18:41 <@heinrich5991> (I don't know how lua handles 0 == false or similar) 18:42 <@Dune> it doesn't seem to enter the if 18:44 <@Dune> ok so == false fixes it 18:44 < Oy> yeah false 18:44 < Oy> good 18:49 <@Dune> that's a smart fix, packagers will have to use bam though 18:50 < Oy> could be done for cmake too i guess? 18:51 <@Dune> I don't know cmake at all 18:51 < Oy> seems to have a try_compile - so could do the auto-detect that way 18:52 <@Dune> cool 18:52 < Oy> should also fix the stuff from the guy last time - some window manager thing 18:52 <@Dune> we should notify downstream 18:52 <@Dune> was it day? 18:52 <@Dune> ah nvm 18:53 <@heinrich5991> I can do the cmake one 18:53 <@Dune> cool, thx 18:53 < Oy> yeah, they should probably use the patch we added instead of removing the msse2 flag in general 18:53 < Oy> good 18:53 <@Dune> is there any way to fix that sdl legacy mode? 18:54 < Oy> yeah, that was the thing 18:54 < Oy> yeah 18:54 < Oy> we could enable the newer window manager for x11 per default 18:55 < Oy> and set a console config, to turn it off in case sth goes wrong 18:55 < Oy> cause sdl reports there might be issues 18:56 <@Dune> this would be only in linux builds or? 18:56 < Oy> yeah 18:56 < Oy> mac uses x11 too i guess 18:56 <@Dune> ah, right 19:15 < Oy> too bad i can't remember the guys name, so that he can test again 19:17 <@Dune> maybe that should be added to the FAQ if someone has gfx issues on unix 19:17 <@Dune> gfx_use_x11xrandr_wm 0 19:17 <@Dune> the guy was verdre 19:23 < Oy> yeah, would be good to add a faq entry for it, in case someone has an issue with the window or window manager 19:23 < Oy> right, but doesn't seem to be around 19:25 <@Dune> he's not on the gnome irc and you can't pm on gitlabn 19:31 < Oy> another thing: 208 commits since 0.7.2. we should do some 0.7.3 in the near future 19:36 <@Dune> that is a good point 19:38 <@Dune> I haven't heard of zatline for a month unfortunately 19:38 < Oy> :( 19:39 < Oy> we really need a bot flag, skin 19:39 <@Dune> so gfx issues may get stuck, yeah :/ 19:39 <@Dune> https://github.com/teeworlds/teeworlds/issues/1911 would be nice to fix too 19:40 < Oy> yeah, just wanted to link it here :) 20:09 < rand> about lua, anything different than 'false' or 'nil' (undefined) is coerced to 'true' 20:09 < rand> (so '0' is true) 20:10 <@Dune> interesting, thx 20:11 <@Dune> so it was a if( = ) and lua converted the int to bool instead of the bool to int 23:03 < day> isn't that the normal procedure? e.g. C. every int != 0 => True 23:04 <@Dune> I mean, it could do 0 == false => 0 == 0 => true 23:05 < day> and what would 0 == true => 0 == ? => ? become? 23:14 <@Dune> so what you mean is there is no bool -> int conversion in lua? 23:15 < day> me? I don't know, never writen lua. i just find the auto casting from int -> bool intuitive, as bool is a subset of int. 23:23 <@Dune> C/C++ has autocasting from bool -> int and it's bitten me a few times 23:23 < day> so false becomes 0. and true becomes 1? 23:24 <@Dune> yes 23:24 < day> but if that was true then '2 == True' would be false? 23:24 < day> and afaik everything !0 is True in C 23:25 < day> thus my understanding C autocasts Int -> Bool 23:25 <@Dune> yeah 2 == True should be false iirc 23:25 <@Dune> not sure 23:25 < day> never. lemme check 23:26 < day> well C doesnt really have bool 23:27 < day> but would you agree that if(2 == True) is synonymous with if(2)? 23:28 <@Dune> try with C++ 23:28 <@Dune> huh 23:28 <@Dune> never seen it like that 23:28 <@Dune> I guess you're right then 23:38 <@heinrich5991> 2 == true doesn't evaluate to true in C/C++ or python 23:39 < day> heinrich5991: what is 'true' in c? 23:39 < day> it's not a keyword that exists afaik 23:39 < day> but 'int 2' does evaluate to true 23:40 < day> or rather very thing not 0 is evaluated as true 23:42 <@heinrich5991> day: I think it exists from c99 onwards 23:42 < day> regarding python "if 2:" is interpreted as 'true' but "if 2 == True" is interpreted as 'false' 23:43 <@heinrich5991> I think our disagreement stems from the fact that you consider everything that evaluates the "then" branch of an "if" as "true" and everything else as "false" 23:45 <@heinrich5991> in both python and c/c++ false and 0 behave pretty similarly and true and 1 do as well 23:45 <@heinrich5991> try e.g. True + True in python 23:45 < day> you are right about bool existing. its in 'stdbool.h'. and "2 == true" is false 23:48 < day> so this means that 'if' uses its own 'true/false' logic? 23:49 < day> i find it rather odd that 'if(2)' is interpreted as 'true', but if(2==true) is not 23:49 <@heinrich5991> the logic for if is (without looking into the standard) that everything nonzero will cause the "then" branch to be executed, and 0 will cause the "else" branch to be executed 23:50 < day> which is equivalent in my mind to "everything is seen as true that is non zero." 23:51 <@heinrich5991> but true is just one possible value that will cause this behavior 23:51 <@heinrich5991> there are many more :) 23:52 <@heinrich5991> in python, `if` calls the `__bool__` function on the object passed to the if 23:53 < day> i see 23:54 < day> so true/false in c literally act like integer '1' and '0'. the implementation is so shady that 'int a = true + true' nets you a == 2 :"D 23:56 <@heinrich5991> yes. also works in python 23:56 < day> so in reality bool doesnt really exist imho. if(1 == false) is equivalent to if(1 == 0) 23:56 <@heinrich5991> if you want to call it that, yes 23:56 < day> ah. thats why you mentioned true + true in python. didnt expect it would happen there o0 23:57 < day> i mean true/false are concepts, whereas 1 and 0 are numbers