Whew! This week was a doozy.
The Friday release curse struck again! Build 1428 fixed a few things but in the process three pretty annoying bugs snuck in: one of which I fixed right away, another I chased all week with new releases, and a third I fixed just today. Yup, that's right: another Friday release. This time hopefully it's good.
So what went wrong?
The first issue was a fix mainly to the DS parser, that went along with a couple of server-side fixes where turf [0x100FFFF] was producing null for its vis_contents or vis_locs lists. On the client (AND the server), the parser was choking on this because 0xFFFF is the NONE value and some old code for that was never properly changed to handle turfs; indeed that issue went way back, even before the increase in most objects' limits from two bytes, since turfs could go past that limit since forever. The problem was, when fixing the parser I thought I got everything I needed to change, but somehow missed a whole swath, causing an inconsistency that manifested in the right-click menu going berserk.
The second bug and the source of most of my grief this week was the var init optimization. Well, turns out it caused a problem because before, when an init proc set a var that same var might be set to a simple value like null in a child type--and the optimization prevented that, leaving the var set to whatever the init proc did. So that meant I had to go ahead with a long-planned optimization to init procs earlier than I intended. It did not go smoothly. It took three new releases to get it right, and in the end there's a lingering question if all is 100% okay after all because Space Station 13 had an issue with build 1432. However, SS13's issue may be related to the third bug introduced in 1428.
So the last item was that the dot-chain and null conditional operators had to be reworked completely, because they just weren't working right. I tested my new fix against an older bug report that they had been changed to fix in the first place, and everything looked fine. All my tests were fine, until someone came up with one that wasn't. As soon as I saw the problem I had a pretty good idea where I had gone wrong, but then I had to fix it the right way. I'm actually convinced this is the cause of SS13's woes with 1432, so a recompile under 1433 should get everything back on track.
Unless, of course, the Friday release curse strikes again.
Thanks to all our Members, donors, and Patreon supporters who've helped out this month. As always I'm grateful for your continued support, especially for those of you who've been a big help towards pinning down bugs and helping map out future features.
Next week is a short week because of the 4th, but with the heat wave coming up it may be shorter than that. Go forth and consume copious amounts of meat!
Jun 29 2018, 1:21 pm