summaryrefslogtreecommitdiff
path: root/src/SMAPI/Framework/Utilities
AgeCommit message (Collapse)Author
2022-05-31replace MemoryCache with custom cacheJesse Plamondon-Willard
This was causing significant frame stutters for some players since the migration to .NET 5 in Stardew Valley 1.5.5.
2022-05-20add tick cache to asset propagationJesse Plamondon-Willard
2022-04-13enable nullable annotations in SMAPI where no logic changes are needed (#837)Jesse Plamondon-Willard
2022-04-13enable nullable annotations in SMAPI where no changes are needed (#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-02switch to 'processing tick' for tick cachingJesse Plamondon-Willard
This is incremented on each low-level tick (whether it's a game update, synchronized async operation, etc). That mainly avoids the cache persisting across the entire save loading process while it's being synchronized.
2022-04-02fix tick cache using game ticks instead of SMAPI ticksJesse Plamondon-Willard
The game ticks aren't incremented consistently in some cases (e.g. while loading a save), which leads to the cache values being kept too long.
2022-03-22encapsulate & cache asset operation groups (#766)Jesse Plamondon-Willard
This is needed for the upcoming Stardew Valley 1.6 to avoid duplicate checks between DoesAssetExist and Load calls, and to make sure the answer doesn't change between them.
2020-08-23minor cleanupJesse Plamondon-Willard
2018-05-25move PathUtilities into toolkit (#532)Jesse Plamondon-Willard
2018-05-22refactor content API to fix load errors with decentralised cache (#524)Jesse Plamondon-Willard
2018-02-19fix edge case in relative path logicJesse Plamondon-Willard
2018-02-19encapsulate path utilities for reuse, add unit testsJesse Plamondon-Willard
2017-10-07reorganise repo structureJesse Plamondon-Willard