Time Nick Message 00:43 erle_annoyed rubewardy it seems that https://github.com/minetest/minetest/pull/11438 breaks mineclone2 and mineclonia. i don't have time to debug it right now, probably missing dependencies, but mineclone2 is in the testing instructions and you self-requested a review. we also have a case that requires special mention, _mcl_autogroup. 00:44 erle_annoyed > The mod is split up into two parts, mcl_autogroup and _mcl_autogroup. mcl_autogroup contains the API functions used to register custom digging groups. _mcl_autogroup contains most of the code. The leading underscore in the name "_mcl_autogroup" is used to force Minetest to load that part of the mod as late as possible. Minetest loads mods 00:44 erle_annoyed in reverse alphabetical order. This also means that it is very important that no mod adds _mcl_autogroup as a dependency. 00:45 erle_annoyed this means we *do* depend on the “undefined mod loading order” for a very important case 00:46 erle_annoyed rubenwardy sorry i did not highlight you correctly earlier. just wanted to let you know, maybe you know other mods with leading underscores. 00:46 erle_annoyed and maybe you can figure out if this solution can be replaced with a better one. i do not know. 00:51 MTDiscord you should do your research better https://git.minetest.land/MineClone2/MineClone2/commit/9d9e21301271da166248a2356b81e0225d738fde 00:51 sfan5 if you depend on mod loading order that is explicitly documented as undefined (is this the case?) that is entirely your fault 00:52 MTDiscord ^this 00:52 MTDiscord i believe it has been even stated not to depend on it 00:52 sfan5 also lol erlehmann again talking out of his ass and not knowing about the upstream of his very own fork 00:52 MTDiscord whats new 00:53 sfan5 nothing it seems 00:54 MTDiscord also ironic pinging ruben instead of kro-ck the author 01:00 MTDiscord also it seems that a init.lua of minetest.register_on_mods_loaded(dofile(oldinit.lua)) would solve the issue. given that this was written in 4x 01:00 MTDiscord or minetest.after(0, dofile) provided you dont run into any of the minetest silently failing issues 01:01 sfan5 can't find a note about mod loading order in lua_api.txt from a quick search 01:01 MTDiscord yeah, i didnt either, i know some core dev stated not to depend on it somewhere, probably was the forum 02:10 MTDiscord is it really necessary to write minetest.after into public chat? 02:11 MTDiscord huh? 02:12 MTDiscord just seen too many mods use that and it really makes it hard to override things or determine loading order, it is worst tool for this. on_mods_loaded is good. 02:13 MTDiscord its great till you run into 5 mods using it, and mod 2 really needs to actually be after mod 5 02:13 MTDiscord (and it adds load time to max_lag initially) 02:13 MTDiscord because it runs on globalstep 02:13 MTDiscord see unified_inventory with a lot of items and check server lag immediately after startup :p 02:14 MTDiscord with _plus 02:14 MTDiscord anyways, this seems like #minetest-irc stuff 03:02 erle_sleepy Jonathon i pinged rubenwardy because he does contentdb and i guessed that means he could be aware of mods doing stupid things with leading characters like underscores and can identify repeat offenders. 03:05 erle_sleepy sfan5 what do you mean with talking out of my ass? neither mineclone2 git nor whatever contentdb gave me work with that PR. granted, that's probably mineclone2's fault (and can be fixed), but what exactly did i do wrong here pointing that out? 05:48 MTDiscord max_lag sucks anyway. not a good indicator of lag at all 10:30 sfan5 ~tell erlehmann well there's clearly a commit of the PR author himself in mcl2 which claims to fix issues discovered (Jonathon linked it), so it seems to me like the issue you say doesn't exist in at least mcl2 10:30 ShadowBot sfan5: OK. 17:16 rubenwardy merging #11241 in 10 17:16 ShadowBot https://github.com/minetest/minetest/issues/11241 -- Allow for Game-Specific Menu Music by ExeVirus 17:18 sfan5 please do #11766 too 17:18 ShadowBot https://github.com/minetest/minetest/issues/11766 -- Add backwards-compatible behaviour if too few CAO textures specified by sfan5 17:20 rubenwardy will do 18:30 erlehmann_ sfan5 mineclone2 is full of commits that claim to fix an issue and often do not – but in this case, in the 4 months since the commit was made, it got another dependency bug just like the ones that were fixed, so it does not work right now with their git master or whatever cdb serves. next time you accuse me of not doing my research, it would be a 18:30 erlehmann_ bit more helpful if you did your own. 18:31 erlehmann_ on a more upbeat note, i have looked at the filenames in the cdb dump and _mcl_autogroups seems to be the only stupid leading underscore mode 18:31 erlehmann_ mod 18:31 erlehmann_ i searched for paths that matched /[^a-zA-Z0-9][^/]*/init.lua 18:32 erlehmann_ i mean, there is also a mod named __builtin obviously. is it important that it loads last? 18:33 erlehmann_ it is part of minebase 18:34 sfan5 as far as I'm concerned the engine does not guarantee ordering by name so that's still their fault if they rely on it 18:47 erlehmann_ sfan5 look, i don't care whose fault it is. i just wanted to know if it is a widespread mistake. stuff like the CAO texture thing is so widespread that the engine should fix it, but mcl* bugs can be handled within mcl2 & mcla (mcl5 seems like a dead project to me, kay27 and all his servers just vanished). 18:47 sfan5 sure 18:50 erlehmann_ does cdb have a sanity check that a game/mod starts with new releases? 18:51 MTDiscord well at most there's manual moderation for new packages 18:51 MTDiscord /at most/at least/ 18:51 sfan5 automatic testing wouldn't be that hard actually 18:52 erlehmann_ i worry that the dependency change thing will reveal a lot of dep bugs in modpacks 18:53 erlehmann_ Subplayer plank the problem is when the package works but the engine legitimately breaks it no new review is done, right? 18:53 erlehmann_ “legitimately” as in relying on the undefined load order etc. 18:53 MTDiscord well yeah 18:56 erlehmann_ i think there is no other way, as minetest is not using semantic versioning – so there is no point in relying on that. 18:56 erlehmann_ only testing works 18:57 erlehmann_ (semantic versioning as in “stuff that works in 4.0 continues to work in 4.x”) 18:59 erlehmann_ i'm off 18:59 erlehmann_ bye! 21:13 MTDiscord But in a way MT does use semver...every 5.X version is compatible with another 5.X version 21:21 rubenwardy MT almost uses semver, the only deviation is with tagging between release versions 21:21 rubenwardy 5.x versions are API-compatible 21:27 rubenwardy we define the API with lua_api.txt, and lua_api.txt doesn't guarantee any particular order of mod loading other than with dependencies 22:18 kilbith https://i.imgur.com/opG0umV.png 22:18 kilbith this is a native *linux* binary running on Windows 11 23:47 MTDiscord Interesting, what GPU drivers then? 23:47 MTDiscord Linux or windows? 23:49 MTDiscord its wslg