Minetest logo

IRC log for #minetest-dev, 2022-02-23

| Channels | #minetest-dev index | Today | | Google Search | Plaintext

All times shown according to UTC.

Time Nick Message
00:07 Alias2 joined #minetest-dev
00:26 proller joined #minetest-dev
01:37 MTDiscord <jordan4ibanez> Oh so it builds it into an atlas in memory?
02:26 v-rob joined #minetest-dev
03:14 kilbith joined #minetest-dev
03:16 kilbith @x2048 https://github.com/MultiCraft/MultiCraft2/pull/35
03:17 kilbith and https://github.com/MultiCraft/MultiCraft2/pull/36
03:17 MTDiscord <Jonathon> @x2048
03:18 kilbith rubenwardy: https://github.com/MultiCraft/MultiCraft2/pull/39
03:18 kilbith bear in mind that MoNTE48 is not backporting their code anymore
03:22 kilbith mem leak: https://github.com/MultiCraft/MultiCraft2/commit/eda017888
03:28 queria joined #minetest-dev
03:33 queria joined #minetest-dev
03:49 kilbith joined #minetest-dev
04:10 Yad joined #minetest-dev
04:16 v-rob joined #minetest-dev
05:00 MTDiscord joined #minetest-dev
05:18 Huutha joined #minetest-dev
06:14 v-rob joined #minetest-dev
07:23 calcul0n joined #minetest-dev
08:15 v-rob joined #minetest-dev
08:19 hlqkj joined #minetest-dev
08:55 erlehmann joined #minetest-dev
09:34 YuGiOhJCJ joined #minetest-dev
10:39 sfan5 Note that Multicraft code is LGPL3+ which is not compatible with LGPL2.1+
10:57 erlehmann the resulting work is LGPL3+ then, what's not compatible about it?
10:59 erlehmann i'd say if you can combine the works, they are compatible
11:05 HuguesRoss joined #minetest-dev
11:46 fluxionary joined #minetest-dev
12:04 proller joined #minetest-dev
12:39 MTDiscord <luatic> Then we should upgrade to LGPLv3 as well.
12:39 erlehmann i see now downsides to that tbh
12:40 erlehmann the only thing newer (L)GPL versions do is close loopholes such as “i give you the source code, but threaten to sue you if you ever use it” and similar shenanigans
13:22 m42uko_ joined #minetest-dev
13:35 proller joined #minetest-dev
14:24 Taoki joined #minetest-dev
14:31 rubenwardy ??:0
14:32 rubenwardy thanks addr2line
14:32 rubenwardy trying to get a backtrace from the android crashes
14:32 rubenwardy #00  pc 0000007d65cbfa3c  <unknown>
14:32 ShadowBot rubenwardy: Error: That URL raised <HTTP Error 404: Not Found>
14:32 rubenwardy is an example
14:32 rubenwardy normally, that <unknown> should say libMinetest.so
14:32 rubenwardy so idk what even
14:39 rubenwardy oh nice, ndk-stack seems much more useful than add2line
14:39 rubenwardy but still doesn't work. I think the <unknown> is a bit suspicious
14:41 rubenwardy /home/ruben/Android/Sdk/ndk/23.0.7599858/ndk-stack -i /tmp/crash.txt -sym ./native/build/intermediates/ndkBuild/release/obj/local/armeabi-v7a/
14:41 rubenwardy for reference
14:42 MTDiscord <savilli> and crash.txt?
14:42 rubenwardy is the file from Google Play
14:42 rubenwardy *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
14:42 rubenwardy pid: 0, tid: 0 >>> net.minetest.minetest <<<
14:42 rubenwardy backtrace:
14:42 rubenwardy #00  pc 00000074dc5af6a0  <unknown>
14:42 rubenwardy #00  pc fffd80753715e8b0  <unknown>
14:42 ShadowBot rubenwardy: Error: That URL raised <HTTP Error 404: Not Found>
14:42 ShadowBot rubenwardy: Error: That URL raised <HTTP Error 404: Not Found>
14:42 rubenwardy https://developer.android.com/ndk/guides/ndk-stack
14:43 MTDiscord <savilli> yup, what's in that file?
14:44 rubenwardy I pasted it
14:45 MTDiscord <savilli> only two addresses?
14:45 rubenwardy yes
14:45 MTDiscord <savilli> and fffd80753715e8b0 doesn't look like a valid address
14:45 rubenwardy another one has    #00  pc 0000007c50f8fb00   /  pc 0000000000000001
14:45 ShadowBot rubenwardy: Error: That URL raised <HTTP Error 404: Not Found>
14:46 rubenwardy another has 0000007d65cbfa3c  /  000000000030fe59
14:47 MTDiscord <savilli> it's hopeless
14:47 MTDiscord <savilli> if ASLR is enabled it can be really any library
14:50 kilbith joined #minetest-dev
14:50 rubenwardy another one is   pc 00000000007a5e14  anon_inode:dmabuf   /  pc 00000000002b52b8  <unknown>
14:51 rubenwardy I doubt there's much to gleam from this, we need better stack traces and debugging tools
14:52 MTDiscord <savilli> no way you would jump into anon_inode:dmabuf normally
14:53 rubenwardy yeah it's weird
14:53 MTDiscord <savilli> either there is a UAF with corrupting vtable or crash reporter is just wrong
14:55 kilbith sfan5: the MT repo already contains MultiCraft code
14:56 rubenwardy Monte contributing that gives us a license to it under LGPLv2.1+
14:56 rubenwardy I'm in favour of moving to LGPLv3 if there's sufficient benefit
14:57 kilbith so if the author decides to contribute back, the license changes informally
14:57 kilbith it doesn't work like that
14:57 kilbith author or not
14:58 rubenwardy by making a PR to our repo, you're agreeing to the license. It would only not be the case if you changed the license in the PR - in which case, we'd reject
14:58 rubenwardy if it turned out that he didn't own the copyright, then it would be similar to as if someone PR-d proprietary code
14:59 rubenwardy IANAL obviously
14:59 rubenwardy Lots of companies have Contributor Licensing Agreements to make this explicit
14:59 rubenwardy and also have copyright assignment
15:00 erlehmann it has to be LGPLv3+ ofc
15:00 erlehmann to stay future compatible
15:01 erlehmann rubenwardy “if there is sufficient benefit” – what is the downside?
15:02 erlehmann is there LGPLv2 only code somewhere?
15:03 rubenwardy Also, monte's contributions have license headers with LGPLv2.1+.  So he explicitly relicensed
15:07 kilbith I just don't want to see MultiCraft to be more optimized than MT someday - that situation sucks
15:07 rubenwardy yeah
15:08 rubenwardy I wanted numberZero to be a core dev
15:08 kilbith yeah and he refused
15:08 kilbith that's the money that fuel him actually
15:09 erlehmann kilbith could you explain the money situation?
15:09 erlehmann i do not know what is behind multicraft
15:10 kilbith when you work for MultiCraft you earn big money
15:10 kilbith (I did work for it)
15:10 kilbith no shame
15:11 erlehmann so why would then someone working for multicraft not want a voice at the table of minetest devs?
15:11 erlehmann do they not merge new minetest features back into it?
15:11 erlehmann or is it conflict of interest
15:11 kilbith numberZero was proposed core-dev long before he started working for MC
15:14 erlehmann then i really don't get it
15:18 proller joined #minetest-dev
15:44 Fixer joined #minetest-dev
15:50 v-rob joined #minetest-dev
16:10 v-rob joined #minetest-dev
16:12 rubenwardy Anyone around for a quick meeting this weekend? sfan5 Krock HuguesRoss v-rob
16:13 rubenwardy https://dev.minetest.net/Meetings
16:13 v-rob Most likely
16:25 calcul0n joined #minetest-dev
16:28 calcul0n joined #minetest-dev
16:36 Alias joined #minetest-dev
16:40 kilbith joined #minetest-dev
16:43 calcul0n joined #minetest-dev
16:43 kilbith joined #minetest-dev
16:43 kilbith v-rob, are you giving care to the key events PR still?
16:44 v-rob Yes, I just need to rebase.
16:44 v-rob I'm also still interested in resurrecting the alignment PR
16:44 v-rob I just need to scrounge up some time...
16:45 kilbith I count on HuguesRoss to review that ASAP.
16:45 kilbith it's been 3 years already
16:45 appguru joined #minetest-dev
16:49 kilbith before I leave, it takes little effort to ressurect https://github.com/minetest/minetest/pull/9895 to bring postprocessing
16:49 kilbith then you can close lots of PRs trying to change colors the wrong way
16:51 kilbith with that, we can also benefit from having blurred background on formspecs
16:51 kilbith and probably lotsa other applications I couldn't think of
16:52 sfan5 rubenwardy: yes
17:10 tekakutli joined #minetest-dev
17:12 v-rob joined #minetest-dev
17:20 MTDiscord <Hugues Ross> @rubenwardy, sorry, not this weekend
17:25 v-rob Gosh, I don't have a dev wiki account.
17:25 rubenwardy PM me your email, and I can make one
17:26 rubenwardy although, it'll need to be V-rob
17:47 appguru kilbith: I feel like the fast OIT impl. must be compromising on accuracy of composition (which is probably fine though, as it will be correct in the common cases and only slightly wrong in most edge cases). I've left a comment with some questions: https://github.com/MultiCraft/MultiCraft2/pull/35#issuecomment-1049039696.
17:48 appguru OIT is preferable if implemented efficiently as it immediately covers all possible cases (nodes, entities, particles) *and* can cover intersecting tris (for which depth sorting would have to split the tris to be able to sort them)
17:55 rubenwardy https://github.com/rubenwardy/minetest/commit/35a020ec3e6ebe636181bc41cad84f99b27485b2
17:56 rubenwardy actually, #12093
17:56 ShadowBot https://github.com/minetest/minetest/issues/12093 -- Fix broken dependency enabling due to missing `enabled` field by rubenwardy
18:27 proller joined #minetest-dev
18:29 tekakutli joined #minetest-dev
18:33 erlehmann regarding https://github.com/minetest/minetest/pull/11567 – there is a much simpler way to speedup media loading a bit without invalidating everyone's cache – remember the timestamp when each file was hashed and only hash the files again when the file was updated. as my recent profiling showed, minetest seems to do a lot of needless sha1() on files. if anyone wants to help me fixing that, i'd be thankful. mostly i do not know where to save
18:33 erlehmann the timestamps. in an sqlite db maybe?
18:48 rubenwardy minetest should just store sha1 in memory when loading the server
18:49 sfan5 he's talking about the client
18:49 sfan5 erlehmann: did you measure how many % of loading time that is
18:49 rubenwardy isn't the file name the hash?
18:50 sfan5 as far as I understood this is the issue: when the client reads a file from disk cache it hashes it again to ensure that it matches the hash
18:51 rubenwardy unnecessary, but I don't see that causing huge slowdowns unless it does it many time
18:51 rubenwardy well, corruption I guess
18:55 erlehmann sfan5 let me look up my callgrind logs or make some new ones
18:55 Pexin is it possible that was done intentionally to prevent users from tampering with cached files as a means of cheating?
18:55 sfan5 sure
18:55 Pexin I mean, if so, lame. but possible
18:55 sfan5 on the other hand texture packs exists
18:55 sfan5 s/s$//
18:56 behalebabo joined #minetest-dev
18:56 erlehmann as i said, it is pretty easy to skip the hash check if the file has not been touched since it was written, then you get the best of both worlds.
18:57 erlehmann the main issue i have with it that it represents a slice of loading media where disk and CPU are utilized as much as possible without any need.
18:57 rubenwardy it only makes sense to protect against corruption, texture packs can override textures as said
18:57 erlehmann brb callgrind
18:57 rubenwardy well, there's also meshes which texture packs can't override
18:57 rubenwardy callgrind slows down the process, so will cause network transfer to have a much lower impact
18:58 rubenwardy an instrumentation profiler like perf might be better for network-related things
18:58 rubenwardy err, or sampling-based
18:58 erlehmann but the point is, there is not much network transfer at this point?
18:58 erlehmann a fully filled cache is hashed all the time
18:58 erlehmann if you can point me to a better profiler, show and tell please
18:59 erlehmann i only used callgrind because i figured out that, indeed, strace and ltrace aren't getting me anywhere than “wow much syscall”
19:05 erlehmann am compiling newest minetest now, will take a while
19:13 rubenwardy sfan5: remind me, what's the condition for switching to a new C++ version?
19:13 rubenwardy oldest Debian stable?
19:15 sfan5 there is nothing absolute but I'd say debian oldstable and the Ubuntu previous-previous LTS should still be able to build it
19:15 sfan5 oh and also MSVC needs to be able to do it
19:15 erlehmann rubenwardy which feature are you thinking of?
19:15 rubenwardy ok cool
19:15 rubenwardy erlehmann: mostly just wondering
19:15 rubenwardy but C++17 has std::optional and std::filesystem, which are both nice
19:16 sfan5 (where "able to build" = a compiler can be installed from the official repos that builds the required C++ version)
19:16 rubenwardy we have our own versions, but the latter in particular would allow deleting lots of code
19:16 rubenwardy although that being said, have we switched to std::thread yet or to we still use pthread
19:17 sfan5 yes
19:17 rubenwardy I guess if it's not broken, don't fix it (until it causes issues)
19:22 rubenwardy merging #12059 in 10
19:22 ShadowBot https://github.com/minetest/minetest/issues/12059 -- Lua API documentation: Various fixes (2) by SmallJoker
19:22 erlehmann rubenwardy i am sorry, the performance thing has to wait, i have found 1 new crash and 1 new hang lol
19:39 v-rob joined #minetest-dev
19:57 erlehmann can someone explain to me why i am the first one to notice this? https://github.com/minetest/minetest/pull/12097
19:57 erlehmann or am i not
20:00 MTDiscord <Sublayer plank> what???
20:00 MTDiscord <Sublayer plank> it just prints an error if minetest game doesn't exist, it doesn't prevent minetest from starting
20:00 erlehmann try it
20:00 erlehmann it segfaults for me
20:00 MTDiscord <Sublayer plank> I just tried it
20:01 erlehmann ok let me see if i can get more out of the exiting immediately case
20:01 Krock rubenwardy: 10 hours?
20:03 MTDiscord <Sublayer plank> also tried it without any games at all. it just gives me an "2022-02-23 21:00:57: ERROR[Main]: Game specified in default_game [minetest] is invalid." error but it just carries onwards without crashing
20:03 Krock <erlehmann> it segfaults for me
20:03 Krock then please fix the segfault instead
20:07 rubenwardy Krock: what are those commit messages even
20:08 Krock rubenwardy: https://irc.minetest.net/minetest-dev/2022-02-22#i_5942881
20:08 rubenwardy I'll let you merge
20:08 rubenwardy I don't mind either
20:08 rubenwardy but if you don't squash, then better messages would be nice
20:08 Krock that's the partial reason why I asked, yes.
20:09 rubenwardy I have a slight preference to squashing, would make the commit message easier to write
20:09 Krock yes, and it's all about documentation anyway
20:11 erlehmann Krock, Sublayer plank ubsan complains there is an unconditional load of an invalid value in CFileSystemType line 799 right at the point where it segfaulted. sorry for being too eager here!
20:13 erlehmann thanks for the quick check!
20:13 erlehmann now i just wonder why it segfaults here and not there :/
20:16 Krock squish squash merging #12059 in 5 minutes
20:16 ShadowBot https://github.com/minetest/minetest/issues/12059 -- Lua API documentation: Various fixes (2) by SmallJoker
20:20 Pexin Krock: I feel compelled to note that especially with your username, I get the mental impression of an orc software dev gleefully hitting his workstation with a giant club "SQUISHY SQUASH!"
20:20 Pexin sorry if offtopic
20:21 Krock I might laugh about that tomorrow
20:21 Krock merged
20:22 Krock sadly violence does not achieve anything in software
20:25 rubenwardy hacking together code, with a machete
20:34 sfan5 erlehmann: Minetest Game is in CDB btw
20:35 kilbith joined #minetest-dev
20:36 MTDiscord <Sublayer plank> erlehmann: ah it's alright lol, we all make mistakes sometimes :)
20:36 MTDiscord <Sublayer plank> I'm a little bit curious about the ubsan message though, does it mean Irrlicht's CFileSystem?
20:36 erlehmann sfan5 i see. still weird to have a fallback value specified that is not actually available by default
20:36 erlehmann yes
20:37 erlehmann Subplayer plank, give cmake the argument -DCMAKE_CXX_FLAGS='-fsanitize=undefined -fno-sanitize=vptr' and then compile again, you should be able to see it
20:38 erlehmann you have to do the vptr suppression or else you see too much garbage
20:41 v-rob joined #minetest-dev
21:07 kilbith_ joined #minetest-dev
21:12 x2048 joined #minetest-dev
21:26 MTDiscord <Sublayer plank> hm, I gave that a try and for some strange reason I can't get it to segfault even when compiling with those flags. it does however print a runtime error to the terminal that some variable related to maphen noise is outside the boundaries for int, but that's not relevant to this issue
21:26 MTDiscord <Sublayer plank> no crash though
21:27 kilbith__ joined #minetest-dev
21:30 kilbith_ joined #minetest-dev
21:37 x2048 I'd like to hear opinions on #11696. kilbith_ and @luatic have shared link to order-independent transparency (https://jcgt.org/published/0002/02/09/), which has more potential than BSP trees.
21:37 ShadowBot https://github.com/minetest/minetest/issues/11696 -- Depth sorting for node faces by x2048
21:38 x2048 So the questions are: (1) Do we still merge BSP tree (and revert later when/if OIT is implemented)
21:40 x2048 And (2) Would clean room requirements apply here? I have seen the patch in MultiCraft
21:41 proller joined #minetest-dev
21:48 MTDiscord <Jonathon> Seems better to merge something that works qnd is complete thqn throw it away for something better which is not complete qnd if completed dowm the line could replace the current implementation
21:50 MTDiscord <Jonathon> . s/q/a
22:18 proller joined #minetest-dev
22:36 v-rob joined #minetest-dev
22:41 v_rob joined #minetest-dev
22:51 appguru joined #minetest-dev
23:13 olliy1or joined #minetest-dev
23:13 erlehmann Sublayer plank it segfaulted for me *without* those flags, not with them. but did you get the filesystem complaint from ubsan?

| Channels | #minetest-dev index | Today | | Google Search | Plaintext