diff --git a/.github/workflows/BuildOnTestBranch.yml b/.github/workflows/BuildOnTestBranch.yml new file mode 100644 index 0000000..3a11f66 --- /dev/null +++ b/.github/workflows/BuildOnTestBranch.yml @@ -0,0 +1,36 @@ +name: Build test branch + +on: + push: + branches: [test] + +jobs: + docker: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + submodules: 'true' + - name: Install dotnet tool + run: dotnet tool install -g dotnetCampus.TagToVersion + - name: Set tag to version + run: dotnet TagToVersion -t 0.0.1 + - name: Sign in to Nuget + run: dotnet nuget add source --username michael-j-green --password ${{ secrets.NUGETKEY }} --store-password-in-clear-text --name github "https://nuget.pkg.github.com/gaseous-project/index.json" + - name: Set up QEMU + uses: docker/setup-qemu-action@v3 + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + - name: Login to Docker Hub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + - name: Build and push + uses: docker/build-push-action@v5 + with: + context: . + platforms: linux/amd64,linux/arm64 + push: true + tags: gaseousgames/test:latest diff --git a/.github/workflows/dotnet.yml b/.github/workflows/dotnet.yml index c051f59..4c4d1bc 100644 --- a/.github/workflows/dotnet.yml +++ b/.github/workflows/dotnet.yml @@ -15,7 +15,7 @@ jobs: - name: Setup .NET uses: actions/setup-dotnet@v1 with: - dotnet-version: 7.0.x + dotnet-version: 8.0.x - name: Sign in to Nuget run: dotnet nuget add source --username michael-j-green --password ${{ secrets.NUGETKEY }} --store-password-in-clear-text --name github "https://nuget.pkg.github.com/gaseous-project/index.json" - name: Restore dependencies diff --git a/.vscode/launch.json b/.vscode/launch.json index 6d9f542..82476c1 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -10,14 +10,14 @@ "request": "launch", "preLaunchTask": "build", // If you have changed target frameworks, make sure to update the program path. - "program": "${workspaceFolder}/gaseous-server/bin/Debug/net7.0/gaseous-server.dll", + "program": "${workspaceFolder}/gaseous-server/bin/Debug/net8.0/gaseous-server.dll", "args": [], "cwd": "${workspaceFolder}/gaseous-server", "stopAtEntry": false, // Enable launching a web browser when ASP.NET Core starts. For more information: https://aka.ms/VSCode-CS-LaunchJson-WebBrowser "serverReadyAction": { "action": "openExternally", - "pattern": "\\bNow listening on:\\s+(https?://\\S+)" + "pattern": "\\bNow listening on:\\s+(http?://\\S+)" }, "env": { "ASPNETCORE_ENVIRONMENT": "Development" diff --git a/Dockerfile b/Dockerfile index 9a45994..90fb6a2 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,13 +1,18 @@ -FROM mcr.microsoft.com/dotnet/sdk:7.0 AS build-env +FROM --platform=$BUILDPLATFORM mcr.microsoft.com/dotnet/sdk:8.0 AS build-env +ARG TARGETARCH +ARG BUILDPLATFORM WORKDIR /App EXPOSE 80 +RUN echo "Target: $TARGETARCH" +RUN echo "Build: $BUILDPLATFORM" + # Copy everything COPY . ./ # Restore as distinct layers -RUN dotnet restore "gaseous-server/gaseous-server.csproj" +RUN dotnet restore "gaseous-server/gaseous-server.csproj" -a $TARGETARCH # Build and publish a release -RUN dotnet publish "gaseous-server/gaseous-server.csproj" --use-current-runtime --self-contained false -c Release -o out +RUN dotnet publish "gaseous-server/gaseous-server.csproj" --use-current-runtime --self-contained true -c Release -o out -a $TARGETARCH # download and unzip EmulatorJS from CDN RUN apt-get update && apt-get install -y p7zip-full @@ -16,7 +21,7 @@ RUN wget https://cdn.emulatorjs.org/releases/4.0.9.7z RUN 7z x -y -oout/wwwroot/emulators/EmulatorJS 4.0.9.7z # Build runtime image -FROM mcr.microsoft.com/dotnet/aspnet:7.0 +FROM mcr.microsoft.com/dotnet/aspnet:8.0 WORKDIR /App COPY --from=build-env /App/out . ENTRYPOINT ["dotnet", "gaseous-server.dll"] diff --git a/Gaseous.sln b/Gaseous.sln index cca272b..8b88e80 100644 --- a/Gaseous.sln +++ b/Gaseous.sln @@ -1,9 +1,9 @@ - + Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio Version 16 VisualStudioVersion = 25.0.1704.4 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "gaseous-server", "gaseous-server\gaseous-server.csproj", "{A01D2EFF-C82E-473B-84D7-7C25E736F5D2}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "gaseous-server", "gaseous-server\gaseous-server.csproj", "{A01D2EFF-C82E-473B-84D7-7C25E736F5D2}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{17FA6F12-8532-420C-9489-CB8FDE42137C}" ProjectSection(SolutionItems) = preProject diff --git a/gaseous-server/Classes/Metadata/Collections.cs b/gaseous-server/Classes/Metadata/Collections.cs index f59fc1d..0531850 100644 --- a/gaseous-server/Classes/Metadata/Collections.cs +++ b/gaseous-server/Classes/Metadata/Collections.cs @@ -7,7 +7,7 @@ namespace gaseous_server.Classes.Metadata { public class Collections { - const string fieldList = "fields checksum,created_at,games,name,slug,updated_at,url;"; + const string fieldList = "fields as_child_relations,as_parent_relations,checksum,created_at,games,name,slug,type,updated_at,url;"; public Collections() { diff --git a/gaseous-server/Classes/Metadata/Covers.cs b/gaseous-server/Classes/Metadata/Covers.cs index df56a35..08d22c3 100644 --- a/gaseous-server/Classes/Metadata/Covers.cs +++ b/gaseous-server/Classes/Metadata/Covers.cs @@ -9,7 +9,7 @@ namespace gaseous_server.Classes.Metadata { public class Covers { - const string fieldList = "fields alpha_channel,animated,checksum,game,height,image_id,url,width;"; + const string fieldList = "fields alpha_channel,animated,checksum,game,game_localization,height,image_id,url,width;"; public Covers() { diff --git a/gaseous-server/Classes/Metadata/Games.cs b/gaseous-server/Classes/Metadata/Games.cs index fc0aba9..3212e93 100644 --- a/gaseous-server/Classes/Metadata/Games.cs +++ b/gaseous-server/Classes/Metadata/Games.cs @@ -7,7 +7,7 @@ namespace gaseous_server.Classes.Metadata { public class Games { - const string fieldList = "fields age_ratings,aggregated_rating,aggregated_rating_count,alternative_names,artworks,bundles,category,checksum,collection,cover,created_at,dlcs,expanded_games,expansions,external_games,first_release_date,follows,forks,franchise,franchises,game_engines,game_localizations,game_modes,genres,hypes,involved_companies,keywords,language_supports,multiplayer_modes,name,parent_game,platforms,player_perspectives,ports,rating,rating_count,release_dates,remakes,remasters,screenshots,similar_games,slug,standalone_expansions,status,storyline,summary,tags,themes,total_rating,total_rating_count,updated_at,url,version_parent,version_title,videos,websites;"; + const string fieldList = "fields age_ratings,aggregated_rating,aggregated_rating_count,alternative_names,artworks,bundles,category,checksum,collection,collections,cover,created_at,dlcs,expanded_games,expansions,external_games,first_release_date,follows,forks,franchise,franchises,game_engines,game_localizations,game_modes,genres,hypes,involved_companies,keywords,language_supports,multiplayer_modes,name,parent_game,platforms,player_perspectives,ports,rating,rating_count,release_dates,remakes,remasters,screenshots,similar_games,slug,standalone_expansions,status,storyline,summary,tags,themes,total_rating,total_rating_count,updated_at,url,version_parent,version_title,videos,websites;"; public Games() { diff --git a/gaseous-server/Controllers/V1.0/AccountController.cs b/gaseous-server/Controllers/V1.0/AccountController.cs index eb2249b..e5b3875 100644 --- a/gaseous-server/Controllers/V1.0/AccountController.cs +++ b/gaseous-server/Controllers/V1.0/AccountController.cs @@ -8,6 +8,7 @@ using Microsoft.AspNetCore.Identity; using Microsoft.AspNetCore.Identity.UI.Services; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.Rendering; +using Asp.Versioning; namespace gaseous_server.Controllers { diff --git a/gaseous-server/Controllers/V1.0/BackgroundTasksController.cs b/gaseous-server/Controllers/V1.0/BackgroundTasksController.cs index 877bbd1..73e4351 100644 --- a/gaseous-server/Controllers/V1.0/BackgroundTasksController.cs +++ b/gaseous-server/Controllers/V1.0/BackgroundTasksController.cs @@ -4,6 +4,7 @@ using System.Linq; using System.Threading.Tasks; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; +using Asp.Versioning; namespace gaseous_server.Controllers { diff --git a/gaseous-server/Controllers/V1.0/BiosController.cs b/gaseous-server/Controllers/V1.0/BiosController.cs index 732b2f8..6dc01f8 100644 --- a/gaseous-server/Controllers/V1.0/BiosController.cs +++ b/gaseous-server/Controllers/V1.0/BiosController.cs @@ -6,6 +6,7 @@ using System.Threading.Tasks; using gaseous_server.Classes; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; +using Asp.Versioning; namespace gaseous_server.Controllers { diff --git a/gaseous-server/Controllers/V1.0/CollectionsController.cs b/gaseous-server/Controllers/V1.0/CollectionsController.cs index 6a67307..a5abb8a 100644 --- a/gaseous-server/Controllers/V1.0/CollectionsController.cs +++ b/gaseous-server/Controllers/V1.0/CollectionsController.cs @@ -8,6 +8,7 @@ using gaseous_server.Classes; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Identity; using Microsoft.AspNetCore.Mvc; +using Asp.Versioning; namespace gaseous_server.Controllers { diff --git a/gaseous-server/Controllers/V1.0/FilterController.cs b/gaseous-server/Controllers/V1.0/FilterController.cs index ad25624..30a54b0 100644 --- a/gaseous-server/Controllers/V1.0/FilterController.cs +++ b/gaseous-server/Controllers/V1.0/FilterController.cs @@ -10,6 +10,7 @@ using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Identity; using Microsoft.AspNetCore.Mvc; +using Asp.Versioning; namespace gaseous_server.Controllers { diff --git a/gaseous-server/Controllers/V1.0/GamesController.cs b/gaseous-server/Controllers/V1.0/GamesController.cs index df14fbd..b1067b3 100644 --- a/gaseous-server/Controllers/V1.0/GamesController.cs +++ b/gaseous-server/Controllers/V1.0/GamesController.cs @@ -17,6 +17,7 @@ using Microsoft.AspNetCore.Identity; using Microsoft.AspNetCore.Mvc; using Microsoft.CodeAnalysis.Scripting; using static gaseous_server.Classes.Metadata.AgeRatings; +using Asp.Versioning; namespace gaseous_server.Controllers { diff --git a/gaseous-server/Controllers/V1.0/LibraryController.cs b/gaseous-server/Controllers/V1.0/LibraryController.cs index fe5981e..59211f1 100644 --- a/gaseous-server/Controllers/V1.0/LibraryController.cs +++ b/gaseous-server/Controllers/V1.0/LibraryController.cs @@ -5,6 +5,7 @@ using System.Linq; using System.Threading.Tasks; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; +using Asp.Versioning; namespace gaseous_server.Controllers { diff --git a/gaseous-server/Controllers/V1.0/LogsController.cs b/gaseous-server/Controllers/V1.0/LogsController.cs index d0e2220..172bc20 100644 --- a/gaseous-server/Controllers/V1.0/LogsController.cs +++ b/gaseous-server/Controllers/V1.0/LogsController.cs @@ -5,6 +5,7 @@ using System.Threading.Tasks; using gaseous_server.Classes; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; +using Asp.Versioning; namespace gaseous_server.Controllers { diff --git a/gaseous-server/Controllers/V1.0/PlatformMapsController.cs b/gaseous-server/Controllers/V1.0/PlatformMapsController.cs index 18304a3..2e48460 100644 --- a/gaseous-server/Controllers/V1.0/PlatformMapsController.cs +++ b/gaseous-server/Controllers/V1.0/PlatformMapsController.cs @@ -14,6 +14,7 @@ using Microsoft.AspNetCore.Mvc; using Microsoft.CodeAnalysis.Scripting; using Microsoft.AspNetCore.Authorization; using System.Text; +using Asp.Versioning; namespace gaseous_server.Controllers { diff --git a/gaseous-server/Controllers/V1.0/PlatformsController.cs b/gaseous-server/Controllers/V1.0/PlatformsController.cs index 2cd370e..d91236c 100644 --- a/gaseous-server/Controllers/V1.0/PlatformsController.cs +++ b/gaseous-server/Controllers/V1.0/PlatformsController.cs @@ -13,6 +13,7 @@ using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Microsoft.CodeAnalysis.Scripting; +using Asp.Versioning; namespace gaseous_server.Controllers { diff --git a/gaseous-server/Controllers/V1.0/RomsController.cs b/gaseous-server/Controllers/V1.0/RomsController.cs index 792df54..a6fe557 100644 --- a/gaseous-server/Controllers/V1.0/RomsController.cs +++ b/gaseous-server/Controllers/V1.0/RomsController.cs @@ -14,6 +14,7 @@ using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Microsoft.CodeAnalysis.Scripting; using static gaseous_server.Classes.Metadata.AgeRatings; +using Asp.Versioning; namespace gaseous_server.Controllers { diff --git a/gaseous-server/Controllers/V1.0/SearchController.cs b/gaseous-server/Controllers/V1.0/SearchController.cs index 8db4e5b..a476688 100644 --- a/gaseous-server/Controllers/V1.0/SearchController.cs +++ b/gaseous-server/Controllers/V1.0/SearchController.cs @@ -12,7 +12,7 @@ using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using NuGet.Common; using static gaseous_server.Classes.Metadata.Games; - +using Asp.Versioning; namespace gaseous_server.Controllers { diff --git a/gaseous-server/Controllers/V1.0/SignaturesController.cs b/gaseous-server/Controllers/V1.0/SignaturesController.cs index 9cb7046..2d85377 100644 --- a/gaseous-server/Controllers/V1.0/SignaturesController.cs +++ b/gaseous-server/Controllers/V1.0/SignaturesController.cs @@ -8,6 +8,7 @@ using gaseous_server.Classes; using gaseous_signature_parser.models.RomSignatureObject; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; +using Asp.Versioning; // For more information on enabling MVC for empty projects, visit https://go.microsoft.com/fwlink/?LinkID=397860 diff --git a/gaseous-server/Controllers/V1.0/SystemController.cs b/gaseous-server/Controllers/V1.0/SystemController.cs index 09657fc..e7d95cf 100644 --- a/gaseous-server/Controllers/V1.0/SystemController.cs +++ b/gaseous-server/Controllers/V1.0/SystemController.cs @@ -13,6 +13,7 @@ using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Razor.Hosting; using RestEase; +using Asp.Versioning; namespace gaseous_server.Controllers { diff --git a/gaseous-server/Controllers/V1.1/FirstSetupController.cs b/gaseous-server/Controllers/V1.1/FirstSetupController.cs index a8ae898..3b88c67 100644 --- a/gaseous-server/Controllers/V1.1/FirstSetupController.cs +++ b/gaseous-server/Controllers/V1.1/FirstSetupController.cs @@ -12,6 +12,7 @@ using gaseous_server.Classes.Metadata; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Identity; using Microsoft.AspNetCore.Mvc; +using Asp.Versioning; namespace gaseous_server.Controllers { diff --git a/gaseous-server/Controllers/V1.1/GamesController.cs b/gaseous-server/Controllers/V1.1/GamesController.cs index 979da2b..ea73046 100644 --- a/gaseous-server/Controllers/V1.1/GamesController.cs +++ b/gaseous-server/Controllers/V1.1/GamesController.cs @@ -17,6 +17,7 @@ using Microsoft.AspNetCore.Mvc; using Microsoft.CodeAnalysis.CSharp.Syntax; using Microsoft.CodeAnalysis.Scripting; using static gaseous_server.Classes.Metadata.AgeRatings; +using Asp.Versioning; namespace gaseous_server.Controllers.v1_1 { diff --git a/gaseous-server/Controllers/V1.1/RatingsController.cs b/gaseous-server/Controllers/V1.1/RatingsController.cs index d02355d..845b3b6 100644 --- a/gaseous-server/Controllers/V1.1/RatingsController.cs +++ b/gaseous-server/Controllers/V1.1/RatingsController.cs @@ -14,6 +14,7 @@ using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Microsoft.CodeAnalysis.Scripting; using static gaseous_server.Classes.Metadata.AgeRatings; +using Asp.Versioning; namespace gaseous_server.Controllers.v1_1 { diff --git a/gaseous-server/Controllers/V1.1/StateManagerController.cs b/gaseous-server/Controllers/V1.1/StateManagerController.cs index 37398e0..db47d7e 100644 --- a/gaseous-server/Controllers/V1.1/StateManagerController.cs +++ b/gaseous-server/Controllers/V1.1/StateManagerController.cs @@ -5,6 +5,7 @@ using gaseous_server.Classes; using Authentication; using Microsoft.AspNetCore.Identity; using System.Data; +using Asp.Versioning; namespace gaseous_server.Controllers.v1_1 { diff --git a/gaseous-server/Program.cs b/gaseous-server/Program.cs index 62b13e3..02db4a2 100644 --- a/gaseous-server/Program.cs +++ b/gaseous-server/Program.cs @@ -3,18 +3,14 @@ using System.Text.Json.Serialization; using gaseous_server; using gaseous_server.Classes; using gaseous_server.Models; -using gaseous_server.SignatureIngestors.XML; using Microsoft.AspNetCore.Http.Features; using Microsoft.AspNetCore.Mvc; -using Microsoft.AspNetCore.Mvc.Versioning; -using Microsoft.Extensions.DependencyInjection; using Microsoft.AspNetCore.Server.Kestrel.Core; using Microsoft.OpenApi.Models; using Authentication; using Microsoft.AspNetCore.Identity; -using Microsoft.AspNetCore.Identity.UI.Services; -using IGDB.Models; using gaseous_server.Classes.Metadata; +using Asp.Versioning; Logging.WriteToDiskOnly = true; Logging.Log(Logging.LogType.Information, "Startup", "Starting Gaseous Server " + Assembly.GetExecutingAssembly().GetName().Version); @@ -131,12 +127,7 @@ builder.Services.AddApiVersioning(config => config.ApiVersionReader = ApiVersionReader.Combine(new UrlSegmentApiVersionReader(), new HeaderApiVersionReader("x-api-version"), new MediaTypeApiVersionReader("x-api-version")); -}); -// builder.Services.AddApiVersioning(setup => -// { -// setup.ApiVersionReader = new UrlSegmentApiVersionReader(); -// }); -builder.Services.AddVersionedApiExplorer(setup => +}).AddApiExplorer(setup => { setup.GroupNameFormat = "'v'VVV"; setup.SubstituteApiVersionInUrl = true; @@ -233,15 +224,6 @@ builder.Services.ConfigureApplicationCookie(options => options.Cookie.SecurePolicy = CookieSecurePolicy.SameAsRequest; options.Cookie.SameSite = SameSiteMode.Strict; }); -// builder.Services.AddIdentityCore(options => { -// options.SignIn.RequireConfirmedAccount = false; -// options.User.RequireUniqueEmail = true; -// options.Password.RequireDigit = false; -// options.Password.RequiredLength = 10; -// options.Password.RequireNonAlphanumeric = false; -// options.Password.RequireUppercase = false; -// options.Password.RequireLowercase = false; -// }); builder.Services.AddScoped(); builder.Services.AddScoped(); @@ -268,8 +250,16 @@ var app = builder.Build(); app.UseSwagger(); app.UseSwaggerUI(options => { - options.SwaggerEndpoint($"/swagger/v1/swagger.json", "v1.0"); - options.SwaggerEndpoint($"/swagger/v1.1/swagger.json", "v1.1"); + // options.SwaggerEndpoint($"/swagger/v1/swagger.json", "v1.0"); + // options.SwaggerEndpoint($"/swagger/v1.1/swagger.json", "v1.1"); + + var descriptions = app.DescribeApiVersions(); + foreach (var description in descriptions) + { + var url = $"/swagger/{description.GroupName}/swagger.json"; + var name = description.GroupName.ToUpperInvariant(); + options.SwaggerEndpoint(url, name); + } } ); //} diff --git a/gaseous-server/Properties/launchSettings.json b/gaseous-server/Properties/launchSettings.json index 6cb3fd1..c2f42eb 100644 --- a/gaseous-server/Properties/launchSettings.json +++ b/gaseous-server/Properties/launchSettings.json @@ -1,41 +1,15 @@ { "$schema": "https://json.schemastore.org/launchsettings.json", - "iisSettings": { - "windowsAuthentication": false, - "anonymousAuthentication": true, - "iisExpress": { - "applicationUrl": "http://localhost:38715", - "sslPort": 44314 - } - }, "profiles": { "http": { "commandName": "Project", "launchBrowser": true, - "launchUrl": "swagger", + "launchUrl": "/", "applicationUrl": "http://localhost:5198", "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development" }, "dotnetRunMessages": true - }, - "https": { - "commandName": "Project", - "launchBrowser": true, - "launchUrl": "swagger", - "applicationUrl": "https://localhost:7282;http://localhost:5198", - "environmentVariables": { - "ASPNETCORE_ENVIRONMENT": "Development" - }, - "dotnetRunMessages": true - }, - "IIS Express": { - "commandName": "IISExpress", - "launchBrowser": true, - "launchUrl": "swagger", - "environmentVariables": { - "ASPNETCORE_ENVIRONMENT": "Development" - } } } } \ No newline at end of file diff --git a/gaseous-server/Support/Database/MySQL/gaseous-1018.sql b/gaseous-server/Support/Database/MySQL/gaseous-1018.sql new file mode 100644 index 0000000..84447db --- /dev/null +++ b/gaseous-server/Support/Database/MySQL/gaseous-1018.sql @@ -0,0 +1,17 @@ +ALTER TABLE `Collection` +ADD COLUMN `AsParentRelations` LONGTEXT NULL AFTER `Id`, +ADD COLUMN `AsChildRelations` LONGTEXT NULL AFTER `AsParentRelations`, +ADD COLUMN `Type` INT NULL AFTER `UpdatedAt`; + +ALTER TABLE `Cover` +ADD COLUMN `GameLocalization` BIGINT NULL AFTER `Game`; + +ALTER TABLE `Game` +ADD COLUMN `Collections` LONGTEXT NULL AFTER `Collection`, +ADD COLUMN `ExpandedGames` LONGTEXT NULL AFTER `Dlcs`, +ADD COLUMN `Forks` LONGTEXT NULL AFTER `Follows`, +ADD COLUMN `GameLocalizations` LONGTEXT NULL AFTER `GameEngines`, +ADD COLUMN `LanguageSupports` LONGTEXT NULL AFTER `Keywords`, +ADD COLUMN `Ports` LONGTEXT NULL AFTER `PlayerPerspectives`, +ADD COLUMN `Remakes` LONGTEXT NULL AFTER `ReleaseDates`, +ADD COLUMN `Remasters` LONGTEXT NULL AFTER `Remakes`; \ No newline at end of file diff --git a/gaseous-server/gaseous-server.csproj b/gaseous-server/gaseous-server.csproj index 64213be..fed46b3 100644 --- a/gaseous-server/gaseous-server.csproj +++ b/gaseous-server/gaseous-server.csproj @@ -1,12 +1,10 @@ - - net7.0 + net8.0 enable enable gaseous_server - @@ -18,23 +16,22 @@ bin\Release\net7.0\gaseous-server.xml - - - + + + + + - - - - - - + - + + + + - @@ -62,6 +59,7 @@ + @@ -75,7 +73,7 @@ - PreserveNewest + PreserveNewest @@ -101,5 +99,6 @@ + - + \ No newline at end of file diff --git a/gaseous-server/wwwroot/pages/settings/about.html b/gaseous-server/wwwroot/pages/settings/about.html index d347977..d1b52f5 100644 --- a/gaseous-server/wwwroot/pages/settings/about.html +++ b/gaseous-server/wwwroot/pages/settings/about.html @@ -77,7 +77,11 @@