-
Notifications
You must be signed in to change notification settings - Fork 82
🌱 Bump to go 1.24 and k8s 1.33 #380
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
WalkthroughThis change updates various client, informer, and fake clientset implementations to improve context handling and watch functionality. Informers now support context-aware list and watch operations, replacing Changes
✨ Finishing Touches
🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: qiujian16 The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Signed-off-by: Jian Qiu <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 5
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (268)
go.sum
is excluded by!**/*.sum
vendor/github.com/golang/protobuf/AUTHORS
is excluded by!vendor/**
vendor/github.com/golang/protobuf/CONTRIBUTORS
is excluded by!vendor/**
vendor/github.com/golang/protobuf/proto/buffer.go
is excluded by!vendor/**
vendor/github.com/golang/protobuf/proto/defaults.go
is excluded by!vendor/**
vendor/github.com/golang/protobuf/proto/deprecated.go
is excluded by!vendor/**
vendor/github.com/golang/protobuf/proto/discard.go
is excluded by!vendor/**
vendor/github.com/golang/protobuf/proto/extensions.go
is excluded by!vendor/**
vendor/github.com/golang/protobuf/proto/properties.go
is excluded by!vendor/**
vendor/github.com/golang/protobuf/proto/proto.go
is excluded by!vendor/**
vendor/github.com/golang/protobuf/proto/registry.go
is excluded by!vendor/**
vendor/github.com/golang/protobuf/proto/text_decode.go
is excluded by!vendor/**
vendor/github.com/golang/protobuf/proto/text_encode.go
is excluded by!vendor/**
vendor/github.com/golang/protobuf/proto/wire.go
is excluded by!vendor/**
vendor/github.com/golang/protobuf/proto/wrappers.go
is excluded by!vendor/**
vendor/github.com/golang/protobuf/ptypes/any.go
is excluded by!vendor/**
vendor/github.com/golang/protobuf/ptypes/any/any.pb.go
is excluded by!**/*.pb.go
,!vendor/**
vendor/github.com/golang/protobuf/ptypes/doc.go
is excluded by!vendor/**
vendor/github.com/golang/protobuf/ptypes/duration.go
is excluded by!vendor/**
vendor/github.com/golang/protobuf/ptypes/duration/duration.pb.go
is excluded by!**/*.pb.go
,!vendor/**
vendor/github.com/golang/protobuf/ptypes/timestamp.go
is excluded by!vendor/**
vendor/github.com/golang/protobuf/ptypes/timestamp/timestamp.pb.go
is excluded by!**/*.pb.go
,!vendor/**
vendor/github.com/google/gnostic-models/compiler/extensions.go
is excluded by!vendor/**
vendor/github.com/google/gnostic-models/extensions/extension.pb.go
is excluded by!**/*.pb.go
,!vendor/**
vendor/github.com/google/gnostic-models/extensions/extensions.go
is excluded by!vendor/**
vendor/github.com/google/gnostic-models/openapiv2/OpenAPIv2.pb.go
is excluded by!**/*.pb.go
,!vendor/**
vendor/github.com/google/gnostic-models/openapiv3/OpenAPIv3.pb.go
is excluded by!**/*.pb.go
,!vendor/**
vendor/github.com/google/gnostic-models/openapiv3/annotations.pb.go
is excluded by!**/*.pb.go
,!vendor/**
vendor/github.com/google/gnostic-models/openapiv3/annotations.proto
is excluded by!vendor/**
vendor/github.com/google/go-cmp/cmp/internal/function/func.go
is excluded by!vendor/**
vendor/github.com/google/go-cmp/cmp/options.go
is excluded by!vendor/**
vendor/github.com/google/gofuzz/.travis.yml
is excluded by!vendor/**
vendor/github.com/google/gofuzz/CONTRIBUTING.md
is excluded by!vendor/**
vendor/github.com/google/gofuzz/fuzz.go
is excluded by!vendor/**
vendor/github.com/inconshreveable/mousetrap/LICENSE
is excluded by!vendor/**
vendor/github.com/inconshreveable/mousetrap/README.md
is excluded by!vendor/**
vendor/github.com/inconshreveable/mousetrap/trap_others.go
is excluded by!vendor/**
vendor/github.com/inconshreveable/mousetrap/trap_windows.go
is excluded by!vendor/**
vendor/github.com/openshift/build-machinery-go/.ci-operator.yaml
is excluded by!vendor/**
vendor/github.com/openshift/build-machinery-go/.gitignore
is excluded by!vendor/**
vendor/github.com/openshift/build-machinery-go/Dockerfile.commitchecker
is excluded by!vendor/**
vendor/github.com/openshift/build-machinery-go/OWNERS
is excluded by!vendor/**
vendor/github.com/openshift/build-machinery-go/make/operator.example.mk.help.log
is excluded by!**/*.log
,!vendor/**
vendor/github.com/openshift/build-machinery-go/make/targets/golang/verify-update.mk
is excluded by!vendor/**
vendor/github.com/openshift/build-machinery-go/make/targets/golang/version.mk
is excluded by!vendor/**
vendor/github.com/openshift/build-machinery-go/make/targets/openshift/controller-gen.mk
is excluded by!vendor/**
vendor/github.com/openshift/build-machinery-go/make/targets/openshift/images.mk
is excluded by!vendor/**
vendor/github.com/openshift/build-machinery-go/make/targets/openshift/operator/mom.mk
is excluded by!vendor/**
vendor/github.com/openshift/build-machinery-go/make/targets/openshift/yq.mk
is excluded by!vendor/**
vendor/github.com/openshift/build-machinery-go/scripts/test-operator-integration.sh
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/NOTICE
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/internal/github.com/golang/gddo/LICENSE
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil/header/header.go
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil/negotiate.go
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/prometheus/collectorfunc.go
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/prometheus/collectors/go_collector_latest.go
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/prometheus/desc.go
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/prometheus/go_collector.go
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/prometheus/go_collector_latest.go
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/prometheus/histogram.go
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/prometheus/internal/difflib.go
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/prometheus/internal/go_collector_options.go
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/prometheus/internal/go_runtime_metrics.go
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/prometheus/metric.go
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/prometheus/process_collector.go
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/prometheus/process_collector_darwin.go
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/prometheus/process_collector_mem_cgo_darwin.c
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/prometheus/process_collector_mem_cgo_darwin.go
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/prometheus/process_collector_mem_nocgo_darwin.go
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/prometheus/process_collector_not_supported.go
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/prometheus/process_collector_procfsenabled.go
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/prometheus/process_collector_windows.go
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/prometheus/promhttp/delegator.go
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/prometheus/promhttp/http.go
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/prometheus/promhttp/internal/compression.go
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/prometheus/registry.go
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/prometheus/summary.go
is excluded by!vendor/**
vendor/github.com/prometheus/client_golang/prometheus/vec.go
is excluded by!vendor/**
vendor/github.com/prometheus/common/expfmt/decode.go
is excluded by!vendor/**
vendor/github.com/prometheus/common/expfmt/encode.go
is excluded by!vendor/**
vendor/github.com/prometheus/common/expfmt/expfmt.go
is excluded by!vendor/**
vendor/github.com/prometheus/common/expfmt/openmetrics_create.go
is excluded by!vendor/**
vendor/github.com/prometheus/common/expfmt/text_create.go
is excluded by!vendor/**
vendor/github.com/prometheus/common/expfmt/text_parse.go
is excluded by!vendor/**
vendor/github.com/prometheus/common/model/alert.go
is excluded by!vendor/**
vendor/github.com/prometheus/common/model/labels.go
is excluded by!vendor/**
vendor/github.com/prometheus/common/model/labelset_string.go
is excluded by!vendor/**
vendor/github.com/prometheus/common/model/labelset_string_go120.go
is excluded by!vendor/**
vendor/github.com/prometheus/common/model/metric.go
is excluded by!vendor/**
vendor/github.com/prometheus/common/model/silence.go
is excluded by!vendor/**
vendor/github.com/prometheus/common/model/value_float.go
is excluded by!vendor/**
vendor/github.com/prometheus/common/model/value_histogram.go
is excluded by!vendor/**
vendor/github.com/spf13/cobra/.gitignore
is excluded by!vendor/**
vendor/github.com/spf13/cobra/.golangci.yml
is excluded by!vendor/**
vendor/github.com/spf13/cobra/.mailmap
is excluded by!vendor/**
vendor/github.com/spf13/cobra/CONDUCT.md
is excluded by!vendor/**
vendor/github.com/spf13/cobra/CONTRIBUTING.md
is excluded by!vendor/**
vendor/github.com/spf13/cobra/LICENSE.txt
is excluded by!vendor/**
vendor/github.com/spf13/cobra/MAINTAINERS
is excluded by!vendor/**
vendor/github.com/spf13/cobra/Makefile
is excluded by!vendor/**
vendor/github.com/spf13/cobra/README.md
is excluded by!vendor/**
vendor/github.com/spf13/cobra/active_help.go
is excluded by!vendor/**
vendor/github.com/spf13/cobra/args.go
is excluded by!vendor/**
vendor/github.com/spf13/cobra/bash_completions.go
is excluded by!vendor/**
vendor/github.com/spf13/cobra/bash_completionsV2.go
is excluded by!vendor/**
vendor/github.com/spf13/cobra/cobra.go
is excluded by!vendor/**
vendor/github.com/spf13/cobra/command.go
is excluded by!vendor/**
vendor/github.com/spf13/cobra/command_notwin.go
is excluded by!vendor/**
vendor/github.com/spf13/cobra/command_win.go
is excluded by!vendor/**
vendor/github.com/spf13/cobra/completions.go
is excluded by!vendor/**
vendor/github.com/spf13/cobra/fish_completions.go
is excluded by!vendor/**
vendor/github.com/spf13/cobra/flag_groups.go
is excluded by!vendor/**
vendor/github.com/spf13/cobra/powershell_completions.go
is excluded by!vendor/**
vendor/github.com/spf13/cobra/shell_completions.go
is excluded by!vendor/**
vendor/github.com/spf13/cobra/zsh_completions.go
is excluded by!vendor/**
vendor/github.com/stretchr/testify/assert/assertion_compare.go
is excluded by!vendor/**
vendor/github.com/stretchr/testify/assert/assertion_format.go
is excluded by!vendor/**
vendor/github.com/stretchr/testify/assert/assertion_forward.go
is excluded by!vendor/**
vendor/github.com/stretchr/testify/assert/assertion_order.go
is excluded by!vendor/**
vendor/github.com/stretchr/testify/assert/assertions.go
is excluded by!vendor/**
vendor/github.com/stretchr/testify/assert/yaml/yaml_custom.go
is excluded by!vendor/**
vendor/github.com/stretchr/testify/assert/yaml/yaml_default.go
is excluded by!vendor/**
vendor/github.com/stretchr/testify/assert/yaml/yaml_fail.go
is excluded by!vendor/**
vendor/go.opentelemetry.io/otel/attribute/set.go
is excluded by!vendor/**
vendor/go.opentelemetry.io/otel/codes/codes.go
is excluded by!vendor/**
vendor/go.opentelemetry.io/otel/internal/attribute/attribute.go
is excluded by!vendor/**
vendor/go.opentelemetry.io/otel/internal/rawhelpers.go
is excluded by!vendor/**
vendor/go.opentelemetry.io/otel/trace/config.go
is excluded by!vendor/**
vendor/go.opentelemetry.io/otel/trace/context.go
is excluded by!vendor/**
vendor/go.opentelemetry.io/otel/trace/doc.go
is excluded by!vendor/**
vendor/go.opentelemetry.io/otel/trace/provider.go
is excluded by!vendor/**
vendor/go.opentelemetry.io/otel/trace/span.go
is excluded by!vendor/**
vendor/go.opentelemetry.io/otel/trace/trace.go
is excluded by!vendor/**
vendor/go.opentelemetry.io/otel/trace/tracer.go
is excluded by!vendor/**
vendor/go.opentelemetry.io/otel/trace/tracestate.go
is excluded by!vendor/**
vendor/golang.org/x/net/html/atom/table.go
is excluded by!vendor/**
vendor/golang.org/x/net/html/doc.go
is excluded by!vendor/**
vendor/golang.org/x/net/html/doctype.go
is excluded by!vendor/**
vendor/golang.org/x/net/html/foreign.go
is excluded by!vendor/**
vendor/golang.org/x/net/html/iter.go
is excluded by!vendor/**
vendor/golang.org/x/net/html/node.go
is excluded by!vendor/**
vendor/golang.org/x/net/html/parse.go
is excluded by!vendor/**
vendor/golang.org/x/net/html/token.go
is excluded by!vendor/**
vendor/golang.org/x/net/http2/client_conn_pool.go
is excluded by!vendor/**
vendor/golang.org/x/net/http2/config.go
is excluded by!vendor/**
vendor/golang.org/x/net/http2/config_go124.go
is excluded by!vendor/**
vendor/golang.org/x/net/http2/frame.go
is excluded by!vendor/**
vendor/golang.org/x/net/http2/http2.go
is excluded by!vendor/**
vendor/golang.org/x/net/http2/server.go
is excluded by!vendor/**
vendor/golang.org/x/net/http2/transport.go
is excluded by!vendor/**
vendor/golang.org/x/net/http2/unencrypted.go
is excluded by!vendor/**
vendor/golang.org/x/net/http2/write.go
is excluded by!vendor/**
vendor/golang.org/x/net/internal/httpcommon/ascii.go
is excluded by!vendor/**
vendor/golang.org/x/net/internal/httpcommon/headermap.go
is excluded by!vendor/**
vendor/golang.org/x/net/internal/httpcommon/request.go
is excluded by!vendor/**
vendor/golang.org/x/oauth2/README.md
is excluded by!vendor/**
vendor/golang.org/x/oauth2/oauth2.go
is excluded by!vendor/**
vendor/golang.org/x/oauth2/pkce.go
is excluded by!vendor/**
vendor/golang.org/x/sync/errgroup/errgroup.go
is excluded by!vendor/**
vendor/golang.org/x/sync/errgroup/go120.go
is excluded by!vendor/**
vendor/golang.org/x/sync/errgroup/pre_go120.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/auxv.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/auxv_unsupported.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/ioctl_linux.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/mkerrors.sh
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/syscall_dragonfly.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/syscall_linux.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/syscall_solaris.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/syscall_zos_s390x.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zerrors_linux.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zerrors_linux_386.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zerrors_linux_arm.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zerrors_linux_loong64.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zerrors_linux_mips.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zerrors_linux_ppc.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zsyscall_linux.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zsysnum_linux_386.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zsysnum_linux_loong64.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/ztypes_linux.go
is excluded by!vendor/**
vendor/golang.org/x/sys/unix/ztypes_zos_s390x.go
is excluded by!vendor/**
vendor/golang.org/x/sys/windows/dll_windows.go
is excluded by!vendor/**
vendor/golang.org/x/sys/windows/syscall_windows.go
is excluded by!vendor/**
vendor/golang.org/x/sys/windows/types_windows.go
is excluded by!vendor/**
vendor/golang.org/x/sys/windows/zsyscall_windows.go
is excluded by!vendor/**
vendor/golang.org/x/term/README.md
is excluded by!vendor/**
vendor/golang.org/x/text/language/parse.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/encoding/prototext/decode.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/editiondefaults/editions_defaults.binpb
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/editionssupport/editions.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/encoding/tag/tag.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/errors/is_go112.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/errors/is_go113.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/filedesc/desc.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/filedesc/desc_lazy.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/filedesc/editions.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/filetype/build.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/flags/flags.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/genid/go_features_gen.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/genid/goname.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/genid/name.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/api_export_opaque.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/bitmap.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/bitmap_race.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/checkinit.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/codec_field.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/codec_field_opaque.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/codec_map.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/codec_map_go111.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/codec_map_go112.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/codec_message.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/codec_message_opaque.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/convert_map.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/decode.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/encode.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/lazy.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/legacy_message.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/merge.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/message.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/message_opaque.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/message_opaque_gen.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/message_reflect.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/message_reflect_field.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/message_reflect_field_gen.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/pointer_unsafe.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/pointer_unsafe_opaque.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/presence.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/validate.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/impl/weak.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/protolazy/bufferreader.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/protolazy/lazy.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/protolazy/pointer_unsafe.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/internal/version/version.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/proto/decode.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/proto/encode.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/proto/size.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/proto/wrapperopaque.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/reflect/protodesc/desc.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/reflect/protodesc/desc_init.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/reflect/protodesc/desc_resolve.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/reflect/protodesc/desc_validate.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/reflect/protodesc/editions.go
is excluded by!vendor/**
vendor/google.golang.org/protobuf/reflect/protodesc/proto.go
is excluded by!vendor/**
📒 Files selected for processing (32)
.github/workflows/go.yml
(3 hunks)Dockerfile.build
(1 hunks)client/addon/clientset/versioned/fake/clientset_generated.go
(2 hunks)client/addon/clientset/versioned/typed/addon/v1alpha1/addon_client.go
(3 hunks)client/addon/informers/externalversions/addon/v1alpha1/addondeploymentconfig.go
(1 hunks)client/addon/informers/externalversions/addon/v1alpha1/addontemplate.go
(1 hunks)client/addon/informers/externalversions/addon/v1alpha1/clustermanagementaddon.go
(1 hunks)client/addon/informers/externalversions/addon/v1alpha1/managedclusteraddon.go
(1 hunks)client/cluster/clientset/versioned/fake/clientset_generated.go
(2 hunks)client/cluster/clientset/versioned/typed/cluster/v1/cluster_client.go
(3 hunks)client/cluster/clientset/versioned/typed/cluster/v1alpha1/cluster_client.go
(3 hunks)client/cluster/clientset/versioned/typed/cluster/v1beta1/cluster_client.go
(3 hunks)client/cluster/clientset/versioned/typed/cluster/v1beta2/cluster_client.go
(3 hunks)client/cluster/informers/externalversions/cluster/v1/managedcluster.go
(1 hunks)client/cluster/informers/externalversions/cluster/v1alpha1/addonplacementscore.go
(1 hunks)client/cluster/informers/externalversions/cluster/v1alpha1/clusterclaim.go
(1 hunks)client/cluster/informers/externalversions/cluster/v1beta1/placement.go
(1 hunks)client/cluster/informers/externalversions/cluster/v1beta1/placementdecision.go
(1 hunks)client/cluster/informers/externalversions/cluster/v1beta2/managedclusterset.go
(1 hunks)client/cluster/informers/externalversions/cluster/v1beta2/managedclustersetbinding.go
(1 hunks)client/operator/clientset/versioned/fake/clientset_generated.go
(2 hunks)client/operator/clientset/versioned/typed/operator/v1/operator_client.go
(3 hunks)client/operator/informers/externalversions/operator/v1/clustermanager.go
(1 hunks)client/operator/informers/externalversions/operator/v1/klusterlet.go
(1 hunks)client/work/clientset/versioned/fake/clientset_generated.go
(2 hunks)client/work/clientset/versioned/typed/work/v1/work_client.go
(3 hunks)client/work/clientset/versioned/typed/work/v1alpha1/work_client.go
(3 hunks)client/work/informers/externalversions/work/v1/appliedmanifestwork.go
(1 hunks)client/work/informers/externalversions/work/v1/manifestwork.go
(1 hunks)client/work/informers/externalversions/work/v1alpha1/manifestworkreplicaset.go
(1 hunks)dependencymagnet/doc.go
(1 hunks)go.mod
(3 hunks)
🧰 Additional context used
🧬 Code Graph Analysis (3)
client/cluster/informers/externalversions/cluster/v1beta2/managedclusterset.go (3)
client/cluster/clientset/versioned/clientset.go (1)
Interface
(18-24)client/cluster/informers/externalversions/cluster/interface.go (1)
Interface
(14-23)client/cluster/informers/externalversions/cluster/v1beta2/interface.go (1)
Interface
(10-15)
client/addon/informers/externalversions/addon/v1alpha1/addontemplate.go (1)
client/addon/informers/externalversions/addon/v1alpha1/interface.go (1)
Interface
(10-19)
client/work/informers/externalversions/work/v1/manifestwork.go (2)
client/work/clientset/versioned/clientset.go (1)
Interface
(16-20)client/work/informers/externalversions/work/v1/interface.go (1)
Interface
(10-15)
🔇 Additional comments (42)
.github/workflows/go.yml (1)
16-16
: Consistent Go version update.The Go version update aligns well with the Dockerfile change, maintaining consistency across build environments.
dependencymagnet/doc.go (1)
23-23
: Good addition of validation-gen tool dependency.This import ensures the Kubernetes validation generation tool is included as a build dependency, supporting the K8s 1.33 upgrade.
client/cluster/clientset/versioned/typed/cluster/v1alpha1/cluster_client.go (2)
72-72
: Function signature change is appropriate.Converting
setConfigDefaults
to a void function simplifies the error handling flow, assuming the configuration defaults are now infallible.
37-37
: setConfigDefaults signature updated consistently across all client versionsVerification confirms that
setConfigDefaults
no longer returns an error in every*_client.go
underclient/*/clientset/versioned/typed/*/*_client.go
. The void signature and corresponding removal of error handling have been applied uniformly:• client/operator/clientset/versioned/typed/operator/v1/operator_client.go
• client/work/clientset/versioned/typed/work/v1alpha1/work_client.go
• client/work/clientset/versioned/typed/work/v1/work_client.go
• client/addon/clientset/versioned/typed/addon/v1alpha1/addon_client.go
• client/cluster/clientset/versioned/typed/cluster/v1beta2/cluster_client.go
• client/cluster/clientset/versioned/typed/cluster/v1beta1/cluster_client.go
• client/cluster/clientset/versioned/typed/cluster/v1/cluster_client.go
• client/cluster/clientset/versioned/typed/cluster/v1alpha1/cluster_client.goNo runtime issues are introduced by this change. All callers now correctly invoke
setConfigDefaults(&config)
without error checks.client/work/clientset/versioned/fake/clientset_generated.go (2)
6-6
: Good addition of metav1 import.The import is needed for the ListOptions type used in the enhanced watch reactor.
39-45
: Enhanced watch reactor functionality looks good.The enhancement to extract and pass ListOptions from watch actions improves the fake clientset's fidelity to real Kubernetes client behavior.
client/addon/clientset/versioned/fake/clientset_generated.go (2)
6-6
: LGTM: Import addition supports ListOptions extraction.The metav1 import is correctly added to support the ListOptions extraction functionality.
43-43
: LGTM: ListOptions now properly passed to Watch method.The enhancement correctly passes the extracted ListOptions to the object tracker's Watch method, improving the fidelity of watch simulations in tests.
client/cluster/clientset/versioned/typed/cluster/v1beta1/cluster_client.go (2)
37-37
: LGTM: Simplified configuration setup.The removal of error handling from
setConfigDefaults
calls is appropriate since configuration defaulting is unlikely to fail.Also applies to: 49-49
72-72
: LGTM: Function signature simplified.The
setConfigDefaults
function no longer returns an error, which is appropriate since setting configuration defaults is unlikely to fail.client/cluster/clientset/versioned/typed/cluster/v1/cluster_client.go (2)
32-32
: LGTM: Consistent simplification of configuration setup.The removal of error handling from
setConfigDefaults
calls maintains consistency with other client packages.Also applies to: 44-44
67-67
: LGTM: Function signature consistently simplified.The
setConfigDefaults
function signature change is consistent with other client packages.client/operator/clientset/versioned/fake/clientset_generated.go (2)
6-6
: LGTM: Import addition supports ListOptions extraction.The metav1 import is correctly added to support the ListOptions extraction functionality.
43-43
: LGTM: ListOptions now properly passed to Watch method.The enhancement correctly passes the extracted ListOptions to the object tracker's Watch method, improving the fidelity of watch simulations in tests.
client/cluster/clientset/versioned/typed/cluster/v1beta2/cluster_client.go (2)
37-37
: LGTM: Consistent simplification of configuration setup.The removal of error handling from
setConfigDefaults
calls maintains consistency with other client packages.Also applies to: 49-49
72-72
: LGTM: Function signature consistently simplified.The
setConfigDefaults
function signature change is consistent with other client packages.client/work/clientset/versioned/typed/work/v1/work_client.go (2)
37-37
: LGTM: Simplified setConfigDefaults callsThe removal of error handling for
setConfigDefaults
calls is appropriate since setting configuration defaults cannot fail.Also applies to: 49-49
72-81
: LGTM: Function signature simplificationConverting
setConfigDefaults
from an error-returning function to a void function is correct since the function only sets configuration defaults and has no failure conditions.client/work/clientset/versioned/typed/work/v1alpha1/work_client.go (1)
32-32
: LGTM: Consistent simplification patternThe changes mirror those in the v1 client and are appropriate for the same reasons -
setConfigDefaults
cannot fail.Also applies to: 44-44, 67-76
client/addon/clientset/versioned/typed/addon/v1alpha1/addon_client.go (1)
47-47
: LGTM: Consistent client simplification across addon clientThe pattern of simplifying
setConfigDefaults
is consistently applied and appropriate.Also applies to: 59-59, 82-91
client/operator/clientset/versioned/typed/operator/v1/operator_client.go (1)
37-37
: LGTM: Final client follows consistent patternThe operator client changes are consistent with the pattern applied across all other clients in this PR.
Also applies to: 49-49, 72-81
client/work/informers/externalversions/work/v1alpha1/manifestworkreplicaset.go (1)
49-68
: LGTM! Excellent context handling improvements.The changes appropriately replace
context.TODO()
withcontext.Background()
for the informer's default list/watch operations, and add new context-aware functions that enable proper context propagation for cancellation and timeouts. ThetweakListOptions
logic is consistently preserved across all functions.client/cluster/informers/externalversions/cluster/v1alpha1/addonplacementscore.go (1)
49-67
: LGTM! Consistent context handling improvements.The changes follow the same excellent pattern as other informers in this PR - replacing
context.TODO()
withcontext.Background()
and adding context-aware functions. This consistency across API groups demonstrates good maintenance practices.client/addon/informers/externalversions/addon/v1alpha1/addondeploymentconfig.go (1)
49-67
: LGTM! Context improvements align with best practices.The changes maintain the established pattern of improving context handling across all informer implementations. Using
context.Background()
for default operations and providing explicit context-aware alternatives is the right approach for Kubernetes client libraries.client/addon/informers/externalversions/addon/v1alpha1/managedclusteraddon.go (1)
49-67
: LGTM! Systematic context handling improvements.The changes demonstrate excellent consistency across the entire informer codebase. Since these are generated files, updating the generator templates to include proper context handling is the right architectural approach.
client/cluster/informers/externalversions/cluster/v1beta2/managedclusterset.go (1)
48-66
: LGTM! Context improvements complete across all informer types.The changes complete the systematic update of context handling across both namespaced and cluster-scoped resources. This demonstrates thorough attention to consistency in the codebase upgrade to support newer Kubernetes versions.
client/operator/informers/externalversions/operator/v1/klusterlet.go (2)
48-48
: LGTM: Improved context usage in generated informer code.The change from
context.TODO()
tocontext.Background()
follows Go best practices for top-level contexts in generated informer code.Also applies to: 54-54
56-67
: LGTM: Context-aware functions enhance informer capabilities.The addition of
ListWithContextFunc
andWatchFuncWithContext
enables proper context propagation in informer operations, which is a valuable improvement for timeout handling and cancellation.client/work/informers/externalversions/work/v1/appliedmanifestwork.go (1)
48-48
: LGTM: Consistent context improvements across informer implementations.The changes mirror the improvements made to other informers in this PR - replacing
context.TODO()
withcontext.Background()
and adding context-aware functions. The implementation correctly handlestweakListOptions
in all functions.Also applies to: 54-54, 56-67
client/cluster/informers/externalversions/cluster/v1beta1/placement.go (1)
49-49
: LGTM: Context handling improvements align with Go best practices.The generated code follows the same beneficial pattern seen across other informers - improved context usage and new context-aware functions for better control flow management.
Also applies to: 55-55, 57-68
client/cluster/informers/externalversions/cluster/v1beta2/managedclustersetbinding.go (1)
49-49
: LGTM: Consistent context-aware informer enhancements.The implementation maintains consistency with other informer updates in this PR, properly handling both the legacy functions and new context-aware variants.
Also applies to: 55-55, 57-68
client/addon/informers/externalversions/addon/v1alpha1/clustermanagementaddon.go (1)
48-48
: LGTM: Well-implemented context improvements in generated informer.The changes follow the established pattern across all informer files in this PR, demonstrating consistent code generation improvements that enhance context handling throughout the codebase.
Also applies to: 54-54, 56-67
client/cluster/informers/externalversions/cluster/v1/managedcluster.go (1)
48-67
: LGTM! Context handling improvements are well-implemented.The changes enhance informer functionality by:
- Replacing
context.TODO()
withcontext.Background()
in List/Watch functions- Adding new
ListWithContextFunc
andWatchFuncWithContext
for explicit context propagation- Consistently applying
tweakListOptions
across all function variantsThese improvements follow Go best practices for context handling and should provide better control over request lifecycles.
client/addon/informers/externalversions/addon/v1alpha1/addontemplate.go (1)
48-67
: LGTM! Consistent context handling implementation.The changes follow the same pattern as other informer implementations in this PR, providing consistent context support across the codebase. The implementation correctly maintains
tweakListOptions
application and provides both background and explicit context variants.client/operator/informers/externalversions/operator/v1/clustermanager.go (1)
48-67
: LGTM! Consistent context handling across informer implementations.The ClusterManager informer follows the same context enhancement pattern as other informers in this PR, ensuring consistent behavior across all resource types.
client/cluster/informers/externalversions/cluster/v1beta1/placementdecision.go (1)
49-67
: LGTM! Consistent context handling with proper namespace support.The PlacementDecision informer correctly implements the context enhancement pattern while properly handling the namespace parameter in all List and Watch function variants.
go.mod (2)
3-3
: Verify Go 1.24.0 compatibility.The Go version has been updated to 1.24.0. Ensure that all code compiles and tests pass with this version, and verify that any Go 1.24-specific features or breaking changes don't impact the codebase.
13-17
: Verify Kubernetes v0.33.1 API compatibilityPreliminary automated scans did not uncover any deprecated imports or version‐related TODOs, but a manual review is still needed to ensure nothing broke in the bump from 0.32.x to 0.33.1. Please verify:
- Dynamic client and unstructured API usage in utils/work/v1 (e.g.
Unstructured
,runtime
,schema
calls) for any changed method signatures or new required parameters.- Informer/lister code generated under client-go (e.g.
cache.NewSharedInformerFactory
,listers
) for updated constructor signatures.- Integration-test setup (envtest, controller-runtime) to confirm the test control plane supports the new version.
client/work/informers/externalversions/work/v1/manifestwork.go (2)
49-49
: LGTM! Context handling improvement.The change from
context.TODO()
tocontext.Background()
is appropriate for background informer operations and aligns with Go best practices.Also applies to: 55-55
57-67
: LGTM! Well-implemented context-aware functions.The new
ListWithContextFunc
andWatchFuncWithContext
functions properly accept and propagate the provided context while preserving thetweakListOptions
behavior. This follows the standard Kubernetes client-go pattern for context-aware informer operations.client/cluster/informers/externalversions/cluster/v1alpha1/clusterclaim.go (2)
48-48
: LGTM! Consistent context handling improvement.The change from
context.TODO()
tocontext.Background()
matches the pattern applied across other informers and is appropriate for background operations.Also applies to: 54-54
56-66
: LGTM! Context-aware functions implemented correctly.The new context-aware functions are implemented consistently with the ManifestWork informer and other informers in this PR. The pattern correctly propagates context while maintaining the existing
tweakListOptions
functionality.
@@ -3,7 +3,7 @@ FROM fedora:34 | |||
ENV GOPATH=/go | |||
ENV PATH=/usr/local/go/bin:/go/bin:$PATH | |||
|
|||
ARG GO_VERSION=1.19.3 | |||
ARG GO_VERSION=1.24.0 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Verification agent
🧩 Analysis chain
Verify Go 1.24.0 availability and stability.
The version jump from Go 1.19.3 to 1.24.0 is significant. Please confirm that Go 1.24.0 is available and stable for production use.
🌐 Web query:
Is Go version 1.24.0 available and what is the latest stable Go version?
💡 Result:
Go version 1.24.0 is available. It was officially released on February 11, 2025, and can be downloaded from the official Go website. The release includes significant changes to the toolchain, runtime, and libraries, such as full support for generic type aliases, updates to the tool dependencies management, and various performance improvements[1][4][7][9][10].
As of the current date (July 2, 2025), the latest stable Go version is 1.24.4. This is confirmed by multiple sources, including the official Go release history and package repositories, which show 1.24.4 as the most recent stable release[4][6]. There is a 1.25 release candidate, but the stable 1.25 release is scheduled for August 2025 and is not yet available[5][8].
Summary table:
Version | Release Status | Release Date |
---|---|---|
1.24.0 | Initial 1.24 major | 2025-02-11 |
1.24.4 | Latest stable | 2025-06-05 |
1.25rc1 | Release candidate | Not stable |
You can install Go 1.24.4 using standard package managers or download it directly from the official website[4][6].
Citations:
- 1: https://groups.google.com/g/golang-dev/c/ronuo6q16Sc
- 2: https://ssojet.com/blog/unlocking-the-future-of-golang-trends-predictions-and-business-impact-in-2025/
- 3: Update to Go 1.24 / 1.23 etcd-io/etcd#19417
- 4: https://go.dev/doc/devel/release
- 5: https://go.dev/dl/
- 6: https://formulae.brew.sh/formula/go
- 7: https://tip.golang.org/doc/go1.24
- 8: https://tip.golang.org/doc/go1.25
- 9: https://www.alexedwards.net/blog/how-to-manage-tool-dependencies-in-go-1.24-plus
- 10: https://www.youtube.com/watch?v=qjiIA0220ms
Update Go version to latest patch release (1.24.4).
Go 1.24.0 is officially released and stable, but the most recent patch release is 1.24.4 (June 5, 2025), which includes important bug fixes and security updates. Please bump the version accordingly:
• File: Dockerfile.build
Line: 6
- ARG GO_VERSION=1.24.0
+ ARG GO_VERSION=1.24.4
🤖 Prompt for AI Agents
In Dockerfile.build at line 6, update the Go version argument from 1.24.0 to
1.24.4 to use the latest patch release with important bug fixes and security
updates. Replace the existing version string with "1.24.4" to ensure the build
uses the updated Go version.
@@ -35,9 +36,13 @@ func NewSimpleClientset(objects ...runtime.Object) *Clientset { | |||
cs.discovery = &fakediscovery.FakeDiscovery{Fake: &cs.Fake} | |||
cs.AddReactor("*", "*", testing.ObjectReaction(o)) | |||
cs.AddWatchReactor("*", func(action testing.Action) (handled bool, ret watch.Interface, err error) { | |||
var opts metav1.ListOptions | |||
if watchActcion, ok := action.(testing.WatchActionImpl); ok { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix the typo in variable name.
There's a typo in the variable name that will cause compilation issues.
- if watchActcion, ok := action.(testing.WatchActionImpl); ok {
+ if watchAction, ok := action.(testing.WatchActionImpl); ok {
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
if watchActcion, ok := action.(testing.WatchActionImpl); ok { | |
if watchAction, ok := action.(testing.WatchActionImpl); ok { |
🤖 Prompt for AI Agents
In client/work/clientset/versioned/fake/clientset_generated.go at line 40, there
is a typo in the variable name "watchActcion" which should be corrected to
"watchAction" to prevent compilation errors. Update the variable name to the
correct spelling in the type assertion.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is generated code, seems to be the bug in client-gen
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
@qiujian16 You're absolutely right! This is generated code from client-gen and shouldn't be manually edited. Let me check if this is a known issue in the Kubernetes code-generator.
🏁 Script executed:
# Check if this typo exists in other similar generated files to understand scope
rg "watchActcion" --type go
# Also check if there are any similar typos in the codebase
rg "Actcion" --type go
Length of output: 1834
The typo is widespread! It appears in all 4 generated fake clientsets across the repository (work, operator, cluster, and addon). This confirms it's definitely a bug in the client-gen tool from kubernetes/code-generator.
Since this affects compilation and is present across all generated fake clientsets, this should be reported upstream to the Kubernetes code-generator project. Would you like me to help create an issue in the kubernetes/code-generator repository to report this bug?
The issue affects:
client/work/clientset/versioned/fake/clientset_generated.go
client/operator/clientset/versioned/fake/clientset_generated.go
client/cluster/clientset/versioned/fake/clientset_generated.go
client/addon/clientset/versioned/fake/clientset_generated.go
Each file has the typo in both the variable declaration and usage: watchActcion
instead of watchAction
.
🌐 Web query:
kubernetes code-generator client-gen watchActcion typo bug issue
💡 Result:
It looks like you're encountering or want to know about a typo bug related to "watchActcion" in Kubernetes code-generator's client-gen tool. This sounds like a misspelling of "watchAction," which should be part of the generated client code for watching resources.
Here's what might be happening and how you can troubleshoot or fix it:
-
Possible Typo in Generated Code:
- The code-generator might have produced "watchActcion" instead of "watchAction," causing compilation or runtime errors.
- This could stem from a bug in the generator's templates or in your API definitions.
-
Check Your API Definitions:
- Verify if any of your custom resource definitions (CRDs) or types have typos that might have propagated into the generated code.
-
Check the Generator Version:
- Sometimes bugs exist in a specific version of the Kubernetes code-generator.
- Ensure you are using an up-to-date and stable version of the code-generator tools from https://github.com/kubernetes/code-generator.
-
Manual Fix / Patch:
- If it's a small typo in the generated code, you could temporarily fix it manually, but this will be overwritten on regeneration.
- Ideally, locate the source of the typo in the templates or code-generator and patch it.
-
Open an Issue / Check Existing Issues:
- Check the Kubernetes code-generator GitHub issues if this bug has been reported.
- You might consider opening a new issue with reproduction details.
Would you like me to help you search for any existing reports of this issue or provide guidance on how to fix it specifically? If you can share the exact error message or a snippet of the problematic code, that would be helpful too.
🏁 Script executed:
# Check if there are any existing issues about this typo in kubernetes/code-generator
gh search issues --repo kubernetes/code-generator "watchActcion" --state all
# Also search for "watchAction" typo issues
gh search issues --repo kubernetes/code-generator "watchAction typo" --state all
# Check for any recent issues about fake clientset generation
gh search issues --repo kubernetes/code-generator "fake clientset" --state open
Length of output: 5673
🏁 Script executed:
# Fix the GitHub CLI search commands
gh search issues --repo kubernetes/code-generator "watchActcion" --state open
gh search issues --repo kubernetes/code-generator "watchActcion" --state closed
# Search for watchAction typo issues
gh search issues --repo kubernetes/code-generator "watchAction typo" --state open
gh search issues --repo kubernetes/code-generator "watchAction typo" --state closed
# Search more broadly for fake clientset issues
gh search issues --repo kubernetes/code-generator "fake clientset" --state open --limit 10
Length of output: 420
The search didn't find any existing issues about this typo, which means this bug hasn't been reported yet to the kubernetes/code-generator repository. Since this affects compilation and is present across all generated fake clientsets, it definitely needs to be reported upstream.
Would you like me to create an issue in the kubernetes/code-generator repository to report this bug? I can create it with:
- Title: "client-gen generates typo 'watchActcion' instead of 'watchAction' in fake clientsets"
- Description: Details about the typo affecting all generated fake clientset files, causing compilation errors
- Affected files: All
fake/clientset_generated.go
files - Impact: Prevents compilation of projects using generated fake clientsets
- Backlink: Reference to this PR and comment
This would help get the bug fixed upstream so future code generation won't have this issue. Should I go ahead and create the issue?
🧬 Code Graph Analysis Results
Relevant snippets from client/work/clientset/versioned/typed/work/v1/fake/fake_work_client.go
(lines 11-13)
FakeWorkV1 struct {
*testing.Fake
}
Relevant snippets from client/work/clientset/versioned/typed/work/v1alpha1/fake/fake_work_client.go
(lines 11-13)
FakeWorkV1alpha1 struct {
*testing.Fake
}
Relevant snippets from client/work/clientset/versioned/typed/work/v1/work_client.go
(lines 13-17)
WorkV1Interface interface {
RESTClient() rest.Interface
AppliedManifestWorksGetter
ManifestWorksGetter
}
Relevant snippets from client/work/clientset/versioned/typed/work/v1alpha1/work_client.go
(lines 13-16)
WorkV1alpha1Interface interface {
RESTClient() rest.Interface
ManifestWorkReplicaSetsGetter
}
Relevant snippets from client/work/clientset/versioned/clientset.go
(lines 16-20)
Interface interface {
Discovery() discovery.DiscoveryInterface
WorkV1() workv1.WorkV1Interface
WorkV1alpha1() workv1alpha1.WorkV1alpha1Interface
}
Relevant snippets from client/work/clientset/versioned/clientset.go
(lines 23-27)
Clientset struct {
*discovery.DiscoveryClient
workV1 *workv1.WorkV1Client
workV1alpha1 *workv1alpha1.WorkV1alpha1Client
}
These snippets provide the interface and struct definitions related to the clientset and its fake implementations, which are directly relevant to understanding the generated fake clientset code and the user comment about a potential bug in client-gen.
✏️ Learnings added
Learnt from: qiujian16
PR: open-cluster-management-io/api#380
File: client/work/clientset/versioned/fake/clientset_generated.go:40-40
Timestamp: 2025-07-02T14:09:55.044Z
Learning: Generated code files marked with "Code generated by client-gen. DO NOT EDIT." should not be manually edited as they are automatically generated by Kubernetes code-generator tools and any changes would be overwritten.
Note: Learnings are effective only in the context of similar code segments. To apply general coding guidelines, please configure review instructions. You can manage existing learnings in the app.
var opts metav1.ListOptions | ||
if watchActcion, ok := action.(testing.WatchActionImpl); ok { | ||
opts = watchActcion.ListOptions | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix variable name typo.
There's a typo in the variable name that will cause compilation failure.
- if watchActcion, ok := action.(testing.WatchActionImpl); ok {
- opts = watchActcion.ListOptions
+ if watchAction, ok := action.(testing.WatchActionImpl); ok {
+ opts = watchAction.ListOptions
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
var opts metav1.ListOptions | |
if watchActcion, ok := action.(testing.WatchActionImpl); ok { | |
opts = watchActcion.ListOptions | |
} | |
var opts metav1.ListOptions | |
if watchAction, ok := action.(testing.WatchActionImpl); ok { | |
opts = watchAction.ListOptions | |
} |
🤖 Prompt for AI Agents
In client/addon/clientset/versioned/fake/clientset_generated.go around lines 37
to 40, there is a typo in the variable name "watchActcion" which should be
corrected to "watchAction" to fix the compilation error. Rename the variable to
the correct spelling consistently in this block.
var opts metav1.ListOptions | ||
if watchActcion, ok := action.(testing.WatchActionImpl); ok { | ||
opts = watchActcion.ListOptions | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix variable name typo.
There's the same typo in the variable name that will cause compilation failure.
- if watchActcion, ok := action.(testing.WatchActionImpl); ok {
- opts = watchActcion.ListOptions
+ if watchAction, ok := action.(testing.WatchActionImpl); ok {
+ opts = watchAction.ListOptions
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
var opts metav1.ListOptions | |
if watchActcion, ok := action.(testing.WatchActionImpl); ok { | |
opts = watchActcion.ListOptions | |
} | |
var opts metav1.ListOptions | |
if watchAction, ok := action.(testing.WatchActionImpl); ok { | |
opts = watchAction.ListOptions | |
} |
🤖 Prompt for AI Agents
In client/operator/clientset/versioned/fake/clientset_generated.go around lines
37 to 40, there is a typo in the variable name "watchActcion" which should be
corrected to "watchAction" to prevent compilation errors. Update all occurrences
of the misspelled variable to the correct spelling.
@@ -3,6 +3,7 @@ | |||
package fake | |||
|
|||
import ( | |||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Enhancement approved, but fix the typo
The addition of metav1.ListOptions
support for watch reactors improves testing fidelity. However, there's a typo on line 44.
Fix the typo in the variable name:
- if watchActcion, ok := action.(testing.WatchActionImpl); ok {
+ if watchAction, ok := action.(testing.WatchActionImpl); ok {
- opts = watchActcion.ListOptions
+ opts = watchAction.ListOptions
Also applies to: 43-46, 49-49
🤖 Prompt for AI Agents
In client/cluster/clientset/versioned/fake/clientset_generated.go around lines
43 to 49, there is a typo in the variable name related to metav1.ListOptions
usage in watch reactors. Review these lines carefully and correct the misspelled
variable name to ensure consistency and proper functionality. Make sure the
corrected variable name matches the expected naming conventions and is used
consistently across these lines.
Summary
Related issue(s)
Fixes #
Summary by CodeRabbit
New Features
Bug Fixes
Chores