ID:2748737
 
515 has chugged along this week. More of the client-side stuff I was working on is dealt with, but also I took some time to look into features.

However, what really took the time up this week was regressions. Thank goodness I caught them before a release, because there were some doozies. The renderer got much slower, which turned out to be because of a mistake in the changes that were made to split it up into pieces for the new map editor stuff. That same project ended up disrupting atom.transform so objects were just disappearing on me, which wasn't as readily apparent in a test project. And to top it all off, there was a problem with movement where objects were behaving very oddly in certain situations, which again wasn't easy to spot in simple tests. Luckily I found all of these issues by deciding to test against a project that does a lot of this stuff: namely Kumorii's not-Feed. Special thanks to Kumorii for helping me sort that out.

On the feature track, while I was in between fixes I decided to tackle something in the parser, and I'm happy to report that return types for procs are now a thing. In practice this is just syntactical sugar whose only purpose is to make the . operator actually do its job and kvetch (correctly) about bad vars if you have an expression like a.b().c, but I foresee more uses on the horizon. There's a request in place for an "auto" keyword for vars that would kinda rely on this. I have some minor additions to do here, and I need to document it, but it's in place already otherwise. As a bonus, I seem to have discovered the cause of one of the bugs in my 514 queue, so I can backport that fix.

The concept of return types for procs has me thinking again of compile-time typed lists, so I might revisit that idea. Actually I have quite a few more important list-related wish list items I'd like to see if I can crank out for 515, but still it's worth a look.

514 does have a couple of interesting bug reports, mostly particle-related, so those are at the top of the queue for next week, and might even see some more action today. I want to work toward another maintenance release soon so I'll shift a little energy that way.

Realistically there's no way 515 is coming in before Christmas, which is also just a terrible, terrible time for a major release anyway. So I'm gonna push mostly to button up the things that need it, and add minor features that won't cause too much grief. It's too important to get the release mostly right.

The fundometer is a little light for this time of the month, although I want to thank those who've stepped up to support BYOND, and especially the long-time gurus who've put in a little extra lately. For those who haven't yet, your contributions really mean everything to ongoing development and bug fixes. You can go the simple route of becoming a BYOND Member or donating directly, but if you'd like a subscribe-and-forget option to show ongoing support you can also use Patreon or SubscribeStar. I'm grateful for all who've shown their support.

Christmas Eve is two weeks from today! Chances are you have a lot left to do, and some shopping too. But I hope everyone who celebrates the season is enjoying it to the full, and those who don't are still enjoying it anyway. Somehow my brain has already jumped into Christmas break mode and I'm planning all kinds of snacks and activities.

Speaking of post-Christmas, I don't know if I've mentioned it in the news anywhere yet, but if you or a family member enjoys reading fantasy or sci-fi, there's going to be a massive Kindle book sale and giveaway in the r/Fantasy subreddit on December 26-27. This year's megasale will support St. Jude's, because every author participating has pledged 1 cent for every book they sell or give away as part of the sale. So if you know anyone who wants to bulk up their Kindle library after Christmas and support a good cause, there will be a link at r/Fantasy on the 26th, and I'll also post links to my blog and share in BYONDiscord.

That's it for now. Keep warm, bake those cookies, and I'll see you again next week!