IRC logs for #openttd on OFTC at 2023-08-30
            
00:42:07 *** D-HUND has quit IRC (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
02:02:03 *** herms has quit IRC (Quit: bye)
02:02:33 *** herms has joined #openttd
02:06:13 *** D-HUND has joined #openttd
02:09:36 *** debdog has quit IRC (Ping timeout: 480 seconds)
02:15:50 *** Wormnest has quit IRC (Quit: Leaving)
02:25:47 *** D-HUND is now known as debdog
02:51:12 *** keikoz has joined #openttd
04:22:57 *** Flygon has joined #openttd
06:11:26 <andythenorth> goes it? https://en.wikipedia.org/wiki/Roller_ship
06:33:18 <alfagamma_0007> Juststeamerathings
07:01:38 *** ahyangyi has joined #openttd
07:01:38 <ahyangyi> unsuccessful designs are the best, as they are not constrained by success
07:40:26 <peter1139> https://www.postgresql.org/about/news/cve-2020-21469-is-not-a-security-vulnerability-2701/ lolz
07:48:04 * Rubidium wonders how many other services are vulnerable for DoS when sending SIGHUP. Or maybe even, which credible well used services cannot be DoS-ed by sending SIGHUP?
07:50:19 <truebrain> lolz, that CVE is just lolz .. please make CVEs for all our software too? 😄
07:51:14 <truebrain> I wonder why they mention SIGHUP .. you might as well do SIGKILL at that stage ...
07:52:36 <truebrain> the actual message on the maillist makes more sense .. repeated SIGHUP causes a SEGFAULT
07:52:39 <Rubidium> probably because there's a (Postgre) SQL command to reload the configuration, so it can be triggered remotely by a client
07:52:43 <truebrain> not a CVE, but a bug nevertheless
08:02:07 <peter1139> It's a bug which they fixed, yeah.
08:02:34 <peter1139> But not a CVE, and not one issued... 3.5 years after the bug was fixed?
08:14:04 <ahyangyi> the CVE was also filed in 2020 though
08:15:56 <ahyangyi> So was the maillist message.
08:22:05 <peter1139> But not pPublished 8 days ago though.
08:22:09 <peter1139> ...
08:22:14 <peter1139> But not published til 8 days ago though.
08:24:23 <ahyangyi> mailing list is public enough
08:24:25 <andythenorth> edit is nice eh? in discord
08:26:14 <peter1139> ahyangyi, which mailing list?
08:26:27 <ahyangyi> https://www.postgresql.org/message-id/CAA8ZSMqAHDCgo07hqKoM5XJaoQy6Vv76O7966agez4ffyQktkA%40mail.gmail.com
08:26:33 <ahyangyi> This was the original bug report
08:26:38 <ahyangyi> 2020-04-14
08:26:41 <peter1139> Yes, correct, that's a bug report.
08:28:12 <ahyangyi> yeah, the CVE was also "CVE-2020-21469". Apparently it was also filed in 2020, but due to the nature of CVE being CVE, it was only published 3 years later.
08:28:18 <peter1139> When I wrote "But not a CVE", I mean the bug should not resulted in a CVE that was published 3.5 years later.
08:29:42 <ahyangyi> I see
08:32:14 <ahyangyi> "cveMetadata": {
08:32:14 <ahyangyi> "state": "PUBLISHED",
08:32:14 <ahyangyi> "cveId": "CVE-2020-21469",
08:32:14 <ahyangyi> "assignerOrgId": "8254265b-2729-46b6-b9e3-3dfca2d5bfca",
08:32:14 <ahyangyi> "assignerShortName": "mitre",
08:32:16 <ahyangyi> "dateUpdated": "2023-08-29T04:53:55.139575",
08:32:16 <ahyangyi> "dateReserved": "2020-08-13T00:00:00",
08:32:18 <ahyangyi> "datePublished": "2023-08-22T00:00:00"
08:32:18 <ahyangyi> },
08:32:33 <ahyangyi> Is there some mechanism that automatically publishes a CVE that's not discussed?
08:33:13 <ahyangyi> I think the postgresql developers complain that they haven't seen the CVE before, and the original author didn't say anything recently either
08:35:23 <truebrain> right, I now have a symbols bundle that is actually working ... now to publish it to a CDN 🙂
08:39:15 *** milek7 has quit IRC (Remote host closed the connection)
08:45:13 <truebrain> ``` Version: 20230830-crashlog-json-ma195f5d6b1
08:45:13 <truebrain> Hash: a195f5d6b1c40b13622db7ae2e9a68d2c1a1cafc
08:45:13 <truebrain> NewGRF ver: 1E006D64
08:45:13 <truebrain> Content ver: 14.0```
08:45:27 <truebrain> I think glx will appreciate this 🙂
08:45:50 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #11232: Change: store crash logs in JSON format https://github.com/OpenTTD/OpenTTD/pull/11232
08:53:20 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #11244: Change: for surveys capture more information about the OpenTTD version https://github.com/OpenTTD/OpenTTD/pull/11244
08:58:01 <peter1139> Hmm, I wonder which accounts I created with "login via facebook" or "login via twitter"...
09:00:45 <DorpsGek> [OpenTTD/actions] TrueBrain opened pull request #60: Upgrade: bump version of peter-evans/repository-dispatch to latest https://github.com/OpenTTD/actions/pull/60
09:07:54 <peter1139> Teams won't let me call a person, but will let me join a video meeting...
09:08:04 <truebrain> lolz
09:20:31 *** milek7 has joined #openttd
09:21:21 <DorpsGek> [OpenTTD/actions] TrueBrain merged pull request #60: Upgrade: bump version of peter-evans/repository-dispatch to latest https://github.com/OpenTTD/actions/pull/60
09:22:31 <kamnet> https://cdn.discordapp.com/attachments/1008473233844097104/1146374380255989810/image.png
09:22:31 <kamnet> Oof. This is annoying. If you're digging into land at the very edge of the map and hit sea level, instead of staying as land it converts to sea water. But if you did this one tile in from the edge of the map, it would remain as land.
09:27:07 <Eddi|zuHause> correct. the void tiles at the edge of the map flood like ocean
09:27:31 <peter1139> There was a change to do that... from he who must not be named.
09:28:11 <Eddi|zuHause> that was what? 12 years ago?
09:29:31 <peter1139> No.
09:29:36 <peter1139> https://github.com/OpenTTD/OpenTTD/pull/8517
09:30:28 <truebrain> the other person who shall not be named Eddi; I know, confusing, we have several 😛
09:30:52 <Eddi|zuHause> i think that's some weird edge case...
09:31:34 <peter1139> That's exactly the edge case that affects kamnet here.
09:32:44 <truebrain> I gave up on understanding what these PRs actually fix long ago 😛
09:33:00 <Eddi|zuHause> ok, maybe. but i would have expected it to do that. so that change seems correct.
09:33:35 <peter1139> Well I didn't say it's wrong, it's just the particular change that causes it.
09:37:15 <kamnet> It seems to me that the correct behavior here should be:
09:37:15 <kamnet> - if tile is at height 0 and is surrounded by land on all sides except void, then it should remain as land;
09:37:15 <kamnet> - if tile is at height 0 and any part of it touches water, then it should become coast or flood.
09:39:12 *** Eddi|zuHause has quit IRC (Remote host closed the connection)
09:40:16 *** Eddi|zuHause has joined #openttd
09:41:05 <locosage> map edges flooded tiles way before 8517
09:42:02 <Eddi|zuHause> that's what i said.
09:42:02 <locosage> depends on some worldgen setting iirc
09:44:02 <Eddi|zuHause> i'm pretty certain we had that discussion back when non-flat edges were introduced
09:45:26 <_zephyris> @frosch 32bpp->8bpp conversion is _much_ faster now 😀https://github.com/zephyris/opengfx2/commit/3baeb721c00f36ab6b6e3f5eede1796c39a460a5
09:52:18 <emperorjake> kamnet: This also affected the NetTrans map
09:52:29 <emperorjake> It was a relatively recent change
09:53:09 <DorpsGek> [OpenTTD/OpenTTD] ketsuban started discussion #11245: Classic and Modern presets for default settings https://github.com/OpenTTD/OpenTTD/discussions/11245
10:00:04 <DorpsGek> [OpenTTD/actions] TrueBrain opened pull request #61: Add: reusing workflow to upload to symbol server https://github.com/OpenTTD/actions/pull/61
10:00:18 <truebrain> time to test if that workflow actually works 😄
10:04:33 <peter1139> Urgh, something about my monitors provides a really bad colour profile to the OS.
10:05:54 <peter1139> I mostly has no effect, but anything using Electron applies colour profiles. So VS Code and Discord both end up looking very odd.
10:06:24 <peter1139> On Windows I was able to disable colour profiles, but on Linux doing that doesn't seem to do anything.
10:08:51 *** virtualrandomnumber has joined #openttd
10:08:55 *** virtualrandomnumber has quit IRC ()
10:09:45 <peter1139> Ah ha, it works, but I have to restart VS Code completely.
10:14:34 <DorpsGek> [OpenTTD/OpenTTD] glx22 approved pull request #11244: Change: for surveys capture more information about the OpenTTD version https://github.com/OpenTTD/OpenTTD/pull/11244#pullrequestreview-1602373565
10:14:37 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #11244: Change: for surveys capture more information about the OpenTTD version https://github.com/OpenTTD/OpenTTD/pull/11244
10:14:55 <DorpsGek> [OpenTTD/OpenTTD] kevinfields777 started discussion #11246: Water/land on edge of map (re-evaluating #8517) https://github.com/OpenTTD/OpenTTD/discussions/11246
10:22:49 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler commented on discussion #11245: Classic and Modern presets for default settings https://github.com/OpenTTD/OpenTTD/discussions/11245
10:27:52 <andythenorth> goes it faster Horse? https://www.theregister.com/2023/08/30/scalene_ai_advice_python/
10:33:46 <ahyangyi> Roader Hog, Ironer Horse, Ironer Ibex, More Unsinkable Sam
10:34:25 <DorpsGek> [OpenTTD/OpenTTD] zephyris commented on discussion #11245: Classic and Modern presets for default settings https://github.com/OpenTTD/OpenTTD/discussions/11245
10:46:45 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler commented on discussion #11245: Classic and Modern presets for default settings https://github.com/OpenTTD/OpenTTD/discussions/11245
10:47:51 <truebrain> grr, so after 50 minutes it tries to upload the symbols, for it to fail without any real indication what part failed 😄
10:47:53 <truebrain> that is just annoying 😛
10:49:52 <DorpsGek> [OpenTTD/OpenTTD] JGRennison commented on discussion #11245: Classic and Modern presets for default settings https://github.com/OpenTTD/OpenTTD/discussions/11245
10:53:05 <DorpsGek> [OpenTTD/actions] TrueBrain updated pull request #61: Add: reusing workflow to upload to symbol server https://github.com/OpenTTD/actions/pull/61
10:54:59 <_glx_> truebrain: It says it's the key
10:55:30 <_glx_> Or I checked the wrong action
10:55:32 <truebrain> ` Error: Process completed with exit code 22.` <- that says nothing about anything 😄
10:57:52 <locosage> andythenorth: needs api key :(
10:58:04 <locosage> though it just asks chatgpt to optimize code
10:59:53 <locosage> so I just copied its request from the console and it game a non-functional "optimization" ...
11:00:17 <locosage> ha, wonder if it can optimize lz77
11:02:54 <_glx_> Curl code 22 is URL not found
11:03:05 <locosage> https://cdn.discordapp.com/attachments/1008473233844097104/1146399688954753145/Screenshot_from_2023-08-30_15-02-56.png
11:03:05 <locosage> nope xD
11:03:52 <andythenorth> lol
11:04:34 <DorpsGek> [OpenTTD/OpenTTD] ketsuban commented on discussion #11245: Classic and Modern presets for default settings https://github.com/OpenTTD/OpenTTD/discussions/11245
11:04:56 <truebrain> I like how people don't understand Discussion threads on GitHub, and reply in a new reply, instead of the thread they are replying in 😄 Looking at our newest dev here 😛
11:05:07 <locosage> https://cdn.discordapp.com/attachments/1008473233844097104/1146400202509529128/Screenshot_from_2023-08-30_15-04-39.png
11:05:07 <locosage> and after fixing one error it's still the same xD
11:06:22 <andythenorth> I untyped my reply 😛
11:06:31 <andythenorth> sometimes a discussion doesn't need more discussing
11:09:29 <_zephyris> Did it mention yak-shaving? 😀
11:10:41 <ketsuban[d]> In my defence I've never used Github discussions before, and I'm used to discussion forums where quoting someone to reply to them specifically is expected.
11:11:03 <truebrain> You are not our newest dev 😛
11:11:33 <truebrain> but it is in general true for Discussion threads .. GitHub doesn't do a good job guiding people to use the right reply box
11:11:35 <truebrain> which is funny to me 🙂
11:12:35 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on discussion #11245: Classic and Modern presets for default settings https://github.com/OpenTTD/OpenTTD/discussions/11245
11:12:39 <truebrain> there, some more reading material
11:13:35 <peter1139> tl;dr
11:14:12 <peter1139> Settings in json?
11:14:13 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on discussion #11245: Classic and Modern presets for default settings https://github.com/OpenTTD/OpenTTD/discussions/11245
11:14:35 <truebrain> peter1139: how does the format matter? 🙂
11:14:55 <peter1139> Just to add pointless noise to the topic :D
11:14:55 <alfagamma_0007> locosage: Chatgpt_nml_py
11:14:55 <alfagamma_0007> What's that
11:15:06 <truebrain> peter1139: 😄 You silly 😛
11:17:27 <ketsuban[d]> I was starting as small as possible, something like a simple box prompting you to pick Classic or Modern as a one-time decision when you boot the game for the first time. If you want the original Transport Tycoon experience you pick Classic; if you want OpenTTD as it currently exists you pick Modern. Sharing complete gameplay packages as mods on BaNaNaS is a lot more ambitious.
11:17:55 <truebrain> sadly, you will not succeed in adding only two options. The discussion what should be in which will be endless
11:17:59 <truebrain> that is why customization is important
11:19:30 <truebrain> (it doesn't btw mean you can't start small; just the goal has to be a bit bigger here 🙂 )
11:19:44 <peter1139> You also end up having to do more work to support different methods of providing default settings.
11:20:21 <truebrain> if we just think about what this Discord considers "modern", that is very likely far from what the average player will consider "modern" 😛
11:20:31 <truebrain> (this Discord represents a very small percentage of our total community)
11:20:45 <truebrain> and if you ask tt-forums or reddit, you get two widely different results 🙂
11:21:01 <truebrain> OpenTTD is not as cohesive as people would like to think 🙂
11:21:11 <alfagamma_0007> Reddit is harebrained most of the times ngl
11:21:13 <truebrain> hell, we can't even agree if we should ship a tram-grf by default or not 😄
11:21:34 <alfagamma_0007> tt-forums is mostly dead ish
11:21:44 <peter1139> We can agree on that: we shouldn't.
11:22:04 <truebrain> alfagamma_0007: : and you just confirmed my statements 🙂
11:22:15 <truebrain> as you are only right when you look at it from a Discord perspective 🙂
11:22:29 <alfagamma_0007> Well, that is true
11:25:39 <truebrain> 14 minutes per attempt .. and I keep failing in small statements ... I hate how long releases take ... but it might now actually upload symbols to the symbol server ... I think .. I hope .... 😄
11:27:20 <kamnet> truebrain: Who are our newest/newer devs?
11:27:37 <truebrain> how can you not know?! 😛
11:27:38 <truebrain> he is tall
11:27:40 <truebrain> he is not from EU
11:27:49 <truebrain> that alone was reason enough 😛
11:27:58 <alfagamma_0007> *Whispers* Tyler
11:28:16 <kamnet> Oh. I thought he's been a dev for like two years now LOL
11:28:29 <truebrain> not that long, but still the newest 😛
11:28:32 <truebrain> there is always one 😄
11:29:13 <kamnet> the PFY
11:30:06 <alfagamma_0007> How's your eyes , Kam
11:30:08 <alfagamma_0007> ???
11:31:05 <kamnet> Left eye still blurry, but that's part of the healing process. There is a bubble of gas in the back of my eye to push the retina and membrane back together. Once that dissipates my vision should come back to normal.
11:32:21 *** berndj-blackout has joined #openttd
11:34:26 <pickpacket> kamnet: what happened to your eye?
11:34:28 *** berndj has quit IRC (Read error: Connection reset by peer)
11:39:14 <locosage> alfagamma_0007: I asked chatgpt to optimize lz77 compressor from nml (python version)
11:39:27 <locosage> maybe I should try with C version though
11:39:33 <locosage> python one is actually good
11:39:37 <locosage> as far as python goes
11:40:10 <alfagamma_0007> Oh wow
11:40:10 <alfagamma_0007> Chatgpt can code as well
11:40:48 <_jgr_> The whole concept of trusting code that came from chatgpt is just bizarre to me
11:41:14 <alfagamma_0007> ^^
11:41:41 <truebrain> SYMBOLS WERE UPLOADED \o/
11:41:45 <truebrain> now to check if it is actually correct 😛
11:42:41 *** berndj-blackout is now known as berndj
11:43:51 <truebrain> now to start a 50 minute run to validate all OSes upload correctly .. lol
11:45:07 <kamnet> pickpacket: Rputured vitrious.The vitrious holds a layer of fluid in the back of the eye. When it ruptured that fluid leaked between the retina and back of the eye. Woke up two weeks ago and my vision was all blurry. It happens in older adults (I'm 47) and also people with diabetes (also me).
11:45:48 <pickpacket> kamnet: ouch :( Good thing it's healing
11:49:07 <kamnet> It didn't hurt, but I could feel the pressure from the excess fluid.
11:53:43 <truebrain> you could say, the pain was a invisible? (sorry, bad pun 😛 )
11:53:56 <truebrain> okay, I need to crash a nightly ... how am I going to do that ... modify a savegame .. let's try ...
11:55:32 <peter1139> There's bound to be some easy way that everyone commonly knows about but... never bothered reporting.
11:56:43 <truebrain> randomly modifying a save doesn't crash so far ..... 😄
11:57:06 <peter1139> https://www.tt-forums.net/viewtopic.php?t=91144 < uh huh
11:58:20 <locosage> https://cdn.discordapp.com/attachments/1008473233844097104/1146413596570550292/kst_scandi_train_openttd_crash_incorrect_data_offset.grf
11:58:20 <locosage> peter1139: try this xD
12:01:28 <truebrain> lol, we actually do some safety checks .. I made some invalid REF_TOWN references
12:01:31 <truebrain> but we check for that 😄
12:03:47 <_zephyris> Modify the base set grf files while the game's running...
12:04:55 <locosage> modifying any grf will do
12:05:12 <truebrain> _zephyris: I have to reproduce it many many times, so I was hoping for something a bit easier 🙂
12:05:14 <locosage> though maybe not every modification...
12:05:35 <locosage> truebrain: have you tried my grf? it crashes 100% for me when adding it
12:05:48 <_jgr_> Triggering a "crash" to test crash log output became enough of a pain that I added a magic console command for it
12:06:00 <truebrain> _jgr_: tempting to backport that 😄
12:06:08 <truebrain> but those are so predictable ..
12:06:13 <truebrain> (the backtrace, that is)
12:06:14 <locosage> also, there was a crash hotkey in debug build...
12:07:17 <_jgr_> Otherwise you can just insert something deliberately wrong into the code before building
12:07:31 <truebrain> the requirements was: crashing a nightly
12:07:44 <truebrain> I am not willing to wilfully add wrong code into a nightly 🙂
12:08:48 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on issue #11146: [Crash]: https://github.com/OpenTTD/OpenTTD/issues/11146
12:08:51 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain closed issue #11146: [Crash]: https://github.com/OpenTTD/OpenTTD/issues/11146
12:17:50 <truebrain> most of our save/load is actually pretty well defended .. guess I need to get out the fuzz-tester or something 😄
12:22:28 <truebrain> finally! Manipulating the xy of a station did the trick
12:25:45 <truebrain> Cloudflare logs: `openttd/REDACTED/openttd.sym` ... well, those logs are not all that useful 😛
12:25:51 <truebrain> I need to know REDACTED! 😄
12:36:24 <truebrain> ` 6 openttd!HandleSavegameLoadCrash(int) [afterload.cpp : 414 + 0x8]`
12:36:35 <truebrain> okay, so symbol server works .. I think 🙂
12:39:54 <truebrain> except that minidump-stackwalk cancelled the GET to the symbol when found ... bit odd
12:45:28 <truebrain> ah, lol ... sending a gzip compressed body without telling it is a gzip compressed body isn't nice 🙂
12:51:16 <truebrain> _glx_: mind looking over https://github.com/OpenTTD/actions/pull/61 to see if I made a weird boo-boo? It is tested, so it actually works, but still 😄
12:54:16 <peter1139> Make sure andy's MBP lid is open before running the flow.
12:54:33 <truebrain> bit done telling him not to close it, so we will see 😛
12:56:52 <truebrain> hmmm ... the identifier used to upload the symbol is different than the crashdump says on Windows
12:56:54 <truebrain> that is ... annoying
12:58:24 <truebrain> no, wait, I am a peanut .. it helps to open the right crashdump, lol
12:58:59 <truebrain> `11 openttd.exe!HandleSavegameLoadCrash(int) [afterload.cpp : 414 + 0x8]`
12:59:11 <truebrain> okay, that looks very similar .. so that seems to be working as expected .. now to test MacOS 🙂
12:59:40 <peter1139> 4043 + 0x5897823489896
13:02:42 <DorpsGek> [OpenTTD/actions] glx22 approved pull request #61: Add: reusing workflow to upload to symbol server https://github.com/OpenTTD/actions/pull/61#pullrequestreview-1602656481
13:02:45 <DorpsGek> [OpenTTD/actions] TrueBrain merged pull request #61: Add: reusing workflow to upload to symbol server https://github.com/OpenTTD/actions/pull/61
13:03:20 <truebrain> Thanks!
13:12:15 <truebrain> `2023-08-30 15:09:55.910 openttd[863:8803] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'NSWindow drag regions should only be invalidated on the Main Thread!'` MacOS crashes for a completely unrelated issue 😛
13:13:36 <truebrain> ` 3 openttd!VideoDriver::SleepTillNextTick() [video_driver.cpp : 181 + 0xc]`
13:13:40 <truebrain> nevertheless, I can analyze the minidump
13:13:41 <truebrain> nice 🙂
13:19:08 <truebrain> _glx_: for the ease of use of the symbol server, anything not related to OpenTTD I internally forward to mozilla. Basically, in theory, you would only need to configure 1 symbol server and that should be enough. Do you know of any other symbol server worth chaining?
13:20:12 <_glx_> for now I only use the msdl one
13:20:21 <truebrain> is that a symbol server?
13:20:24 <truebrain> (and what is the URL?)
13:20:31 <_glx_> microsoft symbol server
13:22:03 <_glx_> https://msdl.microsoft.com/download/symbols
13:22:11 <truebrain> tnx; will see if I can chain that in too
13:22:14 <truebrain> just to make shit easier 🙂
13:22:23 <truebrain> although, in MSVC you can just check the checkbox, ofc
13:24:28 <truebrain> yeah, okay, a bit pointless to do; so I will not chain it 😛 You will just have to check the checkmark 😄
13:25:09 <andythenorth> peter1139: TOML 😛
13:26:00 <_glx_> I use the env var to not need to configure MSVC each time I open a .dmp 🙂
13:27:54 <truebrain> okay ... I think I prepared everything to also publish .pdb there ..
13:28:00 <_glx_> else the cache is not where I want it
13:28:01 <truebrain> guess that means I no longer have to store it on the CDN, right?
13:29:11 <_glx_> I guess
13:30:05 <_glx_> my current workflow for dmp is extract the right openttd version, then put the pdb next to it, then put the dmp in the same folder
13:30:31 <_glx_> but I guess opening the dmp with a configured symbol server should be enough
13:30:45 <truebrain> that is a bit the idea .. let's see if that is actually true 😄
13:30:56 <truebrain> first, I need to know the ID MSVC is using to fetch the pdb ..
13:31:56 <truebrain> let's guess that it is the same ID as the breakpad symbol .. seems a reasonable assumption
13:37:53 <_glx_> yeah it's the same ID
13:38:24 <truebrain> pff, pdbs are big! 😛
13:38:27 <truebrain> chunky!
13:41:16 <truebrain> it is documented that symbol servers need to support HEAD, but so far no client is actually using that 😄
13:44:11 <truebrain> oof, first time downloading symbols via MSVC is slow as fffffffff 😄
13:46:02 <_glx_> expand.exe is part of the system, but it's a pain to find how to get compress.exe
13:47:33 <truebrain> hmm .. I don't think it enables caching by default .. so I guess I will have to do this again in a bit 😛
13:48:57 <truebrain> owh, it does enable it by default, pfew
13:51:00 <truebrain> it also tries to download the executable from the symbol server .. so it seems I can help out there too .. just again, figuring out what ID to use is the tricky part 🙂
13:54:00 <_glx_> https://cdn.discordapp.com/attachments/1008473233844097104/1146442703626829876/image.png
13:54:22 <_glx_> result of `makecab openttd.pdb`
13:54:41 <truebrain> yeah, I just gzip it; that works equally fine
13:55:03 <truebrain> still bigger than breakpad symbols, compressed 🙂
13:55:03 <_glx_> msvc understand gzip ?
13:55:10 <truebrain> no, but Cloudflare does
13:55:31 <_glx_> because pd_ should be fine for VS
13:55:32 <truebrain> or more specifically: HTTP does 🙂
13:55:44 <truebrain> so I just skip all this `pd_` nonsense, basically 😄
13:57:26 <_glx_> for the exe ID I think dump_syms should get it
13:57:33 <truebrain> I do have the pdb ID
13:57:39 <truebrain> but the exe ID is a complete different number ..
13:57:56 <_glx_> run dump_syms on the exe
13:58:28 <truebrain> okay, pdb loads correctly now at least; so that is 1 win 🙂
13:58:48 <truebrain> https://cdn.discordapp.com/attachments/1008473233844097104/1146443910781087794/image.png
13:59:17 <_glx_> nice
14:00:13 <truebrain> _glx_: it somewhat is in there, yes .. hidden 😛
14:00:15 <truebrain> but that is something
14:00:29 <_glx_> it's somewhere inside the exe
14:00:34 <_glx_> but hard to find where
14:01:21 <truebrain> it is also in the breakpad symbol file
14:01:27 <truebrain> now to just get it out correctly in the workflow 😄
14:02:21 <_glx_> oh and PDBs are huge, but they are page based, so you can have pages full of 0
14:02:31 <truebrain> compression still says: I hate this
14:02:36 <truebrain> breakpad, compressed: 11MB
14:02:39 <truebrain> pdb, compressed: 40MB
14:05:09 <truebrain> hmm .. where do I find the correct .exe ...
14:05:13 <truebrain> will it be in the root?
14:05:15 <truebrain> I hope so 🙂
14:07:19 <_glx_> it's next to the pdb
14:07:46 <truebrain> yeah, but is it the stripped version that goes into the archive .. and is it also there with the installer running?
14:07:50 <truebrain> I can't see, so I don't know 😛
14:07:57 <truebrain> for some reason I don't have CMake on my Windows machine
14:08:40 <truebrain> assuming MSVC does the same thing as cmake will when we execute it, what I have now should work .. I can tell you in 50 minutes 😛
14:08:51 <_glx_> https://cdn.discordapp.com/attachments/1008473233844097104/1146446437828284547/image.png
14:09:05 <truebrain> 13 MiB, sounds correct, k, tnx 🙂
14:10:10 <_glx_> and I didn't ran regression else it would have 3 exes 🙂
14:12:16 <DorpsGek> [OpenTTD/actions] TrueBrain created new tag: v4.6.0 https://github.com/OpenTTD/actions/releases/tag/v4.6.0
14:12:34 <truebrain> I guess I should also enable the github-action dependabot updater
14:12:44 <truebrain> owh well, not for now 🙂 First, let's finish this 😄
14:15:45 *** milek7 has quit IRC (Remote host closed the connection)
14:24:55 *** Eddi|zuHause has quit IRC (Read error: Connection reset by peer)
14:33:55 <truebrain> at least there are no failures .. so that is promising. Sadly, can't see the artifacts yet while things are still going .. but it seems I guessed correct 😛
14:49:24 *** Eddi|zuHause has joined #openttd
14:50:18 <truebrain> lol, some quick math, even including the PDB files: it will cost 0.50 USD per month to keep a 3 month archive of nightlies on the Symbol Server .. I love how Cloudflare enables us to do this 😄
14:50:35 *** Bouke has quit IRC (Quit: User went offline on Discord a while ago)
14:53:24 <_glx_> hmm "Store breakpad symbols" says 3 files but the log only show .sym and .pdb
14:53:38 <truebrain> there is an .exe in there too
14:53:43 <truebrain> it just doesn't log it, as it isn't big enough
14:54:13 <_glx_> yeah exe must be the third one 🙂
14:56:41 <truebrain> like watching paint dry .....
14:59:02 <ahyangyi> :paintnetjpg:
14:59:40 *** gelignite has joined #openttd
15:00:33 <_glx_> finally reached upload section
15:02:45 <_glx_> funny the exe have very similar CODEID
15:05:03 <truebrain> still need to test if the symbols can be found etc, but I wanted to at least open the PR already 🙂 It should all work ...
15:05:06 <truebrain> (DorpsGek is slow 😛 )
15:05:45 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #11247: Add: [CI] Create and store breakpad symbols for releases https://github.com/OpenTTD/OpenTTD/pull/11247
15:11:53 <_glx_> added the symbol server in the env var
15:12:03 <truebrain> https://cdn.discordapp.com/attachments/1008473233844097104/1146462346299060284/crashme.sav
15:12:03 <truebrain> dear andythenorth , mind helping me out? Do you see the artifacts for https://github.com/TrueBrain/OpenTTD/actions/runs/6026050965 ? Can you download the MacOS one, and load this `crashme.sav`. It will instantly crash OpenTTD (which is intended). Would you mind giving me back your `crash.dmp` that it generated? 🙂
15:12:29 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #11247: Add: [CI] Create and store breakpad symbols for releases https://github.com/OpenTTD/OpenTTD/pull/11247
15:12:58 <_glx_> I could use a windows .dmp not generated by me as a test
15:13:27 <truebrain> that won't work ofc 😛
15:13:37 <truebrain> only the symbols for the run I just linked are available 🙂
15:14:21 <_glx_> I know, but if you crash the exe from this run and give me the dmp
15:14:43 <truebrain> owh, yeah, I am first testing it all out myself 🙂
15:15:46 <truebrain> and I kinda need a crashdump of a architecture that is not equal to my machine 😄 But I am sure andy wants to help out there 😄
15:16:40 <truebrain> okay, had to fix some bugs, but MSVC is actually working now .. it fetched both .exe and .pdb 😄
15:18:29 <truebrain> MSVC stores negative resulsts; minidump-stackwalk doesn't 😛
15:20:27 <truebrain> funny, the linux stacktrace isn't actually correct .. but that is because we do some nasty things 😛
15:21:39 <truebrain> https://cdn.discordapp.com/attachments/1008473233844097104/1146464762159444110/crash20230830150706.dmp
15:21:39 <truebrain> there you go _glx_ ; have fun with it 😛
15:27:38 <_glx_> hmm seems my env var is broken now 🙂
15:28:07 <_glx_> as it can't even find windows symbols
15:32:38 <truebrain> lol, so I am looking into the Linux trace, where minidump-stackwalker goes wrong .. as soon as it goed into the pthread_kill function, it finds the cfi correctly, but then makes a conclusion that is incorrect, and jumps to the wrong frame
15:33:10 <truebrain> after that it does random shit, ofc 🙂
15:37:17 <truebrain> the raise/abort heavily confuses the walker .. that is a bit sad 😛
15:44:36 *** Wormnest has joined #openttd
15:45:47 <peter1139> Let's move everything back to usenet ;)
15:46:04 <truebrain> peter1139, the random-quote guy
15:46:42 *** dj has joined #openttd
15:46:42 <dj> Is there an easy way (like some sort of launch argument) to automatically load into a new game after launching? It would be really nice to not have to click new game after launching from a fresh compile.
15:47:25 <locosage> dj: `-g <savegame>`
15:47:36 <dj> locosage: Perfect thanks!
15:47:56 <locosage> without save -g just starts a new game
15:48:05 <locosage> you can set seed with -G if you want it repeatable
15:51:28 <_glx_> ok if I set symbol servers inside VS it works, but the env var should work too (but doesn't)
15:52:41 <truebrain> also the breakpad tools from Google get lost in the minidump on Linux
15:52:43 <truebrain> that is a bit sad ...
15:52:58 <truebrain> but the pthread_kill / raise / abort sequence confuses the fuck out of it 😄
15:59:08 <_jgr_> Presumably it'd need access to the unwind info in the corresponding libc/pthread lib
15:59:51 <truebrain> the stracktrace created by the crash.log is a lot more correct 🙂
16:00:15 <truebrain> I keep wondering if we can unwind the stack to a certain point before triggering breakpad
16:01:21 <_jgr_> You can get the value of esp/rsp/etc in the sigaction ucontext
16:01:50 <truebrain> The issue here is that there are two signals involved
16:02:08 <truebrain> first, assert triggers a signal (abort), which is captured by the saveload
16:02:24 <truebrain> after which only it calls into the crashlog handler
16:02:32 <truebrain> honestly, the saveload guard could use some modernization
16:02:40 <truebrain> that might also really help here 😄
16:03:13 <_jgr_> The guard is only meant for C++ exceptions, as I understand it, not actual signals
16:04:05 <truebrain> https://github.com/OpenTTD/OpenTTD/blob/master/src/saveload/afterload.cpp#L362 for context
16:05:15 <_jgr_> Ah, I'd forgotten about that guard
16:06:07 <_jgr_> Still, that doesn't look like it should upset the stack
16:06:18 <truebrain> no, but it makes the stacktrace looks even weirder
16:06:29 <truebrain> sorry, I kinda jumped to another subject there 😄
16:06:41 <truebrain> tooling is upset by the stack because of pthread_kill
16:06:56 <truebrain> it jumps to another `ip` than I would like
16:08:50 <_jgr_> Hmm, might be the signal trampoline
16:09:20 <truebrain> it should jump to `0x7f161fef9476` (`raIse` function), but it jumps to `0x7f15e229f360`
16:09:24 <truebrain> which isn't even close 😛
16:10:26 <truebrain> the whole CFI appears valid .. so yeah, I guess pthread_kill just has some tricks going on 🙂
16:11:07 <truebrain> anyway, I think this is a stacktrace walker issue, more than anything else
16:11:18 <truebrain> as we never had a crash.dmp on Linux before, this is a whole new world 😛
16:11:45 <truebrain> I converted it to a core-dump, and even gdb goes: hmmmmmmmm
16:13:48 <truebrain> ah, no, after feeding some sharedlibraries to gdb it says: yeah, sure, here you go!
16:14:06 <truebrain> so there is actually enough information in the minidump; so that is something 😄
16:19:48 <truebrain> well, very curious to see if MacOS stackwalking works when it is an arm64 ..
16:22:43 <peter1139> Freedoom is a bit weird.
16:30:11 *** HerzogDeXtEr has joined #openttd
16:36:04 <alfagamma_0007> Freedoom?
16:41:47 <DorpsGek> [OpenTTD/OpenTTD] glx22 commented on pull request #11247: Add: [CI] Create and store breakpad symbols for releases https://github.com/OpenTTD/OpenTTD/pull/11247#pullrequestreview-1603110372
16:46:13 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1146486042761895996/crash20230830164532.dmp
16:46:13 <andythenorth> truebrain
17:04:53 <_glx_> "The new Include Cleanup feature for C++ which was added in 17.7 has been causing crashes for users, so we have disabled it for now, with a view to re-enable in 17.8" <-- well tested feature 🙂
17:23:53 <truebrain> ` 2 openttd!VideoDriver::SleepTillNextTick() [video_driver.cpp : 181 + 0x8]`
17:23:56 <truebrain> MacOS works too 😄
17:24:01 <truebrain> except that the crash caused another crash
17:24:14 <truebrain> but that is not related to my current work 🙂
17:24:23 <_glx_> because the crash window ?
17:24:30 <truebrain> I would guess so, yes
17:25:11 <truebrain> but I can find the actual crashlog on another thread, so it is still there 🙂
17:25:17 <_glx_> yeah game thread is not allowed to open windows
17:26:04 <_glx_> or something like that (I think sdl as this kind of limitations too)
17:26:36 <truebrain> on MacOS too, the assert hides the true issue in the backtrace
17:26:37 <_glx_> event loop stuff
17:32:00 <truebrain> so okay, this is all working; shocking 😄
17:33:32 <truebrain> after this PR and the JSON PR, I can start working on automating it 🙂
17:36:51 <truebrain> seems only crashes via `assert` are hard to trace on Linux
17:37:02 <truebrain> others look just fine
17:42:35 <truebrain> and GitHub's webhook is really slow .... 😄
17:42:39 <truebrain> or Discords webhook
17:42:41 <truebrain> pick one 🙂
17:44:13 <_glx_> I managed to have a working _NT_SYMBOL_PATH
17:44:25 <truebrain> w00p
17:45:56 <_glx_> So only one manual step left when opening a dmp, getting the right source checkout
17:46:18 <truebrain> in MSVC, I open it in the OpenTTD project
17:46:21 <truebrain> works like a charm!
17:46:34 <truebrain> ah, revision you mean?
17:46:38 <truebrain> yeah, you need to be somewhat correct
17:47:02 <truebrain> so this PR should make your life a lot easier 😄 😄 🙂
17:47:03 <_glx_> Yup the revision, but that was already in the previous flow
17:48:16 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #11247: Add: [CI] Create and store breakpad symbols for releases https://github.com/OpenTTD/OpenTTD/pull/11247
17:48:37 <truebrain> so I push another PR, and the one I did a while ago gets announced
17:48:38 <truebrain> interesting 😛
18:03:45 <DorpsGek> [OpenTTD/OpenTTD] glx22 approved pull request #11247: Add: [CI] Create and store breakpad symbols for releases https://github.com/OpenTTD/OpenTTD/pull/11247#pullrequestreview-1603221162
18:05:21 <andythenorth> ok how do I figure out regional capitals in GS
18:05:31 <andythenorth> say 1 in 8 towns is a regional capital
18:06:50 <andythenorth> regions might span 64 tiles or 128 tiles maybe
18:07:11 <andythenorth> every region that contains at least one town should have a capital
18:07:24 <andythenorth> regions could be squares, or irregular shapes, whatever is easiest
18:08:07 <andythenorth> if a region has a lot of towns, it might have more than 1 capital
18:08:42 <andythenorth> the capital for a town is the nearest capital from the list (this is easy) - even if it transcends a region border
18:09:19 <andythenorth> there's no particular reason 2 capitals couldn't be adjacent, but more than 2 near each other would be silly
18:14:37 <andythenorth> oh towns should have a minimum population also to be a capital
18:14:52 <andythenorth> and the GS isn't placing the towns, I have to retcon to whatever OpenTTD has placed
18:15:07 <andythenorth> ^ "well there's your problem" 😛
18:17:37 <andythenorth> https://azgaar.wordpress.com/2017/11/21/settlements/
18:18:41 <Rubidium> what about getting a town list, remove the towns that are too small, then sort ascending on town size. Then get the top town make that a capital, remove any towns that are with 64/128 tiles, repeat until that list is empty
18:19:11 <andythenorth> sounds plausible, I'll try it
18:19:25 <andythenorth> then reduce the distance constraint until the list is filled
18:19:33 <andythenorth> (repeating loops with reducing distance constraint)
18:30:06 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #11247: Add: [CI] Create and store breakpad symbols for releases https://github.com/OpenTTD/OpenTTD/pull/11247
18:32:36 *** Wormnest has quit IRC (Ping timeout: 480 seconds)
18:55:03 *** Wormnest has joined #openttd
18:55:21 <truebrain> GitHub webhooks really are a bit confused .. some don't get through at all .. lol. Owh well
19:00:42 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #11232: Change: store crash logs in JSON format https://github.com/OpenTTD/OpenTTD/pull/11232
19:03:51 <truebrain> only an hour delayed 😛
19:13:10 <truebrain> _glx_: FYI, I just deleted the current symbols from the Symbol Server
19:13:26 <_glx_> yeah they are useless
19:13:31 <truebrain> yup
19:14:08 <_glx_> nightly should push them anyway
19:14:15 <truebrain> hopefully 😄
19:14:50 <_glx_> you properly set the secrets ?
19:14:58 <truebrain> hopefully 😄
19:15:08 <truebrain> good check btw 🙂
19:15:32 <_glx_> it's the only possible failure I can see
19:15:49 <truebrain> your believe is stronger than mine 😄
19:15:53 *** Flygon has quit IRC (Quit: A toaster's basically a soldering iron designed to toast bread)
19:16:07 <_glx_> as the workflow itself should work (it did in the test)
19:16:42 <truebrain> we will know in 40 minutes if I am a fail or not 😛
19:17:30 <_glx_> I can't remember why we install pandoc for windows CI
19:17:44 <truebrain> lol, who knows! 😛
19:20:21 *** Wolf01 has joined #openttd
19:20:56 *** esselfe has joined #openttd
19:31:39 <truebrain> owh, and this first build will take a bit longer, as it needs to build the new dependencies .. lol
19:31:59 <truebrain> but the cache will take care of that in next nightlies 🙂
19:32:54 <_glx_> yeah forks can use the cache, but not the other way
19:50:35 <andythenorth> hmm
19:50:42 <andythenorth> shall I do a Tropico style power grid?
19:50:59 <andythenorth> each town needs a substation object (or industry) to be on the grid
19:51:08 <andythenorth> or shall I do a global grid?
19:53:06 <andythenorth> ach, the grf doesn't know if the GS is present
19:53:14 <andythenorth> so can't conditionally make industries available
19:54:59 *** gelignite has quit IRC (Quit: Stay safe!)
20:05:09 <truebrain> all green \o/
20:07:24 <_glx_> I'm looking at macos workflow
20:08:16 <_glx_> to try to reduce build time by 50%
20:08:26 <truebrain> really tricky
20:08:29 <_glx_> yeah
20:08:31 <truebrain> I don't know what files cpack needs 😛
20:09:42 <truebrain> kinda requires access to a performing Mac, and do some endless testing 😛
20:13:10 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1146538121773731982/image.png
20:13:10 <andythenorth> wish I could tunnel this 😛
20:13:13 <andythenorth> nvm
20:13:26 * andythenorth tunnels this
20:13:29 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1146538202027544596/image.png
20:13:56 <andythenorth> doesn't AWS have M1 mac real instances now>?
20:14:14 <andythenorth> https://aws.amazon.com/about-aws/whats-new/2022/07/general-availability-amazon-ec2-m1-mac-instances-macos/
20:16:12 <_glx_> the annoying part is we only need to parallelize the 2 build steps, but doing that is not simple because x64 does not only build but also pack
20:17:35 <_glx_> so splitting into 2 jobs is problematic
20:19:18 <truebrain> yup
20:20:30 <truebrain> and packing a full build folder is also not going to work 😛
20:21:53 <_glx_> yeah the cpack job would need the full x64 build dir and only the arm64 exe
20:27:10 <_glx_> universal build are nice for users but a pain for devs 🙂
20:28:44 <truebrain> You would like to merge 2 cpack results, but that sounds like a lot of manual labour
20:31:22 <_glx_> the x64 cpack doesn't even pack the x64 exe as we create the universal one before running cpack
20:48:29 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1146547012100161566/image.png
20:48:29 <andythenorth> I won 2048 again
20:48:47 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1146547086188367892/image.png
20:48:47 <andythenorth> nearly twice, but obiwan
20:48:57 <andythenorth> that would have been 2048-ception
20:57:00 <_jgr_> andythenorth: Is there a space missing before the opening parenthesis, or is the kerning off?
20:57:17 <andythenorth> you're correct I think
20:57:50 <andythenorth> is that in the OpenTTD lang string?
20:57:58 <andythenorth> or did I do it?
20:58:00 <andythenorth> probably me
20:58:49 <andythenorth> it's me 😛
21:00:01 <andythenorth> I migrated lang files to .toml with a script, think it stripped leading spaces in strings
21:07:14 *** keikoz has quit IRC (Ping timeout: 480 seconds)
21:27:20 <peter1138> Hmm, almost hit Chesham
21:30:14 <andythenorth> with what?
21:35:10 <peter1138> My bike
21:40:19 *** squirejames has joined #openttd
21:40:19 <squirejames> 1,012 tonnes of slag, just like your mum 😛
21:40:49 <squirejames> (I jest obviously)
21:44:58 <peter1138> That's what she said
21:50:33 *** Wolf01 has quit IRC (Quit: Once again the world is quick to bury me.)
23:46:58 *** k-man has quit IRC (Quit: WeeChat 4.0.2)
23:48:22 *** k-man has joined #openttd