feat: update Godot integration and coordinated package dependencies
Publish UPM package / publish (push) Successful in 3s
Publish NuGet packages / publish (push) Successful in 4m23s

This commit is contained in:
cneicy committed 2026-11-06 19:13:19 +08:00
1 parent 2e03045423
commit 5370a69e0e
7 files changed
+71 -63

No files matched your search

+7
View File
@@ -2,6 +2,13 @@
本文件记录 `ShrinkInstaller` 的包内变更。 本文件记录 `ShrinkInstaller` 的包内变更。
## [0.2.14] - 2026-11-06
### Changed
- 包目录升级到 `ShrinkApp.Starter.Basic 0.4.0`、`ShrinkDataSaver 2.5.0`、`ShrinkDataSaver.Integration.App 0.3.0`、`ShrinkEventBus 2.3.0` 与 `ShrinkRuntime.Abstractions 0.2.0`。
- Godot 安装器升级到 Godot 4.7.2,新增 `ShrinkSDK.EventBus.Godot 0.1.0`,并同步 `ShrinkSDK.Godot 0.2.0`、`ShrinkSDK.EntJoy.Godot 0.1.1`。
## [0.2.6] - 2026-09-05 ## [0.2.6] - 2026-09-05
### Changed ### Changed
+20 -20
View File
@@ -67,70 +67,70 @@ namespace ShrinkSDK.Installer
internal static readonly ShrinkSdkPackageEntry ContextCore = Package( internal static readonly ShrinkSdkPackageEntry ContextCore = Package(
"Context 核心", "可逆效应、响应式依赖与组件生命周期,是框架的组合基础。", "Context 核心", "可逆效应、响应式依赖与组件生命周期,是框架的组合基础。",
"com.cneicy.shrink-context-core", "0.3.0", ShrinkSdkPackageLayer.Context, true); "com.cneicy.shrink-context-core", "0.3.1", ShrinkSdkPackageLayer.Context, true);
internal static readonly ShrinkSdkPackageEntry ContextAppAdapter = Package( internal static readonly ShrinkSdkPackageEntry ContextAppAdapter = Package(
"Context 应用适配", "用 ContextLoader 承载 ShrinkApp 组合根和运行时诊断。", "Context 应用适配", "用 ContextLoader 承载 ShrinkApp 组合根和运行时诊断。",
"com.cneicy.shrink-context-app-adapter", "0.2.4", ShrinkSdkPackageLayer.Context, true); "com.cneicy.shrink-context-app-adapter", "0.2.5", ShrinkSdkPackageLayer.Context, true);
internal static readonly ShrinkSdkPackageEntry ContextEventBusAdapter = Package( internal static readonly ShrinkSdkPackageEntry ContextEventBusAdapter = Package(
"Context 事件适配", "把事件订阅纳入 Context 的安装与自动撤回。", "Context 事件适配", "把事件订阅纳入 Context 的安装与自动撤回。",
"com.cneicy.shrink-context-eventbus-adapter", "0.2.4", ShrinkSdkPackageLayer.Context, true); "com.cneicy.shrink-context-eventbus-adapter", "0.2.5", ShrinkSdkPackageLayer.Context, true);
internal static readonly ShrinkSdkPackageEntry AppCore = Package( internal static readonly ShrinkSdkPackageEntry AppCore = Package(
"应用宿主", "统一启动、服务门面与应用生命周期。", "应用宿主", "统一启动、服务门面与应用生命周期。",
"com.cneicy.shrink-app-core", "0.2.3", ShrinkSdkPackageLayer.Host, true); "com.cneicy.shrink-app-core", "0.2.4", ShrinkSdkPackageLayer.Host, true);
internal static readonly ShrinkSdkPackageEntry StarterBasic = Package( internal static readonly ShrinkSdkPackageEntry StarterBasic = Package(
"基础应用起步包", "默认 Context 组合根,包含命令、存档、网络及其集成。", "基础应用起步包", "默认 Context 组合根,包含命令、存档、网络及其集成。",
"com.cneicy.shrink-app-starter-basic", "0.3.7", ShrinkSdkPackageLayer.Host, true); "com.cneicy.shrink-app-starter-basic", "0.4.1", ShrinkSdkPackageLayer.Host, true);
internal static readonly ShrinkSdkPackageEntry Command = Package( internal static readonly ShrinkSdkPackageEntry Command = Package(
"命令系统", "命令路由、参数、权限与自动注册。", "命令系统", "命令路由、参数、权限与自动注册。",
"com.cneicy.shrink-command", "0.4.2", ShrinkSdkPackageLayer.Feature, true); "com.cneicy.shrink-command", "0.4.3", ShrinkSdkPackageLayer.Feature, true);
internal static readonly ShrinkSdkPackageEntry DataSaver = Package( internal static readonly ShrinkSdkPackageEntry DataSaver = Package(
"存档系统", "异步存档、设置、备份恢复与数据观察。", "存档系统", "异步存档、设置、备份恢复与数据观察。",
"com.cneicy.shrink-datasaver", "2.4.0", ShrinkSdkPackageLayer.Feature, true); "com.cneicy.shrink-datasaver", "2.5.0", ShrinkSdkPackageLayer.Feature, true);
internal static readonly ShrinkSdkPackageEntry EventBus = Package( internal static readonly ShrinkSdkPackageEntry EventBus = Package(
"事件总线", "类型安全事件、请求结果、调度与代码生成。", "事件总线", "类型安全事件、请求结果、调度与代码生成。",
"com.cneicy.shrink-eventbus", "2.2.2", ShrinkSdkPackageLayer.Feature, true); "com.cneicy.shrink-eventbus", "2.3.1", ShrinkSdkPackageLayer.Feature, true);
internal static readonly ShrinkSdkPackageEntry EventBusEntities = Package( internal static readonly ShrinkSdkPackageEntry EventBusEntities = Package(
"Entities 事件适配", "将事件总线接入 Unity Entities。", "Entities 事件适配", "将事件总线接入 Unity Entities。",
"com.cneicy.shrink-eventbus-entities", "0.1.5", ShrinkSdkPackageLayer.Integration, true); "com.cneicy.shrink-eventbus-entities", "0.1.6", ShrinkSdkPackageLayer.Integration, true);
internal static readonly ShrinkSdkPackageEntry ModFramework = Package( internal static readonly ShrinkSdkPackageEntry ModFramework = Package(
"模组框架", "Context 托管的模组生命周期、热替换与外部 DLL 加载。", "模组框架", "Context 托管的模组生命周期、热替换与外部 DLL 加载。",
"com.cneicy.shrink-mod-framework", "0.3.6", ShrinkSdkPackageLayer.Feature, true); "com.cneicy.shrink-mod-framework", "0.3.7", ShrinkSdkPackageLayer.Feature, true);
internal static readonly ShrinkSdkPackageEntry Network = Package( internal static readonly ShrinkSdkPackageEntry Network = Package(
"网络系统", "消息、RPC、权限、序列化与多种传输层。", "网络系统", "消息、RPC、权限、序列化与多种传输层。",
"com.cneicy.shrink-network", "0.4.2", ShrinkSdkPackageLayer.Feature, true); "com.cneicy.shrink-network", "0.4.3", ShrinkSdkPackageLayer.Feature, true);
internal static readonly ShrinkSdkPackageEntry Tutorial = Package( internal static readonly ShrinkSdkPackageEntry Tutorial = Package(
"引导系统", "可复用的步骤式引导、遮罩、锚点与进度存储。", "引导系统", "可复用的步骤式引导、遮罩、锚点与进度存储。",
"com.cneicy.shrink-tutorial", "0.2.0", ShrinkSdkPackageLayer.Feature); "com.cneicy.shrink-tutorial", "0.2.1", ShrinkSdkPackageLayer.Feature);
internal static readonly ShrinkSdkPackageEntry CommandApp = Package( internal static readonly ShrinkSdkPackageEntry CommandApp = Package(
"命令 - 应用集成", "以原生 Context 组件向应用宿主发布命令服务。", "命令 - 应用集成", "以原生 Context 组件向应用宿主发布命令服务。",
"com.cneicy.shrink-command-integration-app", "0.2.5", ShrinkSdkPackageLayer.Integration, true); "com.cneicy.shrink-command-integration-app", "0.2.6", ShrinkSdkPackageLayer.Integration, true);
internal static readonly ShrinkSdkPackageEntry CommandEventBus = Package( internal static readonly ShrinkSdkPackageEntry CommandEventBus = Package(
"命令 - 事件集成", "通过事件总线执行命令并发布执行状态。", "命令 - 事件集成", "通过事件总线执行命令并发布执行状态。",
"com.cneicy.shrink-command-integration-eventbus", "0.2.5", ShrinkSdkPackageLayer.Integration, true); "com.cneicy.shrink-command-integration-eventbus", "0.2.6", ShrinkSdkPackageLayer.Integration, true);
internal static readonly ShrinkSdkPackageEntry CommandNetwork = Package( internal static readonly ShrinkSdkPackageEntry CommandNetwork = Package(
"命令 - 网络集成", "通过网络 RPC 执行远程命令。", "命令 - 网络集成", "通过网络 RPC 执行远程命令。",
"com.cneicy.shrink-command-integration-network", "0.2.5", ShrinkSdkPackageLayer.Integration, true); "com.cneicy.shrink-command-integration-network", "0.2.6", ShrinkSdkPackageLayer.Integration, true);
internal static readonly ShrinkSdkPackageEntry DataSaverApp = Package( internal static readonly ShrinkSdkPackageEntry DataSaverApp = Package(
"存档 - 应用集成", "以原生 Context 组件向应用宿主发布存档服务。", "存档 - 应用集成", "以原生 Context 组件向应用宿主发布存档服务。",
"com.cneicy.shrink-datasaver-integration-app", "0.2.5", ShrinkSdkPackageLayer.Integration, true); "com.cneicy.shrink-datasaver-integration-app", "0.3.1", ShrinkSdkPackageLayer.Integration, true);
internal static readonly ShrinkSdkPackageEntry DataSaverEventBus = Package( internal static readonly ShrinkSdkPackageEntry DataSaverEventBus = Package(
"存档 - 事件集成", "通过事件总线请求读写并观察存档变化。", "存档 - 事件集成", "通过事件总线请求读写并观察存档变化。",
"com.cneicy.shrink-datasaver-integration-eventbus", "2.2.5", ShrinkSdkPackageLayer.Integration, true); "com.cneicy.shrink-datasaver-integration-eventbus", "2.2.6", ShrinkSdkPackageLayer.Integration, true);
internal static readonly ShrinkSdkPackageEntry NetworkApp = Package( internal static readonly ShrinkSdkPackageEntry NetworkApp = Package(
"网络 - 应用集成", "以原生 Context 组件向应用宿主发布网络服务。", "网络 - 应用集成", "以原生 Context 组件向应用宿主发布网络服务。",
"com.cneicy.shrink-network-integration-app", "0.2.5", ShrinkSdkPackageLayer.Integration, true); "com.cneicy.shrink-network-integration-app", "0.2.6", ShrinkSdkPackageLayer.Integration, true);
internal static readonly ShrinkSdkPackageEntry NetworkEventBus = Package( internal static readonly ShrinkSdkPackageEntry NetworkEventBus = Package(
"网络 - 事件集成", "把网络消息与事件请求桥接为可撤回的 Context 组件。", "网络 - 事件集成", "把网络消息与事件请求桥接为可撤回的 Context 组件。",
"com.cneicy.shrink-network-integration-eventbus", "0.2.5", ShrinkSdkPackageLayer.Integration, true); "com.cneicy.shrink-network-integration-eventbus", "0.2.6", ShrinkSdkPackageLayer.Integration, true);
internal static readonly ShrinkSdkPackageEntry SharedCodeGen = Package( internal static readonly ShrinkSdkPackageEntry SharedCodeGen = Package(
"共享代码生成", "各功能包使用的编译期注册表基础设施。", "共享代码生成", "各功能包使用的编译期注册表基础设施。",
"com.cneicy.shrink-shared-codegen", "0.2.1", ShrinkSdkPackageLayer.Tooling); "com.cneicy.shrink-shared-codegen", "0.2.1", ShrinkSdkPackageLayer.Tooling);
internal static readonly ShrinkSdkPackageEntry RuntimeAbstractions = Package( internal static readonly ShrinkSdkPackageEntry RuntimeAbstractions = Package(
"运行时抽象", "Unity 与其他 .NET 宿主共用的平台服务合同。", "运行时抽象", "Unity 与其他 .NET 宿主共用的平台服务合同。",
"com.cneicy.shrink-runtime-abstractions", "0.1.0", ShrinkSdkPackageLayer.Tooling); "com.cneicy.shrink-runtime-abstractions", "0.2.0", ShrinkSdkPackageLayer.Tooling);
internal static readonly IReadOnlyList<ShrinkSdkPackageEntry> Packages = new[] internal static readonly IReadOnlyList<ShrinkSdkPackageEntry> Packages = new[]
{ {
+3 -3
View File
@@ -4,7 +4,7 @@
<EnableDefaultCompileItems>false</EnableDefaultCompileItems> <EnableDefaultCompileItems>false</EnableDefaultCompileItems>
<AssemblyName>ShrinkSDK.Godot.Installer</AssemblyName> <AssemblyName>ShrinkSDK.Godot.Installer</AssemblyName>
<PackageId>ShrinkSDK.Godot.Installer</PackageId> <PackageId>ShrinkSDK.Godot.Installer</PackageId>
<Version>0.1.3</Version> <Version>0.2.0</Version>
<Description>Godot Editor package manager and CodeGen diagnostics for ShrinkSDK.</Description> <Description>Godot Editor package manager and CodeGen diagnostics for ShrinkSDK.</Description>
<IncludeBuildOutput>false</IncludeBuildOutput> <IncludeBuildOutput>false</IncludeBuildOutput>
<SuppressDependenciesWhenPacking>true</SuppressDependenciesWhenPacking> <SuppressDependenciesWhenPacking>true</SuppressDependenciesWhenPacking>
@@ -13,8 +13,8 @@
<ItemGroup> <ItemGroup>
<Compile Include="addons\shrinksdk\*.cs" /> <Compile Include="addons\shrinksdk\*.cs" />
<Compile Include="..\Editor\ShrinkPackageVersion.cs" Link="addons\shrinksdk\ShrinkPackageVersion.cs" /> <Compile Include="..\Editor\ShrinkPackageVersion.cs" Link="addons\shrinksdk\ShrinkPackageVersion.cs" />
<PackageReference Include="GodotSharp" Version="4.6.3" /> <PackageReference Include="GodotSharp" Version="4.7.2" />
<PackageReference Include="GodotSharpEditor" Version="4.6.3" /> <PackageReference Include="GodotSharpEditor" Version="4.7.2" />
<None Include="addons\shrinksdk\plugin.cfg" Pack="true" PackagePath="contentFiles\any\any\addons\shrinksdk\plugin.cfg" BuildAction="None" /> <None Include="addons\shrinksdk\plugin.cfg" Pack="true" PackagePath="contentFiles\any\any\addons\shrinksdk\plugin.cfg" BuildAction="None" />
<None Include="addons\shrinksdk\*.cs" Pack="true" PackagePath="contentFiles\any\any\addons\shrinksdk" BuildAction="None" /> <None Include="addons\shrinksdk\*.cs" Pack="true" PackagePath="contentFiles\any\any\addons\shrinksdk" BuildAction="None" />
<None Include="..\Editor\ShrinkPackageVersion.cs" Pack="true" PackagePath="contentFiles\any\any\addons\shrinksdk\ShrinkPackageVersion.cs" BuildAction="None" /> <None Include="..\Editor\ShrinkPackageVersion.cs" Pack="true" PackagePath="contentFiles\any\any\addons\shrinksdk\ShrinkPackageVersion.cs" BuildAction="None" />
@@ -17,26 +17,27 @@ public static class ShrinkProjectPackageEditor
public static readonly IReadOnlyDictionary<string, string> RecommendedPackages = public static readonly IReadOnlyDictionary<string, string> RecommendedPackages =
new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase) new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase)
{ {
["ShrinkSDK.Godot"] = "0.1.5", ["ShrinkSDK.Godot"] = "0.2.1",
["ShrinkSDK.EventBus"] = "2.2.2", ["ShrinkSDK.EventBus"] = "2.3.1",
["ShrinkSDK.Context.Core"] = "0.3.0", ["ShrinkSDK.EventBus.Godot"] = "0.1.1",
["ShrinkSDK.Command"] = "0.4.2", ["ShrinkSDK.Context.Core"] = "0.3.1",
["ShrinkSDK.Command.Integration.EventBus"] = "0.2.5", ["ShrinkSDK.Command"] = "0.4.3",
["ShrinkSDK.Command.Integration.Network"] = "0.2.5", ["ShrinkSDK.Command.Integration.EventBus"] = "0.2.6",
["ShrinkSDK.Command.Integration.App"] = "0.2.5", ["ShrinkSDK.Command.Integration.Network"] = "0.2.6",
["ShrinkSDK.Network"] = "0.4.2", ["ShrinkSDK.Command.Integration.App"] = "0.2.6",
["ShrinkSDK.Network.Integration.EventBus"] = "0.2.5", ["ShrinkSDK.Network"] = "0.4.3",
["ShrinkSDK.Network.Integration.App"] = "0.2.5", ["ShrinkSDK.Network.Integration.EventBus"] = "0.2.6",
["ShrinkSDK.DataSaver"] = "2.4.0", ["ShrinkSDK.Network.Integration.App"] = "0.2.6",
["ShrinkSDK.DataSaver.Integration.EventBus"] = "2.2.5", ["ShrinkSDK.DataSaver"] = "2.5.0",
["ShrinkSDK.DataSaver.Integration.App"] = "0.2.5", ["ShrinkSDK.DataSaver.Integration.EventBus"] = "2.2.6",
["ShrinkSDK.App.Core"] = "0.2.3", ["ShrinkSDK.DataSaver.Integration.App"] = "0.3.1",
["ShrinkSDK.Context.AppAdapter"] = "0.2.4", ["ShrinkSDK.App.Core"] = "0.2.4",
["ShrinkSDK.App.Starter.Basic"] = "0.3.7", ["ShrinkSDK.Context.AppAdapter"] = "0.2.5",
["ShrinkSDK.ModFramework"] = "0.3.6", ["ShrinkSDK.App.Starter.Basic"] = "0.4.1",
["ShrinkSDK.ModFramework.Godot"] = "0.1.5", ["ShrinkSDK.ModFramework"] = "0.3.7",
["ShrinkSDK.Tutorial"] = "0.2.0", ["ShrinkSDK.ModFramework.Godot"] = "0.1.6",
["ShrinkSDK.Tutorial.Godot"] = "0.1.0" ["ShrinkSDK.Tutorial"] = "0.2.1",
["ShrinkSDK.Tutorial.Godot"] = "0.1.1"
}; };
public static IReadOnlyDictionary<string, string> ReadPackageReferences(string projectPath) public static IReadOnlyDictionary<string, string> ReadPackageReferences(string projectPath)
+1 -1
View File
@@ -3,5 +3,5 @@
name="ShrinkSDK Installer" name="ShrinkSDK Installer"
description="Installs and diagnoses ShrinkSDK NuGet modules and CodeGen weaving." description="Installs and diagnoses ShrinkSDK NuGet modules and CodeGen weaving."
author="ShrinkSDK" author="ShrinkSDK"
version="0.1.1" version="0.2.0"
script="ShrinkGodotInstallerPlugin.cs" script="ShrinkGodotInstallerPlugin.cs"
+2 -2
View File
@@ -20,9 +20,9 @@ https://git.crash.work/ShrinkSDK/Installer.git#main
正式项目应在对应版本发布后将 `main` 换成固定 tag。安装完成后等待 Unity 编译,再打开 `ShrinkSDK/包管理`,选择单个模块或推荐组合。 正式项目应在对应版本发布后将 `main` 换成固定 tag。安装完成后等待 Unity 编译,再打开 `ShrinkSDK/包管理`,选择单个模块或推荐组合。
## Godot 4.6 C# ## Godot 4.7 C#
Godot Installer 源码和 NuGet 打包工程位于 `Godot~`。取得 `ShrinkSDK.Godot.Installer 0.1.3` 后,将包内 `contentFiles/any/any/addons/shrinksdk` 复制到 Godot 项目的 `addons/shrinksdk`,再到 `Project > Project Settings > Plugins` 启用 **ShrinkSDK Installer**。 Godot Installer 源码和 NuGet 打包工程位于 `Godot~`。取得 `ShrinkSDK.Godot.Installer 0.2.0` 后,将包内 `contentFiles/any/any/addons/shrinksdk` 复制到 Godot 项目的 `addons/shrinksdk`,再到 `Project > Project Settings > Plugins` 启用 **ShrinkSDK Installer**。
Godot 面板直接修改项目 `.csproj` 的 `PackageReference`,安全合并项目级 `NuGet.Config`,并可执行 `dotnet restore/build`、显示 CodeGen 织入状态。已安装版本高于目录版本时不会执行降级。 Godot 面板直接修改项目 `.csproj` 的 `PackageReference`,安全合并项目级 `NuGet.Config`,并可执行 `dotnet restore/build`、显示 CodeGen 织入状态。已安装版本高于目录版本时不会执行降级。
+17 -17
View File
@@ -1,21 +1,21 @@
{ {
"name": "com.cneicy.shrink-installer", "name": "com.cneicy.shrink-installer",
"version": "0.2.13", "version": "0.2.15",
"displayName": "ShrinkSDK 包管理", "displayName": "ShrinkSDK 包管理",
"description": "基于 UI Toolkit 的 ShrinkSDK 固定版本包管理器,提供安装状态、Context 分层与推荐组合。", "description": "基于 UI Toolkit 的 ShrinkSDK 固定版本包管理器,提供安装状态、Context 分层与推荐组合。",
"unity": "2022.3", "unity": "2022.3",
"documentationUrl": "https://git.crash.work/ShrinkSDK/Installer", "documentationUrl": "https://git.crash.work/ShrinkSDK/Installer",
"changelogUrl": "https://git.crash.work/ShrinkSDK/Installer/src/branch/main/CHANGELOG.md", "changelogUrl": "https://git.crash.work/ShrinkSDK/Installer/src/branch/main/CHANGELOG.md",
"dependencies": { "dependencies": {
"com.unity.nuget.newtonsoft-json": "3.2.2" "com.unity.nuget.newtonsoft-json": "3.2.2"
}, },
"keywords": [ "keywords": [
"shrink", "shrink",
"installer", "installer",
"upm" "upm"
], ],
"author": { "author": {
"name": "cneicy", "name": "cneicy",
"url": "https://git.crash.work/ShrinkSDK" "url": "https://git.crash.work/ShrinkSDK"
} }
} }