feat: 公开宿主组合加载 API、Forge 风格依赖版本区间与加载顺序、程序集解析策略
Publish UPM package / publish (push) Successful in 3s
Publish NuGet packages / publish (push) Successful in 2m18s

- ShrinkModComponentDiscovery.Discover 公开:只发现、不执行生命周期
- ShrinkModLoader.LoadComposed / ShrinkModCordisRuntime.ApplyComposedAsync:宿主提供元数据组合加载,支持纯数据包与 IShrinkModWrapper 公开真实实例
- 公开 TryAttachEventBusInstance,随生命周期逆操作释放
- 依赖新增 VersionRange(Maven/Forge 区间语法)与 Ordering(Before/After)
- AssemblyResolvePolicy 可限制跨模组程序集解析
This commit is contained in:
cneicy committed 2026-11-10 07:39:22 +08:00
1 parent 5398036d3b
commit d15bf00512
29 files changed
+917 -132

No files matched your search

+18
View File
@@ -2,6 +2,24 @@
本文件记录 `ShrinkModFramework` 在当前工作区中的包内变更。
## [0.3.8] - 2026-11-10
### Added
- 公开 `ShrinkModComponentDiscovery.Discover`,从显式授权 DLL 列表生成延迟组件源,保留 SHA-256 revision;发现不运行生命周期或提交当前 revision。
- 新增 `ShrinkModLoader.LoadComposed` 与 `ShrinkModCordisRuntime.ApplyComposedAsync`,复用 ContextHost 可逆生命周期、依赖排序、热替换和失败恢复。
- 新增源的 `WithMetadata` / `CreateDataOnly` 和 `IShrinkModWrapper.PublicInstance`,支持清单依赖、无入口数据包及真实实例句柄。
- 公开 `TryAttachEventBusInstance`;组合加载自动绑定公开实例,失败、替换及卸载时释放。
- 依赖支持 Maven 风格版本区间、并集及 None/Before/After 排序;保留 minimumVersion 和原三参数构造函数。
- 新增 `AssemblyResolvePolicy`,按请求程序集、请求名称和授权候选路径限制解析。
- 新增宿主组合回归测试与 `Tools~/HostTests` 独立 .NET harness。
### Changed
- 清单元数据或排序前驱变化会重新协调对应组件;宿主组合由宿主重新提交,内置 watcher 不覆盖清单。
- 恢复旧组件前先恢复程序集解析 revision,保证回滚实例使用旧解析集合。
- UPM 与共享 NuGet 升级至 0.3.8;Godot 适配 NuGet 升至 0.1.7,以发布新的共享依赖引用。
## [0.2.4] - 2026-08-28
### Changed