From 0127fae182cd274dfbc4792d1cf1c2cf5cb58406 Mon Sep 17 00:00:00 2001 From: cneicy Date: Fri, 6 Nov 2026 19:13:11 +0800 Subject: [PATCH] feat: update Godot integration and coordinated package dependencies --- CHANGELOG.md | 11 ++++++++ DotNet~/Runtime/ShrinkBasicComposition.cs | 10 ++++++-- DotNet~/ShrinkSDK.App.Starter.Basic.csproj | 14 +++++------ Runtime/ShrinkAppBasicContextComposition.cs | 10 +++++++- package.json | 28 ++++++++++----------- 5 files changed, 49 insertions(+), 24 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0de0b37..6149bd3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,17 @@ 本文件记录 `ShrinkApp.Starter.Basic` 的包内变更。 +## [0.4.0] - 2026-11-06 + +### Added + +- `ShrinkBasicComposition.CreateEntries(...)` 接受 `ShrinkDataSaverAppModuleConfig`,可把自定义存储或运行时配置传入默认组合。 +- `ShrinkAppBasicContextComposition.Configure(host, ShrinkDataSaverRuntimeConfig)` 支持在 Context 组合中覆盖 DataSaver 配置。 + +### Changed + +- 默认组合升级到 `ShrinkDataSaver 2.5.0` 与 `ShrinkDataSaver.Integration.App 0.3.0`。 + ## [0.2.2] - 2026-08-28 ### Changed diff --git a/DotNet~/Runtime/ShrinkBasicComposition.cs b/DotNet~/Runtime/ShrinkBasicComposition.cs index 813b350..7ec93ce 100644 --- a/DotNet~/Runtime/ShrinkBasicComposition.cs +++ b/DotNet~/Runtime/ShrinkBasicComposition.cs @@ -22,9 +22,15 @@ public static class ShrinkBasicComposition } public static IReadOnlyList CreateEntries(ShrinkAppServices services, - ShrinkNetworkAppModuleConfig? network = null) => new[] + ShrinkNetworkAppModuleConfig? network = null) => CreateEntries(services, + network, new ShrinkDataSaverAppModuleConfig(services)); + + public static IReadOnlyList CreateEntries(ShrinkAppServices services, + ShrinkNetworkAppModuleConfig? network, + ShrinkDataSaverAppModuleConfig dataSaver) => new[] { - new ShrinkLoaderEntry("datasaver", "shrink.datasaver", services), + new ShrinkLoaderEntry("datasaver", "shrink.datasaver", + dataSaver ?? new ShrinkDataSaverAppModuleConfig(services)), new ShrinkLoaderEntry("command", "shrink.command", services), new ShrinkLoaderEntry("network", "shrink.network", network ?? new ShrinkNetworkAppModuleConfig { diff --git a/DotNet~/ShrinkSDK.App.Starter.Basic.csproj b/DotNet~/ShrinkSDK.App.Starter.Basic.csproj index 53ca25c..1eb1ab8 100644 --- a/DotNet~/ShrinkSDK.App.Starter.Basic.csproj +++ b/DotNet~/ShrinkSDK.App.Starter.Basic.csproj @@ -5,17 +5,17 @@ ShrinkApp.Starter.Basic ShrinkApp.Starter.Basic ShrinkSDK.App.Starter.Basic - 0.3.7 + 0.4.1 Engine-neutral basic ShrinkApp composition. false - - - - - - + + + + + + diff --git a/Runtime/ShrinkAppBasicContextComposition.cs b/Runtime/ShrinkAppBasicContextComposition.cs index 10fc3f2..66e3f87 100644 --- a/Runtime/ShrinkAppBasicContextComposition.cs +++ b/Runtime/ShrinkAppBasicContextComposition.cs @@ -5,6 +5,7 @@ using System.Linq; using ShrinkCommand.Integration.App; using ShrinkCommand.Integration; using ShrinkContext.AppAdapter; +using ShrinkDataSaver; using ShrinkDataSaver.Integration.App; using ShrinkDataSaver.Integration; using ShrinkNetwork.Integration.App; @@ -39,13 +40,20 @@ namespace ShrinkApp.Starter.Basic } public static void Configure(ShrinkAppLoaderHost host) + { + Configure(host, null); + } + + public static void Configure(ShrinkAppLoaderHost host, + ShrinkDataSaverRuntimeConfig? dataSaverRuntimeConfig) { if (host == null) throw new System.ArgumentNullException(nameof(host)); RegisterOrReplace(host, "shrink.network", static () => new ShrinkNetworkAppComponent()); RegisterOrReplace(host, "shrink.command", static () => new ShrinkCommandAppComponent()); - RegisterOrReplace(host, "shrink.datasaver", static () => new ShrinkDataSaverAppComponent()); + RegisterOrReplace(host, "shrink.datasaver", + () => new ShrinkDataSaverAppComponent(dataSaverRuntimeConfig)); host.AddModuleComponent("shrink.integration.command-network", static () => new ShrinkCommandNetworkIntegrationComponent()); host.AddModuleComponent("shrink.integration.command-eventbus", diff --git a/package.json b/package.json index 65910a1..b298e6e 100644 --- a/package.json +++ b/package.json @@ -1,23 +1,23 @@ { "name": "com.cneicy.shrink-app-starter-basic", - "version": "0.3.7", + "version": "0.4.1", "displayName": "ShrinkApp Starter Basic", "description": "ShrinkApp 最小起盘 Starter,提供向导、入口场景和 DataSaver 示例。", "unity": "2022.3", "dependencies": { - "com.cneicy.shrink-app-core": "0.2.3", - "com.cneicy.shrink-context-core": "0.3.0", - "com.cneicy.shrink-context-app-adapter": "0.2.4", - "com.cneicy.shrink-command": "0.4.2", - "com.cneicy.shrink-command-integration-app": "0.2.5", - "com.cneicy.shrink-datasaver": "2.4.0", - "com.cneicy.shrink-datasaver-integration-app": "0.2.5", - "com.cneicy.shrink-network": "0.4.2", - "com.cneicy.shrink-network-integration-app": "0.2.5", - "com.cneicy.shrink-command-integration-eventbus": "0.2.5", - "com.cneicy.shrink-datasaver-integration-eventbus": "2.2.5", - "com.cneicy.shrink-network-integration-eventbus": "0.2.5", - "com.cneicy.shrink-command-integration-network": "0.2.5", + "com.cneicy.shrink-app-core": "0.2.4", + "com.cneicy.shrink-context-core": "0.3.1", + "com.cneicy.shrink-context-app-adapter": "0.2.5", + "com.cneicy.shrink-command": "0.4.3", + "com.cneicy.shrink-command-integration-app": "0.2.6", + "com.cneicy.shrink-datasaver": "2.5.0", + "com.cneicy.shrink-datasaver-integration-app": "0.3.1", + "com.cneicy.shrink-network": "0.4.3", + "com.cneicy.shrink-network-integration-app": "0.2.6", + "com.cneicy.shrink-command-integration-eventbus": "0.2.6", + "com.cneicy.shrink-datasaver-integration-eventbus": "2.2.6", + "com.cneicy.shrink-network-integration-eventbus": "0.2.6", + "com.cneicy.shrink-command-integration-network": "0.2.6", "com.unity.ugui": "1.0.0", "com.cysharp.unitask": "2.5.10" },