Evaluate upgrade path to .NET 10 (nov 2025)
This app was written over 10 years ago now, mostly over a weekend back then. The .NET framework version this targeted at the time was .NET 4.6. I only did a minor update to .NET 4.7.1 for some fixes along the way.
I've used the app myself almost every day that I've been at my PC, so it has been a very worthwhile investment.
Given all of that, doing a major framework upgrade once a decade is probably ok. ;)
.NET 10 is the next major long term support (LTS) version coming out, so it'd probably be a good time to look at updating the app. MahApps metro is also planning a 3.0 release, so doing both at the same time makes the most sense.
- [ ] Maintain compatibility with existing settings/livestreams files
- [ ] Redo the MahApps metro integration, following whatever their current standard is.
- [x] Strip out Octokit as it's a >1MB dll that I use to do 1 api call to GitHub for releases
MahApps metro has grown in size to 3.5MB~ while the version currently in use is 1MB. I'm heavily dependent on this for theming so I don't have much choice. From a brief look at their build process, I could build it myself, removing unused embedded resources, which would cut the size down 1+MB.
Avalonia would be ideal as it's cross-platform, but that'd basically be a substantial UI rewrite. It's also like 15-20MB for the smallest binary you could produce (framework dependent) or 50MB for standalone. At that point, I might as well just use a better language for desktop apps.
On a somewhat unrelated note, I'll probably look at changing the app's language away from .NET in the future to something like Odin or Jai with the following reasoning:
- Microsoft have done a very poor job of improving their desktop app development. Their web and console apps are great, better than they've ever been.
- I've improved my programming skills over the years and have become disenfranchised with the massive waste (storage requirements, speed, etc.) prevalent in software as I've learnt more about how fast computers actually are.
Diary entry complete?