summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore3
-rw-r--r--build/0Harmony.dllbin0 -> 115200 bytes
-rw-r--r--build/common.targets3
-rw-r--r--docs/release-notes.md48
-rw-r--r--docs/technical/smapi.md34
-rw-r--r--docs/technical/web.md35
-rw-r--r--src/SMAPI.Installer/InteractiveInstaller.cs40
-rw-r--r--src/SMAPI.Installer/SMAPI.Installer.csproj8
-rw-r--r--src/SMAPI.ModBuildConfig.Analyzer.Tests/SMAPI.ModBuildConfig.Analyzer.Tests.csproj2
-rw-r--r--src/SMAPI.ModBuildConfig.Analyzer/SMAPI.ModBuildConfig.Analyzer.csproj4
-rw-r--r--src/SMAPI.ModBuildConfig/DeployModTask.cs27
-rw-r--r--src/SMAPI.ModBuildConfig/SMAPI.ModBuildConfig.csproj25
-rw-r--r--src/SMAPI.ModBuildConfig/build/smapi.targets56
-rw-r--r--src/SMAPI.Mods.ConsoleCommands/SMAPI.Mods.ConsoleCommands.csproj47
-rw-r--r--src/SMAPI.Mods.ConsoleCommands/manifest.json4
-rw-r--r--src/SMAPI.Mods.SaveBackup/SMAPI.Mods.SaveBackup.csproj16
-rw-r--r--src/SMAPI.Mods.SaveBackup/manifest.json4
-rw-r--r--src/SMAPI.Tests/SMAPI.Tests.csproj2
-rw-r--r--src/SMAPI.Toolkit.CoreInterfaces/SMAPI.Toolkit.CoreInterfaces.csproj6
-rw-r--r--src/SMAPI.Toolkit/Framework/Clients/WebApi/WebApiClient.cs17
-rw-r--r--src/SMAPI.Toolkit/Framework/Clients/Wiki/WikiClient.cs2
-rw-r--r--src/SMAPI.Toolkit/Framework/Clients/Wiki/WikiCompatibilityStatus.cs17
-rw-r--r--src/SMAPI.Toolkit/Framework/Clients/Wiki/WikiModEntry.cs3
-rw-r--r--src/SMAPI.Toolkit/Framework/GameScanning/GameScanner.cs4
-rw-r--r--src/SMAPI.Toolkit/Framework/ModScanning/ModScanner.cs2
-rw-r--r--src/SMAPI.Toolkit/Framework/UpdateData/ModSiteKey.cs (renamed from src/SMAPI.Toolkit/Framework/UpdateData/ModRepositoryKey.cs)4
-rw-r--r--src/SMAPI.Toolkit/Framework/UpdateData/UpdateKey.cs96
-rw-r--r--src/SMAPI.Toolkit/ModToolkit.cs3
-rw-r--r--src/SMAPI.Toolkit/Properties/AssemblyInfo.cs4
-rw-r--r--src/SMAPI.Toolkit/SMAPI.Toolkit.csproj9
-rw-r--r--src/SMAPI.Toolkit/Utilities/EnvironmentUtility.cs5
-rw-r--r--src/SMAPI.Web.LegacyRedirects/Controllers/ModsApiController.cs33
-rw-r--r--src/SMAPI.Web.LegacyRedirects/Framework/LambdaRewriteRule.cs37
-rw-r--r--src/SMAPI.Web.LegacyRedirects/Program.cs23
-rw-r--r--src/SMAPI.Web.LegacyRedirects/Properties/launchSettings.json29
-rw-r--r--src/SMAPI.Web.LegacyRedirects/SMAPI.Web.LegacyRedirects.csproj21
-rw-r--r--src/SMAPI.Web/BackgroundService.cs7
-rw-r--r--src/SMAPI.Web/Controllers/JsonValidatorController.cs62
-rw-r--r--src/SMAPI.Web/Controllers/ModsApiController.cs225
-rw-r--r--src/SMAPI.Web/Controllers/ModsController.cs9
-rw-r--r--src/SMAPI.Web/Framework/Caching/Cached.cs37
-rw-r--r--src/SMAPI.Web/Framework/Caching/Mods/CachedMod.cs107
-rw-r--r--src/SMAPI.Web/Framework/Caching/Mods/IModCacheRepository.cs9
-rw-r--r--src/SMAPI.Web/Framework/Caching/Mods/ModCacheMemoryRepository.cs81
-rw-r--r--src/SMAPI.Web/Framework/Caching/Mods/ModCacheRepository.cs104
-rw-r--r--src/SMAPI.Web/Framework/Caching/UtcDateTimeOffsetSerializer.cs40
-rw-r--r--src/SMAPI.Web/Framework/Caching/Wiki/CachedWikiMod.cs230
-rw-r--r--src/SMAPI.Web/Framework/Caching/Wiki/IWikiCacheRepository.cs11
-rw-r--r--src/SMAPI.Web/Framework/Caching/Wiki/WikiCacheMemoryRepository.cs53
-rw-r--r--src/SMAPI.Web/Framework/Caching/Wiki/WikiCacheRepository.cs73
-rw-r--r--src/SMAPI.Web/Framework/Caching/Wiki/WikiMetadata.cs (renamed from src/SMAPI.Web/Framework/Caching/Wiki/CachedWikiMetadata.cs)18
-rw-r--r--src/SMAPI.Web/Framework/Clients/Chucklefish/ChucklefishClient.cs38
-rw-r--r--src/SMAPI.Web/Framework/Clients/Chucklefish/ChucklefishMod.cs18
-rw-r--r--src/SMAPI.Web/Framework/Clients/Chucklefish/IChucklefishClient.cs12
-rw-r--r--src/SMAPI.Web/Framework/Clients/CurseForge/CurseForgeClient.cs73
-rw-r--r--src/SMAPI.Web/Framework/Clients/CurseForge/CurseForgeMod.cs23
-rw-r--r--src/SMAPI.Web/Framework/Clients/CurseForge/ICurseForgeClient.cs12
-rw-r--r--src/SMAPI.Web/Framework/Clients/GenericModDownload.cs36
-rw-r--r--src/SMAPI.Web/Framework/Clients/GenericModPage.cs79
-rw-r--r--src/SMAPI.Web/Framework/Clients/GitHub/GitHubClient.cs56
-rw-r--r--src/SMAPI.Web/Framework/Clients/GitHub/IGitHubClient.cs2
-rw-r--r--src/SMAPI.Web/Framework/Clients/IModSiteClient.cs23
-rw-r--r--src/SMAPI.Web/Framework/Clients/ModDrop/IModDropClient.cs12
-rw-r--r--src/SMAPI.Web/Framework/Clients/ModDrop/ModDropClient.cs63
-rw-r--r--src/SMAPI.Web/Framework/Clients/ModDrop/ModDropMod.cs21
-rw-r--r--src/SMAPI.Web/Framework/Clients/ModDrop/ResponseModels/FileDataModel.cs16
-rw-r--r--src/SMAPI.Web/Framework/Clients/Nexus/INexusClient.cs12
-rw-r--r--src/SMAPI.Web/Framework/Clients/Nexus/NexusClient.cs94
-rw-r--r--src/SMAPI.Web/Framework/Clients/Nexus/ResponseModels/NexusMod.cs (renamed from src/SMAPI.Web/Framework/Clients/Nexus/NexusMod.cs)11
-rw-r--r--src/SMAPI.Web/Framework/Compression/GzipHelper.cs2
-rw-r--r--src/SMAPI.Web/Framework/ConfigModels/MongoDbConfig.cs25
-rw-r--r--src/SMAPI.Web/Framework/Extensions.cs28
-rw-r--r--src/SMAPI.Web/Framework/IModDownload.cs15
-rw-r--r--src/SMAPI.Web/Framework/IModPage.cs52
-rw-r--r--src/SMAPI.Web/Framework/LogParsing/LogParser.cs6
-rw-r--r--src/SMAPI.Web/Framework/ModInfoModel.cs (renamed from src/SMAPI.Web/Framework/ModRepositories/ModInfoModel.cs)29
-rw-r--r--src/SMAPI.Web/Framework/ModRepositories/BaseRepository.cs51
-rw-r--r--src/SMAPI.Web/Framework/ModRepositories/ChucklefishRepository.cs57
-rw-r--r--src/SMAPI.Web/Framework/ModRepositories/CurseForgeRepository.cs63
-rw-r--r--src/SMAPI.Web/Framework/ModRepositories/GitHubRepository.cs82
-rw-r--r--src/SMAPI.Web/Framework/ModRepositories/IModRepository.cs24
-rw-r--r--src/SMAPI.Web/Framework/ModRepositories/ModDropRepository.cs57
-rw-r--r--src/SMAPI.Web/Framework/ModRepositories/NexusRepository.cs65
-rw-r--r--src/SMAPI.Web/Framework/ModSiteManager.cs194
-rw-r--r--src/SMAPI.Web/Framework/RedirectRules/RedirectHostsToUrlsRule.cs54
-rw-r--r--src/SMAPI.Web/Framework/RedirectRules/RedirectMatchRule.cs58
-rw-r--r--src/SMAPI.Web/Framework/RedirectRules/RedirectPathsToUrlsRule.cs56
-rw-r--r--src/SMAPI.Web/Framework/RedirectRules/RedirectToHttpsRule.cs47
-rw-r--r--src/SMAPI.Web/Framework/RemoteModStatus.cs (renamed from src/SMAPI.Web/Framework/ModRepositories/RemoteModStatus.cs)2
-rw-r--r--src/SMAPI.Web/Framework/RewriteRules/ConditionalRedirectToHttpsRule.cs62
-rw-r--r--src/SMAPI.Web/Framework/RewriteRules/RedirectToUrlRule.cs57
-rw-r--r--src/SMAPI.Web/Program.cs14
-rw-r--r--src/SMAPI.Web/SMAPI.Web.csproj24
-rw-r--r--src/SMAPI.Web/Startup.cs168
-rw-r--r--src/SMAPI.Web/ViewModels/JsonValidator/JsonValidatorModel.cs7
-rw-r--r--src/SMAPI.Web/ViewModels/ModListModel.cs2
-rw-r--r--src/SMAPI.Web/ViewModels/ModModel.cs6
-rw-r--r--src/SMAPI.Web/Views/Index/Index.cshtml2
-rw-r--r--src/SMAPI.Web/Views/JsonValidator/Index.cshtml13
-rw-r--r--src/SMAPI.Web/Views/LogParser/Index.cshtml18
-rw-r--r--src/SMAPI.Web/Views/Mods/Index.cshtml34
-rw-r--r--src/SMAPI.Web/Views/Shared/_Layout.cshtml2
-rw-r--r--src/SMAPI.Web/appsettings.Development.json5
-rw-r--r--src/SMAPI.Web/appsettings.json5
-rw-r--r--src/SMAPI.Web/wwwroot/Content/css/mods.css4
-rw-r--r--src/SMAPI.Web/wwwroot/Content/js/mods.js2
-rw-r--r--src/SMAPI.Web/wwwroot/schemas/content-patcher.json4
-rw-r--r--src/SMAPI.Web/wwwroot/schemas/i18n.json24
-rw-r--r--src/SMAPI.sln6
-rw-r--r--src/SMAPI.sln.DotSettings1
-rw-r--r--src/SMAPI/Constants.cs10
-rw-r--r--src/SMAPI/Events/EventPriority.cs15
-rw-r--r--src/SMAPI/Events/EventPriorityAttribute.cs26
-rw-r--r--src/SMAPI/Events/IMultiplayerEvents.cs5
-rw-r--r--src/SMAPI/Events/PeerConnectedEventArgs.cs25
-rw-r--r--src/SMAPI/Framework/CommandManager.cs13
-rw-r--r--src/SMAPI/Framework/Commands/HarmonySummaryCommand.cs202
-rw-r--r--src/SMAPI/Framework/Commands/HelpCommand.cs64
-rw-r--r--src/SMAPI/Framework/Commands/IInternalCommand.cs24
-rw-r--r--src/SMAPI/Framework/Commands/ReloadI18nCommand.cs44
-rw-r--r--src/SMAPI/Framework/ContentManagers/ModContentManager.cs5
-rw-r--r--src/SMAPI/Framework/Events/EventManager.cs11
-rw-r--r--src/SMAPI/Framework/Events/ManagedEvent.cs151
-rw-r--r--src/SMAPI/Framework/Events/ManagedEventHandler.cs56
-rw-r--r--src/SMAPI/Framework/Events/ModDisplayEvents.cs20
-rw-r--r--src/SMAPI/Framework/Events/ModGameLoopEvents.cs28
-rw-r--r--src/SMAPI/Framework/Events/ModInputEvents.cs8
-rw-r--r--src/SMAPI/Framework/Events/ModMultiplayerEvents.cs15
-rw-r--r--src/SMAPI/Framework/Events/ModPlayerEvents.cs6
-rw-r--r--src/SMAPI/Framework/Events/ModSpecialisedEvents.cs6
-rw-r--r--src/SMAPI/Framework/Events/ModWorldEvents.cs8
-rw-r--r--src/SMAPI/Framework/IModMetadata.cs6