freeso/TSOClient/FSO.Common.DatabaseService
SegerEnd d5485b8ad0
Upgrade FreeSO to .NET 9.0 (#283)
* Add FSO.DotNet9 MonoGame project for .NET 9

* Remove tso.client project and update DotNet9 references

* Add FSO.Client project file

* Migrate FSO.Common to SDK-style project and .NET 9

* Migrate FSO.Common to .NET 9.0

build as Class Libary succeeds in VS2022, I have not tried building game, need to migrate all other first

* Add package and project references

* Made NET 9.0 project forFSO.UI to SDK-style project

* Migrate FSO.Files to .NET 9.0

build as Class Libary succeeds in VS2022, I have not tried building game, need to migrate all other first

* Start of migrate FSO.HIT project to .NET 9

* Try converting

* Work in progress migration to 9.0

* Wip

* SimAntics compiles

* Working on FSO.UI and FSO.Client

* Start of migrating FSO.Server

* Migrate to .NET 9 and update JWT implementation

* Migrate FSO.Server.Protocol

Need to look at packages later, it somehow compiles

* Refactor clients for async/await for RestSharp

* Add new project references to FSO.Client.csproj

* SimAntics JIT compiles to NET 9.0

* Updated FSO.Server.Api.Core and FSO.Server.Database projects to target .NET 9

* Migrate projects FSO.Server.DataService etc

* Migrate FSO.Server.Domain to SDK-style project

* Build FSO.Server.Common

* Test

* Brought back original FSO.Server

* using old PortableJWT needs maybe replaced later for .NET 9.0

* Add System.IO.FileSystem.Primitives dependency

* FSO.Server build

* Remove FSO.Server.Debug references and add PortTransformer

* Fix build failing

* Remove IsAotCompatible and set PublishAot to False othwerwise it wont compile

DynamicCode does not work with AOT

* MSFData to .NET 9.0

* MSDFExtension to .NET 9.0

* Remove mp3sharp library replaced with Nuget MP3Sharp

* Remove license file and fix solution config

* Brought back old tso.client from Archive

* TSO client build

* FSO Windows, compiles but has Errors with old MonoGame linking

* Remove FSO.DotNet9 project and update Windows build

* Why does MSDF data not work

* Fixed MSDF fonts in content

* Refactor content pipeline and update font loading

* Working .NET 9.0 build, playable on Windows

* Fix image loader

* Made some libaries AOT

* Update FSO.Windows.csproj

* Restore OnExiting override

* Made VoronoiLib .Net 9.0

* Remove MIConvexHull no .dll available

* Migrate projects to SDK style and remove unused dlls

* Migrate FSOFacadeWorker to .NET 9.0

* WindowsDX added as default for windows via MonogameLinker

* Fixed not launching GL with -gl argument

* Volcanic / FSO.IDE working on .NET 9.0!

Currently working, only need to make the buttons in Volcanic fit the frames no they are almost invisible, (E.g at creating new .iff file)

* FSO.Debug now compiles and runs but is non functional

* Add launchSettings.json for FSO.IDE

* Fix crash when Loading job lots in sandbox mode

* Remove old TSOClient Network files

* Remove unused debug and rendering files

Deleted several debug UI and rendering-related source files from TSOClient.
Also updated the .mgcb files for the new Fonts /outputDir:../Content

* Fix FSO.Server.Core compiling

Removed AOT compile from FSO.Server.Core that caused issues with Dynamic Code

* Remove Nancy dependency and its Severs\Api files

* Update font loading paths in TSOGame.cs to root Content folder

* Add ApplicationDefaultFont property to IDE

* Remove Admin files from FSO.Server compile

The FSO.Server project needs to exclude the Admin folder, as node_modules can contain cs files for build scripts

* [Audio] Refactor MP3Player to use async buffer queue (.NET 9.0)

Refactors MP3Player to replace old thread-based decoding and buffer
management with a .NET 9.0 async/Task-based implementation using
ConcurrentQueue and SemaphoreSlim. Improves performance, reduces
GC pressure with ArrayPool<byte>, and makes resource management
and cancellation more reliable. Simplifies buffer submission logic
and adds preload/buffer tuning options.

* Ignore .idea/ from Rider

Added .idea/ directory to .gitignore to prevent JetBrains Rider IDE files from being tracked in the repository.

* Migrate FSO.Watchdog to .NET 9

and made the application work again, because .NET 9 no longer supports AppDomain.CreateDomain. and AppDomainSetup.ConfigurationFile is also removed in .NET Core/.NET 5+

* Migrate FSO.Patcher to .NET 9.0

* Disable nullable in all projects

* DatabaseScripts files

* Replaced async login in FSOFacadeWorker

Refactor FSOFacadeWorker login logic and update project files

- Removed config.json from FSO.Server output
- Added discord-rpc.dll to FSO.UI
- Refactored login logic in FSOFacadeWorker to remove async/await
- Updated method calls to use discard (_) for tasks

* Refactor login Regulator by removing async/await usage

During migration, this method was made async to get the project to build properly. But now it builds succesfuly without async, so restoring the original archive branch implementation.

* Exit game fix

Fixes that sometimes after closing the game, it not fully closes, it was still running in the background.
- It works but is it good to call Environment.Exit(0); ? or are there maybe background processes running that are not finshed yet, and i just kill now?

* [Volcanic] Improve Font sizing in IDE

Fixes some/most of the scaling issues in Volcanic for dotnet9, and updates default font to modern Segoe UI.

* BHAV Editor window, font & sizing consistency

* Remove conflicting form closing handler

Should prevent the game from accidentally staying open and fix the archive closing dialog

---------

Co-authored-by: riperiperi <rhy3756547@hotmail.com>
2025-09-28 21:33:39 +01:00
..
Framework Cleanup: Remove most unused usings and MPL per-file licenses 2023-11-25 03:45:29 +00:00
Model Cleanup: Remove most unused usings and MPL per-file licenses 2023-11-25 03:45:29 +00:00
DatabaseService.cs Add Property Select EOD 2024-11-14 21:49:38 +00:00
FSO.Common.DatabaseService.csproj Upgrade FreeSO to .NET 9.0 (#283) 2025-09-28 21:33:39 +01:00
IDatabaseService.cs Add Property Select EOD 2024-11-14 21:49:38 +00:00