Skip to content

Commit

Permalink
Merge branch 'develop' into stable
Browse files Browse the repository at this point in the history
  • Loading branch information
Pathoschild committed Dec 8, 2024
2 parents 667844d + 513ef3e commit 0133ca9
Show file tree
Hide file tree
Showing 8 changed files with 26 additions and 33 deletions.
2 changes: 1 addition & 1 deletion build/common.targets
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ repo. It imports the other MSBuild files as needed.
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<!--set general build properties -->
<Version>4.1.8</Version>
<Version>4.1.9</Version>
<Product>SMAPI</Product>
<LangVersion>latest</LangVersion>
<AssemblySearchPaths>$(AssemblySearchPaths);{GAC}</AssemblySearchPaths>
Expand Down
9 changes: 8 additions & 1 deletion docs/release-notes.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,19 @@
[README](README.md)

# Release notes
# 4.1.9
Released 08 December 2024 for Stardew Valley 1.6.14 or later.

* For players:
* Fixed compatibility with new macOS security restrictions (again).
* Fixed unable to override color schemes via `smapi-internal/config.user.json`.

## 4.1.8
Released 28 November 2024 for Stardew Valley 1.6.14 or later.

* For players:
* Updated the mod compatibility blacklist.
* Fixed compatibility with newer macOS security restrictions.
* Fixed compatibility with new macOS security restrictions.
* Fixed crash with some rare combinations of mods involving Harmony and mod APIs.

* For mod authors:
Expand Down
15 changes: 0 additions & 15 deletions src/SMAPI.Installer/InteractiveInstaller.cs
Original file line number Diff line number Diff line change
Expand Up @@ -415,21 +415,6 @@ public void Run(string[] args)
}
}.Start();
}

// sign SMAPI on macOS
// This avoids 'StardewModdingAPI will damage your computer' errors in newer versions.
if (context.Platform is Platform.Mac)
{
new Process
{
StartInfo = new ProcessStartInfo
{
FileName = "codesign",
Arguments = $"--force --sign - \"{paths.UnixSmapiExecutablePath}\"",
CreateNoWindow = true
}
}.Start();
}
}

// copy the game's deps.json file
Expand Down
4 changes: 2 additions & 2 deletions src/SMAPI.Internal/ConsoleWriting/ColorSchemeConfig.cs
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,10 @@ internal class ColorSchemeConfig
** Accessors
*********/
/// <summary>The default color scheme ID to use, or <see cref="MonitorColorScheme.AutoDetect"/> to select one automatically.</summary>
public MonitorColorScheme UseScheme { get; }
public MonitorColorScheme UseScheme { get; set; }

/// <summary>The available console color schemes.</summary>
public IDictionary<MonitorColorScheme, IDictionary<ConsoleLogLevel, ConsoleColor>> Schemes { get; }
public IDictionary<MonitorColorScheme, IDictionary<ConsoleLogLevel, ConsoleColor>> Schemes { get; set; }


/*********
Expand Down
4 changes: 2 additions & 2 deletions src/SMAPI.Mods.ConsoleCommands/manifest.json
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
{
"Name": "Console Commands",
"Author": "SMAPI",
"Version": "4.1.8",
"Version": "4.1.9",
"Description": "Adds SMAPI console commands that let you manipulate the game.",
"UniqueID": "SMAPI.ConsoleCommands",
"EntryDll": "ConsoleCommands.dll",
"MinimumApiVersion": "4.1.8"
"MinimumApiVersion": "4.1.9"
}
4 changes: 2 additions & 2 deletions src/SMAPI.Mods.SaveBackup/manifest.json
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
{
"Name": "Save Backup",
"Author": "SMAPI",
"Version": "4.1.8",
"Version": "4.1.9",
"Description": "Automatically backs up all your saves once per day into its folder.",
"UniqueID": "SMAPI.SaveBackup",
"EntryDll": "SaveBackup.dll",
"MinimumApiVersion": "4.1.8"
"MinimumApiVersion": "4.1.9"
}
Original file line number Diff line number Diff line change
Expand Up @@ -27,11 +27,14 @@ public class CompatibilityRepoClient : IDisposable
** Public methods
*********/
/// <summary>Construct an instance.</summary>
/// <param name="fetchUrl">The full URL of the JSON file to fetch.</param>
/// <param name="fetchBaseUrl">The base URL from which to fetch the compatibility list JSON files.</param>
/// <param name="userAgent">The user agent for the API client.</param>
public CompatibilityRepoClient(string userAgent, string fetchUrl = "https://raw.githubusercontent.com/Pathoschild/SmapiCompatibilityList/refs/heads/release/data/data.jsonc")
public CompatibilityRepoClient(string userAgent, string fetchBaseUrl = "https://raw.githubusercontent.com/Pathoschild/SmapiCompatibilityList/refs/heads/release/data")
{
this.Client = new FluentClient(fetchUrl).SetUserAgent(userAgent);
this.Client = new FluentClient(fetchBaseUrl)
.SetUserAgent(userAgent);
this.Client.Filters.Add(new ForceJsonResponseTypeFilter());

this.MarkdownPipeline = new MarkdownPipelineBuilder()
.Use(new ExpandCompatibilityListAnchorLinksExtension())
.Build();
Expand All @@ -40,14 +43,12 @@ public CompatibilityRepoClient(string userAgent, string fetchUrl = "https://raw.
/// <summary>Fetch mods from the compatibility list.</summary>
public async Task<ModCompatibilityEntry[]> FetchModsAsync()
{
RawCompatibilityList response = await this.Client
.GetAsync(null)
.WithFilter(new ForceJsonResponseTypeFilter())
.As<RawCompatibilityList>();
RawCompatibilityList mods = await this.Client.GetAsync("mods.jsonc").As<RawCompatibilityList>();
RawCompatibilityList brokenContentPacks = await this.Client.GetAsync("broken-content-packs.jsonc").As<RawCompatibilityList>();

return
(response.Mods ?? Array.Empty<RawModEntry>())
.Concat(response.BrokenContentPacks ?? Array.Empty<RawModEntry>())
(mods.Mods ?? Array.Empty<RawModEntry>())
.Concat(brokenContentPacks.BrokenContentPacks ?? Array.Empty<RawModEntry>())
.Select(this.ParseRawModEntry)
.ToArray();
}
Expand Down
2 changes: 1 addition & 1 deletion src/SMAPI/Constants.cs
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ internal static class EarlyConstants
internal static int? LogScreenId { get; set; }

/// <summary>SMAPI's current raw semantic version.</summary>
internal static string RawApiVersion = "4.1.8";
internal static string RawApiVersion = "4.1.9";
}

/// <summary>Contains SMAPI's constants and assumptions.</summary>
Expand Down

0 comments on commit 0133ca9

Please sign in to comment.