Jump to content

Add .NET 8 support


Andy4Vendetta

Recommended Posts

I am using Arch Linux and I got dotnet-8.0 update recently. But Vintage Story doesn't support it and I had to rollback to 7.0.113 by arch package archives and add all dotnet-related packages to pacman ignore list so they wouldn't get updates. It would be really nice if I could use newer .NET version to run the game.

Link to comment
Share on other sites

Is there a significant advantage to 8, or is this just to make your install easier to maintain? .NET 7 I could see, because performance was greatly improved, and walking people who don't have your degree of knowledge through the update process was worth it.

But isn't the whole point of Arch Linux a rolling update thing? Rather than you handling the exclusion, wouldn't this force VS development to focus on supporting the bleeding edge rolling release schedule of a product still in its dev cycle, to the exclusion of, say, adding new content or fixing actual bugs? Once into full release, sure, but at this point in the dev cycle?

Edited by Thorfinn
Link to comment
Share on other sites

11 hours ago, Thorfinn said:

Is there a significant advantage to 8, or is this just to make your install easier to maintain? .NET 7 I could see, because performance was greatly improved, and walking people who don't have your degree of knowledge through the update process was worth it.

But isn't the whole point of Arch Linux a rolling update thing? Rather than you handling the exclusion, wouldn't this force VS development to focus on supporting the bleeding edge rolling release schedule of a product still in its dev cycle, to the exclusion of, say, adding new content or fixing actual bugs? Once into full release, sure, but at this point in the dev cycle?

.NET 8 has a lot of serialization improvements, improved randomness and cryptography (that would be important for account security), UTF-8 improvements (I don't think this is needed for VS really) and adds a few new performance-focused types.

So VS doesn't need to update and rewrite itself to new .NET 8 features really, but I think it would improve performance for a bit if new v8 features is used correctly.

Edited by Andy4Vendetta
Link to comment
Share on other sites

  • 2 weeks later...

Also, keep in mind that VS only just moved from .NET 4 to .NET 7 this summer.

The main delay in doing this migration was a third party component which did not support .NET 7 up until that point, but which VS has a hard dependency on.

Chances are, that third party component won't immediately move on to .NET 8, so until it does, VS cannot update either.

  • Thanks 1
Link to comment
Share on other sites

  • 2 weeks later...

The devs added a separate package for v7 dotnet to the Arch Linux repositories, so all is good. As for moving to .NET v8, I agree that it is better to do it when it makes sense. And probably not even to version 8 of dotnet, but to wait for version 10 for example and so on. If the difference between two adjacent versions may be insignificant, it may already be a difference between several versions in terms of performance or different functions.

Link to comment
Share on other sites

On 12/14/2023 at 8:45 PM, Streetwind said:

Also, keep in mind that VS only just moved from .NET 4 to .NET 7 this summer.

The main delay in doing this migration was a third party component which did not support .NET 7 up until that point, but which VS has a hard dependency on.

Chances are, that third party component won't immediately move on to .NET 8, so until it does, VS cannot update either.

This ^^^

Moving .NET versions is a large task. We are dependent on around 10 third-party libraries, some of which are open source and maintained by volunteers. And we need to maintain Windows 10 & 11, Linux, and MacOS compatibility (and we shortly hope to support latest Apple Silicon, i.e. ARM64, natively). And Harmony patching needs to be working seamlessly, so that our mods are supported.

If even one of these things is not working then Vintage Story starts to have issues...  I would be extremely reluctant to update .NET versions again without a very strong reason to do it, and obviously it would be sensible to do it only at a time when the third-party libraries are all stable in the new .NET version.

Frankly we are still working through the .NET7 update, there are a couple of niggles remaining ... I'm just thankful the game is as stable as it is in .NET7.  It's largely th3dilli to thank for that!

  • Thanks 1
Link to comment
Share on other sites

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.