summaryrefslogtreecommitdiff
path: root/src/SMAPI.Toolkit/Utilities/PathUtilities.cs
AgeCommit message (Collapse)Author
2022-04-07reverse mod build package migration to .NET 5 (#837)Jesse Plamondon-Willard
The migrated package didn't work consistently in VIsual Studio, so this suppresses nullable annotations in .NET Standard instead.
2022-04-07enable nullable annotations for most of the SMAPI toolkit (#837)Jesse Plamondon-Willard
2022-04-07migrate mod build package to .NET 5 to allow full nullable annotations (#837)Jesse Plamondon-Willard
2022-04-06enable nullable annotations by default (#837)Jesse Plamondon-Willard
This adds `#nullable disable` to all existing code (except where null is impossible like enum files), so it can be migrated incrementally.
2022-04-06use target-typed newJesse Plamondon-Willard
2021-11-28remove path-too-long exception handlingJesse Plamondon-Willard
The path length limit no longer applies in .NET 5.
2021-11-28update for asset name format changeJesse Plamondon-Willard
MonoGame uses Linux-style paths for assets on all platforms, which breaks the previous equivalence between path and asset name formats.
2021-11-28update to .NET 5 and official 64-bitJesse Plamondon-Willard
2021-09-02prepare path utilities for the upcoming Stardew Valley 1.5.5Jesse Plamondon-Willard
The game will use Linux-style paths for assets on all platforms, which will break the current equivalence between path and asset name formats.
2021-03-08fix installer error when Mods folder doesn't exist in 3.9.3 (#764)Jesse Plamondon-Willard
2021-03-07add descriptive error for PathTooLongException which crashes SMAPI or the ↵Jesse Plamondon-Willard
installer
2020-09-08rename PathUtilities.NormalizePathSeparator, add normalization for more casesJesse Plamondon-Willard
2020-09-05simplify path separator normalizationJesse Plamondon-Willard
It no longer tries to clean up the path (e.g. "path/to///file/" => "path/to/file"), which means it can more intuitively handle cases like this: asset.AssetName.StartsWith(PathUtilities.NormalizePathSeparators("Characters/Dialogue/"))
2020-09-05add unit tests for PathUtilities, fix some edge casesJesse Plamondon-Willard
2020-02-22fix errors loading spouse room content packs in SMAPI 3.3Jesse Plamondon-Willard
The new logic for loading map tilesheets incorrectly changed vanilla tilesheets like "townInterior" to "Maps/townInterior". While the game itself handled that, mods like Content Patcher which compared tilesheet paths would incorrectly decide that "townInterior" and "Maps/townInterior" were different files, and add a new tilesheet for it; that in turn would cause errors when patching spouse rooms, since it doesn't copy tilesheets.
2019-09-14fix typos and inconsistent spellingJesse Plamondon-Willard
2019-09-13migrate to new project file formatJesse Plamondon-Willard