# v1.7.2 AC10 —— `dist` 工作区配置(`cargo dist plan` 可跑之前提)
#
# 用法: `dist plan`(本机 · 二进制名 `dist`)/ `cargo dist plan`(`cargo-dist` 名在位时)
# 承 AC10: ① `plan` `rc=0` ∧ 其工件数 ≥ `1`(**空集即失真** —— 见 `scripts/sbom_gate.sh`);
# ② `cargo-cyclonedx` 输出 `SBOM`(格式显名)。
# ★ 本档系 `dist init -y` 之产物 + 本席四处**具名**之裁(非照抄默认值); 逐条载由于下。
[workspace]
members = ["cargo:."]
# Config for 'dist'
[dist]
# 钉 CI 侧 `dist` 版本 —— 本仓判据面须【可复现】⇒ 禁以「装上什么用什么」。
cargo-dist-version = "0.32.0"
# ★ 裁一: `ci = []`(**非** `dist init` 之默认 `"github"`)—— 具名其由:
# ① `ci = "github"` 须 `repository` 键且**指向 GitHub**; 而本仓托管于 `gitcode.com`
# ⇒ 本席一手实证(探针面 · **二态**):
# · 旧址时代(`repository = "https://gitcode.com/kemeng1/xwcode"`)⇒ `dist plan` `rc=255`
# `× GitHub CI support requires a GitHub repository` /
# `╰─▶ Your repository URL … couldn't be parsed. help: Only GitHub URLs are supported at the moment.`
# · ★ `M6` 仓切换后**复跑**(`repository = "https://gitcode.com/xuanwu-code/xwcode"`)⇒ `dist plan` `rc=255`
# `× Github CI support requires you to specify the URL of your repository` /
# `help: Set the repository = "https://github.com/..." key in these manifests: …/Cargo.toml`
# ⇒ ★ **二态皆 `rc=255`** ⇒ 本仓取 `"github"` 即【结构性恒红】(本版靶心之反面)。
# ★ 并载(照实): 二报文**不同** —— 系 `dist` 之**分支不同**(旧址 URL 可解析而**非 GitHub**
# ⇒ 走「须 GitHub 仓」支; 新址 URL 于 `dist` 之识别面**未中** ⇒ 走「须指定 URL」支)
# ∧ **结论同**(皆 `rc=255`); 二探针皆本席一手, **非**推演。
# ② `ci = "github"` 之效为 `dist generate` **另立发布工作流**(`release.yml`)—— 本版 `AC`
# 只求 `plan` 可跑 ∧ 非空,**不**引入 dist 之发布通道(该通道与既有 `ci.yml` 之发布面
# 并行会成【双发布面】)⇒ 属另一决策,不于本 `AC` 默认夹带。
# ★ 弃案(具名): 立 `repository` 指 GitHub 镜像 —— 本席**无据**证存在该镜像 ⇒ 不臆造。
# ★★ v1.9.5 M4(承审计 F-SC-07)—— 【复跑条件】(本裁之**时效边界**,显名于档):
# `ci = []` 之正性**非**由「二态皆 `rc=255`」单独承之,而由「二态皆红 ⇒ `"github"` 结构性
# 不可用」承之。而后半**依赖 `dist` 之 URL 识别面**(上注 ① 之「分支不同」即该面之现形)
# —— 器升级可改该面 ⇒ 本裁之**前件**可变。
# ⇒ ★ 凡升 `cargo-dist-version`(`:14`)之批,**须同批**复跑二态探针(`ci = "github"` 临时
# 注入 × 新旧址 URL 各一)并留原始读数;若新器于新址 URL 下 `plan` **转绿**,则「`"github"`
# 结构性不可用」之前件**消失** ⇒ 本裁须**重议**(非自动续用)。★ 未复跑即改版本 = 以
# 已失效之前件充现行判据(在册「判据须取自现行处方」之反面)。
ci = []
# ★ 裁二: `installers = []`(同默认)—— 具名其由: 本仓自有 `install.sh`(注入件在 `:314-317`,
# 见 `docs/COMPILATION_GUIDE.md` 与「同名档之多现面」之活副本判据)⇒ 若再取 dist 生成之
# shell/powershell installer,则**双安装面**并存(两处须同步维护)⇒ 不取。
installers = []
# ★ 裁三: `targets` 收窄为 **Linux 二支**(弃 `dist init` 默认之 `apple-darwin` ∧ `windows-msvc`)
# —— 具名其由(逐支载据):
# · `aarch64-unknown-linux-gnu`: 现役部署面(`rust-toolchain.toml` 之 active toolchain =
# `1.89.0-aarch64-unknown-linux-gnu` ∧ 发布部署证据档皆 Linux/aarch64)。
# · `x86_64-unknown-linux-gnu`: 开发机面(`rustup toolchain list` 有
# `stable-x86_64-unknown-linux-gnu`)。
# · `*-apple-darwin` / `*-windows-msvc`: 本仓**无**部署面之据 ⇒ 列入即
# 【规划了不构建之物】(`plan` 会为其列工件 ⇒ 工件数虚增)⇒ 不取。
# ★ 本裁使 `plan` 之工件数与**真实**发布面一致(`2` 平台 × `1` bin + 源 + 校验和)。
targets = ["aarch64-unknown-linux-gnu", "x86_64-unknown-linux-gnu"]