3 Commits
Author SHA1 Message Date
cneicy 709d38b7f2 fix: download release SDK directly from Microsoft Blob
Publish NuGet packages / publish (push) Canceled after 0s
Publish UPM package / publish (push) Successful in 3s
2026-11-06 19:26:37 +08:00
cneicy 124de9c732 feat: update Godot integration and coordinated package dependencies 2026-11-06 19:12:56 +08:00
cneicy 5efc172bca chore: align SDK dependencies and document reusable capabilities
Publish UPM package / publish (push) Successful in 2s
Publish NuGet packages / publish (push) Successful in 3m45s
2026-09-29 10:14:31 +08:00
4 changed files with 18 additions and 7 deletions

No files matched your search

+2 -1
View File
@@ -63,7 +63,8 @@ jobs:
const release = metadata.releases.find(item => item.sdk?.version === sdkVersion); const release = metadata.releases.find(item => item.sdk?.version === sdkVersion);
const file = release?.sdk?.files?.find(item => item.rid === 'linux-x64' && item.name.endsWith('.tar.gz')); const file = release?.sdk?.files?.find(item => item.rid === 'linux-x64' && item.name.endsWith('.tar.gz'));
if (!file) throw new Error(`Linux x64 SDK archive not found for ${sdkVersion}`); if (!file) throw new Error(`Linux x64 SDK archive not found for ${sdkVersion}`);
const archiveResponse = await fetch(file.url); const archiveUrl = `https://dotnetcli.blob.core.windows.net/dotnet/Sdk/${sdkVersion}/dotnet-sdk-${sdkVersion}-linux-x64.tar.gz`;
const archiveResponse = await fetch(archiveUrl);
if (!archiveResponse.ok) throw new Error(`SDK download failed: ${archiveResponse.status}`); if (!archiveResponse.ok) throw new Error(`SDK download failed: ${archiveResponse.status}`);
await writeFile('/tmp/dotnet-sdk.tar.gz', new Uint8Array(await archiveResponse.arrayBuffer())); await writeFile('/tmp/dotnet-sdk.tar.gz', new Uint8Array(await archiveResponse.arrayBuffer()));
+3 -3
View File
@@ -5,7 +5,7 @@
<AssemblyName>ShrinkApp.Core.Runtime</AssemblyName> <AssemblyName>ShrinkApp.Core.Runtime</AssemblyName>
<RootNamespace>ShrinkApp</RootNamespace> <RootNamespace>ShrinkApp</RootNamespace>
<PackageId>ShrinkSDK.App.Core</PackageId> <PackageId>ShrinkSDK.App.Core</PackageId>
<Version>0.2.0</Version> <Version>0.2.4</Version>
<Description>ShrinkSDK engine-neutral application composition runtime.</Description> <Description>ShrinkSDK engine-neutral application composition runtime.</Description>
<ShrinkCodeGenEnabled>false</ShrinkCodeGenEnabled> <ShrinkCodeGenEnabled>false</ShrinkCodeGenEnabled>
</PropertyGroup> </PropertyGroup>
@@ -14,7 +14,7 @@
<Compile Include="..\Runtime\ShrinkAppGeneratedRegistry.cs" /> <Compile Include="..\Runtime\ShrinkAppGeneratedRegistry.cs" />
<Compile Include="..\Runtime\ShrinkAppInstallers.cs" /> <Compile Include="..\Runtime\ShrinkAppInstallers.cs" />
<PackageReference Include="UniTask" Version="2.5.10" /> <PackageReference Include="UniTask" Version="2.5.10" />
<PackageReference Include="ShrinkSDK.CodeGen" Version="0.1.0" PrivateAssets="compile;runtime;contentfiles;native" /> <PackageReference Include="ShrinkSDK.CodeGen" Version="0.2.0" PrivateAssets="compile;runtime;contentfiles;native" />
<PackageReference Include="ShrinkSDK.Runtime.Abstractions" Version="0.1.0" /> <PackageReference Include="ShrinkSDK.Runtime.Abstractions" Version="0.2.0" />
</ItemGroup> </ItemGroup>
</Project> </Project>
+10
View File
@@ -36,3 +36,13 @@ IShrinkAppModuleInstaller
4. 先执行 `RegisterServices(...)`,再顺序执行 `InitializeAsync(...)`。 4. 先执行 `RegisterServices(...)`,再顺序执行 `InitializeAsync(...)`。
5. 启动完成后在首场景 `Start()` 阶段发布 `ShrinkAppStartedEvent`。 5. 启动完成后在首场景 `Start()` 阶段发布 `ShrinkAppStartedEvent`。
6. 任一安装器重复、依赖缺失、循环依赖、初始化异常都会 fail-fast。 6. 任一安装器重复、依赖缺失、循环依赖、初始化异常都会 fail-fast。
## 可复用能力
<!-- shrink:capabilities -->
Capability: 统一宿主启动、模块安装器、服务容器与应用生命周期
Aliases: 启动 bootstrap 入口 宿主 app
Limits: 业务状态属于模块;默认采用 ContextLoader;ClassicHost 是兼容模式
Extension: ShrinkAppSettings;IShrinkAppModuleInstaller;ShrinkAppServices
Evidence: [ShrinkAppRuntime](DotNet~/Runtime/ShrinkAppCore.cs); [ShrinkAppServices](DotNet~/Runtime/ShrinkAppCore.cs)
<!-- /shrink:capabilities -->
+3 -3
View File
@@ -1,12 +1,12 @@
{ {
"name": "com.cneicy.shrink-app-core", "name": "com.cneicy.shrink-app-core",
"version": "0.2.0", "version": "0.2.4",
"displayName": "ShrinkApp Core", "displayName": "ShrinkApp Core",
"description": "Shrink 系列统一宿主层,提供模块安装器、服务容器与统一启动流程。", "description": "Shrink 系列统一宿主层,提供模块安装器、服务容器与统一启动流程。",
"unity": "2022.3", "unity": "2022.3",
"dependencies": { "dependencies": {
"com.cneicy.shrink-eventbus": "2.1.0", "com.cneicy.shrink-eventbus": "2.3.1",
"com.cneicy.shrink-shared-codegen": "0.1.1", "com.cneicy.shrink-shared-codegen": "0.2.1",
"com.cysharp.unitask": "2.5.10" "com.cysharp.unitask": "2.5.10"
}, },
"keywords": [ "keywords": [