From efa2f59e6efcd68b70c4710e201f89f6992f9950 Mon Sep 17 00:00:00 2001 From: Claude Date: Tue, 24 Feb 2026 15:37:42 +0000 Subject: [PATCH] chore: replace interface{} with any (Go 1.18+ alias) --- build/buildcmd/cmd_project.go | 8 ++++---- build/buildcmd/cmd_pwa.go | 10 +++++----- cmd/dev/cmd_apply.go | 6 +++--- cmd/dev/cmd_ci.go | 10 +++++----- cmd/dev/cmd_commit.go | 18 +++++++++--------- cmd/dev/cmd_file_sync.go | 8 ++++---- cmd/dev/cmd_health.go | 2 +- cmd/dev/cmd_impact.go | 10 +++++----- cmd/dev/cmd_issues.go | 2 +- cmd/dev/cmd_pull.go | 10 +++++----- cmd/dev/cmd_push.go | 20 ++++++++++---------- cmd/dev/cmd_reviews.go | 8 ++++---- cmd/dev/cmd_vm.go | 18 +++++++++--------- cmd/dev/cmd_work.go | 4 ++-- cmd/dev/cmd_workflow.go | 12 ++++++------ cmd/docs/cmd_list.go | 4 ++-- cmd/docs/cmd_sync.go | 8 ++++---- cmd/qa/cmd_watch.go | 4 ++-- cmd/setup/cmd_github.go | 2 +- cmd/setup/cmd_registry.go | 10 +++++----- cmd/setup/cmd_wizard.go | 2 +- cmd/setup/github_protection.go | 6 +++--- cmd/setup/github_security.go | 4 ++-- cmd/setup/github_webhooks.go | 12 ++++++------ cmd/vm/cmd_container.go | 8 ++++---- cmd/vm/cmd_templates.go | 4 ++-- devops/test.go | 2 +- 27 files changed, 106 insertions(+), 106 deletions(-) diff --git a/build/buildcmd/cmd_project.go b/build/buildcmd/cmd_project.go index 386f1e7..a4b63c1 100644 --- a/build/buildcmd/cmd_project.go +++ b/build/buildcmd/cmd_project.go @@ -48,7 +48,7 @@ func runProjectBuild(ctx context.Context, buildType string, ciMode bool, targets return fmt.Errorf("%s: %w", i18n.T("common.error.failed", map[string]any{"Action": "detect project type"}), err) } if projectType == "" { - return fmt.Errorf("%s", i18n.T("cmd.build.error.no_project_type", map[string]interface{}{"Dir": projectDir})) + return fmt.Errorf("%s", i18n.T("cmd.build.error.no_project_type", map[string]any{"Dir": projectDir})) } } @@ -139,7 +139,7 @@ func runProjectBuild(ctx context.Context, buildType string, ciMode bool, targets } if verbose && !ciMode { - fmt.Printf("%s %s\n", buildSuccessStyle.Render(i18n.T("common.label.success")), i18n.T("cmd.build.built_artifacts", map[string]interface{}{"Count": len(artifacts)})) + fmt.Printf("%s %s\n", buildSuccessStyle.Render(i18n.T("common.label.success")), i18n.T("cmd.build.built_artifacts", map[string]any{"Count": len(artifacts)})) fmt.Println() for _, artifact := range artifacts { relPath, err := filepath.Rel(projectDir, artifact.Path) @@ -260,7 +260,7 @@ func runProjectBuild(ctx context.Context, buildType string, ciMode bool, targets // Minimal output: just success with artifact count fmt.Printf("%s %s %s\n", buildSuccessStyle.Render(i18n.T("common.label.success")), - i18n.T("cmd.build.built_artifacts", map[string]interface{}{"Count": len(artifacts)}), + i18n.T("cmd.build.built_artifacts", map[string]any{"Count": len(artifacts)}), buildDimStyle.Render(fmt.Sprintf("(%s)", outputDir)), ) } @@ -342,7 +342,7 @@ func parseTargets(targetsFlag string) ([]build.Target, error) { osArch := strings.Split(part, "/") if len(osArch) != 2 { - return nil, fmt.Errorf("%s", i18n.T("cmd.build.error.invalid_target", map[string]interface{}{"Target": part})) + return nil, fmt.Errorf("%s", i18n.T("cmd.build.error.invalid_target", map[string]any{"Target": part})) } targets = append(targets, build.Target{ diff --git a/build/buildcmd/cmd_pwa.go b/build/buildcmd/cmd_pwa.go index 1fdc0b6..79a8529 100644 --- a/build/buildcmd/cmd_pwa.go +++ b/build/buildcmd/cmd_pwa.go @@ -147,14 +147,14 @@ func findManifestURL(htmlContent, baseURL string) (string, error) { } // fetchManifest downloads and parses a PWA manifest. -func fetchManifest(manifestURL string) (map[string]interface{}, error) { +func fetchManifest(manifestURL string) (map[string]any, error) { resp, err := http.Get(manifestURL) if err != nil { return nil, err } defer func() { _ = resp.Body.Close() }() - var manifest map[string]interface{} + var manifest map[string]any if err := json.NewDecoder(resp.Body).Decode(&manifest); err != nil { return nil, err } @@ -162,7 +162,7 @@ func fetchManifest(manifestURL string) (map[string]interface{}, error) { } // collectAssets extracts asset URLs from a PWA manifest. -func collectAssets(manifest map[string]interface{}, manifestURL string) []string { +func collectAssets(manifest map[string]any, manifestURL string) []string { var assets []string base, _ := url.Parse(manifestURL) @@ -174,9 +174,9 @@ func collectAssets(manifest map[string]interface{}, manifestURL string) []string } // Add icons - if icons, ok := manifest["icons"].([]interface{}); ok { + if icons, ok := manifest["icons"].([]any); ok { for _, icon := range icons { - if iconMap, ok := icon.(map[string]interface{}); ok { + if iconMap, ok := icon.(map[string]any); ok { if src, ok := iconMap["src"].(string); ok { if resolved, err := base.Parse(src); err == nil { assets = append(assets, resolved.String()) diff --git a/cmd/dev/cmd_apply.go b/cmd/dev/cmd_apply.go index fe9b58e..76502b9 100644 --- a/cmd/dev/cmd_apply.go +++ b/cmd/dev/cmd_apply.go @@ -203,19 +203,19 @@ func runApply() error { cli.Blank() cli.Print("%s: ", i18n.T("cmd.dev.apply.summary")) if succeeded > 0 { - cli.Print("%s", successStyle.Render(i18n.T("common.count.succeeded", map[string]interface{}{"Count": succeeded}))) + cli.Print("%s", successStyle.Render(i18n.T("common.count.succeeded", map[string]any{"Count": succeeded}))) } if skipped > 0 { if succeeded > 0 { cli.Print(", ") } - cli.Print("%s", dimStyle.Render(i18n.T("common.count.skipped", map[string]interface{}{"Count": skipped}))) + cli.Print("%s", dimStyle.Render(i18n.T("common.count.skipped", map[string]any{"Count": skipped}))) } if failed > 0 { if succeeded > 0 || skipped > 0 { cli.Print(", ") } - cli.Print("%s", errorStyle.Render(i18n.T("common.count.failed", map[string]interface{}{"Count": failed}))) + cli.Print("%s", errorStyle.Render(i18n.T("common.count.failed", map[string]any{"Count": failed}))) } cli.Blank() diff --git a/cmd/dev/cmd_ci.go b/cmd/dev/cmd_ci.go index e3ae3c2..84bed12 100644 --- a/cmd/dev/cmd_ci.go +++ b/cmd/dev/cmd_ci.go @@ -146,18 +146,18 @@ func runCI(registryPath string, branch string, failedOnly bool) error { // Print summary cli.Blank() - cli.Print("%s", i18n.T("cmd.dev.ci.repos_checked", map[string]interface{}{"Count": len(repoList)})) + cli.Print("%s", i18n.T("cmd.dev.ci.repos_checked", map[string]any{"Count": len(repoList)})) if success > 0 { - cli.Print(" * %s", ciSuccessStyle.Render(i18n.T("cmd.dev.ci.passing", map[string]interface{}{"Count": success}))) + cli.Print(" * %s", ciSuccessStyle.Render(i18n.T("cmd.dev.ci.passing", map[string]any{"Count": success}))) } if failed > 0 { - cli.Print(" * %s", ciFailureStyle.Render(i18n.T("cmd.dev.ci.failing", map[string]interface{}{"Count": failed}))) + cli.Print(" * %s", ciFailureStyle.Render(i18n.T("cmd.dev.ci.failing", map[string]any{"Count": failed}))) } if pending > 0 { - cli.Print(" * %s", ciPendingStyle.Render(i18n.T("common.count.pending", map[string]interface{}{"Count": pending}))) + cli.Print(" * %s", ciPendingStyle.Render(i18n.T("common.count.pending", map[string]any{"Count": pending}))) } if len(noCI) > 0 { - cli.Print(" * %s", ciSkippedStyle.Render(i18n.T("cmd.dev.ci.no_ci", map[string]interface{}{"Count": len(noCI)}))) + cli.Print(" * %s", ciSkippedStyle.Render(i18n.T("cmd.dev.ci.no_ci", map[string]any{"Count": len(noCI)}))) } cli.Blank() cli.Blank() diff --git a/cmd/dev/cmd_commit.go b/cmd/dev/cmd_commit.go index 11bbb5f..7d95605 100644 --- a/cmd/dev/cmd_commit.go +++ b/cmd/dev/cmd_commit.go @@ -86,17 +86,17 @@ func runCommit(registryPath string, all bool) error { } // Show dirty repos - cli.Print("\n%s\n\n", i18n.T("cmd.dev.repos_with_changes", map[string]interface{}{"Count": len(dirtyRepos)})) + cli.Print("\n%s\n\n", i18n.T("cmd.dev.repos_with_changes", map[string]any{"Count": len(dirtyRepos)})) for _, s := range dirtyRepos { cli.Print(" %s: ", repoNameStyle.Render(s.Name)) if s.Modified > 0 { - cli.Print("%s ", dirtyStyle.Render(i18n.T("cmd.dev.modified", map[string]interface{}{"Count": s.Modified}))) + cli.Print("%s ", dirtyStyle.Render(i18n.T("cmd.dev.modified", map[string]any{"Count": s.Modified}))) } if s.Untracked > 0 { - cli.Print("%s ", dirtyStyle.Render(i18n.T("cmd.dev.untracked", map[string]interface{}{"Count": s.Untracked}))) + cli.Print("%s ", dirtyStyle.Render(i18n.T("cmd.dev.untracked", map[string]any{"Count": s.Untracked}))) } if s.Staged > 0 { - cli.Print("%s ", aheadStyle.Render(i18n.T("cmd.dev.staged", map[string]interface{}{"Count": s.Staged}))) + cli.Print("%s ", aheadStyle.Render(i18n.T("cmd.dev.staged", map[string]any{"Count": s.Staged}))) } cli.Blank() } @@ -128,9 +128,9 @@ func runCommit(registryPath string, all bool) error { } // Summary - cli.Print("%s", successStyle.Render(i18n.T("cmd.dev.done_succeeded", map[string]interface{}{"Count": succeeded}))) + cli.Print("%s", successStyle.Render(i18n.T("cmd.dev.done_succeeded", map[string]any{"Count": succeeded}))) if failed > 0 { - cli.Print(", %s", errorStyle.Render(i18n.T("common.count.failed", map[string]interface{}{"Count": failed}))) + cli.Print(", %s", errorStyle.Render(i18n.T("common.count.failed", map[string]any{"Count": failed}))) } cli.Blank() @@ -170,13 +170,13 @@ func runCommitSingleRepo(ctx context.Context, repoPath string, all bool) error { // Show status cli.Print("%s: ", repoNameStyle.Render(s.Name)) if s.Modified > 0 { - cli.Print("%s ", dirtyStyle.Render(i18n.T("cmd.dev.modified", map[string]interface{}{"Count": s.Modified}))) + cli.Print("%s ", dirtyStyle.Render(i18n.T("cmd.dev.modified", map[string]any{"Count": s.Modified}))) } if s.Untracked > 0 { - cli.Print("%s ", dirtyStyle.Render(i18n.T("cmd.dev.untracked", map[string]interface{}{"Count": s.Untracked}))) + cli.Print("%s ", dirtyStyle.Render(i18n.T("cmd.dev.untracked", map[string]any{"Count": s.Untracked}))) } if s.Staged > 0 { - cli.Print("%s ", aheadStyle.Render(i18n.T("cmd.dev.staged", map[string]interface{}{"Count": s.Staged}))) + cli.Print("%s ", aheadStyle.Render(i18n.T("cmd.dev.staged", map[string]any{"Count": s.Staged}))) } cli.Blank() diff --git a/cmd/dev/cmd_file_sync.go b/cmd/dev/cmd_file_sync.go index 822d1f1..e556da2 100644 --- a/cmd/dev/cmd_file_sync.go +++ b/cmd/dev/cmd_file_sync.go @@ -82,7 +82,7 @@ func runFileSync(source string) error { // Let's stick to os.Stat for source properties finding as typically allowed for CLI args. if err != nil { - return log.E("dev.sync", i18n.T("cmd.dev.file_sync.error.source_not_found", map[string]interface{}{"Path": source}), err) + return log.E("dev.sync", i18n.T("cmd.dev.file_sync.error.source_not_found", map[string]any{"Path": source}), err) } // Find target repos @@ -185,19 +185,19 @@ func runFileSync(source string) error { cli.Blank() cli.Print("%s: ", i18n.T("cmd.dev.file_sync.summary")) if succeeded > 0 { - cli.Print("%s", successStyle.Render(i18n.T("common.count.succeeded", map[string]interface{}{"Count": succeeded}))) + cli.Print("%s", successStyle.Render(i18n.T("common.count.succeeded", map[string]any{"Count": succeeded}))) } if skipped > 0 { if succeeded > 0 { cli.Print(", ") } - cli.Print("%s", dimStyle.Render(i18n.T("common.count.skipped", map[string]interface{}{"Count": skipped}))) + cli.Print("%s", dimStyle.Render(i18n.T("common.count.skipped", map[string]any{"Count": skipped}))) } if failed > 0 { if succeeded > 0 || skipped > 0 { cli.Print(", ") } - cli.Print("%s", errorStyle.Render(i18n.T("common.count.failed", map[string]interface{}{"Count": failed}))) + cli.Print("%s", errorStyle.Render(i18n.T("common.count.failed", map[string]any{"Count": failed}))) } cli.Blank() diff --git a/cmd/dev/cmd_health.go b/cmd/dev/cmd_health.go index 1eda3b1..8eaf53b 100644 --- a/cmd/dev/cmd_health.go +++ b/cmd/dev/cmd_health.go @@ -159,7 +159,7 @@ func formatRepoList(reposList []string) string { if len(reposList) <= 5 { return joinRepos(reposList) } - return joinRepos(reposList[:5]) + " " + i18n.T("cmd.dev.health.more", map[string]interface{}{"Count": len(reposList) - 5}) + return joinRepos(reposList[:5]) + " " + i18n.T("cmd.dev.health.more", map[string]any{"Count": len(reposList) - 5}) } func joinRepos(reposList []string) string { diff --git a/cmd/dev/cmd_impact.go b/cmd/dev/cmd_impact.go index 924d888..241c505 100644 --- a/cmd/dev/cmd_impact.go +++ b/cmd/dev/cmd_impact.go @@ -62,7 +62,7 @@ func runImpact(registryPath string, repoName string) error { // Check repo exists repo, exists := reg.Get(repoName) if !exists { - return errors.New(i18n.T("error.repo_not_found", map[string]interface{}{"Name": repoName})) + return errors.New(i18n.T("error.repo_not_found", map[string]any{"Name": repoName})) } // Build reverse dependency graph @@ -98,7 +98,7 @@ func runImpact(registryPath string, repoName string) error { cli.Blank() if len(allAffected) == 0 { - cli.Print("%s %s\n", impactSafeStyle.Render("v"), i18n.T("cmd.dev.impact.no_dependents", map[string]interface{}{"Name": repoName})) + cli.Print("%s %s\n", impactSafeStyle.Render("v"), i18n.T("cmd.dev.impact.no_dependents", map[string]any{"Name": repoName})) return nil } @@ -106,7 +106,7 @@ func runImpact(registryPath string, repoName string) error { if len(direct) > 0 { cli.Print("%s %s\n", impactDirectStyle.Render("*"), - i18n.T("cmd.dev.impact.direct_dependents", map[string]interface{}{"Count": len(direct)}), + i18n.T("cmd.dev.impact.direct_dependents", map[string]any{"Count": len(direct)}), ) for _, d := range direct { r, _ := reg.Get(d) @@ -123,7 +123,7 @@ func runImpact(registryPath string, repoName string) error { if len(indirect) > 0 { cli.Print("%s %s\n", impactIndirectStyle.Render("o"), - i18n.T("cmd.dev.impact.transitive_dependents", map[string]interface{}{"Count": len(indirect)}), + i18n.T("cmd.dev.impact.transitive_dependents", map[string]any{"Count": len(indirect)}), ) for _, d := range indirect { r, _ := reg.Get(d) @@ -139,7 +139,7 @@ func runImpact(registryPath string, repoName string) error { // Summary cli.Print("%s %s\n", dimStyle.Render(i18n.Label("summary")), - i18n.T("cmd.dev.impact.changes_affect", map[string]interface{}{ + i18n.T("cmd.dev.impact.changes_affect", map[string]any{ "Repo": repoNameStyle.Render(repoName), "Affected": len(allAffected), "Total": len(reg.Repos) - 1, diff --git a/cmd/dev/cmd_issues.go b/cmd/dev/cmd_issues.go index 20bc169..c1b51cd 100644 --- a/cmd/dev/cmd_issues.go +++ b/cmd/dev/cmd_issues.go @@ -117,7 +117,7 @@ func runIssues(registryPath string, limit int, assignee string) error { return nil } - cli.Print("\n%s\n\n", i18n.T("cmd.dev.issues.open_issues", map[string]interface{}{"Count": len(allIssues)})) + cli.Print("\n%s\n\n", i18n.T("cmd.dev.issues.open_issues", map[string]any{"Count": len(allIssues)})) for _, issue := range allIssues { printIssue(issue) diff --git a/cmd/dev/cmd_pull.go b/cmd/dev/cmd_pull.go index 2326fc7..db46288 100644 --- a/cmd/dev/cmd_pull.go +++ b/cmd/dev/cmd_pull.go @@ -81,13 +81,13 @@ func runPull(registryPath string, all bool) error { // Show what we're pulling if all { - cli.Print("\n%s\n\n", i18n.T("cmd.dev.pull.pulling_repos", map[string]interface{}{"Count": len(toPull)})) + cli.Print("\n%s\n\n", i18n.T("cmd.dev.pull.pulling_repos", map[string]any{"Count": len(toPull)})) } else { - cli.Print("\n%s\n\n", i18n.T("cmd.dev.pull.repos_behind", map[string]interface{}{"Count": len(toPull)})) + cli.Print("\n%s\n\n", i18n.T("cmd.dev.pull.repos_behind", map[string]any{"Count": len(toPull)})) for _, s := range toPull { cli.Print(" %s: %s\n", repoNameStyle.Render(s.Name), - dimStyle.Render(i18n.T("cmd.dev.pull.commits_behind", map[string]interface{}{"Count": s.Behind})), + dimStyle.Render(i18n.T("cmd.dev.pull.commits_behind", map[string]any{"Count": s.Behind})), ) } cli.Blank() @@ -110,9 +110,9 @@ func runPull(registryPath string, all bool) error { // Summary cli.Blank() - cli.Print("%s", successStyle.Render(i18n.T("cmd.dev.pull.done_pulled", map[string]interface{}{"Count": succeeded}))) + cli.Print("%s", successStyle.Render(i18n.T("cmd.dev.pull.done_pulled", map[string]any{"Count": succeeded}))) if failed > 0 { - cli.Print(", %s", errorStyle.Render(i18n.T("common.count.failed", map[string]interface{}{"Count": failed}))) + cli.Print(", %s", errorStyle.Render(i18n.T("common.count.failed", map[string]any{"Count": failed}))) } cli.Blank() diff --git a/cmd/dev/cmd_push.go b/cmd/dev/cmd_push.go index 6523f9a..e95846b 100644 --- a/cmd/dev/cmd_push.go +++ b/cmd/dev/cmd_push.go @@ -84,12 +84,12 @@ func runPush(registryPath string, force bool) error { } // Show repos to push - cli.Print("\n%s\n\n", i18n.T("common.count.repos_unpushed", map[string]interface{}{"Count": len(aheadRepos)})) + cli.Print("\n%s\n\n", i18n.T("common.count.repos_unpushed", map[string]any{"Count": len(aheadRepos)})) totalCommits := 0 for _, s := range aheadRepos { cli.Print(" %s: %s\n", repoNameStyle.Render(s.Name), - aheadStyle.Render(i18n.T("common.count.commits", map[string]interface{}{"Count": s.Ahead})), + aheadStyle.Render(i18n.T("common.count.commits", map[string]any{"Count": s.Ahead})), ) totalCommits += s.Ahead } @@ -97,7 +97,7 @@ func runPush(registryPath string, force bool) error { // Confirm unless --force if !force { cli.Blank() - if !cli.Confirm(i18n.T("cmd.dev.push.confirm_push", map[string]interface{}{"Commits": totalCommits, "Repos": len(aheadRepos)})) { + if !cli.Confirm(i18n.T("cmd.dev.push.confirm_push", map[string]any{"Commits": totalCommits, "Repos": len(aheadRepos)})) { cli.Text(i18n.T("cli.aborted")) return nil } @@ -158,9 +158,9 @@ func runPush(registryPath string, force bool) error { // Summary cli.Blank() - cli.Print("%s", successStyle.Render(i18n.T("cmd.dev.push.done_pushed", map[string]interface{}{"Count": succeeded}))) + cli.Print("%s", successStyle.Render(i18n.T("cmd.dev.push.done_pushed", map[string]any{"Count": succeeded}))) if failed > 0 { - cli.Print(", %s", errorStyle.Render(i18n.T("common.count.failed", map[string]interface{}{"Count": failed}))) + cli.Print(", %s", errorStyle.Render(i18n.T("common.count.failed", map[string]any{"Count": failed}))) } cli.Blank() @@ -191,13 +191,13 @@ func runPushSingleRepo(ctx context.Context, repoPath string, force bool) error { if s.IsDirty() { cli.Print("%s: ", repoNameStyle.Render(s.Name)) if s.Modified > 0 { - cli.Print("%s ", dirtyStyle.Render(i18n.T("cmd.dev.modified", map[string]interface{}{"Count": s.Modified}))) + cli.Print("%s ", dirtyStyle.Render(i18n.T("cmd.dev.modified", map[string]any{"Count": s.Modified}))) } if s.Untracked > 0 { - cli.Print("%s ", dirtyStyle.Render(i18n.T("cmd.dev.untracked", map[string]interface{}{"Count": s.Untracked}))) + cli.Print("%s ", dirtyStyle.Render(i18n.T("cmd.dev.untracked", map[string]any{"Count": s.Untracked}))) } if s.Staged > 0 { - cli.Print("%s ", aheadStyle.Render(i18n.T("cmd.dev.staged", map[string]interface{}{"Count": s.Staged}))) + cli.Print("%s ", aheadStyle.Render(i18n.T("cmd.dev.staged", map[string]any{"Count": s.Staged}))) } cli.Blank() cli.Blank() @@ -230,12 +230,12 @@ func runPushSingleRepo(ctx context.Context, repoPath string, force bool) error { // Show commits to push cli.Print("%s: %s\n", repoNameStyle.Render(s.Name), - aheadStyle.Render(i18n.T("common.count.commits", map[string]interface{}{"Count": s.Ahead}))) + aheadStyle.Render(i18n.T("common.count.commits", map[string]any{"Count": s.Ahead}))) // Confirm unless --force if !force { cli.Blank() - if !cli.Confirm(i18n.T("cmd.dev.push.confirm_push", map[string]interface{}{"Commits": s.Ahead, "Repos": 1})) { + if !cli.Confirm(i18n.T("cmd.dev.push.confirm_push", map[string]any{"Commits": s.Ahead, "Repos": 1})) { cli.Text(i18n.T("cli.aborted")) return nil } diff --git a/cmd/dev/cmd_reviews.go b/cmd/dev/cmd_reviews.go index 8a1f3bb..c4d8203 100644 --- a/cmd/dev/cmd_reviews.go +++ b/cmd/dev/cmd_reviews.go @@ -144,15 +144,15 @@ func runReviews(registryPath string, author string, showAll bool) error { } cli.Blank() - cli.Print("%s", i18n.T("cmd.dev.reviews.open_prs", map[string]interface{}{"Count": len(allPRs)})) + cli.Print("%s", i18n.T("cmd.dev.reviews.open_prs", map[string]any{"Count": len(allPRs)})) if pending > 0 { - cli.Print(" * %s", prPendingStyle.Render(i18n.T("common.count.pending", map[string]interface{}{"Count": pending}))) + cli.Print(" * %s", prPendingStyle.Render(i18n.T("common.count.pending", map[string]any{"Count": pending}))) } if approved > 0 { - cli.Print(" * %s", prApprovedStyle.Render(i18n.T("cmd.dev.reviews.approved", map[string]interface{}{"Count": approved}))) + cli.Print(" * %s", prApprovedStyle.Render(i18n.T("cmd.dev.reviews.approved", map[string]any{"Count": approved}))) } if changesRequested > 0 { - cli.Print(" * %s", prChangesStyle.Render(i18n.T("cmd.dev.reviews.changes_requested", map[string]interface{}{"Count": changesRequested}))) + cli.Print(" * %s", prChangesStyle.Render(i18n.T("cmd.dev.reviews.changes_requested", map[string]any{"Count": changesRequested}))) } cli.Blank() cli.Blank() diff --git a/cmd/dev/cmd_vm.go b/cmd/dev/cmd_vm.go index 207c012..4e12018 100644 --- a/cmd/dev/cmd_vm.go +++ b/cmd/dev/cmd_vm.go @@ -49,7 +49,7 @@ func runVMInstall() error { if d.IsInstalled() { cli.Text(successStyle.Render(i18n.T("cmd.dev.vm.already_installed"))) cli.Blank() - cli.Text(i18n.T("cmd.dev.vm.check_updates", map[string]interface{}{"Command": dimStyle.Render("core dev update")})) + cli.Text(i18n.T("cmd.dev.vm.check_updates", map[string]any{"Command": dimStyle.Render("core dev update")})) return nil } @@ -80,9 +80,9 @@ func runVMInstall() error { elapsed := time.Since(start).Round(time.Second) cli.Blank() - cli.Text(i18n.T("cmd.dev.vm.installed_in", map[string]interface{}{"Duration": elapsed})) + cli.Text(i18n.T("cmd.dev.vm.installed_in", map[string]any{"Duration": elapsed})) cli.Blank() - cli.Text(i18n.T("cmd.dev.vm.start_with", map[string]interface{}{"Command": dimStyle.Render("core dev boot")})) + cli.Text(i18n.T("cmd.dev.vm.start_with", map[string]any{"Command": dimStyle.Render("core dev boot")})) return nil } @@ -131,7 +131,7 @@ func runVMBoot(memory, cpus int, fresh bool) error { } opts.Fresh = fresh - cli.Print("%s %s\n", dimStyle.Render(i18n.T("cmd.dev.vm.config_label")), i18n.T("cmd.dev.vm.config_value", map[string]interface{}{"Memory": opts.Memory, "CPUs": opts.CPUs})) + cli.Print("%s %s\n", dimStyle.Render(i18n.T("cmd.dev.vm.config_label")), i18n.T("cmd.dev.vm.config_value", map[string]any{"Memory": opts.Memory, "CPUs": opts.CPUs})) cli.Blank() cli.Text(i18n.T("cmd.dev.vm.booting")) @@ -143,7 +143,7 @@ func runVMBoot(memory, cpus int, fresh bool) error { cli.Blank() cli.Text(successStyle.Render(i18n.T("cmd.dev.vm.running"))) cli.Blank() - cli.Text(i18n.T("cmd.dev.vm.connect_with", map[string]interface{}{"Command": dimStyle.Render("core dev shell")})) + cli.Text(i18n.T("cmd.dev.vm.connect_with", map[string]any{"Command": dimStyle.Render("core dev shell")})) cli.Print("%s %s\n", i18n.T("cmd.dev.vm.ssh_port"), dimStyle.Render("2222")) return nil @@ -228,7 +228,7 @@ func runVMStatus() error { } else { cli.Print("%s %s\n", dimStyle.Render(i18n.T("cmd.dev.vm.installed_label")), errorStyle.Render(i18n.T("cmd.dev.vm.installed_no"))) cli.Blank() - cli.Text(i18n.T("cmd.dev.vm.install_with", map[string]interface{}{"Command": dimStyle.Render("core dev install")})) + cli.Text(i18n.T("cmd.dev.vm.install_with", map[string]any{"Command": dimStyle.Render("core dev install")})) return nil } @@ -245,7 +245,7 @@ func runVMStatus() error { } else { cli.Print("%s %s\n", dimStyle.Render(i18n.Label("status")), dimStyle.Render(i18n.T("common.status.stopped"))) cli.Blank() - cli.Text(i18n.T("cmd.dev.vm.start_with", map[string]interface{}{"Command": dimStyle.Render("core dev boot")})) + cli.Text(i18n.T("cmd.dev.vm.start_with", map[string]any{"Command": dimStyle.Render("core dev boot")})) } return nil @@ -474,7 +474,7 @@ func runVMUpdate(apply bool) error { cli.Blank() if !apply { - cli.Text(i18n.T("cmd.dev.vm.run_to_update", map[string]interface{}{"Command": dimStyle.Render("core dev update --apply")})) + cli.Text(i18n.T("cmd.dev.vm.run_to_update", map[string]any{"Command": dimStyle.Render("core dev update --apply")})) return nil } @@ -504,7 +504,7 @@ func runVMUpdate(apply bool) error { elapsed := time.Since(start).Round(time.Second) cli.Blank() - cli.Text(i18n.T("cmd.dev.vm.updated_in", map[string]interface{}{"Duration": elapsed})) + cli.Text(i18n.T("cmd.dev.vm.updated_in", map[string]any{"Duration": elapsed})) return nil } diff --git a/cmd/dev/cmd_work.go b/cmd/dev/cmd_work.go index e602999..5fb458f 100644 --- a/cmd/dev/cmd_work.go +++ b/cmd/dev/cmd_work.go @@ -174,9 +174,9 @@ func runWork(registryPath string, statusOnly, autoCommit bool) error { } cli.Blank() - cli.Print("%s\n", i18n.T("common.count.repos_unpushed", map[string]interface{}{"Count": len(aheadRepos)})) + cli.Print("%s\n", i18n.T("common.count.repos_unpushed", map[string]any{"Count": len(aheadRepos)})) for _, s := range aheadRepos { - cli.Print(" %s: %s\n", s.Name, i18n.T("common.count.commits", map[string]interface{}{"Count": s.Ahead})) + cli.Print(" %s: %s\n", s.Name, i18n.T("common.count.commits", map[string]any{"Count": s.Ahead})) } cli.Blank() diff --git a/cmd/dev/cmd_workflow.go b/cmd/dev/cmd_workflow.go index 18dae0e..b003d36 100644 --- a/cmd/dev/cmd_workflow.go +++ b/cmd/dev/cmd_workflow.go @@ -151,7 +151,7 @@ func runWorkflowSync(registryPath string, workflowFile string, dryRun bool) erro // Find the template workflow templatePath := findTemplateWorkflow(registryDir, workflowFile) if templatePath == "" { - return cli.Err("%s", i18n.T("cmd.dev.workflow.template_not_found", map[string]interface{}{"File": workflowFile})) + return cli.Err("%s", i18n.T("cmd.dev.workflow.template_not_found", map[string]any{"File": workflowFile})) } // Read template content @@ -240,15 +240,15 @@ func runWorkflowSync(registryPath string, workflowFile string, dryRun bool) erro // Summary if dryRun { cli.Print("%s %s\n", - i18n.T("cmd.dev.workflow.would_sync_count", map[string]interface{}{"Count": synced}), - dimStyle.Render(i18n.T("cmd.dev.workflow.skipped_count", map[string]interface{}{"Count": skipped}))) + i18n.T("cmd.dev.workflow.would_sync_count", map[string]any{"Count": synced}), + dimStyle.Render(i18n.T("cmd.dev.workflow.skipped_count", map[string]any{"Count": skipped}))) cli.Text(i18n.T("cmd.dev.workflow.run_without_dry_run")) } else { cli.Print("%s %s\n", - successStyle.Render(i18n.T("cmd.dev.workflow.synced_count", map[string]interface{}{"Count": synced})), - dimStyle.Render(i18n.T("cmd.dev.workflow.skipped_count", map[string]interface{}{"Count": skipped}))) + successStyle.Render(i18n.T("cmd.dev.workflow.synced_count", map[string]any{"Count": synced})), + dimStyle.Render(i18n.T("cmd.dev.workflow.skipped_count", map[string]any{"Count": skipped}))) if failed > 0 { - cli.Print("%s\n", errorStyle.Render(i18n.T("cmd.dev.workflow.failed_count", map[string]interface{}{"Count": failed}))) + cli.Print("%s\n", errorStyle.Render(i18n.T("cmd.dev.workflow.failed_count", map[string]any{"Count": failed}))) } } diff --git a/cmd/docs/cmd_list.go b/cmd/docs/cmd_list.go index efa89e7..454f2fc 100644 --- a/cmd/docs/cmd_list.go +++ b/cmd/docs/cmd_list.go @@ -48,7 +48,7 @@ func runDocsList(registryPath string) error { docsDir := checkMark(false) if len(info.DocsFiles) > 0 { - docsDir = docsFoundStyle.Render(i18n.T("common.count.files", map[string]interface{}{"Count": len(info.DocsFiles)})) + docsDir = docsFoundStyle.Render(i18n.T("common.count.files", map[string]any{"Count": len(info.DocsFiles)})) } cli.Print("%-20s %-8s %-8s %-10s %s\n", @@ -69,7 +69,7 @@ func runDocsList(registryPath string) error { cli.Blank() cli.Print("%s %s\n", cli.KeyStyle.Render(i18n.Label("coverage")), - i18n.T("cmd.docs.list.coverage_summary", map[string]interface{}{"WithDocs": withDocs, "WithoutDocs": withoutDocs}), + i18n.T("cmd.docs.list.coverage_summary", map[string]any{"WithDocs": withDocs, "WithoutDocs": withoutDocs}), ) return nil diff --git a/cmd/docs/cmd_sync.go b/cmd/docs/cmd_sync.go index 3e28295..988576d 100644 --- a/cmd/docs/cmd_sync.go +++ b/cmd/docs/cmd_sync.go @@ -99,7 +99,7 @@ func runPHPSync(reg *repos.Registry, basePath string, outputDir string, dryRun b return nil } - cli.Print("\n%s %s\n\n", dimStyle.Render(i18n.T("cmd.docs.sync.found_label")), i18n.T("cmd.docs.sync.repos_with_docs", map[string]interface{}{"Count": len(docsInfo)})) + cli.Print("\n%s %s\n\n", dimStyle.Render(i18n.T("cmd.docs.sync.found_label")), i18n.T("cmd.docs.sync.repos_with_docs", map[string]any{"Count": len(docsInfo)})) // Show what will be synced var totalFiles int @@ -109,7 +109,7 @@ func runPHPSync(reg *repos.Registry, basePath string, outputDir string, dryRun b cli.Print(" %s → %s %s\n", repoNameStyle.Render(info.Name), docsFileStyle.Render("packages/"+outName+"/"), - dimStyle.Render(i18n.T("cmd.docs.sync.files_count", map[string]interface{}{"Count": len(info.DocsFiles)}))) + dimStyle.Render(i18n.T("cmd.docs.sync.files_count", map[string]any{"Count": len(info.DocsFiles)}))) for _, f := range info.DocsFiles { cli.Print(" %s\n", dimStyle.Render(f)) @@ -118,7 +118,7 @@ func runPHPSync(reg *repos.Registry, basePath string, outputDir string, dryRun b cli.Print("\n%s %s\n", dimStyle.Render(i18n.Label("total")), - i18n.T("cmd.docs.sync.total_summary", map[string]interface{}{"Files": totalFiles, "Repos": len(docsInfo), "Output": outputDir})) + i18n.T("cmd.docs.sync.total_summary", map[string]any{"Files": totalFiles, "Repos": len(docsInfo), "Output": outputDir})) if dryRun { cli.Print("\n%s\n", dimStyle.Render(i18n.T("cmd.docs.sync.dry_run_notice"))) @@ -167,7 +167,7 @@ func runPHPSync(reg *repos.Registry, basePath string, outputDir string, dryRun b synced++ } - cli.Print("\n%s %s\n", successStyle.Render(i18n.T("i18n.done.sync")), i18n.T("cmd.docs.sync.synced_packages", map[string]interface{}{"Count": synced})) + cli.Print("\n%s %s\n", successStyle.Render(i18n.T("i18n.done.sync")), i18n.T("cmd.docs.sync.synced_packages", map[string]any{"Count": synced})) return nil } diff --git a/cmd/qa/cmd_watch.go b/cmd/qa/cmd_watch.go index dc35c22..a4cebb8 100644 --- a/cmd/qa/cmd_watch.go +++ b/cmd/qa/cmd_watch.go @@ -115,7 +115,7 @@ func runWatch() error { // Check if context deadline exceeded if ctx.Err() != nil { cli.Blank() - return log.E("qa.watch", i18n.T("cmd.qa.watch.timeout", map[string]interface{}{"Duration": watchTimeout}), nil) + return log.E("qa.watch", i18n.T("cmd.qa.watch.timeout", map[string]any{"Duration": watchTimeout}), nil) } runs, err := fetchWorkflowRunsForCommit(ctx, repoFullName, commitSha) @@ -335,7 +335,7 @@ func printResults(ctx context.Context, repoFullName string, runs []WorkflowRun) // Exit with error if any failures if len(failures) > 0 { cli.Blank() - return cli.Err("%s", i18n.T("cmd.qa.watch.workflows_failed", map[string]interface{}{"Count": len(failures)})) + return cli.Err("%s", i18n.T("cmd.qa.watch.workflows_failed", map[string]any{"Count": len(failures)})) } cli.Blank() diff --git a/cmd/setup/cmd_github.go b/cmd/setup/cmd_github.go index 5ca342e..6c9b5da 100644 --- a/cmd/setup/cmd_github.go +++ b/cmd/setup/cmd_github.go @@ -126,7 +126,7 @@ func runGitHubSetup() error { // Single repo mode repo, ok := reg.Get(ghRepo) if !ok { - return errors.New(i18n.T("error.repo_not_found", map[string]interface{}{"Name": ghRepo})) + return errors.New(i18n.T("error.repo_not_found", map[string]any{"Name": ghRepo})) } reposToProcess = []*repos.Repo{repo} } else if ghAll { diff --git a/cmd/setup/cmd_registry.go b/cmd/setup/cmd_registry.go index 8597201..9b0577f 100644 --- a/cmd/setup/cmd_registry.go +++ b/cmd/setup/cmd_registry.go @@ -159,9 +159,9 @@ func runRegistrySetupWithReg(ctx context.Context, reg *repos.Registry, registryP // Summary fmt.Println() fmt.Printf("%s, %s, %s\n", - i18n.T("cmd.setup.to_clone", map[string]interface{}{"Count": len(toClone)}), - i18n.T("cmd.setup.exist", map[string]interface{}{"Count": exists}), - i18n.T("common.count.skipped", map[string]interface{}{"Count": skipped})) + i18n.T("cmd.setup.to_clone", map[string]any{"Count": len(toClone)}), + i18n.T("cmd.setup.exist", map[string]any{"Count": exists}), + i18n.T("common.count.skipped", map[string]any{"Count": skipped})) if len(toClone) == 0 { fmt.Printf("\n%s\n", i18n.T("cmd.setup.nothing_to_clone")) @@ -209,12 +209,12 @@ func runRegistrySetupWithReg(ctx context.Context, reg *repos.Registry, registryP // Summary fmt.Println() - fmt.Printf("%s %s", successStyle.Render(i18n.Label("done")), i18n.T("cmd.setup.cloned_count", map[string]interface{}{"Count": succeeded})) + fmt.Printf("%s %s", successStyle.Render(i18n.Label("done")), i18n.T("cmd.setup.cloned_count", map[string]any{"Count": succeeded})) if failed > 0 { fmt.Printf(", %s", errorStyle.Render(i18n.T("i18n.count.failed", failed))) } if exists > 0 { - fmt.Printf(", %s", i18n.T("cmd.setup.already_exist_count", map[string]interface{}{"Count": exists})) + fmt.Printf(", %s", i18n.T("cmd.setup.already_exist_count", map[string]any{"Count": exists})) } fmt.Println() diff --git a/cmd/setup/cmd_wizard.go b/cmd/setup/cmd_wizard.go index 35e747a..36ee6f6 100644 --- a/cmd/setup/cmd_wizard.go +++ b/cmd/setup/cmd_wizard.go @@ -89,6 +89,6 @@ func runPackageWizard(reg *repos.Registry, preselectedTypes []string) ([]string, // confirmClone asks for confirmation before cloning. func confirmClone(count int, target string) (bool, error) { - confirmed := cli.Confirm(i18n.T("cmd.setup.wizard.confirm_clone", map[string]interface{}{"Count": count, "Target": target})) + confirmed := cli.Confirm(i18n.T("cmd.setup.wizard.confirm_clone", map[string]any{"Count": count, "Target": target})) return confirmed, nil } diff --git a/cmd/setup/github_protection.go b/cmd/setup/github_protection.go index 047a17c..56622e4 100644 --- a/cmd/setup/github_protection.go +++ b/cmd/setup/github_protection.go @@ -105,7 +105,7 @@ func SetBranchProtection(repoFullName, branch string, config BranchProtectionCon } // Build the protection payload - payload := map[string]interface{}{ + payload := map[string]any{ "enforce_admins": config.EnforceAdmins, "required_linear_history": config.RequireLinearHistory, "allow_force_pushes": config.AllowForcePushes, @@ -115,7 +115,7 @@ func SetBranchProtection(repoFullName, branch string, config BranchProtectionCon // Required pull request reviews if config.RequiredReviews > 0 { - payload["required_pull_request_reviews"] = map[string]interface{}{ + payload["required_pull_request_reviews"] = map[string]any{ "dismiss_stale_reviews": config.DismissStale, "require_code_owner_reviews": config.RequireCodeOwnerReviews, "required_approving_review_count": config.RequiredReviews, @@ -126,7 +126,7 @@ func SetBranchProtection(repoFullName, branch string, config BranchProtectionCon // Required status checks if len(config.RequiredStatusChecks) > 0 { - payload["required_status_checks"] = map[string]interface{}{ + payload["required_status_checks"] = map[string]any{ "strict": true, "contexts": config.RequiredStatusChecks, } diff --git a/cmd/setup/github_security.go b/cmd/setup/github_security.go index a268902..3a37d95 100644 --- a/cmd/setup/github_security.go +++ b/cmd/setup/github_security.go @@ -154,8 +154,8 @@ func UpdateSecurityAndAnalysis(repoFullName string, secretScanning, pushProtecti } // Build the payload - payload := map[string]interface{}{ - "security_and_analysis": map[string]interface{}{ + payload := map[string]any{ + "security_and_analysis": map[string]any{ "secret_scanning": map[string]string{ "status": boolToStatus(secretScanning), }, diff --git a/cmd/setup/github_webhooks.go b/cmd/setup/github_webhooks.go index 48ce7e4..a530ef3 100644 --- a/cmd/setup/github_webhooks.go +++ b/cmd/setup/github_webhooks.go @@ -69,11 +69,11 @@ func CreateWebhook(repoFullName string, name string, config WebhookConfig) error } // Build the webhook payload - payload := map[string]interface{}{ + payload := map[string]any{ "name": "web", "active": true, "events": config.Events, - "config": map[string]interface{}{ + "config": map[string]any{ "url": config.URL, "content_type": config.ContentType, "insecure_ssl": "0", @@ -85,7 +85,7 @@ func CreateWebhook(repoFullName string, name string, config WebhookConfig) error } if config.Secret != "" { - configMap := payload["config"].(map[string]interface{}) + configMap := payload["config"].(map[string]any) configMap["secret"] = config.Secret } @@ -111,10 +111,10 @@ func UpdateWebhook(repoFullName string, hookID int, config WebhookConfig) error return fmt.Errorf("invalid repo format: %s", repoFullName) } - payload := map[string]interface{}{ + payload := map[string]any{ "active": true, "events": config.Events, - "config": map[string]interface{}{ + "config": map[string]any{ "url": config.URL, "content_type": config.ContentType, "insecure_ssl": "0", @@ -126,7 +126,7 @@ func UpdateWebhook(repoFullName string, hookID int, config WebhookConfig) error } if config.Secret != "" { - configMap := payload["config"].(map[string]interface{}) + configMap := payload["config"].(map[string]any) configMap["secret"] = config.Secret } diff --git a/cmd/vm/cmd_container.go b/cmd/vm/cmd_container.go index 805990e..9a4e7cc 100644 --- a/cmd/vm/cmd_container.go +++ b/cmd/vm/cmd_container.go @@ -99,8 +99,8 @@ func runContainer(image, name string, detach bool, memory, cpus, sshPort int) er fmt.Printf("%s %s\n", successStyle.Render(i18n.Label("started")), c.ID) fmt.Printf("%s %d\n", dimStyle.Render(i18n.T("cmd.vm.label.pid")), c.PID) fmt.Println() - fmt.Println(i18n.T("cmd.vm.hint.view_logs", map[string]interface{}{"ID": c.ID[:8]})) - fmt.Println(i18n.T("cmd.vm.hint.stop", map[string]interface{}{"ID": c.ID[:8]})) + fmt.Println(i18n.T("cmd.vm.hint.view_logs", map[string]any{"ID": c.ID[:8]})) + fmt.Println(i18n.T("cmd.vm.hint.stop", map[string]any{"ID": c.ID[:8]})) } else { fmt.Printf("\n%s %s\n", dimStyle.Render(i18n.T("cmd.vm.label.container_stopped")), c.ID) } @@ -261,11 +261,11 @@ func resolveContainerID(manager *container.LinuxKitManager, partialID string) (s switch len(matches) { case 0: - return "", errors.New(i18n.T("cmd.vm.error.no_match", map[string]interface{}{"ID": partialID})) + return "", errors.New(i18n.T("cmd.vm.error.no_match", map[string]any{"ID": partialID})) case 1: return matches[0].ID, nil default: - return "", errors.New(i18n.T("cmd.vm.error.multiple_match", map[string]interface{}{"ID": partialID})) + return "", errors.New(i18n.T("cmd.vm.error.multiple_match", map[string]any{"ID": partialID})) } } diff --git a/cmd/vm/cmd_templates.go b/cmd/vm/cmd_templates.go index d8a4e87..bc61403 100644 --- a/cmd/vm/cmd_templates.go +++ b/cmd/vm/cmd_templates.go @@ -204,8 +204,8 @@ func RunFromTemplate(templateName string, vars map[string]string, runOpts contai fmt.Printf("%s %s\n", successStyle.Render(i18n.T("common.label.started")), c.ID) fmt.Printf("%s %d\n", dimStyle.Render(i18n.T("cmd.vm.label.pid")), c.PID) fmt.Println() - fmt.Println(i18n.T("cmd.vm.hint.view_logs", map[string]interface{}{"ID": c.ID[:8]})) - fmt.Println(i18n.T("cmd.vm.hint.stop", map[string]interface{}{"ID": c.ID[:8]})) + fmt.Println(i18n.T("cmd.vm.hint.view_logs", map[string]any{"ID": c.ID[:8]})) + fmt.Println(i18n.T("cmd.vm.hint.stop", map[string]any{"ID": c.ID[:8]})) } else { fmt.Printf("\n%s %s\n", dimStyle.Render(i18n.T("cmd.vm.label.container_stopped")), c.ID) } diff --git a/devops/test.go b/devops/test.go index 430579c..608eb50 100644 --- a/devops/test.go +++ b/devops/test.go @@ -177,7 +177,7 @@ func hasComposerScript(m io.Medium, projectDir, script string) bool { } var pkg struct { - Scripts map[string]interface{} `json:"scripts"` + Scripts map[string]any `json:"scripts"` } if err := json.Unmarshal([]byte(content), &pkg); err != nil { return false