SabreTools v1.0.6
Pre-release
Pre-release
This is the next pre-release that I had alluded to in 1.0.5. The big thing this time around is the .NET Framework is no longer supported as a platform for SabreTools. This frees up development to include a lot of new language features as well as focusing on actual, broad compatibility across platforms. This doesn't have much that takes advantage of the Framework removal, but I'll be taking a look at that for the next pre-release or stable release. Still haven't figured that out yet. So let's get on it:
Notable Changes:
- .NET Framework 4.8 Removal - This is the reason that this release exists. No more .NET Framework 4.8 and the special exclusions that were made for it. Old-style switch statements in code and the ability to use RIPEMD160 hashes have gone with this change.
- Console Color Fixes - For the longest time, if you were running the .NET Core build or you were running on
mono, you didn't see a blue header when starting the program. Turns out, it was something dumb on my part completely unrelated to color that I had gated off. That's been fixed, so it should look identical cross-platform now. - Better Field Logging - Starting in the 1.0.5 cycle and ending in this cycle, the generic
Fieldtype has gone away internally. This was an unwieldly beast that included reference to every single field in a DatFile. Now, that's been split up into 3 different pieces and the last remnants of this behemoth have gone away. With that change, a lot of "hacky" stuff went as well, such as supporting non-standard field names for filtering and exclusion. This caused some confusion with those who tested 1.0.5, so better logs have been put around these cases to make it clear that a field name was not accurate (anymore).
A lot of lines changed, but not a lot actually changed. Next round will be making things look prettier internally with the hopes that I might even be able to move to .NET 5.0 entirely. record types anybody?