Commit Graph

459 Commits

Author SHA1 Message Date
Jesse Plamondon-Willard ae44f17205 fix installer not moving mods out of appdata if the game isn't installed on the same Windows partition (#184) 2016-12-07 22:43:05 -05:00
Jesse Plamondon-Willard 860ccb90f7 fix the installer not removing TrainerMod from appdata if it's already in the game mods folder 2016-12-07 22:17:38 -05:00
Jesse Plamondon-Willard 2c11ce1bff add TypeLoadException details when intercepted by SMAPI 2016-12-07 22:05:14 -05:00
Jesse Plamondon-Willard b019dd4f69 replace out_items, out_melee, and out_rings commands with a searchable list_items command 2016-12-07 20:36:28 -05:00
Jesse Plamondon-Willard f0433e5a41 tweak installer wording to avoid confusion 2016-12-06 22:19:38 -05:00
Jesse Plamondon-Willard b751e7dd2e skip mod folder with a warning if it has no manifest (#186) 2016-12-06 17:29:38 -05:00
Jesse Plamondon-Willard 748e45aefb add dependencies.targets to project 2016-12-06 17:13:57 -05:00
Jesse Plamondon-Willard 09f6620433 update release notes 2016-12-06 00:45:22 -05:00
Jesse Plamondon-Willard 8304227cea remove obsolete mods/.cache directory on install (#187, #188) 2016-12-06 00:41:12 -05:00
Jesse Plamondon-Willard f625fd51a0 always clean up files during install (#188) 2016-12-06 00:37:12 -05:00
Jesse Plamondon-Willard 3159436145 reimplement assembly caching (#187)
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-05 23:51:09 -05:00
Jesse Plamondon-Willard 31301988e9 deploy trainer mod when building SMAPI in debug mode 2016-12-05 02:14:25 -05:00
Jesse Plamondon-Willard aaf354761f Merge branch 'develop' into stable 2016-12-04 09:43:58 -05:00
Jesse Plamondon-Willard 48adbe2492 update for 1.3 release 2016-12-04 09:40:34 -05:00
Jesse Plamondon-Willard feb2d89ff6 fix comment headers 2016-12-04 00:57:32 -05:00
Jesse Plamondon-Willard ba32511fc2 update repository 2016-12-04 00:56:08 -05:00
Jesse Plamondon-Willard 788a90674f reduce logging levels (#166) 2016-12-02 17:46:07 -05:00
Jesse Plamondon-Willard ad773a947a fix assembly resolution when mods try to load types from other mods (#166) 2016-12-02 17:15:52 -05:00
Jesse Plamondon-Willard 67feb7e9a9 remove Costura assembly weaving (#166)
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-12-01 01:48:39 -05:00
Jesse Plamondon-Willard 33f46d26f4 invalidate assembly rewrite cache on new SMAPI version (#166) 2016-11-30 22:51:50 -05:00
Jesse Plamondon-Willard 44dfb6fac5 fix assembly resolution failing for rewritten mods that reference a different version of Json.NET (#166) 2016-11-30 22:44:40 -05:00
Jesse Plamondon-Willard 0fcf29d428 fix local deployment on Linux/Mac 2016-11-30 14:04:06 -05:00
Jesse Plamondon-Willard 5c11483b8e rework uninstaller so it doesn't depend on install package
For example, this avoids an issue where the normal SMAPI uninstaller didn't remove files added by the 'SMAPI for developers' installer.
2016-11-29 19:42:27 -05:00
Jesse Plamondon-Willard 7e17005c52 update readme & installer for 1.3 (#166) 2016-11-29 19:41:58 -05:00
Jesse Plamondon-Willard df8f44c704 Merge branch 'feature/rewrite-mod-assemblies' into develop 2016-11-29 19:27:10 -05:00
Jesse Plamondon-Willard d5932a0d77 enable local SMAPI deployment on Linux/Mac 2016-11-29 19:25:51 -05:00
Jesse Plamondon-Willard 98a3289337 update release notes (#166) 2016-11-29 19:24:00 -05:00
Jesse Plamondon-Willard 528a934786 exclude rewriters project from IL weaving (#166) 2016-11-29 19:22:59 -05:00
Jesse Plamondon-Willard 9ff9d02db5 rewrite SpriteBatch.Begin calls for compatibility (#166) 2016-11-29 19:21:11 -05:00
Jesse Plamondon-Willard cc4d3c1cf8 add framework for rewriting incompatible methods (#166) 2016-11-29 14:03:14 -05:00
Jesse Plamondon-Willard 5470e95bf5 add separate project to support upcoming IL rewriting (#166) 2016-11-29 14:02:59 -05:00
Jesse Plamondon-Willard b425e32055 move dependencies into targets file for reuse (#166) 2016-11-29 12:56:03 -05:00
Jesse Plamondon-Willard f3675aa466 move assembly map into constants (#166) 2016-11-28 20:51:57 -05:00
Jesse Plamondon-Willard f7b8879011 supplement assembly resolution for Mono (#166) 2016-11-27 15:56:47 -05:00
Jesse Plamondon-Willard 0d94c628bb add trace logs when rewriting an assembly (#166) 2016-11-27 12:27:44 -05:00
Jesse Plamondon-Willard 8917fb6697 only rewrite assemblies if needed (#166) 2016-11-27 12:08:00 -05:00
Jesse Plamondon-Willard 2e40ad7ad3 copy pdb/mdb files to assembly cache (#166) 2016-11-26 16:26:36 -05:00
Jesse Plamondon-Willard 2154b6de95 use simpler, non-broken approach for rewriting mod type references (#166) 2016-11-26 16:14:10 -05:00
Jesse Plamondon-Willard b06aed66c4 rewrite type references in mod assemblies to match target platform (#166) 2016-11-26 16:12:21 -05:00
Jesse Plamondon-Willard 4df1999855 move cache struct into its own file (#166) 2016-11-26 16:10:41 -05:00
Jesse Plamondon-Willard 1de8dc1b0f pass target platform to assembly rewriter for later use (#166) 2016-11-26 16:07:21 -05:00
Jesse Plamondon-Willard 7bea3c2ba0 add log entry when preprocessing an assembly (#166) 2016-11-26 16:00:02 -05:00
Jesse Plamondon-Willard e9fee3f6fe preprocess all mod assemblies for compatibility with multi-assembly mods (#166) 2016-11-26 13:14:26 -05:00
Jesse Plamondon-Willard 08d5ee293f simplify manifest.json path check 2016-11-26 13:14:26 -05:00
Jesse Plamondon-Willard 517a9d82fc preprocess mods through Mono.Cecil to allow rewriting later (#166) 2016-11-25 23:41:19 -05:00
Jesse Plamondon-Willard 00a3c14446 fix audio error on startup for some players by deferring update check 2016-11-24 12:43:28 -05:00
Jesse Plamondon-Willard c49f6f26bd fix release notes log link 2016-11-24 12:22:00 -05:00
Jesse Plamondon-Willard 614de95a8e update for 1.2 release 2016-11-24 12:19:57 -05:00
Jesse Plamondon-Willard 3d1123837c tweak readme 2016-11-24 12:04:11 -05:00
Jesse Plamondon-Willard 0ed5f3e98e fix compatibility with mods which use the previous signature of Command.CallCommand 2016-11-23 20:44:49 -05:00