Time Nick Message 14:30 Krock do we keep "Supported by core dev" forever, even after approval? 14:44 sfan5 is the an advantage to removing it? 14:44 sfan5 there* 14:44 Krock it would keep the tag list easier to overview but I guess that's it. not really. 14:45 Krock will push https://krock-works.uk.to/u/patches/0001-CSM-Do-not-index-files-within-hidden-directories.patch in 15 minutes unless there are objections (same as SSM) 14:48 nrz i'm not sure it's really useful, if supported by coredev, just let a comment :p 15:01 Krock pushing 15:17 rubenwardy nrz: the label is needed to track things according to the roadmap 15:20 Krock > roadmap is not called roadmap.md 15:20 rubenwardy it's named as it is due to the other PR 15:21 rubenwardy #8768 15:21 ShadowBot https://github.com/minetest/minetest/issues/8768 -- Define Minetest's direction by rubenwardy 15:22 rubenwardy although, I cba for the bureaucracy and politics to do that, and it feels not very high priority 15:22 rubenwardy so the file should/could just be renamed 15:24 Krock is there a wiki entry for this rule yet? 15:24 rubenwardy wait, we have a wiki?! 15:24 Krock I heard there's something like that 15:56 rubenwardy Does anyone know how Minetest finds the user data path on Android? Can't see any references to /sdcard in the code 15:57 rubenwardy oh weird, looks like it's not searching MT sources 15:58 rubenwardy hmm, still can't see it 15:58 rubenwardy So, from September, and updates to Google Play apps must target SDK 29 15:58 Krock might depend on $HOME? 15:59 rubenwardy getExternalStorageDirectory has been deleted in SDK 29, apps can no longer write directly to shared storage. Instead, they need to use scoped storage 15:59 rubenwardy So, before September we need to make a release that migrates external storage to app storage 15:59 rubenwardy which is what I'm doing now 15:59 rubenwardy the caveat about using app storage is that it's not possible for users to edit files directly afaict 16:00 rubenwardy the docs mention that it's possible for an app to access another app's scoped external storage, but I'm not sure if file managers do this 16:00 rubenwardy not being able to access the files is a problem when users want to 1) change minetest.conf 2) install mods manually 3) share worlds 16:00 rubenwardy 1 and 2 aren't too bad, as there's ways around it 16:01 Krock sucks nonetheless 16:01 rubenwardy for 3), we may need to implement a feature to zip up worlds and share using the share intent 16:01 Krock or find a way to copy that stuff to another location 16:02 rubenwardy you can write files to shared storage, you just can't seem to use file paths anymore - which Minetest's C++ relies on 16:03 rubenwardy oh, and that API is for specific types of files like photos, videos, etc 16:03 rubenwardy https://developer.android.com/training/data-storage/ 16:03 Krock zip it, rename to mp4 ez 16:05 MTDiscord app like UserLAnd can put the external files in Android/data/tech.ula/files and accessible from file manager that way ig maybe there's a way for Minetest to put external files in eg Android/data/net.minetest.minetest/files?? 16:06 Krock also sdk29 is the build level, but not the minimal requirement to run the app, right? 16:07 rubenwardy that's what app storage is, MNH48 16:07 rubenwardy I think 16:07 rubenwardy yes, Krock, it'll still run on below 29 16:07 Krock ah good. 16:36 rubenwardy OK, I've updated the code to use app storage. I just need to add a migration now, from deprecated external storage to app storage 16:41 Wuzzy #11465 16:41 ShadowBot https://github.com/minetest/minetest/issues/11465 -- New physics overrides by Wuzzy2 18:43 Krock rubenwardy: (from 11438) depth-first works well as long there are no redundant dependencies. ModOrderResolver::resolve does not know whether to pick A or B first (in a list { C, B, A }) 18:44 rubenwardy redundant dependencies are fine, you use a set to keep track of duplicates 18:44 rubenwardy hmm 18:45 rubenwardy I can write a test case because I'm not so sure now 18:47 Krock hmm I sketched case 1 and it really seems to work 18:47 Krock thanks to ordered.push_back() at the end 18:48 rubenwardy unit test passed 18:48 rubenwardy https://gist.github.com/rubenwardy/1d4d5f068054fdf8dc0e176e40f2c4b9 18:48 Krock yes indeed 18:51 Krock oh god recursion blows my mind 18:58 rubenwardy #11466 18:58 ShadowBot https://github.com/minetest/minetest/issues/11466 -- Use scoped storage on Android by rubenwardy 18:59 rubenwardy unit tests: https://gitlab.com/rubenwardy/rvwp/-/blob/master/src/tests/t_scripting.cpp#L48 19:03 rubenwardy Failing rather than silently disabling could be considered a breaking change, as some games have use hard dependencies to enable mods in a game when the user provides mods. Not many, though, and I don't think this is a good way to do it 19:07 Krock also the exception text would not be helpful if there are 100 mods enabled. there needs to be some way to figure out where the cycle is (the other is easy t implement, using mod.name) 19:08 Krock also failing one-by-one is rather annoying, rather provide a list of dependency issues 19:27 rubenwardy the latter should be easy to fix 19:27 rubenwardy the former is less so, but this is basically just a graph problem 19:28 rubenwardy finding cycles should be easy - depth first search and log repeats on a path 20:35 MTDiscord yes 20:36 MTDiscord use a linked list for paths and it's fast