Age | Commit message (Collapse) | Author | |
---|---|---|---|
2017-02-09 | remove Mono.Cecil.Rocks (#231) | Jesse Plamondon-Willard | |
It's not needed since we're not injecting new instructions, and causes the field rewriters to fail unexpectedly. | |||
2017-02-07 | clean up more obsolete code (#231) | Jesse Plamondon-Willard | |
2017-02-07 | add reflectionHelper.GetPrivateProperty<T> (#231) | Jesse Plamondon-Willard | |
2017-02-07 | remove oldest deprecated code (#231) | Jesse Plamondon-Willard | |
Since Stardew Valley 1.2 breaks most mods anyway, this commits removes the oldest deprecations and fixes the issues that are easiest for mods to update. See documentation for details. | |||
2017-02-02 | rewrite mod assembly loading (#229) | Jesse Plamondon-Willard | |
This greatly simplifies mod loading, eliminates the .cache folders by loading assemblies in memory, ensures DLLs are loaded in leaf-to-root order, and reduces log verbosity. These changes should address a range of issues, notably #221 and #226. | |||
2017-01-19 | add public mod registry (#220) | Jesse Plamondon-Willard | |
2017-01-15 | add save events (#215) | Jesse Plamondon-Willard | |
2016-12-22 | skip mods known to be incompatible and display error with update links (#192) | Jesse Plamondon-Willard | |
2016-12-22 | move models into namespace (#192) | Jesse Plamondon-Willard | |
2016-12-22 | track loaded mod instances & manifests via mod registry (#201) | Jesse Plamondon-Willard | |
2016-12-21 | rename SMAPI config file for consistency (#192, #202) | Jesse Plamondon-Willard | |
2016-12-18 | migrate manifest & version to interfaces with backwards compatibility (#197) | Jesse Plamondon-Willard | |
2016-12-18 | format code (#193) | Jesse Plamondon-Willard | |
2016-12-12 | fix System.Runtime.Caching not available on Mac | Jesse Plamondon-Willard | |
2016-12-11 | move interfaces into root (#185) | Jesse Plamondon-Willard | |
2016-12-09 | remove redundant output paths | Jesse Plamondon-Willard | |
2016-12-09 | cache reflection lookups with sliding expiry (#185) | Jesse Plamondon-Willard | |
2016-12-09 | add reflection API for mods (#185) | Jesse Plamondon-Willard | |
2016-12-07 | rename .targets file to better reflect contents, add to installer project | Jesse Plamondon-Willard | |
2016-12-05 | reimplement assembly caching (#187) | Jesse Plamondon-Willard | |
This commit ensures DLLs are copied to the cache directory only if they changed, to avoid breaking debugging support unless necessary. To support this change, the assembly hash file has been replaced with a more detailed JSON structure, which is used to determine whether the cache is up-to-date and whether to use the cached or original assembly. Some mods contain multiple DLLs, which must be kept together to prevent assembly resolution issues; to simplify that (and avoid orphaned cache entries), each mod now has its own separate cache. | |||
2016-12-01 | remove Costura assembly weaving (#166) | Jesse Plamondon-Willard | |
This didn't work on Linux or Mac, caused assembly resolution problems when rewritten mods referenced Json.NET, complicated debugging, and wasn't really needed since players use the installer to cleanly add or remove SMAPI. | |||
2016-11-30 | fix local deployment on Linux/Mac | Jesse Plamondon-Willard | |
2016-11-29 | Merge branch 'feature/rewrite-mod-assemblies' into develop | Jesse Plamondon-Willard | |
2016-11-29 | enable local SMAPI deployment on Linux/Mac | Jesse Plamondon-Willard | |
2016-11-29 | add framework for rewriting incompatible methods (#166) | Jesse Plamondon-Willard | |
2016-11-29 | add separate project to support upcoming IL rewriting (#166) | Jesse Plamondon-Willard | |
2016-11-29 | move dependencies into targets file for reuse (#166) | Jesse Plamondon-Willard | |
2016-11-27 | supplement assembly resolution for Mono (#166) | Jesse Plamondon-Willard | |
2016-11-26 | rewrite type references in mod assemblies to match target platform (#166) | Jesse Plamondon-Willard | |
2016-11-26 | move cache struct into its own file (#166) | Jesse Plamondon-Willard | |
2016-11-26 | pass target platform to assembly rewriter for later use (#166) | Jesse Plamondon-Willard | |
2016-11-25 | preprocess mods through Mono.Cecil to allow rewriting later (#166) | Jesse Plamondon-Willard | |
2016-11-21 | intercept event handler exceptions (#179) | Jesse Plamondon-Willard | |
2016-11-19 | restore obsolete SPlayer for backwards compatibility, mark deprecated | Jesse Plamondon-Willard | |
2016-11-17 | add global assembly info | Jesse Plamondon-Willard | |
2016-11-16 | use interface for IModHelper | Jesse Plamondon-Willard | |
2016-11-14 | add new logging framework (#168) | Jesse Plamondon-Willard | |
2016-11-13 | split mod registry out of deprecation manager for reuse (#168) | Jesse Plamondon-Willard | |
2016-11-09 | fix Windows-only build configuration not properly marked as such | Jesse Plamondon-Willard | |
2016-11-09 | restore obsolete interfaces for backwards compatibility with EntoFramework | Jesse Plamondon-Willard | |
2016-11-09 | simplify debugging | Jesse Plamondon-Willard | |
2016-11-06 | add developer mode which shows all deprecation warnings, update release ↵ | Jesse Plamondon-Willard | |
process (#165) | |||
2016-11-06 | use more nuanced deprecation warnings (#165) | Jesse Plamondon-Willard | |
2016-11-05 | restore removed extensions for backwards compatibility | Jesse Plamondon-Willard | |
2016-11-05 | add deprecation warnings (#165) | Jesse Plamondon-Willard | |
2016-11-05 | add new config system, mark previous methods obsolete (#159) | Jesse Plamondon-Willard | |
2016-11-04 | make log writer internal (not meant for use outside SMAPI) | Jesse Plamondon-Willard | |
2016-11-04 | remove extensions from public interface, refactor & document | Jesse Plamondon-Willard | |
2016-11-04 | normalise inconsistent line endings | Jesse Plamondon-Willard | |
2016-11-03 | add crossplatform installer (#155) | Jesse Plamondon-Willard | |