diff --git a/build/GlobalAssemblyInfo.cs b/build/GlobalAssemblyInfo.cs
index bcfdc1242..79d473e67 100644
--- a/build/GlobalAssemblyInfo.cs
+++ b/build/GlobalAssemblyInfo.cs
@@ -2,5 +2,5 @@
using System.Runtime.InteropServices;
[assembly: ComVisible(false)]
-[assembly: AssemblyVersion("2.3.0.0")]
-[assembly: AssemblyFileVersion("2.3.0.0")]
+[assembly: AssemblyVersion("2.4.0.0")]
+[assembly: AssemblyFileVersion("2.4.0.0")]
diff --git a/docs/release-notes.md b/docs/release-notes.md
index 51ac8c5ad..9c1fbf93b 100644
--- a/docs/release-notes.md
+++ b/docs/release-notes.md
@@ -1,14 +1,15 @@
# Release notes
## 2.4
* For players:
- * Fixed graphical corruption in rare cases.
- * Fixed error parsing `config.json` files containing curly quotes.
- * Fixed error parsing JSON files generated on another platform.
+ * Fixed visual map glitch in rare cases.
+ * Fixed error parsing JSON files which have curly quotes.
+ * Fixed error parsing some JSON files generated on another system.
* Fixed error parsing some JSON files after mods reload core assemblies, which is no longer allowed.
- * Fixed error on Linux loading SMAPI when the default terminal is set to Terminator.
+ * Fixed intermittent errors (e.g. 'collection has been modified') with some mods when loading a save.
+ * Fixed compatibility with Linux Terminator terminal.
* For the [log parser][]:
- * Fixed parse error for logs with zero installed mods.
+ * Fixed error parsing logs with zero installed mods.
* For modders:
* Added `SaveEvents.BeforeCreate` and `AfterCreate` events.
@@ -17,8 +18,8 @@
* Fixed events being raised while the game is loading a save file.
* Fixed input events not recognising controller input as an action or use-tool button.
* Fixed input events setting the same `IsActionButton` and `IsUseToolButton` values for all buttons pressed in an update tick.
- * Fixed semantic versions always ignoring `-0` tag.
- * Updated Json.NET to 11.0.1-beta3 (needed to avoid parser edge case with the new converters).
+ * Fixed semantic versions ignoring `-0` as a prerelease tag.
+ * Updated Json.NET to 11.0.1-beta3 (needed to avoid a parser edge case).
* For SMAPI developers:
* Overhauled input handling to support future input events.
diff --git a/src/SMAPI.Mods.ConsoleCommands/manifest.json b/src/SMAPI.Mods.ConsoleCommands/manifest.json
index 06ab1b541..fc5ce35d1 100644
--- a/src/SMAPI.Mods.ConsoleCommands/manifest.json
+++ b/src/SMAPI.Mods.ConsoleCommands/manifest.json
@@ -1,12 +1,7 @@
{
"Name": "Console Commands",
"Author": "SMAPI",
- "Version": {
- "MajorVersion": 2,
- "MinorVersion": 3,
- "PatchVersion": 0,
- "Build": null
- },
+ "Version": "2.4.0",
"Description": "Adds SMAPI console commands that let you manipulate the game.",
"UniqueID": "SMAPI.ConsoleCommands",
"EntryDll": "ConsoleCommands.dll"
diff --git a/src/SMAPI/Constants.cs b/src/SMAPI/Constants.cs
index 786ae32b1..515e98702 100644
--- a/src/SMAPI/Constants.cs
+++ b/src/SMAPI/Constants.cs
@@ -29,7 +29,7 @@ public static class Constants
** Public
****/
/// SMAPI's current semantic version.
- public static ISemanticVersion ApiVersion { get; } = new SemanticVersion("2.3");
+ public static ISemanticVersion ApiVersion { get; } = new SemanticVersion("2.4.0");
/// The minimum supported version of Stardew Valley.
public static ISemanticVersion MinimumGameVersion { get; } = new SemanticVersion("1.2.30");