Time Nick Message 09:38 troller ShadowNinja, 09:38 troller 13:37:43: ACTION[main]: Server for gameid="minetest" listening on 0.0.0.0:62801. 09:38 troller 13:37:43: ERROR[main]: ServerError: Failed to bind socket (port already in use?) 09:38 troller freebsd 09:38 troller singleplayer fail 10:04 Megaf Have you seen thos folks? https://forum.minetest.net/viewtopic.php?id=8552 10:35 tomreyn hi, is using -DCMAKE_BUILD_TYPE=RelWithDebInfo a bad idea? 11:50 Megaf folks, that minetest 0.4.9 thing at the top left corner, where is it defined? 12:04 Megaf PilzAdam: Hi there 12:04 Megaf I think you can help me with that 12:04 Megaf 09:50:53 Megaf | folks, that minetest 0.4.9 thing at the top left corner, where is it defined? 12:05 PilzAdam why do you want to know that? 12:18 Megaf PilzAdam: I forked minetest 12:18 Megaf Im not changing much code, or any at al 12:18 Megaf just twicking conf files and applying patches 12:19 PilzAdam why fork it then? 12:21 Megaf nevermind 12:25 Megaf VanessaE: 14:13 Megaf sfan5: your tab player list thing, only shoe players nearby, is that what tis expected? 14:15 sfan5 Megaf: yes, it shows all players you can see in the world 14:15 Megaf ok 14:15 sfan5 but some servers have unlimited_player_transfer_distance = false, so the server only sends some 14:17 Megaf ShadowNinja: wow, a lot of particles 14:42 Megaf How to build minetest for windows without windows? 14:43 Exio4 with mingw 14:45 MichaelRpdx Among people running minetest on Linux hosts, what the the common distributions used? 14:59 Megaf MichaelRpdx: you mean, the distro people use to play minetest? 14:59 Megaf I mean, distros used 14:59 MichaelRpdx More interested in people hosting games 15:00 MichaelRpdx The issue I have open seems to be Arch Linux specific and I need to compare the build dependencies on Arch with Distro_Other. 15:00 MichaelRpdx I'll be spinning up a VM and installing minetest there. 15:06 Megaf MichaelRpdx: as Client, I have some problems with Debian, and its IRRLICHT related stuff 15:06 Megaf I need to get IRRLICH source from its website and compile it 15:07 Megaf If I use Debian's packages of irrlich, minetest will crash when sending a long message 15:13 Megaf MichaelRpdx: Debian is a pretty popular hosting for minetest I think 15:16 MichaelRpdx Good, I was hoping for !Redhat 15:17 MichaelRpdx I also have a couple of cloud servers and can get installed on one of those quickly. 15:20 MichaelRpdx What about libcurl4? gnutls vs openssl? 15:28 sfan5 MichaelRpdx: both work 15:37 MichaelRpdx Thank you sfan5 15:38 Megaf sfan5: do you play on windows? 15:38 sfan5 ofc not 15:43 Megaf sfan5: but you do make windows builds 15:43 Megaf do you use windows for that? 15:44 sfan5 no 15:45 Megaf sfan5: cool, I just found this http://dev.minetest.net/Compiling_Minetest#Cross_compile 16:05 Megaf doesnt work xP 16:05 Megaf but its a good place to start 16:09 tomreyn MichaelRpdx: i guess your VM will be setup by now, but if it helps, building on ubuntu 13.10 x86_64 worked fine 16:10 MichaelRpdx tomreyn - it's not. I had to go to work. (read: move from couch to desk and switch computers) it won't happen until tonight, 16:11 tomreyn http://pastebin.com/raw.php?i=5sWqRCCP 16:11 tomreyn ldd, maybe it helps with your search for dependencies 16:12 MichaelRpdx Oh yeah! Thank you 16:12 tomreyn + server http://pastebin.com/TP8bSi2v 16:23 ShadowNinja ~tell proller I can't debug that without --info or --debug. 16:23 ShadowBot ShadowNinja: O.K. 17:10 VanessaE MichaelRpdx: bit late to answer I guess, but Ubuntu at one end, and Debian at the other end, for me. 17:10 VanessaE (so I guess that's two votes for Debian ;) ) 17:13 Megaf Hi VanessaE =) 17:13 VanessaE hi. 17:27 Megaf VanessaE: whats that skin mod you use? 17:28 VanessaE megaf -> #minetest 17:28 Megaf sorry 17:45 MichaelRpdx Hi VanessaE not too late at all. I've a full work day ahead. I'm leaning to Debian because Ubunutu's constant niggly upgrades drove me to Arch in the first place. 18:03 VanessaE heh 18:03 VanessaE could be worse I suppose 18:07 sapier https://github.com/minetest/minetest/pull/1143 this was tested on vanessaE's server for some days now, it should fix connect of old clients (at cost of some minor glitches for our official clients) ... there's a controversial change in it too. It does make client version number and string available to mods. We explicitly do not want minetest server version number access in modapi. Does this apply to client versions too? Comments are w 18:10 VanessaE s/some days/two days/ 18:11 VanessaE the only major side effect it has is that Buildcraft and its variants often can't see other players' models, presumably because those clients don't cache the player models or some of the received media. 18:12 VanessaE with 0.4.9 and prior, the second and subsequent connect (once all media has been cached) always works 18:12 VanessaE with git, it always works, period. 18:12 VanessaE so only tablet clients are negatively affected. 18:12 VanessaE to the Buildcraft vendor: if you're reading this? FIX YOUR BUSTED-ASS CLIENT. :) 18:13 VanessaE (assuming one of the previously-discussed official builds isn't released first) 18:22 sapier https://github.com/minetest/minetest/issues/1146 seems like someone didn't free the env lock, but according to the mentioned irc conversation the one reporting it had trace level logging enabled. As we know logging to be horribly broken I'm not sure if this is really what's going on. 18:26 sapier never mind I guess I found it 18:26 VanessaE sfan5: what say you about the /data/data vs SwitchMe thing I mentioned ? 18:27 sfan5 VanessaE: what is this SwitchMe thing (what does it do) ? 18:33 VanessaE sfan5: multiple user accounts for 4.1 18:34 sfan5 ?? 18:34 sfan5 ah 18:35 VanessaE 4.1 has the functionality for it but no user-facing facilities to actually USE it 18:35 VanessaE switchme provides a hacky way to wedge that in 18:35 VanessaE it works more or less. 18:35 VanessaE though at this point I might just wipe the tablet and reset it to a non-rooted, stock configuration and just get a second so Abe and I each have one. 18:38 sapier well that's (one of the reasons) why apple and google didn't add a user management in first place :-) 18:38 sapier to sell more devices 18:39 VanessaE sapier: 4.2 and up have multi-user support out of the box I guess 18:40 sapier well user management and google ... what's user mgt good for if all your data is mirrored to nsa servers? 18:41 VanessaE heh 18:42 sapier do we need a new menu for android devices? I suggest creating a lightweight menu not supporting running a server on android and maybe only a single singleplayer world 18:43 VanessaE well running a server is less CPU-intensive than running the client, so why not? 18:44 VanessaE others have proven that on even less-powerful devices like RPi 18:44 VanessaE didn't someone around here get the server running on a BeagleBoard? 18:45 proller rpi slower than current mobiles in 10-20x 18:48 proller i want to try run server on 10x slower device than pi, but not it need reinstall debian, maybe in ~month 18:48 sapier well it's not about fact of mobile beeing able to run a server but do we really want to support it? 18:48 sapier it's most likely gonna run very slow and will cause a lot of disapointment 18:48 VanessaE sapier: well probably not 18:48 VanessaE but at least make sure the server binary is there 18:49 VanessaE experienced users who know wtf they're doing can run one of course 18:49 VanessaE so yeah I guess get rid of the Server tab 18:49 VanessaE but for G*d sakes! 18:49 VanessaE MAKE SURE the WHOLE settings tab is there! 18:50 sapier why? 18:50 sapier on andorid devices? 18:50 VanessaE nothing pisses me off more than for some stripped down "light weight" version of a program to come along and prevent me from turning OFF (or on) some feature I DON'T WANT 18:50 VanessaE like for example, buildcraft? YOU CAN'T DISABLE the G*d damn shaders 18:50 sapier lots of those features don't work at all? 18:50 VanessaE nonononono 18:50 VanessaE you're not listening 18:50 VanessaE I said turn OFF 18:50 VanessaE as in disable shit that *doesn't* work 18:51 sapier well things that don't work should be disabled on android by default ;-) 18:52 VanessaE the latest BC client, for example, has those wavy leaves shaders (probably water and plants too but I haven't been able to see). I want to turn those and all other shaders OFF on Android because they cost FPS and on a tablet, you can't afford the eye candy 18:52 VanessaE you can't turn preload item visuals off either 18:52 sapier well I'd suggest adding some predefined performance levels 18:52 VanessaE shit like that costs fps and memory 18:54 VanessaE no, none of that crap. just turn everything (except smooth lighting, 3d clouds, and fancy trees) off by default, let the user turn the extra things on if they want to. 18:54 VanessaE 99.99% of users will never touch the settings tab anyway 18:55 sapier well I'd make a quite simple limited menu for android 19:07 khonkhortisan I go through settings once when I try a new game 19:20 MichaelRpdx sapier - that patch did not resolve the issue. 19:20 sapier ok do you have time for more investigations? 19:21 sapier please disable trace error level prior testing 19:21 MichaelRpdx I do 19:21 MichaelRpdx Lunch time at work 19:22 sapier ok 19:22 MichaelRpdx My test was without trace, just wanted a quick check 19:22 MichaelRpdx However - I suspect this is due to diffs in the Arch environment. 19:23 MichaelRpdx I can pretty reliably get it to start having problems after a bit of single person attached play. 19:23 sapier well that might cause the timing to change to run into that deadlock but there shouldn't be a deadlock at all 19:23 MichaelRpdx And once it starts for a particular world, the kill is always there. 19:24 sapier for what I see someone captured env lock and didn't release it, it shouldn't be to difficult to find out which thread dit it 19:24 MichaelRpdx Want a trace from the current instance? 19:24 MichaelRpdx or a different type of trace? 19:25 sapier trace wont help with this lock but the lock itself has a property telling which tread owns it 19:25 MichaelRpdx OK what to do on my end? 19:26 sapier you need to get that situation again and attach gdb. how much experience do you have with gdb? 19:28 MichaelRpdx enough to /help and fumble around 19:29 sapier ok I prefere to use gui but I guess I can guide you to the information we need 19:36 MichaelRpdx going to be doing something like looking for __data.__owner for a pthread_mutex? 19:36 sapier exactly 19:36 * MichaelRpdx can search stack overflow too. 19:37 * MichaelRpdx emerged from cave and sees the light 19:37 sapier and of course the backtrace to see number of the thread holding the lock 19:39 MichaelRpdx http://pastebin.com/kw8dv1Xy 19:40 sapier :-) ok I need a backtrace of all threads 19:40 sapier thread apply all bt 19:40 sapier and the matching mutex owner info 19:44 MichaelRpdx http://pastebin.com/GJjcCwZE 19:44 MichaelRpdx the mutex owner for the first one is 8321 19:45 sapier 8321???? 19:45 MichaelRpdx as in 19:45 MichaelRpdx (gdb) print mutex.__data.__owner 19:45 MichaelRpdx $1 = 8321 19:45 sapier that'd be the one completely messed up thread 19:46 MichaelRpdx Hey, I don't belive in bringing people easy problems. 19:46 sapier :-) 19:46 sapier well that's a really interesting one 19:47 sapier lock hold by someone obviously beeing completely broken 19:50 sapier and I don't have any idea what thread this might have been 19:50 sapier could you do again create a treadlist prior error occurs and then one after it happened? 19:50 sapier +h 19:51 MichaelRpdx Well, based on other problems, the treading goes wrong early on. 19:52 MichaelRpdx meaning my world view shrinks and walking to the edge of shown world the view out does not populate. 19:52 sapier well that may indicate emerge thread is involved but that one isn't broken 19:56 MichaelRpdx I'm strongly suspecting unless minetest wants to make supporting Arch Linux as a host platform a goal, or use Arch as a ferret out different bug sets, 19:57 MichaelRpdx That it (Arch) should be listed as non supported and I'll just bring up a VM with Debian to run my local server. 19:58 MichaelRpdx it's back to work time. 19:58 sapier well issues with arch may occur on other platforms too, so while arch isn't our primary target arch we still try to find bugs which only occur there (unless they're caused by some broken lib) 20:08 MichaelRpdx (boring meeting) 20:09 sapier :-) 20:09 MichaelRpdx Assuming the thread problem occurs earlier in execution - how should I check thread health as the program runs? 20:10 MichaelRpdx boring == I'm just there to jump and shout if someone says something silly 20:10 sapier hmm I'd try stopping with gdb and just do a backtrace of all threads every now and then 20:16 MichaelRpdx And for the gdb just out of the cave guys, is there a quick manner to tell if all is healthy or hosed? 20:16 sapier well if you still see sane backtraces it may be correct, if you see only adresses something went wrong ;-) 20:17 sapier yeah I know that's not that helpfull :-) 20:17 MichaelRpdx more helpful than "gee what's this screen of stuff?" 20:18 MichaelRpdx Can you show me a sane backtrace? 20:19 sapier lines like this 0x00007f3899329fd5 in ?? () or even this #4 0x000000000000000b in ?? () are not sane, It's quite unlikely any function is at address b 20:19 ShadowBot https://github.com/minetest/minetest/issues/4 -- cppcheck warnings 20:20 sapier argh sometimes shadowbot is quite annoying 20:21 MichaelRpdx and looking at my own output, I see one of the threads is very different from the rest. 20:21 sapier exactly that's the messed up one ... and the one holding the lock too 20:22 MichaelRpdx does LWP mean anything to you? 20:22 VanessaE I thought shadowbot wasn't supposed to answer to numbers below a like 500 or something? 20:22 sapier the number is the threadid, it's the same as in mutex owner 20:22 VanessaE -a 20:24 MichaelRpdx sapier - which gui db do you use? 20:25 sapier usually eclipse but it's not quite lightweight if you just wanna debugg 20:27 ShadowNinja I'll have ShadowBot ignore numbers below 50 or so. 20:28 sapier thanks ShadowNinja 20:30 ShadowNinja #1 #123 20:31 ShadowNinja Hmmm... 20:31 ShadowNinja #1 #123 20:31 ShadowBot https://github.com/minetest/minetest/issues/123 -- crashes after about 10 seconds on game start 20:31 ShadowNinja There. 20:35 sapier ShadowNinja: what's your opinion to adding scriptapi access to CLIENT version? 20:38 ShadowNinja sapier: That sounds good. It would be especially good if you can access the name, to, eg, ban BuildCraft or Freeminer clients. 20:39 ShadowNinja Of course I want access to the srerv ser version too, for statistical and informational purposes. 20:39 sapier you can only access client version if it's sent by client, only versions post my patch may send it. But they're not required to send it as this information is used for information only 20:39 ShadowNinja server* 20:40 sapier we have discussed quite often about server version and decided not to tell it on scriptapi 20:41 ShadowNinja Yes, because apparently moders can't read two sentences... 20:42 sapier well I know modders wont read ... they will abuse the information. maybe the will abuse client info too 20:43 sapier celeron55 as you've been the one most critical about server version number what's your opinion on client version number? 20:46 ShadowNinja sapier: Is the protocol version available? Because that's the main *usefull* number, the version hash is mostly informational. 20:47 sapier yes I made protocol as well as serialization available too 20:47 ShadowNinja Alsight, seems fine then. I'll check the API... 20:48 ShadowNinja Showing 1 unique commit by 1 author. 20:48 ShadowNinja You merged them. :-( 20:48 sapier accidentaly yes ... but I'll split them if necessary 20:49 ShadowNinja ip_vers can be changed to ip_version. 20:49 ShadowNinja And ser_vers in confusing. Use you can use serialization_version. 20:50 ShadowNinja Same with other vers fields. 20:50 sapier ok it's just names 20:51 ShadowNinja A client name field would be good too. As in "Minetest" or "Freeminer". 20:51 sapier there's no name for a client 20:52 sapier and that information isn't good for anything except information as there's no way to stop clients from faking it 20:52 ShadowNinja sapier: Oh, and if you use a enum with Active and similar state values it should be changed to CLIENT_STATE_ACTIVE or similar, as Active is far too general. 20:52 ShadowNinja sapier: Of course, but it's still usefull. 20:52 sapier no it isn't usefull at all 20:52 sapier noone can rely on this information 20:53 ShadowNinja sapier: Will this be available at on_prejoinplayer time? 20:53 sapier no 20:53 ShadowNinja sapier: Stats. 20:53 ShadowNinja sapier: Can you fix that? 20:53 sapier no way 20:54 sapier prejoin is client init only I'd have to change the initial connect packet, but I can't deny clients without it for compatibility reasons so no benefit at all 20:54 ShadowNinja Alright. 20:55 sapier case you tried to use this information for blocking specific clients those will just send no information at all 20:55 ShadowNinja sapier: I think you should pass connect_time instead of uptime, as that way you can save the value and it's still valid later. 20:55 sapier btw that's exactly what celeron was afraid about ... guess I'll remove the scriptapi access to this information in total 20:58 ShadowNinja https://github.com/minetest/minetest/pull/1143/files#diff-2543b17841165757ac531ffedd0b5fddR176 Rather than having the whole thing i the conditional, move push_string and settable out of it as they're the same for both versions. 20:59 ShadowNinja And theer may be a shortcut function to those three calls. (if not maybe we should add one) 20:59 ShadowNinja there* 21:00 sapier are you sure AF_INET6 is always and for any os defined as 6? ;-) 21:00 ShadowNinja What? No. I mean this... 21:00 sapier well I tried it and it didn't work so I switched back to the variant that worked 21:01 sapier didn't want to debug lua stack ;-) 21:01 sapier especialy as this fct is just a spinoff 21:02 ShadowNinja sapier: http://pastebin.ubuntu.com/6922187/ 21:03 sapier oh this way .. ok I guess this works 21:07 ShadowNinja You could also add Address::getIPVersion(). 21:08 sapier I could but why? 21:08 sapier family already tells everything 21:09 sapier ok I removed all version information for non debug builds. they're not supposed to be used in mods at all 21:09 proller ShadowNinja, will you fix bind ipv6? 21:09 sapier I'll fix it next proller 21:10 proller NOOOOOO ;) 21:10 sapier as well as ipv6 unit tests ;-P 21:10 proller less than 1000 lines? ;) 21:10 sapier maybe ... if you use INT16 for counting ;-P 21:11 ShadowNinja sapier: Over-indentation: https://github.com/minetest/minetest/pull/1143/files#diff-2543b17841165757ac531ffedd0b5fddR165 21:13 sapier nope your editor is broken 21:13 sapier fix it's tab width 21:15 proller .. in github... 21:17 sapier I don't wanna discuss this again there'll never be a conclusion as noone dares to do the work of writing a complete coding style reference 21:18 VanessaE there used to be one 21:19 VanessaE but the general rule is, code like you're writing it for the Linux kernel. 21:19 proller a complete coding style reference: astyle --style=attach --indent=tab --keep-one-line-blocks --keep-one-line-statements --indent-classes --pad-oper *.cpp *.h 21:19 sapier well that's crap as linux kernel doesn't use c++ 21:19 sapier and there's written tab width is 4 in minetest too 21:20 sapier and next astyle version will use other defaults so we switch coding style back and forward once different developers use different versions 21:22 sapier as I said that discussion is woth nothin lets stick back to real relevant topic 21:22 proller wat 21:23 sapier I'll disable all version access for release builds to stop modders from abusing it 21:23 sapier what do you think shall I mention those debug parameters in lua_api.txt or delete them there too? 21:23 MichaelRpdx Where in the wiki are the server hw requirements listed? 21:23 * MichaelRpdx feels blind 21:24 sapier there are none 21:24 MichaelRpdx meaning they're not documented or they don't exist? 21:24 sapier noone ever tried slowest possible machine 21:25 sapier I heared rumors some ppl tried it on beagle board working for a few players but not sure about it 21:25 MichaelRpdx I've found a vps provider with current Arch and was going to get the vps so we could have a shared spot to work on my problem 21:26 sapier could help yes 21:26 MichaelRpdx And dump one of the current vps providers I currently have for DNS and mail secondaries. 21:26 sapier hopefully it does occur there too 21:26 MichaelRpdx I'll be able to find out quickly enough. ;) 21:27 sapier shadow I merged your comments https://github.com/minetest/minetest/pull/1143 21:30 Calinou I would say, 1GB of RAM as minimum, 2GB as recommended 21:31 Calinou for a medium-sized MT server 21:48 ShadowNinja sapier: The tab width is officially 8 spaces, but that's only relevant for converting old code. Function arguments should always be indented two tabs. 21:48 sapier no it isn't 21:48 sapier it's still 4 unless you recently modified wiki without asking someone ;-P 21:51 ShadowNinja sapier: Chapter 1: Indentation -- Tabs are 8 characters, and thus indentations are also 8 characters. There are heretic movements that try to make indentations 4 (or even 2!) characters deep, and that is akin to trying to define the value of PI to be 3. 21:52 sapier well that change originated of one of the heretic guys claiming tabs to be 8 spaces 21:53 sapier btw what guideline do you refer to I don't even find this sentence in the guideline I see ;-) 21:53 ShadowNinja Rationale: The whole idea behind indentation is to clearly define where a block of control starts and ends. Especially when you've been looking at your screen for 20 straight hours, you'll find it a lot easier to see how the indentation works if you have large indentations. -- Now, some people will claim that having 8-character indentations makes the code move too far to the right, and makes it hard to read on a 80-character termina 21:53 ShadowNinja screen. The answer to that is that if you need more than 3 levels of indentation, you're screwed anyway, and should fix your program. 21:53 sapier I wont change it if you don't like it change it I'll change it back next time ;-P 21:54 ShadowNinja http://dev.minetest.net/Code_style_guidelines -- For everybody else's sanity, please just use something that resembles the Linux Kernel code style, with the exception that cases in switch statements are indented a level. 21:54 ShadowNinja https://www.kernel.org/doc/Documentation/CodingStyle 21:54 sapier As I said I don't accept kernel coding style for a c++ application find a better style 21:55 sapier kernel coding style is not meant to be used with c++ notation function names 21:56 ShadowNinja Tab indentation is tirectly translatable to C. That page contains elaborations on the style to fill in the blanks. 21:56 ShadowNinja directly* 21:57 sapier did you ever see some function called VeryLongClassnameReturnValuePointer SomeSameWayLongClassName::EvenLongerFunctionName(param1,param2) in C? 21:58 sapier but enough about this 22:02 sapier what editor does use 8 space tabs anyway? 22:03 sapier guess noone is writing code at a mechanic typing machine (which is origin of this size ;-) 22:08 ShadowNinja vim, gedit, most editors I've used. 22:08 ShadowNinja And the rest have settings. 22:08 sapier yes and most of our code wont be editable with tab size 8 so is there any sane reason to change? 22:09 sapier despite of the obvious one I don't have room to waste on my screen 22:11 ShadowNinja I've edited Minetest's code. But it doesn't matter if you use a tab width of 0.001, you just can't use tabs for alignment, you have to use two tabs. 22:12 sapier well have a look at new touchcontrol code it's unusable with 8 22:13 sapier I don't switch to 8 because of some missfit coding style 22:14 sapier find a sane astyleable c++ coding style, write it down to wiki and I'll make astyle run on any file I edit ... guess lot of ppl will complain about breaking any commit but I prefere this to discussing this topic all 3 days 22:17 proller use astyle only on new files or new code blocks 22:17 sapier nope I'll use it on any file as this is the only way to get rid of this sort of discussion in reasonable time ... and yes I know it's a painfull way 22:18 ShadowNinja Or just write it correctly and don't use it. Function arguments shouldn't be aligned. 22:18 sapier imho it is correct and you'll find as many different opinions of what is correct as coders are out there 22:21 ShadowNinja If it doesn't look right on any tab width it's done wrong. It should be indented by two tabs, as the rest of the code does. 22:24 sapier if you'd be that eager on hunting down bugs as on fighting for some insane coding style we'd have way more benefit about it 22:27 sapier ShadowNinja: define a astyle config as well as a version make it commonly accepted and I will use it. Until that happens I will ignore all of your "tab with" doesn't match comments. I've better things to do 22:28 sapier style fixes are to be done by tools, it's not something to waste developer time to 22:30 sapier proller your astyle command line isn't even accepted by debians astyle version 22:31 proller debian use 3-5 years old software? 22:32 sapier debian uses stable software ;-P 22:33 sapier not bleeding edge like ubuntu where only mainline applications work or arch where sometimes everything is broken 22:36 sapier hmm debian uses 2.01 astyle are you sure about style beeing "attach"? 22:37 sapier obviously not 22:42 hmmmmm sapier: for biglongclassnamehere::biglongfunctionnamehere() what I do is avoid making the function name + class name be greater than 78 characters :) 22:42 hmmmmm rather 77 22:42 hmmmmm parameters that are too long can go on separate lines, indented with a *single*! tab 22:43 hmmmmm none of that "as many tabs as you need + spaces to get it lining up with the rest of the parameters" nonsense 22:43 sapier well that's till gonna cause indention issues ... but I really don't care about style as long as there's a tool which fixes it and the style is defined 22:43 proller Artistic Style Version 2.04 22:43 hmmmmm and the opening brace goes on the line after the end of the parameter list 22:43 sapier e.g. astyle --style=linux --indent=tab --keep-one-line-blocks --keep-one-line-statements --indent-classes --pad-oper ASTYLE 2.01 22:43 hmmmmm bog standard K&R style 22:43 proller sapier, debian still use stable minetest 0.2 ? 22:43 hmmmmm well actually it's closer to BSD KNF 22:43 sapier K&R != linux 22:44 hmmmmm there are subtle differences 22:44 sapier well those "subtle differences" will cause us change back and forward anytime someone uses astyle on code 22:44 sapier And I keep refusing to fix single spaces manualy in future 22:44 hmmmmm I'm not 100% sure what linux kernel style qualifies as but it looks very close to BSD KNF.. I just saw that document and I said, "yeah, that makes sense. i really like this style. it's clean." 22:44 sapier that's waste of time and quite anoying 22:44 hmmmmm oh yeah nobody use astyle please 22:45 hmmmmm celeron will personally rip your head off if you do 22:45 sapier then everyone stop bugging me about some tabs and spaces 22:45 hmmmmm yeah stop bugging sapier about tabs and spacing 22:45 sapier just fix them without telling me 22:45 sapier I usually don't care about work I don't have to do ;-) 22:45 hmmmmm lol 22:46 hmmmmm so your code output at works sucks intentionally? :p 22:46 hmmmmm s/works/work/ 22:47 sapier well I've got a coworker beeing quite similar to Shadow ... but that one just uses astyle every now and then 22:48 hmmmmm apparently some places have an automated tool that rates your commit and takes off points for not styling it the precise way they want it 22:48 sapier and it's even more annoying to have two of those pedantic persons demanding different styles ;-P 22:49 sapier well as those places already have the tools I guess you can just run them to your commit prior issuing a pull request ;-) 22:49 sapier As I said I'd have no problem with running astyle on any file I change more then a single line ;-) 22:49 hmmmmm I don't really think the formatting is that big of an issue to begin with 22:50 hmmmmm it's nice to at least attempt to be consistent and follow some sort of standardized style but it's not like the worst thing ever 22:50 sapier well we discuss it at least once a week and that's a quite huge waste of time 22:50 hmmmmm by we you mean shadowninja 22:50 sapier not only 23:00 sapier I just had a look at celerons sailfish addons ... guess it's going to be quite some work to translate prototype to clean implementation 23:02 sapier well actually I compared stu's version of his changes 23:03 hmmmmm one of these days I have to write a real code style guideline 23:03 hmmmmm ugh 23:04 hmmmmm it's just something that's so useless I can't be arsed unless i were totally bored 23:04 hmmmmm i have better things to do with my time like actually write code 23:05 sapier :-) noone wants to write this guideline so everyone believes his interpretation is the correct one ;-) 23:05 hmmmmm like i said... just as long as it's not ridiculous... 23:05 sapier most easy option would be using a tool like astyle but this will break a lot of code 23:05 sapier ok "break" is wrong word 23:08 ShadowNinja I'll push a doors protection check and whitespace strip in a few minutes... 23:12 sapier what does it check? 23:21 ShadowNinja sapier: Protection. 23:22 sapier I don't say what I first wanted to say now 23:22 ShadowNinja sapier: Could you restate that? 23:23 sapier what exactly ? does it stop other players from digging doors? opening doors? painting doors?, stop doors from killing kittens? 23:23 ShadowNinja Placing doors in protected areas. 23:23 sapier ok so dig and place? 23:24 ShadowNinja No, diging is already handled properly. 23:24 sapier I see.. that's all I wanted to know ;-) 23:29 ShadowNinja sapier: Does this seem good? http://ix.io/atr 23:30 sapier I'd not use std::cout in there 23:30 sapier those have been mapped to streams on purpose 23:31 sapier if you piped cout somewhere or started server on windows that information is completely lost 23:31 sapier the max lenght is fine 23:32 ShadowNinja sapier: cerr then? actionstream and the like interpret \r the same as \n. 23:32 sapier I'd suggest not using cerr cout and things like that directly ... will save us quite some time on porting 23:33 sapier and I guess we're gonna do some porting work soon 23:33 ShadowNinja sapier: cout and cerr aren't available on windows? 23:33 sapier they are but usually you don't see them 23:34 ShadowNinja Minetest spawns a window to show them. 23:34 sapier well that's a bug 23:34 sapier a windows application isn't meant to spawn in a window 23:34 ShadowNinja (Or at least it did last I checked. And it's intentional) 23:34 sapier +console 23:34 ShadowNinja -in 23:34 sapier no it's not it's just lazyness 23:34 sapier noone did care to write the code to start it without console 23:35 ShadowNinja It starts a console, which is good because errors are dumped there. 23:35 sapier of course but that's not the way a windows application is meant to run ;-) 23:35 ShadowNinja No, there's actually code to *make* the console appear. 23:35 MichaelRpdx sapier - assuming I can get a core dump would that be useful? 23:36 sapier MichaelRpdx: could help yes but it'd be interesting to see thread information before everything is messed up 23:36 sapier not sure who added that code but I'd not be surprised if it was a copy of some tutorial ;-) 23:37 sapier windows programs are not meant to have a console window I even wrote wrappers to get rid of those damn console windows for some apps because in taskbar they are a pain in the as 23:38 sapier and android for example doesn't even have a console window ;-) 23:38 ShadowNinja sapier: Removing the console means that you have to teach every Windows user how to start Minetest in a command prompt when they have an error. 23:39 sapier no just means adding a startmenuentry "show debug log" 23:40 sapier noone will do the work removing the windows console so this wont happen anytime soon 23:40 sapier especially as focus switched to android recently 23:41 kahrl what work? just add -mwindows to CMAKE_EXE_LINKER_FLAGS 23:41 kahrl or whatever the MSVC equivalent is 23:41 sapier I don't know but I don't even care enough to have a look at it ;-) 23:43 sapier "have a look at it" meaning not looking at your change but "trying if this could work on windows" 23:45 kahrl yeah to be fair I don't know if the MSVC equivalent wouldn't introduce other problems 23:45 ShadowNinja Anyways, *stream point to the console too, so I don't see why it has too use those. 23:45 kahrl such as needing WinMain instead of main maybe 23:46 sapier Shadow if you want to see it on console too just add a second output, guess that's the most easy way ... btw what's wrong about action? 23:47 ShadowNinja hmmmmm: IMO flag strings should use a different inversion prefix, like !, as many english words start with "no". 23:48 MichaelRpdx nothing comes to mind to support that assertion. ;) 23:48 ShadowNinja sapier: So, what's wrong with the first commit? And nothing's wrong with actionstream as far as I know. (although the code looks a little ugly) 23:49 sapier "first commit" beeing exchange of actionstream by stc::cout? 23:50 sapier as I said noone uses std::cout anywhere within minetest. this'd be the first usage ... I don't think this is correct 23:50 kahrl pathfinder does ;) 23:50 ShadowNinja sapier: The rollback converter uses it, for the same reason. And that's not it's main purpose, but a side-effect. 23:51 sapier as far as I know in debug mode only kahrl 23:51 hmmmmm shadowninja, 'no' is pretty standard. 23:51 hmmmmm i think in GNU utilities anyway 23:52 MichaelRpdx sapier - to do my stack tracing, is there a preferred breakpoint location you'd like me to monitor? 23:52 sapier well I don't think it's correct to use it directly as we have a system abstraction for it standard in/out are not shown to user on all os so we might loose that information 23:52 ShadowNinja hmmmmm: Really? I've only seen ! used. (php.ini comes to mind) 23:52 ShadowNinja hmmmmm: Oh, and ~ (Charybdis/Atheme) 23:53 sapier MichaelRpdx: no just interrupt it once after entering world, I assume stacks are correct that early