summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesse Plamondon-Willard <Pathoschild@users.noreply.github.com>2019-09-13 18:24:54 -0400
committerJesse Plamondon-Willard <Pathoschild@users.noreply.github.com>2019-09-13 18:24:54 -0400
commit6521df7b131924835eb797251c1e956fae0d6e13 (patch)
treeb704dc64b6b6fef72615bac8950d5eff3c80ea89
parente22a54212182d0adc443ac95bc791e83c90f7e10 (diff)
parentb7b8b001c5c2dc5d2c9fc1347532ca29368c2325 (diff)
downloadSMAPI-6521df7b131924835eb797251c1e956fae0d6e13.tar.gz
SMAPI-6521df7b131924835eb797251c1e956fae0d6e13.tar.bz2
SMAPI-6521df7b131924835eb797251c1e956fae0d6e13.zip
Merge branch 'develop' into stable
-rw-r--r--.editorconfig6
-rw-r--r--.gitattributes1
-rw-r--r--.github/FUNDING.yml3
-rw-r--r--.gitignore3
-rw-r--r--build/GlobalAssemblyInfo.cs4
-rw-r--r--build/common.targets9
-rw-r--r--build/prepare-install-package.targets15
-rw-r--r--build/prepare-nuget-package.targets2
-rw-r--r--docs/release-notes.md29
-rw-r--r--src/SMAPI.Installer/StardewModdingAPI.Installer.csproj75
-rw-r--r--src/SMAPI.ModBuildConfig.Analyzer.Tests/SMAPI.ModBuildConfig.Analyzer.Tests.csproj2
-rw-r--r--src/SMAPI.ModBuildConfig.Analyzer/StardewModdingAPI.ModBuildConfig.Analyzer.csproj6
-rw-r--r--src/SMAPI.ModBuildConfig/StardewModdingAPI.ModBuildConfig.csproj79
-rw-r--r--src/SMAPI.Mods.ConsoleCommands/ModEntry.cs1
-rw-r--r--src/SMAPI.Mods.ConsoleCommands/StardewModdingAPI.Mods.ConsoleCommands.csproj92
-rw-r--r--src/SMAPI.Mods.ConsoleCommands/manifest.json14
-rw-r--r--src/SMAPI.Mods.SaveBackup/ModEntry.cs6
-rw-r--r--src/SMAPI.Mods.SaveBackup/StardewModdingAPI.Mods.SaveBackup.csproj63
-rw-r--r--src/SMAPI.Mods.SaveBackup/manifest.json14
-rw-r--r--src/SMAPI.Tests/StardewModdingAPI.Tests.csproj74
-rw-r--r--src/SMAPI.Toolkit.CoreInterfaces/IManifest.cs (renamed from src/StardewModdingAPI.Toolkit.CoreInterfaces/IManifest.cs)0
-rw-r--r--src/SMAPI.Toolkit.CoreInterfaces/IManifestContentPackFor.cs (renamed from src/StardewModdingAPI.Toolkit.CoreInterfaces/IManifestContentPackFor.cs)0
-rw-r--r--src/SMAPI.Toolkit.CoreInterfaces/IManifestDependency.cs (renamed from src/StardewModdingAPI.Toolkit.CoreInterfaces/IManifestDependency.cs)0
-rw-r--r--src/SMAPI.Toolkit.CoreInterfaces/ISemanticVersion.cs (renamed from src/StardewModdingAPI.Toolkit.CoreInterfaces/ISemanticVersion.cs)0
-rw-r--r--src/SMAPI.Toolkit.CoreInterfaces/Properties/AssemblyInfo.cs (renamed from src/StardewModdingAPI.Toolkit.CoreInterfaces/Properties/AssemblyInfo.cs)0
-rw-r--r--src/SMAPI.Toolkit.CoreInterfaces/StardewModdingAPI.Toolkit.CoreInterfaces.csproj (renamed from src/StardewModdingAPI.Toolkit.CoreInterfaces/StardewModdingAPI.Toolkit.CoreInterfaces.csproj)2
-rw-r--r--src/SMAPI.Toolkit/Framework/Clients/WebApi/ModEntryModel.cs (renamed from src/StardewModdingAPI.Toolkit/Framework/Clients/WebApi/ModEntryModel.cs)0
-rw-r--r--src/SMAPI.Toolkit/Framework/Clients/WebApi/ModEntryVersionModel.cs (renamed from src/StardewModdingAPI.Toolkit/Framework/Clients/WebApi/ModEntryVersionModel.cs)0
-rw-r--r--src/SMAPI.Toolkit/Framework/Clients/WebApi/ModExtendedMetadataModel.cs (renamed from src/StardewModdingAPI.Toolkit/Framework/Clients/WebApi/ModExtendedMetadataModel.cs)19
-rw-r--r--src/SMAPI.Toolkit/Framework/Clients/WebApi/ModSeachModel.cs (renamed from src/StardewModdingAPI.Toolkit/Framework/Clients/WebApi/ModSeachModel.cs)0
-rw-r--r--src/SMAPI.Toolkit/Framework/Clients/WebApi/ModSearchEntryModel.cs (renamed from src/StardewModdingAPI.Toolkit/Framework/Clients/WebApi/ModSearchEntryModel.cs)0
-rw-r--r--src/SMAPI.Toolkit/Framework/Clients/WebApi/WebApiClient.cs (renamed from src/StardewModdingAPI.Toolkit/Framework/Clients/WebApi/WebApiClient.cs)0
-rw-r--r--src/SMAPI.Toolkit/Framework/Clients/Wiki/WikiClient.cs (renamed from src/StardewModdingAPI.Toolkit/Framework/Clients/Wiki/WikiClient.cs)6
-rw-r--r--src/SMAPI.Toolkit/Framework/Clients/Wiki/WikiCompatibilityInfo.cs (renamed from src/StardewModdingAPI.Toolkit/Framework/Clients/Wiki/WikiCompatibilityInfo.cs)0
-rw-r--r--src/SMAPI.Toolkit/Framework/Clients/Wiki/WikiCompatibilityStatus.cs (renamed from src/StardewModdingAPI.Toolkit/Framework/Clients/Wiki/WikiCompatibilityStatus.cs)0
-rw-r--r--src/SMAPI.Toolkit/Framework/Clients/Wiki/WikiModEntry.cs (renamed from src/StardewModdingAPI.Toolkit/Framework/Clients/Wiki/WikiModEntry.cs)6
-rw-r--r--src/SMAPI.Toolkit/Framework/Clients/Wiki/WikiModList.cs (renamed from src/StardewModdingAPI.Toolkit/Framework/Clients/Wiki/WikiModList.cs)0
-rw-r--r--src/SMAPI.Toolkit/Framework/ModData/MetadataModel.cs (renamed from src/StardewModdingAPI.Toolkit/Framework/ModData/MetadataModel.cs)0
-rw-r--r--src/SMAPI.Toolkit/Framework/ModData/ModDataField.cs (renamed from src/StardewModdingAPI.Toolkit/Framework/ModData/ModDataField.cs)0
-rw-r--r--src/SMAPI.Toolkit/Framework/ModData/ModDataFieldKey.cs (renamed from src/StardewModdingAPI.Toolkit/Framework/ModData/ModDataFieldKey.cs)0
-rw-r--r--src/SMAPI.Toolkit/Framework/ModData/ModDataModel.cs (renamed from src/StardewModdingAPI.Toolkit/Framework/ModData/ModDataModel.cs)0
-rw-r--r--src/SMAPI.Toolkit/Framework/ModData/ModDataRecord.cs (renamed from src/StardewModdingAPI.Toolkit/Framework/ModData/ModDataRecord.cs)0
-rw-r--r--src/SMAPI.Toolkit/Framework/ModData/ModDataRecordVersionedFields.cs (renamed from src/StardewModdingAPI.Toolkit/Framework/ModData/ModDataRecordVersionedFields.cs)0
-rw-r--r--src/SMAPI.Toolkit/Framework/ModData/ModDatabase.cs (renamed from src/StardewModdingAPI.Toolkit/Framework/ModData/ModDatabase.cs)0
-rw-r--r--src/SMAPI.Toolkit/Framework/ModData/ModStatus.cs (renamed from src/StardewModdingAPI.Toolkit/Framework/ModData/ModStatus.cs)0
-rw-r--r--src/SMAPI.Toolkit/Framework/ModData/ModWarning.cs (renamed from src/StardewModdingAPI.Toolkit/Framework/ModData/ModWarning.cs)0
-rw-r--r--src/SMAPI.Toolkit/Framework/ModScanning/ModFolder.cs (renamed from src/StardewModdingAPI.Toolkit/Framework/ModScanning/ModFolder.cs)0
-rw-r--r--src/SMAPI.Toolkit/Framework/ModScanning/ModScanner.cs (renamed from src/StardewModdingAPI.Toolkit/Framework/ModScanning/ModScanner.cs)0
-rw-r--r--src/SMAPI.Toolkit/Framework/UpdateData/ModRepositoryKey.cs (renamed from src/StardewModdingAPI.Toolkit/Framework/UpdateData/ModRepositoryKey.cs)0
-rw-r--r--src/SMAPI.Toolkit/Framework/UpdateData/UpdateKey.cs (renamed from src/StardewModdingAPI.Toolkit/Framework/UpdateData/UpdateKey.cs)0
-rw-r--r--src/SMAPI.Toolkit/ModToolkit.cs (renamed from src/StardewModdingAPI.Toolkit/ModToolkit.cs)0
-rw-r--r--src/SMAPI.Toolkit/Properties/AssemblyInfo.cs (renamed from src/StardewModdingAPI.Toolkit/Properties/AssemblyInfo.cs)0
-rw-r--r--src/SMAPI.Toolkit/SemanticVersion.cs (renamed from src/StardewModdingAPI.Toolkit/SemanticVersion.cs)0
-rw-r--r--src/SMAPI.Toolkit/Serialisation/Converters/ManifestContentPackForConverter.cs (renamed from src/StardewModdingAPI.Toolkit/Serialisation/Converters/ManifestContentPackForConverter.cs)0
-rw-r--r--src/SMAPI.Toolkit/Serialisation/Converters/ManifestDependencyArrayConverter.cs (renamed from src/StardewModdingAPI.Toolkit/Serialisation/Converters/ManifestDependencyArrayConverter.cs)0
-rw-r--r--src/SMAPI.Toolkit/Serialisation/Converters/SemanticVersionConverter.cs (renamed from src/StardewModdingAPI.Toolkit/Serialisation/Converters/SemanticVersionConverter.cs)0
-rw-r--r--src/SMAPI.Toolkit/Serialisation/Converters/SimpleReadOnlyConverter.cs (renamed from src/StardewModdingAPI.Toolkit/Serialisation/Converters/SimpleReadOnlyConverter.cs)0
-rw-r--r--src/SMAPI.Toolkit/Serialisation/InternalExtensions.cs (renamed from src/StardewModdingAPI.Toolkit/Serialisation/InternalExtensions.cs)0
-rw-r--r--src/SMAPI.Toolkit/Serialisation/JsonHelper.cs (renamed from src/StardewModdingAPI.Toolkit/Serialisation/JsonHelper.cs)0
-rw-r--r--src/SMAPI.Toolkit/Serialisation/Models/Manifest.cs (renamed from src/StardewModdingAPI.Toolkit/Serialisation/Models/Manifest.cs)0
-rw-r--r--src/SMAPI.Toolkit/Serialisation/Models/ManifestContentPackFor.cs (renamed from src/StardewModdingAPI.Toolkit/Serialisation/Models/ManifestContentPackFor.cs)0
-rw-r--r--src/SMAPI.Toolkit/Serialisation/Models/ManifestDependency.cs (renamed from src/StardewModdingAPI.Toolkit/Serialisation/Models/ManifestDependency.cs)0
-rw-r--r--src/SMAPI.Toolkit/Serialisation/SParseException.cs (renamed from src/StardewModdingAPI.Toolkit/Serialisation/SParseException.cs)0
-rw-r--r--src/SMAPI.Toolkit/StardewModdingAPI.Toolkit.csproj (renamed from src/StardewModdingAPI.Toolkit/StardewModdingAPI.Toolkit.csproj)5
-rw-r--r--src/SMAPI.Toolkit/Utilities/FileUtilities.cs (renamed from src/StardewModdingAPI.Toolkit/Utilities/FileUtilities.cs)0
-rw-r--r--src/SMAPI.Toolkit/Utilities/PathUtilities.cs (renamed from src/StardewModdingAPI.Toolkit/Utilities/PathUtilities.cs)0
-rw-r--r--src/SMAPI.Web/Controllers/IndexController.cs2
-rw-r--r--src/SMAPI.Web/Framework/LogParsing/LogParser.cs2
-rw-r--r--src/SMAPI.Web/Properties/launchSettings.json34
-rw-r--r--src/SMAPI.Web/StardewModdingAPI.Web.csproj8
-rw-r--r--src/SMAPI.Web/ViewModels/ModModel.cs8
-rw-r--r--src/SMAPI.Web/Views/Index/Index.cshtml33
-rw-r--r--src/SMAPI.Web/Views/LogParser/Index.cshtml14
-rw-r--r--src/SMAPI.Web/Views/Mods/Index.cshtml34
-rw-r--r--src/SMAPI.Web/appsettings.Development.json46
-rw-r--r--src/SMAPI.Web/appsettings.json98
-rw-r--r--src/SMAPI.Web/wwwroot/Content/css/index.css24
-rw-r--r--src/SMAPI.Web/wwwroot/Content/images/ko-fi.pngbin0 -> 2435 bytes
-rw-r--r--src/SMAPI.Web/wwwroot/Content/images/patreon.pngbin0 -> 4180 bytes
-rw-r--r--src/SMAPI.Web/wwwroot/Content/images/paypal.pngbin0 -> 2013 bytes
-rw-r--r--src/SMAPI.Web/wwwroot/Content/js/mods.js48
-rw-r--r--src/SMAPI.Web/wwwroot/StardewModdingAPI.metadata.json862
-rw-r--r--src/SMAPI.sln87
-rw-r--r--src/SMAPI/Constants.cs2
-rw-r--r--src/SMAPI/Framework/ContentManagers/ModContentManager.cs2
-rw-r--r--src/SMAPI/Framework/DeprecationManager.cs2
-rw-r--r--src/SMAPI/Framework/Monitor.cs2
-rw-r--r--src/SMAPI/Framework/SCore.cs13
-rw-r--r--src/SMAPI/Framework/SGame.cs4
-rw-r--r--src/SMAPI/IMonitor.cs2
-rw-r--r--src/SMAPI/Patches/DialogueErrorPatch.cs49
-rw-r--r--src/SMAPI/Patches/EventErrorPatch.cs84
-rw-r--r--src/SMAPI/Patches/LoadContextPatch.cs (renamed from src/SMAPI/Patches/LoadForNewGamePatch.cs)49
-rw-r--r--src/SMAPI/Patches/ObjectErrorPatch.cs32
-rw-r--r--src/SMAPI/Program.cs16
-rw-r--r--src/SMAPI/StardewModdingAPI.config.json114
-rw-r--r--src/SMAPI/StardewModdingAPI.csproj380
-rw-r--r--src/StardewModdingAPI.Toolkit/Framework/Clients/Wiki/WikiSmapi3Status.cs18
98 files changed, 1107 insertions, 1498 deletions
diff --git a/.editorconfig b/.editorconfig
index 5bfc44bd..38f3c261 100644
--- a/.editorconfig
+++ b/.editorconfig
@@ -12,12 +12,16 @@ insert_final_newline = true
trim_trailing_whitespace = true
charset = utf-8
-[*.{csproj,json,nuspec,targets}]
+[*.{csproj,nuspec,targets}]
indent_size = 2
[*.csproj]
+charset = utf-8-bom
insert_final_newline = false
+[README.txt]
+end_of_line=crlf
+
##########
## C# formatting
## documentation: https://docs.microsoft.com/en-us/visualstudio/ide/editorconfig-code-style-settings-reference
diff --git a/.gitattributes b/.gitattributes
index cd1acd35..67d0626d 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -1,2 +1,3 @@
# normalise line endings
* text=auto
+README.txt text=crlf
diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml
new file mode 100644
index 00000000..bea12a6d
--- /dev/null
+++ b/.github/FUNDING.yml
@@ -0,0 +1,3 @@
+patreon: pathoschild
+ko_fi: pathoschild
+custom: https://www.paypal.me/pathoschild
diff --git a/.gitignore b/.gitignore
index 7e0c1e9d..7080a8fc 100644
--- a/.gitignore
+++ b/.gitignore
@@ -26,3 +26,6 @@ _ReSharper*/
# sensitive files
appsettings.Development.json
+
+# AWS generated files
+src/SMAPI.Web/aws-beanstalk-tools-defaults.json
diff --git a/build/GlobalAssemblyInfo.cs b/build/GlobalAssemblyInfo.cs
index ced7af52..a3ca3051 100644
--- a/build/GlobalAssemblyInfo.cs
+++ b/build/GlobalAssemblyInfo.cs
@@ -1,5 +1,5 @@
using System.Reflection;
[assembly: AssemblyProduct("SMAPI")]
-[assembly: AssemblyVersion("2.11.2")]
-[assembly: AssemblyFileVersion("2.11.2")]
+[assembly: AssemblyVersion("2.11.3")]
+[assembly: AssemblyFileVersion("2.11.3")]
diff --git a/build/common.targets b/build/common.targets
index e08e7066..0781d568 100644
--- a/build/common.targets
+++ b/build/common.targets
@@ -39,6 +39,11 @@
<Choose>
<When Condition="'$(MSBuildProjectName)' == 'StardewModdingAPI' OR '$(MSBuildProjectName)' == 'StardewModdingAPI.Mods.ConsoleCommands' OR '$(MSBuildProjectName)' == 'StardewModdingAPI.Mods.SaveBackup' OR '$(MSBuildProjectName)' == 'StardewModdingAPI.Tests'">
<!-- Windows -->
+ <PropertyGroup>
+ <!--recognise XNA Framework DLLs in the GAC-->
+ <AssemblySearchPaths>$(AssemblySearchPaths);{GAC}</AssemblySearchPaths>
+ </PropertyGroup>
+
<ItemGroup Condition="$(OS) == 'Windows_NT'">
<Reference Include="Stardew Valley">
<HintPath>$(GamePath)\Stardew Valley.exe</HintPath>
@@ -93,12 +98,12 @@
</Choose>
<!-- if game path is invalid, show one user-friendly error instead of a slew of reference errors -->
- <Target Name="BeforeBuild">
+ <Target Name="ValidateInstallPath" AfterTargets="BeforeBuild">
<Error Condition="!Exists('$(GamePath)')" Text="Failed to find the game install path automatically; edit the *.csproj file and manually add a &lt;GamePath&gt; setting with the full directory path containing the Stardew Valley executable." />
</Target>
<!-- copy files into game directory and enable debugging -->
- <Target Name="AfterBuild">
+ <Target Name="CopySmapiFiles" AfterTargets="AfterBuild">
<CallTarget Targets="CopySMAPI;CopyDefaultMods" />
</Target>
<Target Name="CopySMAPI" Condition="'$(MSBuildProjectName)' == 'StardewModdingAPI'">
diff --git a/build/prepare-install-package.targets b/build/prepare-install-package.targets
index cd758e96..b7b70ed0 100644
--- a/build/prepare-install-package.targets
+++ b/build/prepare-install-package.targets
@@ -5,20 +5,18 @@
creates the build package in the bin\Packages folder.
-->
- <Target Name="AfterBuild">
+ <Target Name="PrepareInstaller" AfterTargets="AfterBuild">
<PropertyGroup>
<RootPath>$(SolutionDir)\..</RootPath>
<CompiledRootPath>$(RootPath)\bin\$(Configuration)</CompiledRootPath>
<CompiledSmapiPath>$(CompiledRootPath)\SMAPI</CompiledSmapiPath>
<CompiledToolkitPath>$(CompiledRootPath)\SMAPI.Toolkit\net4.5</CompiledToolkitPath>
+ <CompiledModsPath>$(CompiledRootPath)\Mods</CompiledModsPath>
<PackagePath>$(SolutionDir)\..\bin\SMAPI installer</PackagePath>
<PackageDevPath>$(SolutionDir)\..\bin\SMAPI installer for developers</PackageDevPath>
<PlatformName>windows</PlatformName>
<PlatformName Condition="$(OS) != 'Windows_NT'">unix</PlatformName>
</PropertyGroup>
- <ItemGroup>
- <CompiledMods Include="$(SolutionDir)\..\bin\$(Configuration)\Mods\**\*.*" />
- </ItemGroup>
<!-- reset package directory -->
<RemoveDir Directories="$(PackagePath)" />
@@ -48,12 +46,19 @@
<Copy SourceFiles="$(CompiledToolkitPath)\StardewModdingAPI.Toolkit.CoreInterfaces.dll" DestinationFolder="$(PackagePath)\bundle\smapi-internal" />
<Copy SourceFiles="$(CompiledToolkitPath)\StardewModdingAPI.Toolkit.CoreInterfaces.pdb" DestinationFolder="$(PackagePath)\bundle\smapi-internal" />
<Copy SourceFiles="$(CompiledToolkitPath)\StardewModdingAPI.Toolkit.CoreInterfaces.xml" DestinationFolder="$(PackagePath)\bundle\smapi-internal" />
- <Copy SourceFiles="@(CompiledMods)" DestinationFolder="$(PackagePath)\bundle\Mods\%(RecursiveDir)" />
<Copy Condition="$(OS) != 'Windows_NT'" SourceFiles="$(TargetDir)\unix-launcher.sh" DestinationFiles="$(PackagePath)\bundle\StardewModdingAPI" />
<Copy Condition="$(OS) != 'Windows_NT'" SourceFiles="$(CompiledSmapiPath)\System.Numerics.dll" DestinationFolder="$(PackagePath)\bundle\smapi-internal" />
<Copy Condition="$(OS) != 'Windows_NT'" SourceFiles="$(CompiledSmapiPath)\System.Runtime.Caching.dll" DestinationFolder="$(PackagePath)\bundle\smapi-internal" />
<Copy Condition="$(OS) == 'Windows_NT'" SourceFiles="$(TargetDir)\windows-exe-config.xml" DestinationFiles="$(PackagePath)\bundle\StardewModdingAPI.exe.config" />
+ <!--copy bundled mods-->
+ <Copy SourceFiles="$(CompiledModsPath)\ConsoleCommands\ConsoleCommands.dll" DestinationFolder="$(PackagePath)\bundle\Mods\ConsoleCommands" />
+ <Copy SourceFiles="$(CompiledModsPath)\ConsoleCommands\ConsoleCommands.pdb" DestinationFolder="$(PackagePath)\bundle\Mods\ConsoleCommands" />
+ <Copy SourceFiles="$(CompiledModsPath)\ConsoleCommands\manifest.json" DestinationFolder="$(PackagePath)\bundle\Mods\ConsoleCommands" />