From e416d01f8dc586787f983d3be35f2908e9801424 Mon Sep 17 00:00:00 2001 From: kesonan Date: Fri, 2 May 2025 15:59:47 +0800 Subject: [PATCH] api format from stdin (#4772) --- tools/goctl/api/format/format.go | 15 +++++++++++++-- tools/goctl/internal/flags/default_en.json | 2 +- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/tools/goctl/api/format/format.go b/tools/goctl/api/format/format.go index afa7ee6ae..89590a64c 100644 --- a/tools/goctl/api/format/format.go +++ b/tools/goctl/api/format/format.go @@ -42,8 +42,19 @@ var ( func GoFormatApi(_ *cobra.Command, _ []string) error { var be errorx.BatchError if VarBoolUseStdin { - if err := apiFormatReader(os.Stdin, VarStringDir, VarBoolSkipCheckDeclare); err != nil { - be.Add(err) + if env.UseExperimental() { + data, err := io.ReadAll(os.Stdin) + if err != nil { + be.Add(err) + } else { + if err := apiF.Source(data, os.Stdout); err != nil { + be.Add(err) + } + } + } else { + if err := apiFormatReader(os.Stdin, VarStringDir, VarBoolSkipCheckDeclare); err != nil { + be.Add(err) + } } } else { if len(VarStringDir) == 0 { diff --git a/tools/goctl/internal/flags/default_en.json b/tools/goctl/internal/flags/default_en.json index 8f315d389..ad51100c5 100644 --- a/tools/goctl/internal/flags/default_en.json +++ b/tools/goctl/internal/flags/default_en.json @@ -28,7 +28,7 @@ "dir": "{{.goctl.api.dir}}", "iu": "Ignore update", "stdin": "Use stdin to input api doc content, press \"ctrl + d\" to send EOF", - "declare": "Use to skip check api types already declare" + "declare": "Use to skip check api types already declare, deprecated if goctl version >= 1.8.3" }, "go": { "short": "Generate go files for provided api in api file",