mirror of
https://github.com/larksuite/cli.git
synced 2026-07-07 17:45:15 +08:00
Nudge users whose lark-sheets skill predates the refactor to migrate off the pre-refactor aliases (+read, +write, ...), without requiring anyone to read --help. - internal/deprecation: process-level pending Notice slot (mirrors internal/skillscheck), surfaced in the JSON "_notice" envelope under a "deprecated_command" key. - internal/cmdutil: shared DeprecatedGroupID cobra group + helper so both --help rendering and the unknown-subcommand path classify aliases the same way. - shortcuts/register.go: applySheetsCompatGroups splits the aliases into a dedicated "update your skill" help group with "(-> +new)" pointers; wrapSheetsBackwardDeprecation records the notice from Validate/Execute so direct callers that never read --help still get flagged. - cmd/root.go: extract composePendingNotice (now unit-testable) and split availableSubcommandNames into current vs deprecated buckets while still ranking unknown-subcommand suggestions across both.
19 lines
705 B
Go
19 lines
705 B
Go
// Copyright (c) 2026 Lark Technologies Pte. Ltd.
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
package cmdutil
|
|
|
|
import "github.com/spf13/cobra"
|
|
|
|
// DeprecatedGroupID is the cobra GroupID that marks a backward-compatibility
|
|
// command — one kept alive for users whose skill predates a refactor. Service
|
|
// registration assigns it (e.g. the sheets pre-refactor aliases); both --help
|
|
// rendering and unknown-subcommand suggestions read it to separate these
|
|
// aliases from the current commands.
|
|
const DeprecatedGroupID = "deprecated"
|
|
|
|
// IsDeprecatedCommand reports whether c was tagged into the deprecated group.
|
|
func IsDeprecatedCommand(c *cobra.Command) bool {
|
|
return c != nil && c.GroupID == DeprecatedGroupID
|
|
}
|