Jesse Plamondon-Willard
bf960ce283
add backwards compatibility for mods using now-unused dependencies
2022-05-31 21:23:44 -04:00
Jesse Plamondon-Willard
9992915f56
replace MemoryCache with custom cache
...
This was causing significant frame stutters for some players since the migration to .NET 5 in Stardew Valley 1.5.5.
2022-05-31 18:32:23 -04:00
Jesse Plamondon-Willard
9ef3f7edb1
remove `System.Reflection.Metadata.MetadataUpdater.IsSupported: false` in runtime config
...
This doesn't seem to be needed, and was probably added as part of the early experimenting with self-contained .NET.
2022-05-31 18:25:12 -04:00
Jesse Plamondon-Willard
0209e70695
Merge branch 'develop' into stable
2022-05-27 18:09:04 -04:00
Jesse Plamondon-Willard
e4cd7c8eb0
prepare for release
2022-05-27 18:08:30 -04:00
Jesse Plamondon-Willard
e8c6221d96
fix typo
2022-05-27 18:04:39 -04:00
Jesse Plamondon-Willard
064346594d
fix split-screen error when a mod provides a localized asset in one screen but not another
2022-05-24 18:12:06 -04:00
Jesse Plamondon-Willard
5083b65c87
fix readme headings for mod build package
2022-05-23 14:33:01 -04:00
Jesse Plamondon-Willard
5675f9fceb
add watcher names to simplify troubleshooting
2022-05-23 12:57:33 -04:00
Jesse Plamondon-Willard
87ac7fc403
fix nullable annotations in NetListWatcher
2022-05-23 12:57:33 -04:00
Jesse Plamondon-Willard
9933acad35
use <inheritdoc/> in watchers
2022-05-23 12:57:33 -04:00
Jesse Plamondon-Willard
62665649bd
shortcut common cases in hot code paths
2022-05-23 12:19:06 -04:00
Jesse Plamondon-Willard
2ab2182645
Merge branch 'develop' into stable
2022-05-22 14:38:57 -04:00
Jesse Plamondon-Willard
336cc1cc0f
prepare for release
2022-05-22 14:38:33 -04:00
Jesse Plamondon-Willard
7e7ac459a5
fix error when mod localizes an unlocalizable asset and then stops doing so
2022-05-21 18:06:23 -04:00
Jesse Plamondon-Willard
e6ef71bae1
add tick cache to asset propagation
2022-05-20 17:39:05 -04:00
Jesse Plamondon-Willard
7332879351
defer asset reload during propagation when possible
2022-05-19 21:04:32 -04:00
Jesse Plamondon-Willard
0a050622f6
tweak asset propagator to avoid assumption that assets must be reloaded
2022-05-19 21:04:32 -04:00
Jesse Plamondon-Willard
1ddf70697e
simplify asset propagation a bit to prepare for the upcoming SDV 1.6
2022-05-18 20:13:09 -04:00
Jesse Plamondon-Willard
f8b62e271e
fix asset type when checking if a mod asset exists
2022-05-18 20:04:51 -04:00
Jesse Plamondon-Willard
cb11f1e2ca
re-add internal content manager for asset propagation
...
This will be used by the new asset propagation in SMAPI 4.0 & Stardew Valley 1.6.
2022-05-18 20:02:12 -04:00
Jesse Plamondon-Willard
3a161a30a7
update for the new CurseForge API
2022-05-18 19:23:26 -04:00
Jesse Plamondon-Willard
5731b015a0
Merge branch 'develop' into stable
2022-05-15 19:14:40 -04:00
Jesse Plamondon-Willard
cd843dc10b
prepare for release
2022-05-15 19:14:28 -04:00
Jesse Plamondon-Willard
3253797cba
fix wiki client not being disposed
2022-05-15 19:13:32 -04:00
Jesse Plamondon-Willard
8505f4ae4d
fix typo
2022-05-15 15:07:52 -04:00
Jesse Plamondon-Willard
048f41244f
reduce performance impact of deprecation warnings
...
Creating a stack is *very* slow, so it should be avoided if possible until after the duplicate-warning check.
2022-05-15 01:54:01 -04:00
Jesse Plamondon-Willard
3a4758dfa6
remove warning for mods which use `dynamic`
2022-05-14 13:32:13 -04:00
Jesse Plamondon-Willard
a9cadc7f32
Merge branch 'develop' into stable
2022-05-12 00:21:52 -04:00
Jesse Plamondon-Willard
e943ae8413
prepare for release
2022-05-12 00:21:46 -04:00
Jesse Plamondon-Willard
5a7422b312
log time change in verbose mode
2022-05-11 22:32:33 -04:00
Jesse Plamondon-Willard
bbe5983acd
rewrite asset operations to reduce allocations
...
• When raising AssetRequested, SMAPI now creates a single event args model and reuses it for each handler.
• There's now a single AssetOperationGroup per asset, which tracks the loaders/editors registered by every mod for that asset.
• The operation group's loader/editor lists are now used directly instead of querying them.
2022-05-11 21:36:45 -04:00
Jesse Plamondon-Willard
42a797a012
don't raise events that have no listeners
...
This mainly avoids allocating event arg objects unnecessarily.
2022-05-11 19:56:45 -04:00
Jesse Plamondon-Willard
077c897d53
replace event.HasListeners() with property
2022-05-11 19:29:57 -04:00
Jesse Plamondon-Willard
05b39b7cd9
cache verbose flag in main update method
2022-05-11 19:26:28 -04:00
Jesse Plamondon-Willard
cae1063ad9
move filtering only used in one place out of managed event
2022-05-11 19:15:22 -04:00
Jesse Plamondon-Willard
45f6743034
optimize raising events for the most common cases
2022-05-11 17:59:44 -04:00
Jesse Plamondon-Willard
d097825c84
fix error when mod loads XNB mod file without extension
2022-05-11 17:25:06 -04:00
Jesse Plamondon-Willard
e14916f962
add error code to SContentLoadException
2022-05-11 17:12:58 -04:00
Jesse Plamondon-Willard
8c8ec6a457
remove unused IsPerformanceCritical event field
2022-05-10 23:05:24 -04:00
Jesse Plamondon-Willard
eb01aa275b
fix asset propagation for player sprite recolor masks
2022-05-10 18:51:37 -04:00
Jesse Plamondon-Willard
7a91cf1cd8
update schema for Content Patcher 1.26.0
2022-05-09 00:18:37 -04:00
Jesse Plamondon-Willard
09f69d986f
Merge branch 'develop' into stable
2022-05-08 20:18:06 -04:00
Jesse Plamondon-Willard
cbe8b597cb
prepare for release
2022-05-08 20:11:02 -04:00
Jesse Plamondon-Willard
f8f8b23799
use records for asset edit operations
2022-05-08 18:50:07 -04:00
Jesse Plamondon-Willard
5f2e83969a
only build AssetWithoutLocale when it's used
2022-05-08 18:37:23 -04:00
Jesse Plamondon-Willard
e2a3fc4f99
avoid [Obsolete] without message for clarity
2022-05-08 18:28:02 -04:00
Jesse Plamondon-Willard
26f95bca63
optimize case where there's no legacy IAssetLoader/IAssetEditor instances
2022-05-08 18:22:35 -04:00
Jesse Plamondon-Willard
b924fbae4b
fix default settings
2022-05-08 12:24:52 -04:00
Jesse Plamondon-Willard
37617e9c26
tweak default settings logic
2022-05-07 23:34:30 -04:00