diff options
Diffstat (limited to 'docs/release-notes.md')
-rw-r--r-- | docs/release-notes.md | 78 |
1 files changed, 74 insertions, 4 deletions
diff --git a/docs/release-notes.md b/docs/release-notes.md index 133006e8..76bf4b15 100644 --- a/docs/release-notes.md +++ b/docs/release-notes.md @@ -1,4 +1,74 @@ # Release notes +## 2.8.1 +* Fixed installer error on Windows. + +## 2.8 +* For players: + * Reorganised SMAPI files: + * Moved most SMAPI files into a `smapi-internal` subfolder (so your game folder is less messy). + * Moved save backups into a `save-backups` subfolder (so they're easier to find). + * Simplified the installer files to avoid confusion. + * Added support for organising mods into subfolders. + * Added support for [ignoring mod folders](https://stardewvalleywiki.com/Modding:Player_Guide/Getting_Started#Install_mods). + * Update checks now work even for mods without update keys in most cases. + * SMAPI now prevents a crash caused by mods adding dialogue the game can't parse. + * SMAPI now recommends a compatible SMAPI version if you have an older game version. + * Improved various error messages to be more clear and intuitive. + * Improved compatibility with various Linux shells (thanks to lqdev!), and prefer xterm when available. + * Fixed transparency issues on Linux/Mac for some mod images. + * Fixed error when a mod manifest is corrupted. + * Fixed error when a mod adds an unnamed location. + * Fixed friendly error no longer shown when SMAPI isn't run from the game folder. + * Fixed some Windows install paths not detected. + * Fixed installer duplicating bundled mods if you moved them after the last install. + * Fixed installer allowing custom mods to be bundled with the install. + * Fixed some translation issues not shown as warnings. + * Fixed dependencies not correctly enforced if the dependency is installed but failed to load. + * Fixed some errors logged as SMAPI instead of the affected mod. + * Fixed crash log deleted immediately when you relaunch the game. + * Updated compatibility list. + +* For the web UI: + * Added a [mod compatibility page](https://mods.smapi.io) and [privacy page](https://smapi.io/privacy). + * The log parser now has a separate filter for game messages. + * The log parser now shows content pack authors (thanks to danvolchek!). + * Tweaked log parser UI (thanks to danvolchek!). + * Fixed log parser instructions for Mac. + +* For modders: + * Added [data API](https://stardewvalleywiki.com/Modding:Modder_Guide/APIs/Data) to store mod data in the save file or app data. + * Added [multiplayer API](https://stardewvalleywiki.com/Modding:Modder_Guide/APIs/Multiplayer) and [events](https://stardewvalleywiki.com/Modding:Modder_Guide/Apis/Events#Multiplayer_2) to send/receive messages and get connected player info. + * Added [verbose logging](https://stardewvalleywiki.com/Modding:Modder_Guide/APIs/Logging#Verbose_logging) feature. + * Added `IContentPack.WriteJsonFile` method. + * Added IntelliSense documentation for the non-developers version of SMAPI. + * Added more events to the prototype `helper.Events` for SMAPI 3.0. + * Added `SkillType` enum constant. + * Improved content API: + * added support for overlaying image assets with semi-transparency; + * mods can now load PNGs even if the game is currently drawing. + * When comparing mod versions, SMAPI now assigns the lowest precedence to `-unofficial` (e.g. `1.0-beta > 1.0-unofficial`). + * Fixed content packs' `ReadJsonFile` allowing non-relative paths. + * Fixed content packs always failing to load if they declare a dependency on a SMAPI mod. + * Fixed trace logs not showing path for invalid mods. + * Fixed 'no update keys' warning not shown for mods with only invalid update keys. + * Fixed `Context.IsPlayerFree` being true while the player is mid-warp in multiplayer. + * Fixed update-check errors sometimes being overwritten with a generic message. + * Suppressed the game's 'added crickets' debug output. + * Updated dependencies (Harmony 1.0.9.1 → 1.2.0.1, Mono.Cecil 0.10 → 0.10.1). + * **Deprecations:** + * Non-string manifest versions are now deprecated and will stop working in SMAPI 3.0. Affected mods should use a string version, like `"Version": "1.0.0"`. + * `ISemanticVersion.Build` is now deprecated and will be removed in SMAPI 3.0. Affected mods should use `ISemanticVersion.PrereleaseTag` instead. + * **Breaking changes:** + * `helper.ModRegistry` now returns `IModInfo` instead of `IManifest` directly. This lets SMAPI return more metadata about mods. This doesn't affect any mods that didn't already break in Stardew Valley 1.3.32. + * Most SMAPI files have been moved into a `smapi-internal` subfolder. This won't affect compiled mod releases, but you'll need to update the build config NuGet package. + +* For SMAPI developers: + * Added support for parallel stable/beta unofficial updates in update checks. + * Added a 'paranoid warnings' option which reports mods using potentially sensitive .NET APIs (like file or shell access) in the mod issues list. + * Adjusted `SaveBackup` mod to make it easier to account for custom mod subfolders in the installer. + * Installer no longer special-cases Omegasis' older `SaveBackup` mod (now named `AdvancedSaveBackup`). + * Fixed mod web API returning a concatenated name for mods with alternate names. + ## 2.7 * For players: * Updated for Stardew Valley 1.3.28. @@ -11,6 +81,7 @@ * Fixed `player_add` command not recognising return scepter. * Fixed `player_add` command showing fish twice. * Fixed some SMAPI logs not deleted when starting a new session. + * Updated compatibility list. * For modders: * Added support for `.json` data files in the content API (including Content Patcher). @@ -22,7 +93,6 @@ * All enums are now JSON-serialised by name instead of numeric value. (Previously only a few enums were serialised that way. JSON files which already have numeric enum values will still be parsed fine.) * Fixed false compatibility error when constructing multidimensional arrays. * Fixed `.ToSButton()` methods not being public. - * Updated compatibility list. * For SMAPI developers: * Dropped support for pre-SMAPI-2.6 update checks in the web API. @@ -609,7 +679,7 @@ For mod developers: * The SMAPI log now always uses `\r\n` line endings to simplify crossplatform viewing. * Fixed `SaveEvents.AfterLoad` being raised during the new-game intro before the player is initialised. * Fixed SMAPI not recognising `Mod` instances that don't subclass `Mod` directly. -* Several obsolete APIs have been removed (see [deprecation guide](http://canimod.com/guides/updating-a-smapi-mod)), +* Several obsolete APIs have been removed (see [migration guides](https://stardewvalleywiki.com/Modding:Index#Migration_guides)), and all _notice_-level deprecations have been increased to _info_. * Removed the experimental `IConfigFile`. @@ -692,7 +762,7 @@ For players: For developers: * Deprecated `Version` in favour of `SemanticVersion`. - _This new implementation is [semver 2.0](http://semver.org/)-compliant, introduces `NewerThan(version)` and `OlderThan(version)` convenience methods, adds support for parsing a version string into a `SemanticVersion`, and fixes various bugs with the former implementation. This also replaces `Manifest` with `IManifest`._ + _This new implementation is [semver 2.0](https://semver.org/)-compliant, introduces `NewerThan(version)` and `OlderThan(version)` convenience methods, adds support for parsing a version string into a `SemanticVersion`, and fixes various bugs with the former implementation. This also replaces `Manifest` with `IManifest`._ * Increased deprecation levels for `SObject`, `Extensions`, `LogWriter` (not `Log`), `SPlayer`, and `Mod.Entry(ModHelper)` (not `Mod.Entry(IModHelper)`). ## 1.4 @@ -771,7 +841,7 @@ For mod developers: * Added OS version to log. * Added zoom-adjusted mouse position to mouse-changed event arguments. * Added SMAPI code documentation. - * Switched to [semantic versioning](http://semver.org). + * Switched to [semantic versioning](https://semver.org). * Fixed mod versions not shown correctly in the log. * Fixed misspelled field in `manifest.json` schema. * Fixed some events getting wrong data. |