Ccopilot-cli-release-app[bot]Update SDK snapshot for Copilot CLI 1.0.106-4
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
Update SDK snapshot for Copilot CLI 1.0.100-0 | 20 天前 | |
Update SDK snapshot for Copilot CLI 1.0.106-4 | 3 天前 | |
Rust SDK API review fixes (#1367) | 5 个月前 | |
Rust SDK API review fixes (#1367) | 5 个月前 | |
Update @github/copilot to 1.0.79-5 (#2282) * Update @github/copilot to 1.0.79-5 - Updated nodejs and test harness dependencies - Re-ran code generators - Formatted generated code * Fix generated schema call sites Supply the new optional permission decision context in Java and Rust while preserving legacy behavior. Update Java generated-record coverage for the new skill command name field. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Dmytro Struk <13853051+dmytrostruk@users.noreply.github.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> | 2 个月前 | |
Update SDK snapshot for Copilot CLI 1.0.106-1 | 5 天前 | |
Refactor Rust SDK errors to use structs with a `kind()` method (#1400) * Refactor Rust SDK errors to use structs with a `kind()` method The conventional `#[non_exhaustive] enum Error { ... }` pattern appears safe but creates problems as a library evolves. This PR changes all error types to the struct-with-`kind()` pattern, which also aligns with the Azure SDK for Rust error design. Why not a flat error enum: - `#[non_exhaustive]` on the enum prevents exhaustive matching, but individual variants are still fixed. Adding a field to any variant — even just to improve an error message with a line number or file path — is a breaking change. - Adding context data is harder than it looks. With a flat enum, new fields touch every affected variant and all match arms across the codebase. With a struct, new fields are added in one place and callers who don't use them are unaffected. - A single enum conflates all failure modes, making it impossible to document or guarantee which variants a given function can actually return. Callers must handle unrelated variants they will never see, or accept a wildcard arm that silently swallows future additions. The struct + kind pattern: | Concern | Flat enum | Struct + `kind()` | |---|---|---| | Categorization | Match directly on variant | Call `.kind()` → `&*Kind` | | Adding context | Breaking: add fields to variant | Non-breaking: add fields to struct | | `non_exhaustive` | On enum; variants are fixed | Not needed on struct with only private fields | | Simple display | Must match all variants | `format!("{err}")` — no match needed | Callers who only want to display or propagate an error with `?` do not need to call `.kind()` at all. Only callers who need to inspect the failure category call `.kind()`, and they get a stable, scoped `*Kind` enum to match against. * Remove unnecessary error structs Sticking with `*Kind` as a convention for error enums. * Add backtrace support to Error struct Enhanced the Error struct to include an optional backtrace, which is captured only when `RUST_BACKTRACE` is set. This change helps in debugging by providing context on error occurrences without inflating the Error size unnecessarily. * Resolve PR feedback | 5 个月前 | |
Rust SDK API review fixes (#1367) | 5 个月前 |