From 1ce82abfa354709476bd13dea916b35d6e6d4233 Mon Sep 17 00:00:00 2001 From: Serge Zaitsev Date: Mon, 30 Jun 2025 16:39:21 +0200 Subject: [PATCH] Chore: Prepare Wire to generate files that can be committed to the repo (#107382) * add generated tags to wire * add enterprise wire gen target to makefile * make gen-go invoke enterprise * change go:generate command * handle empty genTags properly * update golden files for wire * use build tag for swagger generator * fix comments --- Makefile | 17 +++++++++++++---- pkg/build/wire/cmd/wire/main.go | 3 +++ .../testdata/BindInjectorArg/want/wire_gen.go | 3 +-- .../BindInjectorArgPointer/want/wire_gen.go | 3 +-- .../BindInterfaceWithValue/want/wire_gen.go | 3 +-- .../BuildTagsAllPackages/want/wire_gen.go | 3 +-- .../wire/testdata/Chain/want/wire_gen.go | 3 +-- .../wire/testdata/Cleanup/want/wire_gen.go | 3 +-- .../testdata/CopyOtherDecls/want/wire_gen.go | 3 +-- .../wire/testdata/DocComment/want/wire_gen.go | 3 +-- .../testdata/ExampleWithMocks/want/wire_gen.go | 3 +-- .../testdata/ExportedValue/want/wire_gen.go | 3 +-- .../want/wire_gen.go | 3 +-- .../FieldsOfImportedStruct/want/wire_gen.go | 3 +-- .../testdata/FieldsOfStruct/want/wire_gen.go | 3 +-- .../FieldsOfStructPointer/want/wire_gen.go | 3 +-- .../FieldsOfValueStruct/want/wire_gen.go | 3 +-- .../wire/testdata/Header/want/wire_gen.go | 3 +-- .../ImportedInterfaceBinding/want/wire_gen.go | 3 +-- .../wire/testdata/InjectInput/want/wire_gen.go | 3 +-- .../testdata/InjectWithPanic/want/wire_gen.go | 3 +-- .../testdata/InterfaceBinding/want/wire_gen.go | 3 +-- .../InterfaceBindingReuse/want/wire_gen.go | 3 +-- .../testdata/InterfaceValue/want/wire_gen.go | 3 +-- .../MultipleSimilarPackages/want/wire_gen.go | 3 +-- .../testdata/NamingWorstCase/want/wire_gen.go | 3 +-- .../NamingWorstCaseAllInOne/want/wire_gen.go | 3 +-- .../testdata/NiladicIdentity/want/wire_gen.go | 3 +-- .../wire/testdata/NiladicValue/want/wire_gen.go | 3 +-- .../NoInjectParamNames/want/wire_gen.go | 3 +-- .../testdata/PartialCleanup/want/wire_gen.go | 3 +-- .../wire/testdata/PkgImport/want/wire_gen.go | 3 +-- .../wire/testdata/RelativePkg/want/wire_gen.go | 3 +-- .../testdata/ReservedKeywords/want/wire_gen.go | 3 +-- .../ReturnArgumentAsInterface/want/wire_gen.go | 3 +-- .../wire/testdata/ReturnError/want/wire_gen.go | 3 +-- .../wire/testdata/Struct/want/wire_gen.go | 3 +-- .../testdata/StructPointer/want/wire_gen.go | 3 +-- .../wire/testdata/TwoDeps/want/wire_gen.go | 3 +-- .../wire/testdata/ValueChain/want/wire_gen.go | 3 +-- .../testdata/ValueConversion/want/wire_gen.go | 3 +-- .../testdata/ValueIsStruct/want/wire_gen.go | 3 +-- .../wire/testdata/VarValue/want/wire_gen.go | 3 +-- .../wire/testdata/Varargs/want/wire_gen.go | 3 +-- pkg/build/wire/internal/wire/wire.go | 13 +++++++++---- 45 files changed, 67 insertions(+), 92 deletions(-) diff --git a/Makefile b/Makefile index 97d6da04774..7973fd5f679 100644 --- a/Makefile +++ b/Makefile @@ -90,6 +90,7 @@ swagger-enterprise-gen: ## Generate API Swagger specification -x "github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2/options" \ -x "github.com/prometheus/alertmanager" \ -i pkg/api/swagger_tags.json \ + -t enterprise \ --exclude-tag=alpha \ --include-tag=enterprise endif @@ -189,10 +190,18 @@ gen-feature-toggles: go test -v ./pkg/services/featuremgmt/...; \ fi -.PHONY: gen-go -gen-go: - @echo "generate go files" - $(GO) run $(GO_RACE_FLAG) ./pkg/build/wire/cmd/wire/main.go gen -tags $(WIRE_TAGS) ./pkg/server +.PHONY: gen-go gen-enterprise-go +ifeq ("$(wildcard $(ENTERPRISE_EXT_FILE))","") ## if enterprise is not enabled +gen-enterprise-go: + @echo "skipping re-generating Wire graph for enterprise: not enabled" +else +gen-enterprise-go: ## Generate Wire graph (Enterprise) + @echo "re-generating Wire graph for enterprise" + $(GO) run ./pkg/build/wire/cmd/wire/main.go gen -tags "enterprise" -gen_tags "(enterprise || pro)" -output_file_prefix="enterprise_" ./pkg/server +endif +gen-go: gen-enterprise-go ## Generate Wire graph + @echo "generatng Wire graph" + $(GO) run ./pkg/build/wire/cmd/wire/main.go gen -tags "oss" -gen_tags "(!enterprise && !pro)" ./pkg/server .PHONY: fix-cue fix-cue: diff --git a/pkg/build/wire/cmd/wire/main.go b/pkg/build/wire/cmd/wire/main.go index af79d29115c..4d4a2a52c36 100644 --- a/pkg/build/wire/cmd/wire/main.go +++ b/pkg/build/wire/cmd/wire/main.go @@ -101,6 +101,7 @@ type genCmd struct { headerFile string prefixFileName string tags string + genTags string } func (*genCmd) Name() string { return "gen" } @@ -119,6 +120,7 @@ func (cmd *genCmd) SetFlags(f *flag.FlagSet) { f.StringVar(&cmd.headerFile, "header_file", "", "path to file to insert as a header in wire_gen.go") f.StringVar(&cmd.prefixFileName, "output_file_prefix", "", "string to prepend to output file names.") f.StringVar(&cmd.tags, "tags", "", "append build tags to the default wirebuild") + f.StringVar(&cmd.genTags, "gen_tags", "", "append build tags to the generated file") } func (cmd *genCmd) Execute(ctx context.Context, f *flag.FlagSet, args ...interface{}) subcommands.ExitStatus { @@ -135,6 +137,7 @@ func (cmd *genCmd) Execute(ctx context.Context, f *flag.FlagSet, args ...interfa opts.PrefixOutputFile = cmd.prefixFileName opts.Tags = cmd.tags + opts.GenTags = cmd.genTags outs, errs := wire.Generate(ctx, wd, os.Environ(), packages(f), opts) if len(errs) > 0 { diff --git a/pkg/build/wire/internal/wire/testdata/BindInjectorArg/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/BindInjectorArg/want/wire_gen.go index 5f5b21068ef..de72b70617a 100644 --- a/pkg/build/wire/internal/wire/testdata/BindInjectorArg/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/BindInjectorArg/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/BindInjectorArgPointer/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/BindInjectorArgPointer/want/wire_gen.go index 15d6f0e335b..789f9b0c160 100644 --- a/pkg/build/wire/internal/wire/testdata/BindInjectorArgPointer/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/BindInjectorArgPointer/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/BindInterfaceWithValue/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/BindInterfaceWithValue/want/wire_gen.go index 58d82bf4006..60be1f544ab 100644 --- a/pkg/build/wire/internal/wire/testdata/BindInterfaceWithValue/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/BindInterfaceWithValue/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/BuildTagsAllPackages/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/BuildTagsAllPackages/want/wire_gen.go index 16c0df257c2..3d20e9cbad3 100644 --- a/pkg/build/wire/internal/wire/testdata/BuildTagsAllPackages/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/BuildTagsAllPackages/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/Chain/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/Chain/want/wire_gen.go index cf9e9eeaaea..c444e0ca0c6 100644 --- a/pkg/build/wire/internal/wire/testdata/Chain/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/Chain/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/Cleanup/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/Cleanup/want/wire_gen.go index 1519c104c52..825f159cd4e 100644 --- a/pkg/build/wire/internal/wire/testdata/Cleanup/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/Cleanup/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/CopyOtherDecls/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/CopyOtherDecls/want/wire_gen.go index c654540b4ed..1eeb76d01f6 100644 --- a/pkg/build/wire/internal/wire/testdata/CopyOtherDecls/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/CopyOtherDecls/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/DocComment/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/DocComment/want/wire_gen.go index 3efb22ac5de..b80fe5928ae 100644 --- a/pkg/build/wire/internal/wire/testdata/DocComment/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/DocComment/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/ExampleWithMocks/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/ExampleWithMocks/want/wire_gen.go index 9cb7b01cb12..944deb1f122 100644 --- a/pkg/build/wire/internal/wire/testdata/ExampleWithMocks/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/ExampleWithMocks/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/ExportedValue/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/ExportedValue/want/wire_gen.go index 7563ca26af5..0032f485fc2 100644 --- a/pkg/build/wire/internal/wire/testdata/ExportedValue/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/ExportedValue/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/ExportedValueDifferentPackage/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/ExportedValueDifferentPackage/want/wire_gen.go index d8c74d4cdb0..32f05faf112 100644 --- a/pkg/build/wire/internal/wire/testdata/ExportedValueDifferentPackage/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/ExportedValueDifferentPackage/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/FieldsOfImportedStruct/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/FieldsOfImportedStruct/want/wire_gen.go index 8467ee37d89..56548972de5 100644 --- a/pkg/build/wire/internal/wire/testdata/FieldsOfImportedStruct/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/FieldsOfImportedStruct/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/FieldsOfStruct/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/FieldsOfStruct/want/wire_gen.go index 5b8ca2f3c07..8ec5f813262 100644 --- a/pkg/build/wire/internal/wire/testdata/FieldsOfStruct/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/FieldsOfStruct/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/FieldsOfStructPointer/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/FieldsOfStructPointer/want/wire_gen.go index c9fe7955491..6b35f5ebb86 100644 --- a/pkg/build/wire/internal/wire/testdata/FieldsOfStructPointer/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/FieldsOfStructPointer/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/FieldsOfValueStruct/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/FieldsOfValueStruct/want/wire_gen.go index 793c04d6b21..336157bcb82 100644 --- a/pkg/build/wire/internal/wire/testdata/FieldsOfValueStruct/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/FieldsOfValueStruct/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/Header/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/Header/want/wire_gen.go index 2f8c5c622f4..40c1238683c 100644 --- a/pkg/build/wire/internal/wire/testdata/Header/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/Header/want/wire_gen.go @@ -2,9 +2,8 @@ // // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/ImportedInterfaceBinding/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/ImportedInterfaceBinding/want/wire_gen.go index b68a1dbf2b4..f86bc80f1a6 100644 --- a/pkg/build/wire/internal/wire/testdata/ImportedInterfaceBinding/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/ImportedInterfaceBinding/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/InjectInput/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/InjectInput/want/wire_gen.go index 9471cf6f381..8ca98d6d298 100644 --- a/pkg/build/wire/internal/wire/testdata/InjectInput/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/InjectInput/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/InjectWithPanic/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/InjectWithPanic/want/wire_gen.go index 8b124e562d8..17838512386 100644 --- a/pkg/build/wire/internal/wire/testdata/InjectWithPanic/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/InjectWithPanic/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/InterfaceBinding/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/InterfaceBinding/want/wire_gen.go index 2c1a67b261e..75d53fa51b2 100644 --- a/pkg/build/wire/internal/wire/testdata/InterfaceBinding/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/InterfaceBinding/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/InterfaceBindingReuse/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/InterfaceBindingReuse/want/wire_gen.go index 1c437713599..2f72588bf80 100644 --- a/pkg/build/wire/internal/wire/testdata/InterfaceBindingReuse/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/InterfaceBindingReuse/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/InterfaceValue/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/InterfaceValue/want/wire_gen.go index 9868a9023f5..f8381bf16fd 100644 --- a/pkg/build/wire/internal/wire/testdata/InterfaceValue/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/InterfaceValue/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/MultipleSimilarPackages/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/MultipleSimilarPackages/want/wire_gen.go index e4068205704..a45cbce8510 100644 --- a/pkg/build/wire/internal/wire/testdata/MultipleSimilarPackages/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/MultipleSimilarPackages/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/NamingWorstCase/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/NamingWorstCase/want/wire_gen.go index e32329d325e..d7f216318d9 100644 --- a/pkg/build/wire/internal/wire/testdata/NamingWorstCase/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/NamingWorstCase/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/NamingWorstCaseAllInOne/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/NamingWorstCaseAllInOne/want/wire_gen.go index c0815204bd1..5c0fe8a4d70 100644 --- a/pkg/build/wire/internal/wire/testdata/NamingWorstCaseAllInOne/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/NamingWorstCaseAllInOne/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/NiladicIdentity/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/NiladicIdentity/want/wire_gen.go index 8b124e562d8..17838512386 100644 --- a/pkg/build/wire/internal/wire/testdata/NiladicIdentity/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/NiladicIdentity/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/NiladicValue/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/NiladicValue/want/wire_gen.go index 16c0df257c2..3d20e9cbad3 100644 --- a/pkg/build/wire/internal/wire/testdata/NiladicValue/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/NiladicValue/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/NoInjectParamNames/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/NoInjectParamNames/want/wire_gen.go index b8760db4b81..4d3e22afdd6 100644 --- a/pkg/build/wire/internal/wire/testdata/NoInjectParamNames/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/NoInjectParamNames/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/PartialCleanup/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/PartialCleanup/want/wire_gen.go index 6cf2640186d..4c5908ff5b6 100644 --- a/pkg/build/wire/internal/wire/testdata/PartialCleanup/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/PartialCleanup/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/PkgImport/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/PkgImport/want/wire_gen.go index 5f3e127faff..7823a84cec9 100644 --- a/pkg/build/wire/internal/wire/testdata/PkgImport/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/PkgImport/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/RelativePkg/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/RelativePkg/want/wire_gen.go index 8b124e562d8..17838512386 100644 --- a/pkg/build/wire/internal/wire/testdata/RelativePkg/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/RelativePkg/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/ReservedKeywords/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/ReservedKeywords/want/wire_gen.go index 7ff31104195..ad8b29cc856 100644 --- a/pkg/build/wire/internal/wire/testdata/ReservedKeywords/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/ReservedKeywords/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/ReturnArgumentAsInterface/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/ReturnArgumentAsInterface/want/wire_gen.go index 9d1a331d258..894eb8fda0f 100644 --- a/pkg/build/wire/internal/wire/testdata/ReturnArgumentAsInterface/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/ReturnArgumentAsInterface/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/ReturnError/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/ReturnError/want/wire_gen.go index 5d9746675db..4202fe7a2a6 100644 --- a/pkg/build/wire/internal/wire/testdata/ReturnError/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/ReturnError/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/Struct/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/Struct/want/wire_gen.go index e4bf0c727d1..3fbcbf6d5bb 100644 --- a/pkg/build/wire/internal/wire/testdata/Struct/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/Struct/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/StructPointer/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/StructPointer/want/wire_gen.go index e96e8cdd606..edac319bd96 100644 --- a/pkg/build/wire/internal/wire/testdata/StructPointer/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/StructPointer/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/TwoDeps/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/TwoDeps/want/wire_gen.go index bfc52d7f244..79e8af9aee9 100644 --- a/pkg/build/wire/internal/wire/testdata/TwoDeps/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/TwoDeps/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/ValueChain/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/ValueChain/want/wire_gen.go index da2cccb3f06..c1281b4c307 100644 --- a/pkg/build/wire/internal/wire/testdata/ValueChain/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/ValueChain/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/ValueConversion/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/ValueConversion/want/wire_gen.go index b663861d920..b2ac25e684b 100644 --- a/pkg/build/wire/internal/wire/testdata/ValueConversion/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/ValueConversion/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/ValueIsStruct/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/ValueIsStruct/want/wire_gen.go index f41ed12200f..f7c9156b72d 100644 --- a/pkg/build/wire/internal/wire/testdata/ValueIsStruct/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/ValueIsStruct/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/VarValue/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/VarValue/want/wire_gen.go index 07e4f01993b..5ee82a4a260 100644 --- a/pkg/build/wire/internal/wire/testdata/VarValue/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/VarValue/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/testdata/Varargs/want/wire_gen.go b/pkg/build/wire/internal/wire/testdata/Varargs/want/wire_gen.go index 703a549132b..9bffed4399e 100644 --- a/pkg/build/wire/internal/wire/testdata/Varargs/want/wire_gen.go +++ b/pkg/build/wire/internal/wire/testdata/Varargs/want/wire_gen.go @@ -1,8 +1,7 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run -mod=mod github.com/google/wire/cmd/wire +//go:generate go run ./pkg/build/wire/cmd/wire/main.go //go:build !wireinject -// +build !wireinject package main diff --git a/pkg/build/wire/internal/wire/wire.go b/pkg/build/wire/internal/wire/wire.go index 5cedeb1ab3b..be60f05c08b 100644 --- a/pkg/build/wire/internal/wire/wire.go +++ b/pkg/build/wire/internal/wire/wire.go @@ -66,6 +66,7 @@ type GenerateOptions struct { Header []byte PrefixOutputFile string Tags string + GenTags string } // Generate performs dependency injection for the packages that match the given @@ -104,7 +105,7 @@ func Generate(ctx context.Context, wd string, env []string, patterns []string, o continue } copyNonInjectorDecls(g, injectorFiles, pkg.TypesInfo) - goSrc := g.frame(opts.Tags) + goSrc := g.frame(opts.Tags, opts.GenTags) if len(opts.Header) > 0 { goSrc = append(opts.Header, goSrc...) } @@ -258,7 +259,7 @@ func newGen(pkg *packages.Package) *gen { } // frame bakes the built up source body into an unformatted Go source file. -func (g *gen) frame(tags string) []byte { +func (g *gen) frame(tags, genTags string) []byte { if g.buf.Len() == 0 { return nil } @@ -267,8 +268,12 @@ func (g *gen) frame(tags string) []byte { tags = fmt.Sprintf(" gen -tags \"%s\"", tags) } buf.WriteString("// Code generated by Wire. DO NOT EDIT.\n\n") - buf.WriteString("//go:generate go run -mod=mod github.com/google/wire/cmd/wire" + tags + "\n") - buf.WriteString("//+build !wireinject\n\n") + buf.WriteString("//go:generate go run ./pkg/build/wire/cmd/wire/main.go" + tags + "\n") + buildTags := "!wireinject" + if len(genTags) > 0 { + buildTags += " && " + genTags + } + buf.WriteString("//go:build " + buildTags + "\n\n") buf.WriteString("package ") buf.WriteString(g.pkg.Name) buf.WriteString("\n\n")