Time Nick Message 00:00 kaeza well, execute is a huge security flaw anyway :P 00:00 hmmmm this goes back to sapier's security hardening 00:00 hmmmm I guess it's just a caveat users must be aware of 00:00 VanessaE I could see os.execute() + wget + io.open() for example. 00:01 kaeza ah Traxie had a mod auto-updater using curl from command line 00:01 VanessaE no worse, really, than installing a web browser plugin/addon or downloading some random voxel sandbox game from teh interwebz ;) 03:14 ShadowNinja I partially implemented a global ban system, but the client-side was difficult without a proper API. AFAIK that still isn't implemented. This is also a good use case for write_json. 03:15 ShadowNinja The main menu uses download_file, but that doesn't support POST and is probably private or unsupported (and synchronous). 03:52 kaeza comments? https://github.com/minetest/minetest/pull/1062 03:58 us`0gb kaeza: I like the file addition, but if it is specifying the module name, why does the "-master" need to be removed as well? 03:58 kaeza us`0gb, the mod_info.txt is optional 03:58 us`0gb Ah, got it. 03:59 us`0gb It seems like an issue that should be fixed in GitHub, not Minetest. That said, I don't think GitHub plans to fix it probably ever. 04:00 us`0gb I like the mod_info.txt for sure, I'm neutral about the "-master". 04:00 us`0gb Though if dashes were ever to be allowed in module names, that would be an issue. 04:00 kaeza the "-master" removal was kinda added as a nicety; the main point of the pull is the mod_info 04:01 us`0gb The removal seems .... I don't know, hacky? But then again, to would save a lot of trouble for new players. 04:02 us`0gb And anyone who doesn't know how to work a file system. 04:12 ShadowNinja kaeza: Why the setDefault? Shouldn't the exists check handle that? (Or vice versa) 04:14 kaeza derp 04:14 kaeza fixed 04:18 ShadowNinja Seems good now, although the -master removal seems like a hack. Also, perhaps mod.conf? 04:19 kaeza the main idea behind naming it `.txt' is because Windows does not recognize the `.conf' suffix by default (I guess `depends.txt' is for the same reason) 04:19 ShadowNinja (Only reason I've heard of for .txt is Windows, but if you're editing .lua files you've figured out how to get around that) 04:20 ShadowNinja Well, there isn't really any suffix suitable for a depends file other than .txt that I can think of. 04:21 kaeza well, good point 04:21 kaeza depends isn't a `key=value' file (i.e. .conf) 04:22 kaeza but `mod.conf' looks like a configuration file for the mod, rather than mod information 04:22 kaeza maybe `mod_info.conf' 04:23 ShadowNinja What's the difference? .conf implies that you placed your conf file in the wrong place. :-) You could even do info.conf. 04:24 kaeza alright 04:24 kaeza check again 04:25 ShadowNinja Seems good. 04:26 * kaeza also pokes ShadowNinja with #1060 04:26 ShadowBot https://github.com/minetest/minetest/issues/1060 04:30 ShadowNinja It breaks compat and isn't really necessary IMO. 04:32 kaeza oookay, then I guess I'll fix the docs instead 05:26 kaeza ShadowNinja, sooo, what about that hacky "-master" removal? is it less hacky now? https://github.com/kaeza/minetest/commit/18438a076542b72c6bbd0a612c25f64e4d61542b 08:27 thexyz ShadowNinja: it doesn't break compatibility because no one was using this field except this guy who reported an error 10:16 VanessaE feature request: add to the after_place_node() callback, a copy of pointed_thing.{} as it existed during the corresponding on_place() event. 10:16 VanessaE (if that makes any sense) 10:17 VanessaE or, I guess I can just cache it somewhere myself during on_place and reference it later during after_place_node? 12:26 VanessaE well, it seems the buildcraft team decided to put up instead of shut up. 12:26 VanessaE [12-21 07:22] Ok just received a mail 12:26 VanessaE [12-21 07:23] This is the pasted mail 12:26 VanessaE [12-21 07:23] Yes, we released the modified code under LGPL if you are looking. 12:26 VanessaE [12-21 07:23] https://github.com/lukepeng/Buildcraft 12:28 VanessaE this is, however, not entirely compliant - there seem to be no links from the Google Play page to that repository, and the "Developer's website" links just go to a page that says "hello world" 12:29 VanessaE or is it merely sufficient if they just document it somewhere in their project eg. in the manual/readme 12:29 VanessaE ? 12:31 * VanessaE grabs a fork....just in case :) 12:39 proller its month old 12:40 VanessaE allegedly it's 0.4.8-stable 12:45 proller but buildcraft was updated today 12:46 VanessaE hm 12:47 proller 933M 791M umtxn 0 20.4H 154.35% freeminerserver -- 45 clients 12:47 VanessaE 933M virtual!? eek 12:49 proller 1700 blocks in memory 12:50 VanessaE that seems like a hell of a lot of blocks, to me... 12:50 proller looot of bones 12:51 thexyz oh that's nice 12:51 thexyz hm.. somebody should diff it against some minetest source 12:52 proller and still no lag in inventory 12:53 proller with finite liquids! 12:54 VanessaE bbl 12:56 thexyz this doesn't look legit though 13:28 thexyz and here's the output of `for x in *.cpp *.h; do echo $x; diff -w $x ~/minetest/minetest-temp/src/$x; done` run against Minetest afb27329fc05076876c19e90f8c4343efa540207 13:29 thexyz https://gist.github.com/xyzz/8ccdda9be432849a64d9/raw/a6901aab6c3f336230558b662113b4b5494871d6/gistfile1.txt 13:29 thexyz and a script https://gist.github.com/xyzz/4e25978136229adf7a87/raw/c4f8bf41fe50a75c95fda02202672d76a7382676/gistfile1.txt 13:38 thexyz then it (probably) means this port is legit now so no need to be upset, VanessaE 13:38 thexyz and ban blockcraft users 13:38 thexyz err, buildcraft 13:39 thexyz oh and there's a new game from them, called Wasteland 13:39 thexyz that's just hilarious 13:39 specing what did they steal now? 13:41 nore I guess, BlockMen's wasteland game... 13:41 thexyz "steal"? 13:41 thexyz whoa that's some double thinking there 13:41 thexyz when others talk about piracy we usually correct them and say that "steal" is an invalid word 13:42 nore however, I don't agree with the word "steal"... they "used" 14:27 harrison "repurposed" 14:31 kaeza ShadowNinja, thexyz, I can also add both "pos" and "position" as possible choices, with "pos" being deprecated and scheduled to be removed sometime in the near future 14:33 thexyz that's too much 14:33 thexyz maybe it' 14:33 thexyz maybe it's better to ask the one who wrote this code 14:38 kaeza well... I don't see that array in blue42u's branch, so I guess it was me 8) 14:39 kaeza ...or hmmmmmm 14:43 thexyz since api is inconsistent anyway either is fine 15:23 sapier celeron55 if you did write the network code to learn you gave up quite some distance prior mastership ;-) 15:24 sapier e.g. on typical wan connection rtt isn't a usefull indicator for congestion 15:36 proller 64 players online on FM server 15:36 sapier 10000 in wow 15:37 proller 10 in mt 15:37 PilzAdam 1 on localhost 15:37 sapier proller yet this is minetest-dev not freeminer-dev ;-P 15:38 sapier and btw as you don't want to participate in minetest development comments like that one are better off in minetest 15:40 thexyz sapier: where are the modifications you're making for Minetest protocol code available? 15:41 proller but you can make minetest better! git remote add fm https://github.com/freeminer/freeminer.git; git merge fm/master; git push 15:41 sapier it's early experimental state I found another major issue after testing on vanessae's server yesterday 15:41 PilzAdam proller, /nick troller 15:41 proller or remove json lib 15:42 sapier https://github.com/sapier/minetest/tree/server_improvement 15:42 sapier this is yesterday version 15:42 thexyz interesting 15:43 sapier I'm about fixing two additional issues right now, congestion window modification based uppon rtt instead of packet loss 15:43 thexyz any time estimates on when it'll be testable? 15:43 sapier and second todo is about command -> packet conversion 15:43 sapier right now this is done at once resulting in huge packet queues where command queue would've been minor 15:44 sapier congestion window is fixed in about 1-2 hours, the split, maybe tonight, I'm gonna ask vanessae for testing once I manage to connect to a hdx256 server within reasonable time 15:45 sapier the version is testable yet there isn't much difference to current code 15:45 sapier at least on counting resulting performance only 15:47 thexyz yeah, I'm interested in comparing in to enet performance 15:48 thexyz not sure how exactly to test it; perhaps in transferring large media and ability to connect many clients at once 15:48 thexyz 100-500 15:48 sapier it's not comparable 15:48 sapier at least not with a single test 15:49 thexyz why? 15:49 thexyz I'm not saying about single test 15:49 thexyz I mean, we can do multiple different tests 15:49 thexyz I've only thought up those two 15:49 thexyz you can suggest yours 15:49 sapier I don't have an idea how to benchmark this correctly because of completely different network usage within minetest 15:50 sapier if you optimize for latency you break downloading and the other way round 15:50 thexyz in the end we compare the same stuff, don't we? ability to connect to a server with lots of media and ability for server to be able to handle lots of clients 15:50 sapier same for cpu usage 15:50 sapier less cpu usage -> higher latency 15:51 sapier with a whole different packet format 15:52 sapier I have to stick to some restrictions in order to keep compatibility ... but of course result is still interesting I guess enet wouldn't be an option if it's possible to get within a resonable distance without breaking compatibility 15:52 thexyz so do you have suggestions on how to determine what's better then? 15:53 sapier one thing is typical rtt for reliable non media packets 15:53 sapier second is packet loss for non reliable packets 15:53 thexyz anything which is easier to compare? 15:54 sapier third is typical/max jitter 15:54 sapier I don't see the one number telling better or worse 15:54 thexyz alright 15:55 sapier but I guess we need some instrumentalization to get those information 15:55 sapier and for my solution another interesting comparison is new core to old core for old clients 15:59 sapier btw could someone please fix minetest logging? the chat crashes are due to non thread safe log code 16:17 ShadowNinja I'm now downgrading my server to fix the serverlist announcing. Does someone know how to fix it? (It was after the fix that apparently fixed it for Vanessa) proller? 16:23 ShadowNinja And FWIW I like enet because it makes alternative clients or servers easier. (But a well documented Minetest connection library would also work) 16:24 sapier right now my fixes are not targeted for merge, I just want to understand what's necessary to do 16:33 thexyz what the fuck? 16:34 thexyz https://github.com/minetest/minetest/blob/master/src/util/string.cpp#L113 16:34 thexyz why? 16:35 sapier lol str.c_str() 16:35 sapier but I assume result is same ... but that guess would need to be verified 16:36 sapier at least I hope std::string [] operator doesn't create a copy 16:36 thexyz meh 16:37 thexyz why is there a crazy random combination of C and C++ 16:37 thexyz anyway, [0] is wrong because it doesn't work with empty string 16:37 thexyz and c_str() is wrong because it returns const char * 16:38 thexyz b-but no one is going to pass empty string here, r-right? 16:38 thexyz https://github.com/minetest/minetest/blob/master/src/script/common/c_content.cpp#L846 16:39 thexyz oh god those calls are everywhere 16:40 thexyz for now I've just added `if (str.length() == 0) return 0;` 16:40 thexyz to readFlagString 16:41 thexyz (also, MSVC complained about this when building in Debug mode, lol) 16:41 thexyz when running the Debug build, to be correct 16:42 thexyz shall I submit an issue? 17:03 kahrl &str[0] on an empty string is perfectly fine 17:04 sapier great ... I was wondering why my data transfer seemed to get frozen after some time .... but it's not transfere, it's just the debug logging 17:05 thexyz kahrl: why? 17:05 kahrl thexyz: why not? 17:06 kahrl the C++11 draft I have here says the requirement for operator[] is pos <= size() 17:09 thexyz http://en.cppreference.com/w/cpp/string/basic_string/operator_at 17:09 thexyz we no c++11 17:09 kahrl oh so it changed 17:09 kahrl well okay 18:10 thexyz I'm not even sure if what the code is doing is valid 18:10 thexyz is that memory layout guaranteed? 21:23 iqualfragile there was some discussion about enet recently and iirc thexyz has allredy implemented some functionality 21:23 iqualfragile problem is that this change would be backward-incompatible and its allways a smat idea to keep kompatible with the last debian stable if its not too much work 21:24 iqualfragile so i thought about that problem for a bit 21:24 sapier *smile* who is NOT thinking about it right now? ;-) 21:25 iqualfragile and i thought: why not both 21:25 iqualfragile keep the old protocol for legacy clients and add enet but listen on another port 21:26 sapier NO 21:26 sapier adds 100% maintenance does not provide any benefit 21:27 sapier keeping both means we need to fix old version ... if this is done there's no need for anything new 21:27 iqualfragile no, no need to fix the old version 21:27 iqualfragile just keep it as it is 21:27 sapier and of course we add additional 50% to synchronizing both 21:28 sapier keeping broken code is nonsense 21:28 iqualfragile its broken right now? 21:28 sapier yes 21:28 iqualfragile its just slow and stuff 21:28 iqualfragile but nor truely broken 21:28 sapier I consider sending 1 packet per second on high latency entwork > 100 ms to be broken 21:29 sapier because 100ms isn't exactly what I call low latency 21:29 sapier -low + high 21:29 iqualfragile yes, indeed 21:29 iqualfragile but its not wont compile/wont run/cant connect broken 21:30 iqualfragile just keeping it the way it is and adding a new network-frontend is what i propose 21:30 sapier it is cant connect broken on any server using just a little bit of textures, it's even worse a client using old protocoll kills this server 21:31 sapier and how to synchronize? 21:31 sapier peer handling is integral part of network frontend in current version as well as in enet 21:33 sapier I guess everyone had same idea first but if we keep old we need to fix it ... resulting in no need for new one 21:38 sapier my opinion is fixing old one is best way to go ... but I assume that way wont be chosen 21:38 iqualfragile well… enet does not seem to support ipv6 21:39 sapier according to proller and thexyz this feature might be added soon 21:41 thexyz well minetest didn't support ipv6 too 21:41 RealBadAngel hi 21:42 thexyz anyway, I think we should go with enet + messagepack 21:42 sapier as far as I know minetest DOES support ipv6 21:42 thexyz "didn't" 21:43 sapier minetest didn't support node digging too 21:43 sapier it's not relevant what was true some day in past relevant is current state 21:43 thexyz ah, you totally miss the point 21:44 sapier no but I don't want to discuss this again 21:44 RealBadAngel some1 broke minetest.get_all_craft_recipes 21:44 thexyz I'm not sure what you do not want to discuss 21:44 RealBadAngel can i push the bugfix to it directly? 21:44 thexyz anyway, how's that going with minetest protocol updates? 21:45 sapier you have your opinion I have mine, if enet was an "all in" option we didn't have to talk about it but it isn't so depends on weighting of arguments 21:45 sapier and weighting of arguments is the most subjective thing you can imagine 21:48 RealBadAngel this is how it looks like: https://github.com/minetest/minetest/blob/master/src/script/lua_api/l_craft.cpp#L413 and this is how it should look: http://pastebin.com/fZSewhfw 21:48 RealBadAngel any objections on above? 21:49 sapier why should it be 1? 21:49 RealBadAngel its lua table index 21:49 RealBadAngel it cannot be 0 21:50 sapier oh j is lua only I see 21:50 sapier agreed push it 21:50 RealBadAngel problem is some1 made this function skip indexes when slot is empty 21:50 RealBadAngel without incrementing index for empty space 21:51 RealBadAngel so craft recipes were broken 21:53 RealBadAngel https://forum.minetest.net/viewtopic.php?pid=122316#p122316 21:54 RealBadAngel like on the screenshot above, group:stick shall be shown on slot to the right, without incrementing index its shifted 22:15 RealBadAngel pushed the bugfix 22:16 kaeza okay, can somebody take a look (yet again) at 1060? sorry to be a bother, but it fixes bad API, and is completely trivial 22:16 RealBadAngel i do have to push also forgotten fix to minetest.conf example. it has not fixed names for parallax settings 22:46 RealBadAngel kaeza, its ok for me 23:55 proller http://paste.org.ru/?2s2lrn - freebsd support broken everywhere 23:58 iqualfragile would it be that the chinese ripoff minetest version does not support loading from remote_media?