Sparkdo.Runtime.Sdk 0.0.1-preview.7

This is a prerelease version of Sparkdo.Runtime.Sdk.
dotnet add package Sparkdo.Runtime.Sdk --version 0.0.1-preview.7
                    
NuGet\Install-Package Sparkdo.Runtime.Sdk -Version 0.0.1-preview.7
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Sparkdo.Runtime.Sdk" Version="0.0.1-preview.7" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Sparkdo.Runtime.Sdk" Version="0.0.1-preview.7" />
                    
Directory.Packages.props
<PackageReference Include="Sparkdo.Runtime.Sdk" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Sparkdo.Runtime.Sdk --version 0.0.1-preview.7
                    
#r "nuget: Sparkdo.Runtime.Sdk, 0.0.1-preview.7"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Sparkdo.Runtime.Sdk@0.0.1-preview.7
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Sparkdo.Runtime.Sdk&version=0.0.1-preview.7&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=Sparkdo.Runtime.Sdk&version=0.0.1-preview.7&prerelease
                    
Install as a Cake Tool

Sparkdo.Runtime.Sdk

Sparkdo.Runtime.Sdk 是 Sparkdo Runtime 面向应用和扩展项目的构建入口。它只提供 MSBuild 编排和 Generator bridge,不提供运行时程序集,也不复制 Sparkdo.Runtime.Contracts、Sparkdo.Runtime.Build 或 Sparkdo.Runtime.Generators 的协议实现。

使用

应用通常只需引用实际使用的 Runtime 能力包;能力包应将本 SDK 作为可传递依赖带入。迁移期也可以直接引用 SDK:

<ItemGroup>
  <PackageReference Include="Sparkdo.Runtime.Sdk" Version="x.y.z" />
</ItemGroup>

SDK 会识别可执行项目和直接 Runtime 包,自动设置稳定的组合身份并接入现有静态生成器。普通类库、测试项目和显式 SparkdoRuntimeSdkRole=None 不会自动生成组合根。现有 RuntimeSourceId、RuntimeSourceVersion、SparkdoRuntimeCompositionRequired 和手写 RuntimeCatalogItem 仍可作为兼容输入。

可以使用以下只读目标查看判定结果:

dotnet msbuild YourProject.csproj -t:SparkdoRuntimeSdkExplain

SDK 的 nuspec 将 Sparkdo.Runtime.Generators 依赖写为裸版本 0.0.0。按 NuGet 语义,这表示开放下界 >= 0.0.0,不绑定 SDK 发布版本,也没有最大版本。NuGet 根据完整依赖图解析最终版本;消费者的 packages.lock.json 只负责复现该解析结果。SDK 不选择、锁定、降级或升级 Generators 版本。该稳定下界不会自动选择预发布 Generators;需要预发布 Generators 时,消费者必须显式引用所需版本。

SDK bridge 会读取 NuGet 已还原的 project.assets.json,只验证最终选中的包是否声明可兼容的 Generator Protocol、是否具备所需能力、必需资产和确定性指纹。协议主版本不匹配、资产缺失或能力不足时构建失败关闭;NuGet 包版本本身不参与 bridge 的兼容性判断。

Runtime 能力包作者只需在 runtime/sparkdo.runtime.json 中声明能力语义。若该包还要求另一个 Runtime 能力包参与组合,在同一作者清单的顶层增加精确依赖列表:

{
  "schemaVersion": "1.0",
  "requiredRuntimePackages": [
    { "id": "sparkdo.files", "version": "3.0.0" }
  ],
  "owner": { "...": "其余 Owner 字段" }
}

requiredRuntimePackages 只接受精确的 id/version,不接受版本范围、通配符或路径。它描述 Runtime 能力闭包,与 SDK 对 Generators 的开放最低版本依赖是两个不同的约束。SDK 将其写入包内 runtime/sparkdo.runtime.index.json;消费方还会用 restore 图验证该依赖是声明包的直接精确依赖,并沿索引做闭包。普通 NuGet 依赖不会自动激活 Runtime 能力。

There are no supported framework assets in this package.

Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.0.1-preview.7 73 9/7/2026