staging/src/k8s.io/code-generator/cmd/conversion-gen/generators/conversion.go (26 lines): - line 76: // TODO: This is created only to reduce number of changes in a single PR. - line 179: // TODO: This should call the Namer directly. - line 211: // TODO: This is too ad-hoc. We need a better way. - line 217: // TODO: in the future, relax the nested manual conversion requirement - line 296: // TODO: build a more fundamental concept in gengo for dealing with modifications - line 326: // TODO: build a more fundamental concept in gengo for dealing with modifications - line 424: // TODO: determine whether the interfaces are actually equivalent - for now, they must have the - line 544: // TODO: Consider generating functions for other kinds too. - line 830: sw.Do("// FIXME: Provide conversion function to convert $.inType|raw$ to $.outType|raw$\n", args) - line 845: // TODO: Implement it when necessary. - line 847: sw.Do("// FIXME: Converting unassignable keys unsupported $.|raw$\n", inType.Key) - line 872: sw.Do("// FIXME: Provide conversion function to convert $.inType|raw$ to $.outType|raw$\n", args) - line 991: sw.Do("// FIXME: Provide conversion function to convert $.inType|raw$ to $.outType|raw$\n", args) - line 1012: sw.Do("// FIXME: Provide conversion function to convert $.inType|raw$ to $.outType|raw$\n", args) - line 1027: sw.Do("// FIXME: Provide conversion function to convert $.inType|raw$ to $.outType|raw$\n", args) - line 1070: sw.Do("// FIXME: Provide conversion function to convert $.inType|raw$ to $.outType|raw$\n", args) - line 1082: // TODO: Add support for aliases. - line 1087: sw.Do("// FIXME: Type $.|raw$ is unsupported.\n", inType) - line 1162: // TODO: Support other types to allow more auto-conversions. - line 1163: sw.Do("// FIXME: out.$.name$ is of not yet supported type and requires manual conversion\n", memberArgs) - line 1166: // TODO: Support other types to allow more auto-conversions. - line 1167: sw.Do("// FIXME: out.$.name$ is of not yet supported type and requires manual conversion\n", memberArgs) - line 1193: sw.Do("// FIXME: out.$.name$ is of unsupported type and requires manual conversion\n", memberArgs) - line 1205: sw.Do("// FIXME: unexpected error for out.$.name$\n", memberArgs) - line 1209: sw.Do("// FIXME: out.$.name$ is of unsupported type and requires manual conversion\n", memberArgs) - line 1214: // TODO: This should maybe check for actual assignability between the two pkg/apis/core/types.go (20 lines): - line 802: // TODO: Longer term we want to represent the selection of underlying - line 855: // TODO: how do we prevent errors in the filesystem from compromising the machine - line 889: // TODO: how do we prevent errors in the filesystem from compromising the machine - line 937: // TODO: how do we prevent errors in the filesystem from compromising the machine - line 978: // TODO: how do we prevent errors in the filesystem from compromising the machine - line 1055: // TODO: how do we prevent errors in the filesystem from compromising the machine - line 1088: // TODO: Consider credentials here. - line 1239: // TODO: how do we prevent errors in the filesystem from compromising the machine - line 1270: // TODO: how do we prevent errors in the filesystem from compromising the machine - line 2916: // NOT YET IMPLEMENTED. TODO: Uncomment field once it is implemented. - line 2951: // NOT YET IMPLEMENTED. TODO: Uncomment field once it is implemented. - line 3046: // NOT YET IMPLEMENTED. TODO: Uncomment field once it is implemented. - line 3117: // NOT YET IMPLEMENTED. TODO: Uncomment field once it is implemented. - line 5206: // TODO: merge w/ PodExecOptions below for stdin, stdout, etc - line 5324: // TODO: this design is not final and this field is subject to change in the future. - line 5331: // TODO: Add other useful fields. apiVersion, kind, uid? - line 5383: // TODO: Decide whether to store these separately or with the object they apply to. - line 5396: // TODO: provide exact specification for format. - line 5401: // TODO: decide on maximum length. Mapped to events.Event.note - line 5798: // TODO: Consider supporting different formats, specifying CA/destinationCA. staging/src/k8s.io/api/core/v1/types.go (18 lines): - line 932: // TODO: how do we prevent errors in the filesystem from compromising the machine - line 976: // TODO: how do we prevent errors in the filesystem from compromising the machine - line 1175: // TODO: how do we prevent errors in the filesystem from compromising the machine - line 1290: // TODO: how do we prevent errors in the filesystem from compromising the machine - line 1422: // TODO: how do we prevent errors in the filesystem from compromising the machine - line 1468: // TODO: how do we prevent errors in the filesystem from compromising the machine - line 1508: // TODO: how do we prevent errors in the filesystem from compromising the machine - line 3212: // NOT YET IMPLEMENTED. TODO: Uncomment field once it is implemented. - line 3247: // NOT YET IMPLEMENTED. TODO: Uncomment field once it is implemented. - line 3347: // NOT YET IMPLEMENTED. TODO: Uncomment field once it is implemented. - line 3416: // NOT YET IMPLEMENTED. TODO: Uncomment field once it is implemented. - line 6124: // TODO: merge w/ PodExecOptions below for stdin, stdout, etc - line 6162: // TODO: This is largely identical to PodAttachOptions above, make sure they stay in sync and see about merging - line 6302: // TODO: this design is not final and this field is subject to change in the future. - line 6313: // TODO: Add other useful fields. apiVersion, kind, uid? - line 6381: // TODO: provide exact specification for format. - line 6386: // TODO: decide on maximum length. - line 6817: // TODO: Consider supporting different formats, specifying CA/destinationCA. pkg/apis/core/validation/validation.go (17 lines): - line 367: // TODO: Remove calls to this method scattered in validations of specific resources, e.g., ValidatePodUpdate. - line 1029: // TODO: consider adding a RequiredOneOf() error for this and similar cases - line 2350: // TODO: remove Beta when no longer needed - line 2357: // TODO: add a specific error with a hint that storage class name can not be changed - line 3510: // TODO: do not validate leading and trailing whitespace to preserve backward compatibility. - line 3826: // TODO: Replace next line with subsequent commented-out line when implement TaintEffectNoScheduleNoAdmit. - line 3834: // TODO: Uncomment this block when implement TaintEffectNoScheduleNoAdmit. - line 4286: // TODO: Think if we need to relax this restriction or some of the restrictions - line 4551: // TODO:Uncomment below code once RequiredDuringSchedulingRequiredDuringExecution is implemented. - line 4570: // TODO: Uncomment the next three lines once RequiredDuringSchedulingRequiredDuringExecution is implemented. - line 4586: // TODO:Uncomment below code once RequiredDuringSchedulingRequiredDuringExecution is implemented. - line 4816: // TODO: Pinpoint the specific container that causes the invalid error after we have strategic merge diff - line 5108: // TODO: Pinpoint the specific field that causes the invalid error after we have strategic merge diff - line 5273: // TODO: When validation becomes versioned, this gets more complicated. - line 5277: // TODO: When validation becomes versioned, this gets more complicated. - line 5934: // TODO: Enable the code once we have better core object.status update model. Currently, - line 6898: // TODO: consider adding a RequiredOneOf() error for this and similar cases pkg/kubelet/kubelet.go (15 lines): - line 296: // TODO: it needs to be replaced by a proper context in the future - line 975: // TODO: review all kubelet components that need the actual set of pods (vs the desired set) - line 1740: // TODO: make pod workers record their own latencies - line 1848: // TODO: once context cancellation is added this check can be removed - line 2037: // TODO: once a pod is terminal, certain probes (liveness exec) could be stopped immediately after - line 2045: // TODO: have KillPod return the terminal status of stopped containers and write that into the - line 2117: // TODO: this should probably be zero, to bypass any waiting (needs fixes in container runtime) - line 2150: // TODO: should we simply fold this into TerminatePod? that would give a single pod update - line 2216: // TODO: Consider synchronizing all pods which have not recently been acted on to be resilient - line 2286: // TODO: move out of disk check into a pod admitter - line 2287: // TODO: out of resource eviction should have a pod admitter call-out - line 2435: // TODO: Do we want to support this? - line 2688: // TODO: reconcile being calculated in the config manager is questionable, and avoiding - line 2693: // TODO: this should be unnecessary today - determine what is the cause for this to - line 2706: // TODO: this is questionable - status read is async and during eviction we already staging/src/k8s.io/api/core/v1/generated.proto (13 lines): - line 48: // TODO: how do we prevent errors in the filesystem from compromising the machine - line 1570: // TODO: provide exact specification for format. - line 1575: // TODO: decide on maximum length. - line 1682: // TODO: how do we prevent errors in the filesystem from compromising the machine - line 1786: // TODO: how do we prevent errors in the filesystem from compromising the machine - line 1973: // TODO: how do we prevent errors in the filesystem from compromising the machine - line 2029: // TODO: how do we prevent errors in the filesystem from compromising the machine - line 2241: // TODO: Add other useful fields. apiVersion, kind, uid? - line 2781: // TODO: this design is not final and this field is subject to change in the future. - line 3441: // TODO: merge w/ PodExecOptions below for stdin, stdout, etc - line 3534: // TODO: This is largely identical to PodAttachOptions above, make sure they stay in sync and see about merging - line 4521: // TODO: how do we prevent errors in the filesystem from compromising the machine - line 4572: // TODO: how do we prevent errors in the filesystem from compromising the machine staging/src/k8s.io/apiserver/pkg/endpoints/installer.go (10 lines): - line 586: // TODO: more strongly type whether a resource allows these actions on "all namespaces" (bulk delete) - line 628: // TODO: Add status documentation using Returns() - line 666: // TODO: Check for the interface on storage - line 669: // TODO: This seems wrong for cross-group subresources. It makes an assumption that a subresource and its parent are in the same group version. Revisit this. - line 857: // TODO: in some cases, the API may return a v1.Status instead of the versioned object - line 916: // TODO: in some cases, the API may return a v1.Status instead of the versioned object - line 1148: // TODO: This is a hack to let metav1.Time through. This needs to be fixed in a more generic way eventually. bug #36191 - line 1176: // TODO: this is incomplete, expand as needed. - line 1197: // TODO: Fix these when go-restful supports a way to specify an array query param: - line 1233: // TODO: support deeper paths pkg/controller/controller_utils.go (10 lines): - line 214: // TODO: Extend ExpirationCache to support explicit expiration. - line 215: // TODO: Make this possible to disable in tests. - line 216: // TODO: Support injection of clock. - line 282: // TODO: think about why this line being atomic doesn't matter - line 331: // TODO: Track creates as well (#22599) - line 334: // TODO: There is a much nicer way to do this that involves a single store, - line 440: // TODO: merge the controller revision interface in controller_history.go with this one - line 706: // TODO: take availability into account when we push minReadySeconds information from deployment into pods, - line 748: // TODO: take availability into account when we push minReadySeconds information from deployment into pods, - line 859: // TODO: take availability into account when we push minReadySeconds information from deployment into pods, pkg/kubelet/kubelet_pods.go (9 lines): - line 800: // TODO: remove this next line once all platforms use apiserver+Pods. - line 931: // TODO: extend PodDeletionSafetyProvider interface and implement it - line 1041: // TODO: the logic here does not handle two cases: - line 1117: // TODO: this method could more aggressively cleanup terminated pods - line 1403: // TODO: this method is returning logs of random container attempts, when it should be returning the most recent attempt - line 1419: // TODO: this should be using the podWorker's pod store as authoritative, since - line 1442: // TODO: Consolidate the logic here with kuberuntime.GetContainerLogs, here we convert container name to containerID, - line 1444: // TODO: After separate container log lifecycle management, we should get log based on the existing log files - line 2214: // TODO: allowlist logs we are willing to serve pkg/proxy/winkernel/hns.go (8 lines): - line 110: // TODO: Store by IP only and remove any lookups by endpoint ID. - line 153: return &endpointInfo{ //TODO: fill out PA - line 155: isLocal: uint32(hnsendpoint.Flags&hcn.EndpointFlagsRemoteEndpoint) == 0, //TODO: Change isLocal to isRemote - line 184: isLocal: uint32(endpoint.Flags&hcn.EndpointFlagsRemoteEndpoint) == 0, //TODO: Change isLocal to isRemote - line 198: return &endpointInfo{ //TODO: fill out PA - line 200: isLocal: uint32(hnsendpoint.Flags&hcn.EndpointFlagsRemoteEndpoint) == 0, //TODO: Change isLocal to isRemote - line 259: providerAddress: ep.providerAddress, //TODO get from createdEndpoint - line 419: // TODO: The logic in syncProxyRules should be rewritten in the future to better stage and handle a call like this failing using the policyApplied fields. pkg/controlplane/instance.go (7 lines): - line 336: // TODO: Currently no way to specify an empty range (do we need to allow this?) - line 422: // TODO: update to a version that caches success but will recheck on failure, unlike memcache discovery - line 456: // TODO: describe the priority all the way down in the RESTStorageProviders and plumb it back through the various discovery - line 563: // TODO: See if we can pass ctx to the current method - line 595: // TODO: See if we can pass ctx to the current method - line 612: // TODO: receive identity label value as a parameter when post start hook is moved to generic apiserver. - line 617: // TODO: move this into generic apiserver and make the lease identity value configurable pkg/kubelet/server/server.go (7 lines): - line 195: // TODO: https://github.com/kubernetes/kubernetes/issues/109829 tracer should use WithPublicEndpoint - line 681: // TODO: Why return JSON when the rest return plaintext errors? - line 682: // TODO: Why return plaintext errors? - line 687: // TODO: Why return JSON when the rest return plaintext errors? - line 692: // TODO: Why return JSON when the rest return plaintext errors? - line 748: // TODO: this needs to be parameterized to the kubelet, not hardcoded. Depends on Kubelet - line 750: // TODO: Locked to v1, needs to be made generic staging/src/k8s.io/api/extensions/v1beta1/types.go (7 lines): - line 196: // TODO: Update this to follow our convention for oneOf, whatever we decide it - line 343: // TODO: Update this to follow our convention for oneOf, whatever we decide it - line 498: // TODO: Add valid condition types of a DaemonSet. - line 661: // TODO: Add the ability to specify load-balancer IP through claims - line 679: // TODO: Consider specifying different modes of termination, protocols etc. - line 778: //TODO: - line 801: // TODO: Consider adding fields for ingress-type specific global pkg/kubelet/pod_workers.go (7 lines): - line 214: // TODO: Once pod logs are separated from running containers, this method should - line 324: // TODO: remove this from the struct by having the context initialized - line 946: // TODO: this should be a wait.Until with backoff to handle panics, and - line 1014: // TODO: Do we want to allow non-static pods with the same full name? - line 1043: // TODO: This is O(N) with respect to the number of updates to static pods - line 1183: // TODO: We should probably move this into syncPod and add an execution count - line 1246: // TODO: this adds ~1s of latency on all transitions from sync to terminating staging/src/k8s.io/apiserver/pkg/endpoints/handlers/patch.go (6 lines): - line 72: // TODO: handle this in negotiation - line 249: // TODO: Use builder pattern to construct this object? - line 250: // TODO: As part of that effort, some aspects of PatchResource above could be - line 483: // TODO: spawn something to track deciding whether a fieldValidation=Strict - line 544: // TODO: rename this function because the name implies it is related to applyPatcher - line 594: // TODO: rename this function because the name implies it is related to applyPatcher pkg/registry/core/service/storage/alloc.go (6 lines): - line 408: // TODO: simplify this and avoid all this duplicate code - line 429: // TODO: simplify this and avoid all this duplicate code - line 531: // TODO: when validation becomes versioned, this gets more complicated. - line 540: // TODO: what error should be returned here? It's not a - line 556: // TODO: when validation becomes versioned, this gets more complicated. - line 828: // TODO: what error should be returned here? It's not a staging/src/k8s.io/apimachinery/pkg/runtime/schema/group_version.go (6 lines): - line 192: // TODO: Move GroupVersion to a package under pkg/runtime, since it's used by scheme. - line 193: // TODO: Introduce an adapter type between GroupVersion and runtime.GroupVersioner, and use LegacyCodec(GroupVersion) - line 213: // TODO once we've cleared the last uses as strings, this special case should be removed. - line 240: // TODO: Move GroupVersions to a package under pkg/runtime, since it's used by scheme. - line 241: // TODO: Introduce an adapter type between GroupVersions and runtime.GroupVersioner, and use LegacyCodec(GroupVersion) - line 299: // TODO: further reduce usage of this method. staging/src/k8s.io/client-go/tools/events/event_broadcaster.go (6 lines): - line 57: // TODO: validate impact of copying and investigate hashing - line 77: // TODO: this makes it easier for testing purpose and masks the logic of performing API calls. - line 128: // TODO: Investigate whether lock contention won't be a problem - line 146: // TODO: Investigate whether lock contention won't be a problem - line 199: // TODO: Add a metric counting the number of recording attempts - line 314: // TODO: this function should also return an error. staging/src/k8s.io/kubectl/pkg/polymorphichelpers/history.go (6 lines): - line 103: // TODO: this should be a describer - line 193: // TODO: this should be a describer - line 232: // TODO: for now we assume revisions don't overlap, we may need to handle it - line 279: // TODO: this should be a describer - line 331: // TODO: Rename this to controllerHistory when other controllers have been upgraded - line 455: // TODO: copied here until this becomes a describer pkg/apis/apps/types.go (6 lines): - line 167: // TODO: Consider a rename of this field. - line 192: // TODO: Define the behavior if a claim already exists with the same name. - line 292: // TODO: Add valid condition types for Statefulsets. - line 460: // TODO: Update this to follow our convention for oneOf, whatever we decide it - line 598: // TODO: Update this to follow our convention for oneOf, whatever we decide it - line 750: // TODO: Add valid condition types of a DaemonSet. pkg/scheduler/framework/plugins/dynamicresources/dynamicresources.go (6 lines): - line 106: // TODO (#113700): replace with patch operation. Beware that patching must only succeed if the - line 109: // TODO: metric for update results, with the operation ("set selected - line 943: // TODO: metric for update errors. - line 987: // TODO: can we increase the chance that the scheduler picks - line 1011: // TODO: can or should we ensure that schedulingCtx gets aborted while - line 1050: // TODO: can UID be assumed to be unique all resources or do we also need to compare Group/Version/Resource? staging/src/k8s.io/dynamic-resource-allocation/controller/controller.go (6 lines): - line 176: // TODO: make it configurable - line 197: // TODO: use contextual logging in eventBroadcaster once it - line 388: // TODO: We don't know here *what* failed. Determine based on error? - line 729: // TODO (?): use an informer - only useful when many (most?) pods have claims - line 730: // TODO (?): let the scheduler copy all claim names + UIDs into PodSchedulingContext - then we don't need the pod - line 830: // TODO: replace with patching the array. We can do that without race conditions cmd/kubeadm/app/phases/upgrade/postupgrade.go (6 lines): - line 73: // TODO: remove this in the 1.30 release cycle: - line 81: // TODO: In the future we want to use something more official like NodeStatus or similar for detecting this properly - line 106: // TODO: Is this needed to do here? I think that updating cluster info should probably be separate from a normal upgrade - line 154: // TODO: remove this once "kubeadm upgrade apply" phases are supported: - line 181: // TODO: remove this once "kubeadm upgrade apply" phases are supported: - line 310: // TODO: this code must not be present in the 1.30 release, remove it during the 1.30 pkg/scheduler/framework/plugins/volumebinding/binder.go (6 lines): - line 467: // TODO: can we assume every time? - line 579: // TODO: does it hurt if we make an api call and nothing needs to be updated? - line 641: // TODO: return the error once CSINode is created by default - line 868: // TODO: return the error once CSINode is created by default - line 1025: // TODO (for beta): benchmark this and potentially introduce some kind of lookup structure (https://github.com/kubernetes/enhancements/issues/1698#issuecomment-654356718). - line 1041: // TODO (?): this doesn't give any information about which pools where considered and why staging/src/k8s.io/apimachinery/pkg/runtime/serializer/codec_factory.go (6 lines): - line 174: // TODO: allow other codecs to be compiled in? - line 175: // TODO: accept a scheme interface - line 261: // TODO: make this call exist only in pkg/api, and initialize it with the set of default versions. - line 280: // TODO: the decoder will eventually be removed in favor of dealing with objects in their versioned form - line 281: // TODO: only accept a group versioner - line 296: // TODO: these are for backcompat, remove them in the future pkg/controller/deployment/util/deployment_util.go (5 lines): - line 305: // TODO: How to decide which annotations should / should not be copied? - line 529: // TODO: switch RsListFunc and podListFunc to full namespacers - line 542: // TODO: Right now we list replica sets by their labels. We should list them by selector, i.e. the replica set's selector - line 832: // TODO: This should take clientset.Interface when all code is updated to use clientset. Keeping it this way allows the function to be used by callers who have client.Interface. - line 895: // TODO: MODIFY THIS METHOD so that it checks for the podTemplateSpecHash label pkg/controller/daemon/daemon_controller.go (5 lines): - line 235: // TODO: make a KEP and fix informers to always call the delete event handler on re-create - line 339: // TODO: Handle overlapping controllers better. See comment in ReplicationManager. - line 350: // TODO: Handle overlapping controllers better. See comment in ReplicationManager. - line 643: // TODO: it'd be nice to pass a hint with these enqueues, so that each ds would only examine the added node (unless it has other work to do, too). - line 707: // TODO: it'd be nice to pass a hint with these enqueues, so that each ds would only examine the added node (unless it has other work to do, too). staging/src/k8s.io/pod-security-admission/admission/admission.go (5 lines): - line 516: // TODO: Craft a better user-facing warning message - line 633: // TODO: invert this logic to only allow specific update types. - line 677: // TODO: consider optimizing to O(1) lookup - line 684: // TODO: consider optimizing to O(1) lookup - line 691: // TODO: consider optimizing to O(1) lookup staging/src/k8s.io/api/apps/v1beta2/types.go (5 lines): - line 238: // TODO: Consider a rename of this field. - line 262: // TODO: Define the behavior if a claim already exists with the same name. - line 481: // TODO: Update this to follow our convention for oneOf, whatever we decide it - line 625: // TODO: Update this to follow our convention for oneOf, whatever we decide it - line 773: // TODO: Add valid condition types of a DaemonSet. cluster/gce/windows/k8s-node-setup.psm1 (5 lines): - line 45: # TODO: update scripts for these style guidelines: - line 65: # Writes a TODO with $Message to the console. - line 70: Log-Output "TODO: ${Message}" - line 1920: # TODO: Add custom parser for containerd logs once format is settled. - line 2250: # TODO: detect exceptions and forward them as one log entry using the staging/src/k8s.io/apimachinery/pkg/api/meta/help.go (5 lines): - line 32: // TODO: remove and replace with an interface check - line 42: // TODO: Replace the code in this check with an interface comparison by - line 79: // TODO: this will be replaced with an interface in the future - line 138: // TODO: Change to an interface call? - line 240: // TODO: Set ContentEncoding and ContentType correctly. staging/src/k8s.io/api/apps/v1/types.go (5 lines): - line 188: // TODO: Consider a rename of this field. - line 212: // TODO: Define the behavior if a claim already exists with the same name. - line 432: // TODO: Update this to follow our convention for oneOf, whatever we decide it - line 573: // TODO: Update this to follow our convention for oneOf, whatever we decide it - line 722: // TODO: Add valid condition types of a DaemonSet. staging/src/k8s.io/apiserver/pkg/storage/errors/storage.go (5 lines): - line 32: return errors.NewServerTimeout(qualifiedResource, "list", 2) // TODO: make configurable or handled at a higher level - line 47: return errors.NewServerTimeout(qualifiedResource, "get", 2) // TODO: make configurable or handled at a higher level - line 62: return errors.NewServerTimeout(qualifiedResource, "create", 2) // TODO: make configurable or handled at a higher level - line 77: return errors.NewServerTimeout(qualifiedResource, "update", 2) // TODO: make configurable or handled at a higher level - line 94: return errors.NewServerTimeout(qualifiedResource, "delete", 2) // TODO: make configurable or handled at a higher level staging/src/k8s.io/kubelet/pkg/cri/streaming/remotecommand/httpstream.go (5 lines): - line 56: // TODO: make this an error before we reach this method - line 243: // TODO find a way to return the error to the user. Maybe use a separate - line 294: // TODO find a way to return the error to the user. Maybe use a separate - line 342: // TODO find a way to return the error to the user. Maybe use a separate - line 396: // TODO find a way to return the error to the user. Maybe use a separate cmd/kubeadm/app/constants/constants.go (5 lines): - line 241: // TODO: https://github.com/kubernetes/enhancements/pull/1881 - line 363: // TODO: Find a better place for this constant - line 407: // TODO: share Mode* constants in component config - line 505: // TODO: update if the kubeadm version gets decoupled from the Kubernetes version. - line 514: // TODO: handle the case of Kubernetes moving to v2.0 or having MAJOR version updates in the future. staging/src/k8s.io/apiserver/pkg/server/genericapiserver.go (5 lines): - line 75: // TODO: Remove this when https://github.com/kubernetes/kubernetes/issues/19018 is fixed. - line 84: // TODO: replace with interfaces - line 626: // TODO: can we consolidate these two modes of graceful termination? - line 645: // TODO: we don't want the QPS (max requests drained per second) to - line 953: // TODO unhardcode this. It was hardcoded before, but we need to re-evaluate cmd/kube-proxy/app/server_others.go (5 lines): - line 150: // FIXME: figure out how to check for kernel IPv6 support using nft - line 178: // TODO this has side effects that should only happen when Run() is invoked. - line 204: // TODO this has side effects that should only happen when Run() is invoked. - line 315: // TODO this has side effects that should only happen when Run() is invoked. - line 337: // TODO this has side effects that should only happen when Run() is invoked. staging/src/k8s.io/api/apps/v1beta2/generated.proto (4 lines): - line 218: // TODO: Update this to follow our convention for oneOf, whatever we decide it - line 367: // TODO: Update this to follow our convention for oneOf, whatever we decide it - line 710: // TODO: Consider a rename of this field. - line 734: // TODO: Define the behavior if a claim already exists with the same name. staging/src/k8s.io/apiserver/plugin/pkg/authenticator/token/oidc/oidc.go (4 lines): - line 403: // TODO: Make this context cancelable. - line 494: // TODO: cache resolved claims. - line 786: // TODO: Allow passing in JSON hints to the IDP. - line 788: // TODO: Allow passing request body with configurable information. cmd/kube-proxy/app/server.go (4 lines): - line 128: // TODO remove these fields once the deprecated flags are removed. - line 292: // TODO (pohly): move this to logsapi - line 767: // TODO remove masterOverride when CLI flags are removed. - line 862: // TODO: At the moment, Run() cannot return a nil error, otherwise it's caller will never exit. Update callers of Run to handle nil errors. staging/src/k8s.io/apimachinery/pkg/apis/meta/v1/meta.go (4 lines): - line 24: // TODO: move this, Object, List, and Type to a different package - line 74: // TODO: move this, and TypeMeta and ListMeta, to a different package - line 85: // TODO: move this, and TypeMeta and ListMeta, to a different package - line 98: // TODO: move this, and TypeMeta and ListMeta, to a different package staging/src/k8s.io/apiserver/pkg/registry/generic/registry/store.go (4 lines): - line 96: // TODO: make the default exposed methods exactly match a generic RESTStorage - line 647: // TODO: The Invalid error should have a field for Resource. - line 1092: // TODO: remove the check, because we support no-op updates now. - line 1393: // TODO: validate this is assertion is still valid. staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/conversion/webhook_converter.go (4 lines): - line 199: // TODO: Return a webhook specific error to be able to convert it to meta.Status - line 216: // TODO: Return a webhook specific error to be able to convert it to meta.Status - line 275: // TODO: Figure out if adding one second timeout make sense here. - line 278: // TODO: Return a webhook specific error to be able to convert it to meta.Status plugin/pkg/auth/authorizer/rbac/bootstrappolicy/policy.go (4 lines): - line 124: // TODO: restrict to the bound node as creator in the NodeRestrictions admission plugin - line 127: // TODO: restrict to pods scheduled on the bound node once field selectors are supported by list/watch authorization - line 148: // TODO: add to the Node authorizer and restrict to endpoints referenced by pods or PVs bound to the node - line 546: // TODO: scope this to the kube-system namespace pkg/kubelet/kubelet_volumes.go (4 lines): - line 44: // TODO: volume.Mounter could be nil if volume object is recovered - line 64: // TODO: volume.Mounter could be nil if volume object is recovered - line 84: // TODO: This checks pod volume paths and whether they are mounted. If checking returns error, podVolumesExist will return true - line 196: // TODO: getMountedVolumePathListFromDisk() call may be redundant with staging/src/k8s.io/code-generator/cmd/go-to-protobuf/protobuf/generator.go (4 lines): - line 151: // TODO: this could be expressed more cleanly - line 210: // TODO: delegate to a new localgo namer? - line 439: // TODO: when we enable proto3, also include other fundamental types in the google.protobuf package - line 467: // TODO: complex? pkg/kubelet/cm/devicemanager/manager.go (4 lines): - line 195: // TODO: Until the bug - https://github.com/golang/go/issues/33357 is fixed, os.stat wouldn't return the - line 850: // TODO: may revisit this part later if we see inefficient resource allocation - line 865: // TODO: refactor this part of code to just append a ContainerAllocationRequest - line 986: // TODO: Add metrics support for init RPC pkg/controller/garbagecollector/garbagecollector.go (4 lines): - line 450: // TODO: we need to verify the reference resource is supported by the - line 474: // TODO: It's only necessary to talk to the API server if the owner node - line 561: // TODO: It's only necessary to talk to the API server if this is a - line 587: // TODO: attemptToOrphanWorker() routine is similar. Consider merging staging/src/k8s.io/apiserver/pkg/storage/cacher/watch_cache.go (4 lines): - line 61: // TODO: Figure out, to what value we can decreased it. - line 315: // TODO: We should consider moving this lock below after the watchCacheEvent - line 513: // TODO: if multiple indexes match, return the one with the fewest items, so as to do as much filtering as possible. - line 719: // TODO: In v2 api, we should stop returning the current state - #13969. staging/src/k8s.io/apimachinery/pkg/apis/meta/v1/types.go (4 lines): - line 804: // TODO: move to apiserver - line 1181: // TODO: remove me when watch is refactored - line 1186: // TODO: remove me when watch is refactored - line 1320: // TODO: Table does not generate to protobuf because of the interface{} - fix protobuf staging/src/k8s.io/apimachinery/pkg/api/apitesting/fuzzer/valuefuzz.go (4 lines): - line 37: // TODO: set non-nil value - line 45: // TODO: set non-nil value - line 55: // TODO: set non-nil value - line 65: // TODO: set some new value pkg/registry/core/rest/storage_core.go (4 lines): - line 338: // TODO etcdallocator package to return a storage interface via the storageFactory - line 378: // TODO etcdallocator package to return a storage interface via the storageFactory - line 414: // TODO etcdallocator package to return a storage interface via the storageFactory - line 483: // TODO: switch to secure port until these components remove the ability to serve insecurely. staging/src/k8s.io/api/apps/v1/generated.proto (4 lines): - line 214: // TODO: Update this to follow our convention for oneOf, whatever we decide it - line 362: // TODO: Update this to follow our convention for oneOf, whatever we decide it - line 665: // TODO: Consider a rename of this field. - line 689: // TODO: Define the behavior if a claim already exists with the same name. pkg/proxy/winkernel/proxier.go (4 lines): - line 739: interfaces, _ := net.Interfaces() //TODO create interfaces - line 1263: // TODO: Remove lookup by endpoint ID, and use the IP address only, so we don't need to maintain multiple keys for lookup. - line 1580: // TODO: these could be made more consistent. - line 1582: // TODO : Check if this is required to cleanup stale services here staging/src/k8s.io/legacy-cloud-providers/gce/gce_loadbalancer_external.go (4 lines): - line 91: // TODO: distinguish between unspecified and specified network tiers annotation properly in forwardingrule creation - line 758: // TODO: we report loadbalancer IP through status, so we want to verify if - line 795: // TODO: If the user modifies their Service's session affinity, it *should* - line 1038: // TODO: Make this more generic. Currently this method is only staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/types_jsonschema.go (4 lines): - line 332: // TODO: return actual types when anyOf is supported - line 355: // TODO: return actual types when anyOf is supported - line 375: // TODO: return actual types when anyOf is supported - line 397: // TODO: return actual types when anyOf is supported staging/src/k8s.io/apimachinery/pkg/runtime/scheme.go (4 lines): - line 60: // TODO: resolve the status of unversioned types. - line 120: // TODO: there is discussion about removing unversioned and replacing it with objects that are manifest into - line 482: // TODO: when we move to server API versions, we should completely remove the unversioned concept - line 563: // TODO: look at removing the need to special case this staging/src/k8s.io/apimachinery/pkg/api/meta/restmapper.go (4 lines): - line 17: // TODO: move everything in this file to pkg/api/rest - line 55: // TODO: Only accept plural for some operations for increased control? - line 87: // TODO: verify name mappings work correctly when versions differ - line 117: // TODO eliminate this so that different callers can correctly map to resources. This probably means updating all pkg/registry/registrytest/endpoint.go (4 lines): - line 43: // TODO: support namespaces in this mock - line 58: // TODO: support namespaces in this mock - line 88: // TODO: support namespaces in this mock - line 115: // TODO: support namespaces in this mock staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go (4 lines): - line 230: // TODO: we currently allow 1.G, but we may not want to in the future. - line 375: // TODO: this prevents accumulating quantities greater than int64, for instance quota across a cluster - line 446: // TODO: If BinarySI formatting is requested but would cause rounding, upgrade to - line 692: // TODO: Remove support for leading/trailing whitespace pkg/volume/csi/csi_plugin.go (4 lines): - line 59: // TODO: increase to something useful - line 85: // TODO (verult) consider using a struct instead of global variables - line 334: // TODO (vladimirvivien) CanSupport should also take into account - line 516: // TODO (vladimirvivien) use CSI VolumeCapability.MountVolume.mount_flags pkg/kubelet/kuberuntime/kuberuntime_manager.go (4 lines): - line 249: // TODO: Runtime API machinery is under discussion at https://github.com/kubernetes/kubernetes/issues/28642 - line 264: // TODO: create podLogsRootDirectory at kubelet.go when kubelet is refactored to - line 460: // TODO: replace message with reason? - line 1423: // TODO: move this comment to SyncPod. staging/src/k8s.io/apimachinery/pkg/api/apitesting/roundtrip/roundtrip.go (4 lines): - line 242: // TODO fix this up to handle kinds that cross registered with different names. - line 258: // TODO remove this hack after we're past the intermediate steps - line 284: // TODO remove this hack after we're past the intermediate steps - line 327: // TODO eliminate this global pkg/controller/nodelifecycle/node_lifecycle_controller.go (4 lines): - line 263: // TODO: Change node health monitor to watch based. - line 523: // TODO: re-evaluate whether there are any labels that need to be - line 862: // TODO: things to consider: - line 889: // TODO: figure out what to do in this case. For now we do the same thing as above. staging/src/k8s.io/apimachinery/pkg/runtime/serializer/protobuf/protobuf.go (4 lines): - line 105: // TODO: treat like decoding {} from JSON with defaulting - line 110: // TODO: treat like decoding {} from JSON with defaulting - line 253: // TODO: marshal with a different content type and serializer (JSON for third party objects) - line 342: // TODO: treat like decoding {} from JSON with defaulting pkg/controller/replicaset/replica_set.go (4 lines): - line 320: // TODO: make a KEP and fix informers to always call the delete event handler on re-create - line 466: // TODO: MinReadySeconds in the Pod will generate an Available condition to be added in - line 579: // TODO: Track UIDs of creates just like deletes. The problem currently - line 702: // TODO: Do the List and Filter in a single pass, or use an index. staging/src/k8s.io/code-generator/cmd/client-gen/generators/generator_for_type.go (4 lines): - line 102: // TODO: Extract this to some helper method as this code is copied into - line 301: // TODO: Figure out schemantic for watching a sub-resource. - line 322: // TODO: Figure out schemantic for deleting a sub-resource (what arguments - line 345: // TODO: Make the verbs in templates parametrized so the strings.Replace() is staging/src/k8s.io/api/networking/v1beta1/types.go (4 lines): - line 106: // TODO: Add the ability to specify load-balancer IP through claims - line 125: // TODO: Consider specifying different modes of termination, protocols etc. - line 225: //TODO: - line 243: // TODO: Consider adding fields for ingress-type specific global staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1/types_jsonschema.go (4 lines): - line 332: // TODO: return actual types when anyOf is supported - line 355: // TODO: return actual types when anyOf is supported - line 375: // TODO: return actual types when anyOf is supported - line 397: // TODO: return actual types when anyOf is supported staging/src/k8s.io/apimachinery/pkg/runtime/converter.go (3 lines): - line 460: // TODO: Is this Unmarshal needed? - line 567: // TODO: Is this conversion safe? - line 791: // TODO: It seems that 0-len maps are ignored in it. pkg/registry/core/service/ipallocator/controller/repair.go (3 lines): - line 56: // TODO: allocate new IPs if necessary - line 57: // TODO: perform repair? - line 147: // TODO: (per smarterclayton) if Get() or ListServices() is a weak consistency read, pkg/volume/util/operationexecutor/operation_executor.go (3 lines): - line 241: // TODO: in the future, we should be able to remove the volumeName - line 957: // TODO: remove this -- not necessary - line 964: // TODO mount_device staging/src/k8s.io/apiserver/pkg/endpoints/handlers/delete.go (3 lines): - line 49: // TODO admission here becomes solely validating admission - line 209: // TODO: DecodeParametersInto should do this. - line 215: // TODO: allow bad request to set field causes based on query parameters pkg/apis/networking/types.go (3 lines): - line 390: // TODO: Consider specifying different modes of termination, protocols etc. - line 483: //TODO: - line 502: // TODO: Consider adding fields for ingress-type specific global staging/src/k8s.io/kubectl/pkg/cmd/util/kubectl_match_version.go (3 lines): - line 78: // TODO we should not have to do this. It smacks of something going wrong. - line 114: // TODO this isn't what we want. Each clientset should be setting defaults as it sees fit. - line 116: // TODO remove this hack. This is allowing the GetOptions to be serialized. pkg/volume/util/operationexecutor/operation_generator.go (3 lines): - line 1187: // TODO: This can be improved after #82492 is merged and ASW has state. - line 2195: // TODO: Removing this code when RecoverVolumeExpansionFailure feature goes GA. - line 2280: //TODO: refer to #36092 staging/src/k8s.io/apiserver/pkg/util/flowcontrol/fairqueuing/queueset/queueset.go (3 lines): - line 761: // TODO: this is a quick fix for now, once we have borrowing in place we will not need it - line 763: // TODO: apply additional lateny associated with this request, as described in the KEP - line 890: // TODO: for now we keep the logic localized so it is easier to see staging/src/k8s.io/cloud-provider/controllers/node/node_controller.go (3 lines): - line 69: // TODO: switch the primary key to GA labels in v1.21 - line 77: // TODO: switch the primary key to GA labels in v1.21 - line 85: // TODO: switch the primary key to GA labels in v1.21 pkg/auth/authorizer/abac/abac.go (3 lines): - line 58: // TODO: Have policies be created via an API call and stored in REST storage. - line 180: // TODO: match on verb - line 236: // TODO: Benchmark how much time policy matching takes with a medium size staging/src/k8s.io/apiserver/pkg/util/flowcontrol/request/mutating_work_estimator.go (3 lines): - line 97: // TODO: Make this unconditional after we tune the algorithm better. - line 103: // TODO: As described in the KEP, we should take into account that not all - line 135: // TODO: Confirm that the current cap of maximumSeats allow us to staging/src/k8s.io/api/apps/v1beta1/types.go (3 lines): - line 228: // TODO: Consider a rename of this field. - line 252: // TODO: Define the behavior if a claim already exists with the same name. - line 503: // TODO: Update this to follow our convention for oneOf, whatever we decide it staging/src/k8s.io/kubectl/pkg/cmd/get/get.go (3 lines): - line 217: // TODO (soltysh): currently we don't support custom columns - line 438: // TODO: remove the need to pass these arguments, like other commands. - line 603: // TODO: remove the need for arguments here. pkg/registry/core/service/allocator/storage/storage.go (3 lines): - line 43: // TODO: allow multiple allocations to be tried at once - line 44: // TODO: subdivide the keyspace to reduce conflicts - line 45: // TODO: investigate issuing a CAS without reading first pkg/kubelet/nodestatus/setters.go (3 lines): - line 279: // TODO: Post NotReady if we cannot get MachineInfo from cAdvisor. This needs to start - line 307: // TODO: This requires a transaction, either both node status is updated - line 314: // TODO: all the node resources should use ContainerManager.GetCapacity instead of deriving the staging/src/k8s.io/kubectl/pkg/cmd/run/run.go (3 lines): - line 171: // TODO: Remove the cascade flag from the run command in kubectl 1.29 - line 177: // TODO: Remove these flags from the run command in kubectl 1.29 - line 613: // TODO: Validate flag usage against selected generator. More tricky since --expose was added. staging/src/k8s.io/code-generator/cmd/client-gen/generators/fake/generator_fake_for_type.go (3 lines): - line 256: // TODO: Figure out schemantic for watching a sub-resource. - line 277: // TODO: Figure out schemantic for deleting a sub-resource (what arguments - line 300: // TODO: Make the verbs in templates parametrized so the strings.Replace() is pkg/kubelet/cm/dra/state/checkpoint.go (3 lines): - line 53: // TODO: remove in Beta - line 84: // TODO: remove in Beta - line 93: // TODO: remove in Beta. pkg/kubelet/apis/config/v1beta1/defaults.go (3 lines): - line 26: // TODO: Cut references to k8s.io/kubernetes, eventually there should be none from this package - line 35: // TODO: Move these constants to k8s.io/kubelet/config/v1beta1 instead? - line 46: // TODO: Move these constants to k8s.io/kubelet/config/v1beta1 instead? staging/src/k8s.io/apimachinery/pkg/runtime/types.go (3 lines): - line 95: // in the Object. (TODO: In the case where the object is of an unknown type, a - line 104: // TODO: Determine how to detect ContentType and ContentEncoding of 'Raw' data. - line 114: // TODO: Make this object have easy access to field based accessors and settors for staging/src/k8s.io/kubectl/pkg/cmd/cp/cp.go (3 lines): - line 107: // TODO: complete remote files in the pod - line 405: // TODO: use compression here? - line 486: // TODO: use compression here? staging/src/k8s.io/apiserver/pkg/registry/rest/rest.go (3 lines): - line 33: //TODO: - line 101: // TODO KindProvider (only used by federation) should be removed and replaced with this, but that presents greater risk late in 1.8. - line 141: // TODO: Pass metav1.GetOptions. staging/src/k8s.io/kubectl/pkg/cmd/portforward/portforward.go (3 lines): - line 122: // TODO support UID - line 257: // TODO: remove this check after #47862 is solved - line 274: // TODO: remove this check after #47862 is solved cmd/kube-controller-manager/app/controllermanager.go (3 lines): - line 219: // TODO: handle stoppedCh and listenerStoppedCh returned by c.SecureServing.Serve - line 542: // TODO: persistent volume controllers into the IncludeCloudLoops only set as a cloud provider controller. - line 832: // TODO: extract this function into staging/controller-manager staging/src/k8s.io/apiserver/pkg/server/options/encryptionconfig/config.go (3 lines): - line 392: // TODO integration test that this dynamically takes effect - line 412: // TODO maybe add success metrics? - line 847: // TODO add integration test for quicker error poll on failure staging/src/k8s.io/client-go/tools/reference/ref.go (3 lines): - line 37: // TODO: should take a meta.Interface see https://issue.k8s.io/7127 - line 64: // TODO: This doesn't work for CRDs, which are not registered in scheme. - line 73: // TODO: The same object can be registered for multiple group versions staging/src/k8s.io/apimachinery/pkg/runtime/generated.proto (3 lines): - line 71: // in the Object. (TODO: In the case where the object is of an unknown type, a - line 80: // TODO: Determine how to detect ContentType and ContentEncoding of 'Raw' data. - line 111: // TODO: Make this object have easy access to field based accessors and settors for pkg/volume/downwardapi/downwardapi.go (3 lines): - line 143: podUID types.UID // TODO: remove this redundancy as soon NewUnmounter func will have *v1.POD and not only types.UID - line 171: // TODO: Add volume specific ticker and refresh loop - line 259: // TODO: unify with Kubelet.podFieldSelectorRuntimeValue pkg/controller/deployment/sync.go (3 lines): - line 270: // TODO: Identify which errors are permanent and switch DeploymentIsFailed to take into account - line 388: // TODO: Use transactions when we have them. - line 501: // TODO: Ensure that if we start retrying status updates, we won't pick up a new Generation value. pkg/registry/core/service/ipallocator/ipallocator.go (3 lines): - line 92: // TODO: use the utils/net function once is available - line 317: // TODO: this is a linear search, it can be optimized. - line 485: // TODO: move it to k8s.io/utils/net, this is the same as current AddIPOffset() pkg/apis/abac/types.go (3 lines): - line 66: // TODO: "expires" string in RFC3339 format. - line 68: // TODO: want a way to allow some users to restart containers of a pod but - line 71: // TODO: want a way to allow a controller to create a pod based only on a pkg/scheduler/framework/plugins/nodevolumelimits/csi.go (3 lines): - line 118: // TODO: return the error once CSINode is created by default (2 releases) - line 399: // TODO: stop getting values from Node object in v1.18 - line 405: // TODO: drop GetCSIAttachLimitKey once we don't get values from Node object (v1.18) staging/src/k8s.io/apimachinery/pkg/util/httpstream/spdy/roundtripper.go (3 lines): - line 53: /* TODO according to http://golang.org/pkg/net/http/#RoundTripper, a RoundTripper - line 373: // TODO: I don't belong here, I should be abstracted from this class - line 389: // statusScheme is private scheme for the decoding here until someone fixes the TODO in NewConnection staging/src/k8s.io/client-go/rest/config.go (3 lines): - line 71: // TODO: demonstrate an OAuth2 compatible client. - line 298: // TODO: NegotiatedSerializer will be phased out as internal clients are removed - line 535: // TODO: switch to using cluster DNS. staging/src/k8s.io/cli-runtime/pkg/resource/visitor.go (3 lines): - line 559: // TODO: Consider adding a flag to force to UTF16, apparently some - line 569: // TODO: depends on objects being in JSON format before being passed to decode - need to implement - line 600: // TODO: This needs to be able to handle object in other encodings and schemas. pkg/apis/apps/validation/validation.go (3 lines): - line 40: // TODO: Validate that there's room for the suffix inserted by the pods. - line 59: // TODO: Add validation for PodSpec, currently this will check volumes, which we know will - line 238: // TODO: Validate status. cmd/kubeadm/app/apis/kubeadm/v1beta4/doc.go (3 lines): - line 27: // - TODO https://github.com/kubernetes/kubeadm/issues/2890 - line 47: // - TODO: https://github.com/kubernetes/kubeadm/issues/2890 - line 286: //TODO: The BootstrapTokenString object should move out to either k8s.io/client-go or k8s.io/api in the future staging/src/k8s.io/apiserver/pkg/server/secure_serving.go (3 lines): - line 87: nil, // TODO see how to plumb an event recorder down in here. For now this results in simply klog messages. - line 97: // TODO: See if we can pass ctx to the current method - line 222: // TODO: make private when insecure serving is gone from the kube-apiserver staging/src/k8s.io/legacy-cloud-providers/gce/gce_clusters.go (3 lines): - line 43: // TODO: Scoping? Do we need to qualify the cluster name? - line 94: // TODO: Issue/68913 migrate metric to list_location instead of list_zone. - line 96: // TODO: use PageToken to list all not just the first 500 staging/src/k8s.io/cli-runtime/pkg/resource/builder.go (3 lines): - line 132: // TODO: expand this to include other errors. - line 179: // TODO: Add versioned client (although versioned is still lossy) - line 180: // TODO remove internal and unstructured mapper and instead have them set the negotiated serializer for use in the client staging/src/k8s.io/kubectl/pkg/describe/describe.go (3 lines): - line 3636: // TODO: We haven't decided the namespace for Node object yet. - line 3640: // TODO: Uniform use of UID - line 4943: // TODO: reorder and partial match extra. pkg/kubelet/config/config.go (3 lines): - line 144: // TODO: PodConfigNotificationMode could be handled by a listener to the updates channel - line 146: // TODO: allow initialization of the current state of the store with snapshotted version. - line 437: // TODO: it would be better to update the whole object and only preserve certain things staging/src/k8s.io/apiserver/pkg/endpoints/handlers/rest.go (3 lines): - line 142: // TODO: this is temporary, replace with an abstraction calculated at endpoint installation time - line 150: // TODO: should delineate between lists and non-list endpoints - line 202: // TODO: remove the mutating admission here as soon as we have ported all plugin that handle CONNECT staging/src/k8s.io/apiserver/pkg/server/handler.go (3 lines): - line 135: // TODO fix gorestful, remove TPRs, or stop using gorestful - line 145: // TODO fix gorestful, remove TPRs, or stop using gorestful - line 157: // TODO: Unify with RecoverPanics? staging/src/k8s.io/legacy-cloud-providers/gce/gce_instances.go (3 lines): - line 434: // TODO: this should be removed from the cloud provider. - line 463: // TODO: remove this method. - line 725: // TODO: We could store the tags in gceInstance, so we could have already fetched it pkg/controller/cronjob/cronjob_controllerv2.go (3 lines): - line 406: // TODO: need to handle the change of spec.JobTemplate.metadata.labels explicitly - line 539: // TODO: Since we don't set LastScheduleTime when not scheduling, we are going to keep noticing - line 565: // TODO: for Forbid, we could use the same name for every execution, as a lock. pkg/kubelet/pleg/generic.go (3 lines): - line 134: // TODO: support multiple subscribers. - line 279: // TODO: If many pods changed during the same relist period, - line 383: // TODO: keep track of sandboxes explicitly. staging/src/k8s.io/client-go/restmapper/discovery.go (3 lines): - line 116: // TODO this is producing unsafe guesses that don't actually work, but it matches previous behavior - line 119: // TODO why is this type not in discovery (at least for "v1") - line 151: // TODO track the errors and update callers to handle partial errors. staging/src/k8s.io/apiserver/pkg/endpoints/handlers/get.go (3 lines): - line 211: // TODO: DecodeParametersInto should do this. - line 217: // TODO: allow bad request to set field causes based on query parameters - line 252: // TODO: Currently we explicitly ignore ?timeout= and use only ?timeoutSeconds=. staging/src/k8s.io/api/apps/v1beta1/generated.proto (3 lines): - line 229: // TODO: Update this to follow our convention for oneOf, whatever we decide it - line 422: // TODO: Consider a rename of this field. - line 446: // TODO: Define the behavior if a claim already exists with the same name. pkg/controller/namespace/deletion/namespaced_resources_deleter.go (3 lines): - line 244: // TODO RetryOnConflict should be a generic concept in client code - line 331: // TODO: https://github.com/kubernetes/kubernetes/issues/22413 - line 366: // TODO: https://github.com/kubernetes/kubernetes/issues/22413 pkg/kubectl/cmd/convert/convert.go (3 lines): - line 243: // TODO: convert to map[string]interface{}, attach to runtime.Unknown? - line 246: // TODO: ideally this would encode to version, but we don't expose multiple codecs here. - line 251: // TODO: Set ContentEncoding and ContentType. staging/src/k8s.io/apimachinery/pkg/runtime/helper.go (3 lines): - line 115: // TODO: accept a content type. - line 124: // TODO: Set ContentEncoding and ContentType. - line 132: // TODO: Decode based on ContentType. staging/src/k8s.io/apiserver/pkg/server/config.go (3 lines): - line 119: // TODO: move into SecureServing(WithLoopback) as soon as insecure serving is gone - line 385: // TODO: receive the identity value as a parameter once the apiserver identity lease controller - line 878: // TODO: Once we get rid of /healthz consider changing this to post-start-hook. pkg/apis/autoscaling/v1/conversion.go (2 lines): - line 345: // TODO: this is marshaling an internal type. Fix this without breaking backwards compatibility. - line 398: // TODO: this is unmarshaling an internal type. Fix this without breaking backwards compatibility. pkg/kubelet/container/runtime.go (2 lines): - line 98: // TODO: Revisit this method and make it cleaner. - line 195: // TODO: use the runtimeApi.PodSandbox type directly. staging/src/k8s.io/kubectl/pkg/cmd/util/helpers.go (2 lines): - line 529: cmd.Flags().StringArrayVar(pruneWhitelist, "prune-whitelist", *pruneWhitelist, "Overwrite the default whitelist with for --prune") // TODO: Remove this in kubectl 1.28 or later - line 556: // TODO: merge assumes JSON serialization, and does not properly abstract API retrieval pkg/kubelet/volumemanager/populator/desired_state_of_world_populator.go (2 lines): - line 525: // TODO: replace this with util.GetVolumeMode() when features.BlockVolume is removed. - line 532: // TODO: remove features.BlockVolume checks / comments after no longer needed pkg/apis/abac/v0/register.go (2 lines): - line 33: // TODO: Delete this init function, abac should not have its own scheme. - line 41: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/legacy-cloud-providers/vsphere/vsphere.go (2 lines): - line 590: // TODO: implement ONLY for external cloud provider - line 1888: // FIXME: For now, pick the first zone of datastore as the zone of volume pkg/controller/endpoint/endpoints_controller.go (2 lines): - line 217: // TODO (khenidak): remove by when the possibility of upgrading - line 373: // TODO: Please note that this will delete an endpoint when a staging/src/k8s.io/cloud-provider/cloud.go (2 lines): - line 34: // TODO: Make this depend on the separate controller utilities repo (issues/68947) - line 143: // TODO: Break this up into different interfaces (LB, etc) when we have more than one type of service staging/src/k8s.io/client-go/rest/request.go (2 lines): - line 1105: // TODO: Add test for this. Steps may be: - line 1237: // TODO: introduce transformation of generic http.Client.Do() errors that separates 4. staging/src/k8s.io/client-go/pkg/version/base.go (2 lines): - line 37: // TODO: Deprecate gitMajor and gitMinor, use only gitVersion - line 50: // TODO: This field is still called "gitVersion" for legacy pkg/apis/rbac/validation/validation.go (2 lines): - line 132: // TODO allow multiple API groups. For now, restrict to one, but I can envision other experimental roles in other groups taking - line 176: // TODO allow multiple API groups. For now, restrict to one, but I can envision other experimental roles in other groups taking staging/src/k8s.io/client-go/discovery/cached/memory/memcache.go (2 lines): - line 47: // TODO: Switch to a watch interface. Right now it will poll after each - line 236: // TODO: Could this multiplicative set of calls be replaced by a single call staging/src/k8s.io/kubectl/pkg/util/deployment/deployment.go (2 lines): - line 136: // TODO: switch this to full namespacers - line 144: // TODO: Right now we list replica sets by their labels. We should list them by selector, i.e. the replica set's selector cmd/kube-controller-manager/app/core.go (2 lines): - line 457: features.DynamicResourceAllocation, // TODO update app.TestFeatureGatedControllersShouldNotDefineAliases when removing this feature - line 768: features.LegacyServiceAccountTokenCleanUp, // TODO update app.TestFeatureGatedControllersShouldNotDefineAliases when removing this feature staging/src/k8s.io/code-generator/cmd/client-gen/main.go (2 lines): - line 36: // TODO: move this out of client-gen - line 40: customArgs.AddFlags(pflag.CommandLine, "k8s.io/kubernetes/pkg/apis") // TODO: move this input path out of client-gen staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching/matching.go (2 lines): - line 141: // TODO: GetName() can return an empty string if the user is relying on - line 183: // TODO: GetName() can return an empty string if the user is relying on staging/src/k8s.io/legacy-cloud-providers/azure/azure_vmss.go (2 lines): - line 542: // TODO (khenidak): This should read all nics, not just the primary - line 891: // TODO: is this a bug of azure SDK? staging/src/k8s.io/kube-aggregator/pkg/registry/apiservice/etcd/etcd.go (2 lines): - line 55: // TODO: define table converter that exposes more than name/creation timestamp - line 60: panic(err) // TODO: Propagate error up pkg/apis/autoscaling/v2beta1/conversion.go (2 lines): - line 295: // TODO: this is marshaling an internal type. Fix this without breaking backwards compatibility with n-1 API servers. - line 318: // TODO: this is unmarshaling an internal type. Fix this without breaking backwards compatibility with n-1 API servers. staging/src/k8s.io/apiserver/pkg/storage/cacher/cacher.go (2 lines): - line 380: // TODO: Figure out the correct value for the buffer size. - line 914: // TODO: If at some point we decide the performance and scalability staging/src/k8s.io/apiserver/pkg/storage/cacher/cache_watcher.go (2 lines): - line 445: // TODO: From the logs it seems that there happens processing - line 513: // TODO: As describe in the KEP, we would like to estimate that by delaying staging/src/k8s.io/apimachinery/pkg/apis/meta/v1/unstructured/helpers.go (2 lines): - line 320: // TODO: move into serializer/json. - line 371: // TODO: Unstructured needs to deal with ContentType. pkg/volume/util/util.go (2 lines): - line 363: // TODO: the guarantees provided by kubelet status are not sufficient to guarantee it's safe to ignore a deleted pod, - line 674: // TODO: this is a workaround for the unmount device issue caused by gci mounter. pkg/kubelet/util/manager/watch_based_manager.go (2 lines): - line 207: // TODO: We may consider created a dedicated store keeping just a single - line 394: // TODO propagate stopCh from the higher level. staging/src/k8s.io/code-generator/cmd/client-gen/generators/fake/fake_client_generator.go (2 lines): - line 34: // TODO: should make this a function, called by here and in client-generator.go - line 90: // TODO: we'll generate fake clientset for different release in the future. pkg/kubelet/volumemanager/reconciler/reconstruct_new.go (2 lines): - line 29: // TODO: move to reconstruct.go and remove old code there. - line 108: //TODO: the devicePath might not be correct for some volume plugins: see issue #54108 staging/src/k8s.io/api/extensions/v1beta1/generated.proto (2 lines): - line 193: // TODO: Update this to follow our convention for oneOf, whatever we decide it - line 364: // TODO: Update this to follow our convention for oneOf, whatever we decide it staging/src/k8s.io/kubectl/pkg/cmd/util/factory.go (2 lines): - line 38: // TODO: make the functions interfaces - line 39: // TODO: pass the various interfaces on the factory directly into the command constructors (so the pkg/apis/abac/v1beta1/register.go (2 lines): - line 33: // TODO: Delete this init function, abac should not have its own scheme. - line 41: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. plugin/pkg/admission/noderestriction/admission.go (2 lines): - line 131: // TODO: if node doesn't exist and this isn't a create node request, then reject. - line 535: // TODO: defer to label policy once available staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/controller.go (2 lines): - line 207: // TODO: add metrics for ignored error here - line 392: // TODO: refactor admission.NewForbidden so the name extraction is reusable but the code/reason is customizable staging/src/k8s.io/apiserver/pkg/endpoints/handlers/watch.go (2 lines): - line 65: // TODO: the functionality in this method and in WatchServer.Serve is not cleanly decoupled. - line 89: // TODO: next step, get back mediaTypeOptions from negotiate and return the exact value here pkg/volume/csi/csi_attacher.go (2 lines): - line 158: timer := time.NewTimer(timeout) // TODO (vladimirvivien) investigate making this configurable - line 385: //TODO (vladimirvivien) implement better AccessModes mapping between k8s and CSI staging/src/k8s.io/legacy-cloud-providers/gce/gce_interfaces.go (2 lines): - line 35: // TODO: Mock Global endpoints - line 46: // TODO: Expand the interface to include more methods. pkg/registry/core/service/ipallocator/cidrallocator.go (2 lines): - line 82: // TODO: make the NewMetaAllocator agnostic of the IP family - line 451: // TODO: consolidate helpers staging/src/k8s.io/kube-aggregator/pkg/apiserver/apiserver.go (2 lines): - line 187: // TODO eventually collapse this by extracting all of the discovery out - line 299: // TODO: See if we can pass ctx to the current method pkg/controller/garbagecollector/graph_builder.go (2 lines): - line 149: // TODO: check if there are differences in the ownerRefs, - line 489: // TODO: profile this function to see if a naive N^2 algorithm performs better pkg/scheduler/framework/types.go (2 lines): - line 438: // TODO: Uncomment this block when implement RequiredDuringSchedulingRequiredDuringExecution. - line 451: // TODO: Uncomment this block when implement RequiredDuringSchedulingRequiredDuringExecution. staging/src/k8s.io/apimachinery/pkg/runtime/extension.go (2 lines): - line 39: // TODO: this is to support legacy behavior of JSONPrinter and YAMLPrinter, which - line 49: // TODO: Check whether ContentType is actually JSON before returning it. pkg/apis/storage/util/helpers.go (2 lines): - line 26: // TODO: remove Beta when no longer used - line 34: // TODO: remove Beta when no longer needed staging/src/k8s.io/apiserver/pkg/endpoints/handlers/responsewriters/status.go (2 lines): - line 58: //TODO: check for invalid responses - line 63: //TODO: replace me with NewConflictErr pkg/proxy/conntrack/conntrack.go (2 lines): - line 52: // TODO: Better handling for deletion failure. When failure occur, stale udp connection may not get flushed. - line 100: // TODO: Better handling for deletion failure. When failure occur, stale udp connection may not get flushed. plugin/pkg/admission/limitranger/admission.go (2 lines): - line 558: // TODO: Maybe we can consider doing a partial conversion of the pod to a v1 - line 617: // TODO: Maybe we can consider doing a partial conversion of the pod to a v1 pkg/kubelet/lifecycle/predicate.go (2 lines): - line 95: // TODO: Remove this after the SidecarContainers feature gate graduates to GA. - line 207: // TODO: Relax this restriction when we start supporting LCOW in kubernetes where podOS may not match pkg/controller/statefulset/stateful_set_utils.go (2 lines): - line 221: // TODO: there must be a better way to do this other than hardcoding the pod version? - line 369: // TODO: Use source definition to set this value when we have one. staging/src/k8s.io/client-go/tools/portforward/portforward.go (2 lines): - line 37: // TODO move to API machinery and re-unify with kubelet/server/portfoward - line 310: // TODO consider using something like https://github.com/hydrogen18/stoppableListener? pkg/controller/servicecidrs/servicecidrs_controller.go (2 lines): - line 435: // TODO: optimize this - line 531: // TODO: consolidate helpers pkg/volume/util/volumepathhandler/volume_path_handler.go (2 lines): - line 130: // TODO: Need to check if this device file is actually the expected bind mount - line 290: // TODO: Might need to check if the file is actually linked to devPath cmd/kubeadm/app/util/marshal.go (2 lines): - line 44: // TODO: Is specifying the gv really needed here? - line 45: // TODO: Can we support json out of the box easily here? staging/src/k8s.io/apiserver/pkg/endpoints/handlers/response.go (2 lines): - line 390: // TODO: rely on defaulting for the value here? - line 396: // TODO: turn this into an internal type and do conversion in order to get object kind automatically set? pkg/apis/apps/v1/conversion.go (2 lines): - line 45: // TODO: remove this conversion after we delete extensions/v1beta1 and apps/v1beta1 Deployment - line 70: // TODO: remove this conversion after we delete extensions/v1beta1 and apps/v1beta1 Deployment staging/src/k8s.io/client-go/tools/clientcmd/api/v1/register.go (2 lines): - line 25: // TODO this should be in the "kubeconfig" group - line 29: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/apiserver/pkg/server/dynamiccertificates/union_content.go (2 lines): - line 66: // TODO make more efficient. This isn't actually used in any of our mainline paths. It's called to build the TLSConfig - line 67: // TODO on file changes, but the actual authentication runs against the individual items, not the union. staging/src/k8s.io/cloud-provider/app/controllermanager.go (2 lines): - line 209: // TODO: handle stoppedCh and listenerStoppedCh returned by c.SecureServing.Serve - line 521: // TODO: extract this function into staging/controller-manager staging/src/k8s.io/api/core/v1/toleration.go (2 lines): - line 21: // TODO: uniqueness check for tolerations in api validations. - line 47: // TODO: Use proper defaulting when Toleration becomes a field of PodSpec staging/src/k8s.io/cloud-provider/controllers/route/route_controller.go (2 lines): - line 51: // TODO: This should be per-provider. - line 113: // TODO: If we do just the full Resync every 5 minutes (default value) staging/src/k8s.io/apimachinery/pkg/util/validation/validation.go (2 lines): - line 77: // TODO: This function is deprecated and preserved until all callers migrate to - line 300: // TODO: once we have a type for UID/GID we should make these that type. cmd/kubeadm/app/phases/controlplane/volumes.go (2 lines): - line 53: // TODO: Always mount the K8s Certificates directory to a static path inside of the container - line 66: // TODO: Always mount the K8s Certificates directory to a static path inside of the container pkg/apis/abac/register.go (2 lines): - line 32: // TODO: remove this, abac should not have its own scheme. - line 39: // TODO: delete this, abac should not have its own scheme. pkg/controller/volume/attachdetach/attach_detach_controller.go (2 lines): - line 550: // TODO: investigate if nodeName is empty then if we can return - line 566: // TODO: investigate if nodeName is empty then if we can return pkg/controller/volume/persistentvolume/pv_controller_base.go (2 lines): - line 339: // TODO: update[Claim|Volume]MigrationAnnotations can be optimized to not - line 650: // TODO: remove the beta storage provisioner anno after the deprecation period pkg/kubelet/pluginmanager/pluginwatcher/plugin_watcher.go (2 lines): - line 74: //TODO: Handle errors by taking corrective measures - line 143: //TODO: Handle errors by taking corrective measures staging/src/k8s.io/apimachinery/pkg/api/meta/meta.go (2 lines): - line 111: // TODO: consider making this solely a conversion action. - line 141: // TODO: this interface is used to test code that does not have ObjectMeta or ListMeta pkg/volume/csi/csi_block.go (2 lines): - line 311: //TODO (vladimirvivien) implement better AccessModes mapping between k8s and CSI - line 373: //TODO (vladimirvivien) implement better AccessModes mapping between k8s and CSI staging/src/k8s.io/kubectl/pkg/cmd/create/create_secret_tls.go (2 lines): - line 169: // TODO: This is not strictly necessary. We can generate a self signed cert - line 224: // TODO: Add more validation. cmd/kubeadm/app/preflight/checks.go (2 lines): - line 678: // TODO: Use the official etcd Golang client for this instead? - line 909: // TODO: support other OS, if control-plane is supported on it. pkg/kubeapiserver/admission/initializer.go (2 lines): - line 26: // TODO add a `WantsToRun` which takes a stopCh. Might make it generic. - line 43: // TODO: switch these parameters to use the builder pattern or just make them staging/src/k8s.io/client-go/kubernetes/typed/core/v1/fake/fake_node_expansion.go (2 lines): - line 27: // TODO: Should take a PatchType as an argument probably. - line 29: // TODO: Should be configurable to support additional patch strategies. staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/customresource_handler.go (2 lines): - line 477: // TODO: find a real HA safe checkpointing mechanism instead of an arbitrary wait. - line 1318: // TODO: switch over pruning and coercing at the root to schemaobjectmeta.Coerce too pkg/apis/core/toleration.go (2 lines): - line 17: //TODO: consider making these methods functions, because we don't want helper - line 24: // TODO: uniqueness check for tolerations in api validations. pkg/apis/networking/validation/validation.go (2 lines): - line 295: // TODO: Perform a more thorough validation of spec.TLS.Hosts that takes - line 384: // TODO: Ports and ips are allowed in the host part of a url staging/src/k8s.io/apiserver/pkg/storage/continue.go (2 lines): - line 36: // TODO: if we change the version of the encoded from, we can't start encoding the new version - line 46: // TODO: return a typed error that instructs clients that they must relist staging/src/k8s.io/sample-apiserver/pkg/apiserver/apiserver.go (2 lines): - line 47: // TODO fix the server code to avoid this - line 50: // TODO: keep the generic API server from wanting this pkg/scheduler/internal/queue/scheduling_queue.go (2 lines): - line 204: // TODO: this will be removed after SchedulingQueueHint goes to stable and the feature gate is removed. - line 716: // TODO: This function is called only when p.isSchedulingQueueHintEnabled is false, staging/src/k8s.io/kubectl/pkg/polymorphichelpers/rollback.go (2 lines): - line 110: // TODO: Fix this after kubectl has been removed from core. It is not possible to convert the runtime.Object - line 493: // TODO: copied from daemon controller, should extract to a library pkg/registry/authentication/rest/storage_authentication.go (2 lines): - line 40: // TODO figure out how to make the swagger generation stable, while allowing this endpoint to be disabled. - line 47: // TODO refactor the plumbing to provide the information in the APIGroupInfo pkg/registry/core/pod/strategy.go (2 lines): - line 322: // TODO: fields are not labels, and the validation rules for them do not apply. - line 340: // TODO: add podIPs as a downward API value(s) with proper format pkg/registry/flowcontrol/ensurer/strategy.go (2 lines): - line 341: // TODO: expectedResourceVersion := object.GetResourceVersion() - line 342: err = objectOps.Delete(ctx, object.GetName(), metav1.DeleteOptions{ /* TODO: expectedResourceVersion */ }) staging/src/k8s.io/apimachinery/pkg/apis/meta/v1/watch.go (2 lines): - line 46: // TODO: handle other fields on Unknown and detect type - line 64: // TODO: handle other fields on Unknown and detect type staging/src/k8s.io/kubectl/pkg/cmd/util/editor/editoptions.go (2 lines): - line 884: // TODO: if any files we read have > 64KB lines, we'll need to switch to bytes.ReadLine - line 885: // TODO: probably going to be secrets staging/src/k8s.io/apiserver/pkg/storage/value/encrypt/envelope/kmsv2/envelope.go (2 lines): - line 165: // TODO: consider marking state.EncryptedDEK != encryptedObject.EncryptedDEK as a stale read to support DEK defragmentation - line 252: // TODO see if we can do this inside the stateFunc control loop staging/src/k8s.io/apiserver/pkg/util/flowcontrol/apf_controller.go (2 lines): - line 595: // TODO: this will break when we have multiple conditions for a flowschema - line 734: // TODO: consider not even trying if server is not handling staging/src/k8s.io/kube-aggregator/pkg/apiserver/handler_discovery.go (2 lines): - line 378: // TODO: Maybe also stick in a status for the version the error? - line 533: // !TODO: This was copied from staging/src/k8s.io/kube-aggregator/pkg/controllers/openapi/aggregator/downloader.go pkg/kubelet/container/helpers.go (2 lines): - line 160: // TODO: callers should use ExpandContainerCommandAndArgs with a fully resolved list of environment. - line 298: // TODO: Remove this once it becomes obsolete. pkg/kubelet/volumemanager/reconciler/reconciler_new.go (2 lines): - line 24: // TODO: move to reconciler.go and remove old code there when NewVolumeManagerReconstruction is GA - line 26: // TODO: Replace Run() when NewVolumeManagerReconstruction is GA staging/src/k8s.io/legacy-cloud-providers/vsphere/nodemanager.go (2 lines): - line 56: // TODO: replace map with concurrent map when k8s supports go v1.9 - line 83: // TODO: Make it configurable in vsphere.conf cmd/kubeadm/app/apis/kubeadm/types.go (2 lines): - line 205: //TODO: evaluate if we need also a ImageName based on user feedbacks - line 424: // TODO: remove this function when the feature gate is removed. pkg/controller/nodelifecycle/scheduler/rate_limited_queue.go (2 lines): - line 228: // function in NodeController when Node becomes Ready again) TODO: - line 297: // TODO: figure out if we need to support higher Burst values and decide on the drain logic, should we keep: pkg/controller/resourceclaim/controller.go (2 lines): - line 831: // TODO: support generic object lookup - line 837: // TODO (#113700): patch staging/src/k8s.io/client-go/dynamic/interface.go (2 lines): - line 53: // TODO find a better place to move this for existing callers - line 57: // TODO find a better place to move this for existing callers staging/src/k8s.io/kubectl/pkg/cmd/clusterinfo/clusterinfo.go (2 lines): - line 96: // TODO use generalized labels once they are implemented (#341) - line 155: // TODO consider printing more information about cluster pkg/kubelet/volumemanager/reconciler/reconstruct_common.go (2 lines): - line 169: // TODO: Currently cleanupMounts only includes UnmountVolume operation. In the next PR, we will add - line 395: // TODO: get device path directly from the volume mount path. pkg/registry/core/service/portallocator/controller/repair.go (2 lines): - line 105: // TODO: (per smarterclayton) if Get() or ListServices() is a weak consistency read, - line 258: // TODO: is it safe to assume the protocol is always TCP? staging/src/k8s.io/legacy-cloud-providers/gce/gce.go (2 lines): - line 176: // TODO: replace gcfg with json - line 888: // TODO: use PageToken to list all not just the first 500 cmd/kubeadm/app/apis/kubeadm/v1beta3/types.go (2 lines): - line 146: // TODO: This is temporary and ideally we would like to switch all components to - line 191: //TODO: evaluate if we need also a ImageName based on user feedbacks staging/src/k8s.io/client-go/rest/watch/encoder.go (2 lines): - line 31: // TODO: this type is only used by tests - line 51: // FIXME: get rid of json.RawMessage. staging/src/k8s.io/client-go/rest/client.go (2 lines): - line 54: // TODO: ContentConfig will be updated to accept a Negotiator instead of a - line 140: // TODO Generalize this see #17727 . staging/src/k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/validator.go (2 lines): - line 125: // TODO: move this to generics - line 218: // TODO: move this to generics staging/src/k8s.io/kube-aggregator/pkg/apiserver/handler_proxy.go (2 lines): - line 96: // TODO: record long-running request differently? The long-running check func does not necessarily match the one of the aggregated apiserver - line 178: // TODO this should properly handle content type negotiation pkg/kubelet/stats/cri_stats_provider.go (2 lines): - line 423: // TODO: For CRI Stats Provider we don't support separate disks yet. - line 507: // TODO: sum Pod network stats from container stats. pkg/apis/networking/fuzzer/fuzzer.go (2 lines): - line 34: // TODO: Implement a fuzzer to generate valid keys, values and operators for - line 45: // TODO: Implement a fuzzer to generate valid keys, values and operators for pkg/kubelet/kuberuntime/kuberuntime_sandbox.go (2 lines): - line 81: // TODO: deprecating podsandbox resource requirements in favor of the pod level cgroup - line 102: // TODO: Add domain support in new runtime interface staging/src/k8s.io/client-go/dynamic/fake/simple.go (2 lines): - line 422: // TODO: opts are currently ignored. - line 459: // TODO: opts are currently ignored. pkg/volume/csi/csi_mounter.go (2 lines): - line 43: // TODO (vladimirvivien) move this in a central loc later - line 176: //TODO (vladimirvivien) implement better AccessModes mapping between k8s and CSI pkg/apis/extensions/v1beta1/defaults.go (2 lines): - line 36: // TODO: support templates defined elsewhere when we support them in the API - line 128: // TODO: support templates defined elsewhere when we support them in the API pkg/apis/apps/v1beta2/conversion.go (2 lines): - line 103: // TODO: remove this conversion after we delete extensions/v1beta1 and apps/v1beta1 Deployment - line 127: // TODO: remove this conversion after we delete extensions/v1beta1 and apps/v1beta1 Deployment staging/src/k8s.io/endpointslice/utils.go (2 lines): - line 282: // TODO: (khenidak) when address types are removed in favor of - line 302: // TODO (khenidak) remove when (1) dual stack becomes cmd/kube-apiserver/app/options/validation.go (2 lines): - line 34: // TODO: Longer term we should read this from some config store, rather than a flag. - line 114: // TODO: revisit for dual-stack https://github.com/kubernetes/enhancements/issues/2438 pkg/volume/util/storageclass.go (2 lines): - line 35: // TODO: remove Beta when no longer used - line 75: // TODO: remove Beta when no longer needed pkg/kubelet/cm/container_manager_linux.go (2 lines): - line 650: // TODO: move the GetResources logic to PodContainerManager. - line 963: // TODO: Currently we maintain a list of ClaimResources, each of which contains staging/src/k8s.io/apimachinery/pkg/util/proxy/transport.go (2 lines): - line 70: // TODO: css URLs hidden in style elements. - line 267: // TODO: Remove any hash/signature headers here? staging/src/k8s.io/apimachinery/pkg/util/validation/field/errors.go (2 lines): - line 87: // TODO: internal types have panic guards against json.Marshalling to prevent - line 104: // TODO: These values are duplicated in api/types.go, but there's a circular dep. Fix it. pkg/kubelet/kuberuntime/kuberuntime_container.go (2 lines): - line 577: // TODO: optimization: set maximum number of containers per container name to examine. - line 1266: // TODO: Separate log and container lifecycle management. staging/src/k8s.io/client-go/kubernetes/typed/core/v1/fake/fake_event_expansion.go (2 lines): - line 60: // TODO: Should take a PatchType as an argument probably. - line 62: // TODO: Should be configurable to support additional patch strategies. staging/src/k8s.io/component-base/version/base.go (2 lines): - line 37: // TODO: Deprecate gitMajor and gitMinor, use only gitVersion - line 49: // TODO: This field is still called "gitVersion" for legacy staging/src/k8s.io/kubectl/pkg/cmd/exec/exec.go (2 lines): - line 105: // TODO support UID - line 373: // TODO: consider abstracting into a client invocation or client helper staging/src/k8s.io/legacy-cloud-providers/gce/gce_instancegroup.go (2 lines): - line 93: // TODO: should cull operation above this layer. - line 110: // TODO: should cull operation above this layer. cmd/kubeadm/app/cmd/upgrade/plan.go (2 lines): - line 120: // TODO: once we are confident the feature is graduated we should remove the EXPERIMENTAL text below: - line 299: // TODO There is currently no way to cleanly output upgrades that involve adding, removing, or changing components pkg/controller/garbagecollector/metaonly/types.go (2 lines): - line 25: // TODO: enable meta-only decoding for protobuf. - line 37: // TODO: enable meta-only decoding for protobuf. staging/src/k8s.io/kubectl/pkg/util/podutils/podutils.go (2 lines): - line 110: // TODO: take availability into account when we push minReadySeconds information from deployment into pods, - line 157: // TODO: take availability into account when we push minReadySeconds information from deployment into pods, staging/src/k8s.io/client-go/discovery/discovery_client.go (2 lines): - line 107: // TODO: this needs to be revisited, this interface can't be locked properly - line 600: // TODO: maybe restrict this to NotFound errors cluster/addons/volumesnapshots/crd/snapshot.storage.k8s.io_volumesnapshotcontents.yaml (2 lines): - line 157: an object. TODO: this design is not final and this field is - line 332: description: 'If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future.' pkg/controller/statefulset/stateful_set.go (2 lines): - line 145: // TODO: Watch volumes - line 239: // TODO: MinReadySeconds in the Pod will generate an Available condition to be added in staging/src/k8s.io/apiserver/pkg/admission/plugin/cel/filter.go (2 lines): - line 133: // TODO: replace unstructured with ref.Val for CEL variables when native type support is available - line 255: // TODO: to reuse https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/request/admissionreview.go#L154 pkg/apis/admissionregistration/v1beta1/defaults.go (2 lines): - line 73: // TODO: revisit/remove this default and possibly make the field required when promoting to v1 - line 106: // TODO: revisit/remove this default and possibly make the field required when promoting to v1 pkg/controller/deployment/rollback.go (2 lines): - line 124: // TODO: Remove this when extensions/v1beta1 and apps/v1beta1 Deployment are dropped. - line 141: // TODO: Remove this when extensions/v1beta1 and apps/v1beta1 Deployment are dropped. staging/src/k8s.io/apiserver/pkg/endpoints/request/requestinfo.go (2 lines): - line 69: // TODO: find a way to keep this up to date automatically. Maybe dynamically populate list as handlers added to - line 88: // TODO write an integration test against the swagger doc to test the RequestInfo and match up behavior to responses staging/src/k8s.io/apimachinery/pkg/api/apitesting/roundtrip/construct.go (1 line): - line 37: // TODO: test non-normalized round-tripping... YAMLToJSON normalizes and makes exact comparisons fail pkg/proxy/nftables/proxier.go (1 line): - line 983: // FIXME: metric staging/publishing/import-restrictions.yaml (1 line): - line 28: # TODO this one should be tightened. We depend on it for testing, but we should instead create our own scheme staging/src/k8s.io/api/authorization/v1/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. pkg/controller/volume/persistentvolume/config/v1alpha1/conversion.go (1 line): - line 29: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions pkg/kubelet/cm/devicemanager/plugin/v1beta1/api.go (1 line): - line 36: // TODO: evaluate whether we need these error definitions. cmd/kube-controller-manager/app/networking.go (1 line): - line 46: // TODO use component config pkg/kubelet/kuberuntime/logs/logs.go (1 line): - line 192: // TODO: JSON decoding is fairly expensive, we should evaluate this. pkg/apis/core/v1/helper/helpers.go (1 line): - line 145: // TODO: make method on LoadBalancerStatus? staging/src/k8s.io/apiserver/pkg/server/storage/storage_codec.go (1 line): - line 75: // TODO: flag this type of data if we encounter it, require migration (read to decode, write to persist using a supported encoder), and remove in 1.8 pkg/registry/discovery/rest/storage_discovery.go (1 line): - line 37: // TODO refactor the plumbing to provide the information in the APIGroupInfo cmd/kubeadm/app/apis/bootstraptoken/v1/utils.go (1 line): - line 127: // TODO: This maybe should be a helper function in bootstraputil? cmd/kubelet/app/plugins_providers.go (1 line): - line 45: // TODO: fail and return here once alpha only tests can set the feature flags for a plugin correctly staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/conversion/converter.go (1 line): - line 165: // TODO: should this be a typed error? staging/src/k8s.io/legacy-cloud-providers/gce/support.go (1 line): - line 51: // TODO: the current cloud provider policy doesn't seem to be correct as it staging/src/k8s.io/api/scheduling/v1alpha1/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/apiserver/pkg/util/flowcontrol/request/list_work_estimator.go (1 line): - line 128: // TODO: For resources that implement indexes at the watchcache level, staging/src/k8s.io/apiextensions-apiserver/pkg/controller/openapi/builder/builder.go (1 line): - line 381: // TODO: fix kubectl to understand additionalProperties=true cmd/kube-apiserver/app/options/options.go (1 line): - line 114: // TODO: remove this comment once this option is tested in CI. cmd/kubeadm/app/util/etcd/etcd.go (1 line): - line 515: // TODO: warning logs from etcd client should be removed. pkg/volume/azure_file/azure_file.go (1 line): - line 86: //TODO: check if mount.cifs is there staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/config/apis/webhookadmission/v1/register.go (1 line): - line 31: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. pkg/apis/apps/register.go (1 line): - line 50: // TODO this will get cleaned up with the scheme types are fixed staging/src/k8s.io/api/extensions/v1beta1/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/apimachinery/pkg/runtime/codec_check.go (1 line): - line 30: // TODO: verify that the correct external version is chosen on encode... staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/zz_generated.conversion.go (1 line): - line 765: // FIXME: Type apiextensions.JSON is unsupported. pkg/kubelet/pluginmanager/pluginwatcher/plugin_watcher_windows.go (1 line): - line 30: // TODO: This is a workaround for Windows 20H2 issue for os.Stat(). Please see pkg/registry/autoscaling/rest/storage_autoscaling.go (1 line): - line 36: // TODO refactor the plumbing to provide the information in the APIGroupInfo staging/src/k8s.io/apiserver/pkg/server/filters/timeout.go (1 line): - line 43: // TODO unify this with apiserver.MaxInFlightLimit pkg/controller/deployment/config/v1alpha1/conversion.go (1 line): - line 29: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions pkg/kubelet/cm/devicemanager/checkpoint/checkpoint.go (1 line): - line 47: // TODO: add version control when we need to change checkpoint format. pkg/kubelet/cm/container_manager.go (1 line): - line 28: // TODO: Migrate kubelet to either use its own internal objects or client library. staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/validation/validation.go (1 line): - line 104: // TODO: replace with NewStructural(...).ToGoOpenAPI cmd/kube-controller-manager/app/import_known_versions.go (1 line): - line 18: // TODO: Remove this file when namespace controller and garbage collector pkg/volume/plugins.go (1 line): - line 69: // TODO: refactor all of this out of volumes when an admin can configure staging/src/k8s.io/client-go/tools/clientcmd/client_config.go (1 line): - line 633: // TODO: We do not need a DeferredLoader here. Refactor code and see if we can use DirectClientConfig here. pkg/controller/certificates/signer/signer.go (1 line): - line 246: // TODO type this error so that a different reporting loop (one without a signing cert), can mark pkg/controller/endpoint/config/v1alpha1/conversion.go (1 line): - line 29: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions staging/src/k8s.io/sample-apiserver/pkg/registry/wardle/fischer/etcd.go (1 line): - line 43: // TODO: define table converter that exposes more than name/creation timestamp staging/src/k8s.io/kube-aggregator/pkg/controllers/openapiv3/aggregator/aggregator.go (1 line): - line 275: // TODO: Import this logic from kube-openapi instead of duplicating pkg/volume/util/metrics.go (1 line): - line 97: // TODO: Establish well-known error codes to be able to distinguish pkg/kubelet/eviction/helpers.go (1 line): - line 527: // TODO: summary API should report what volumes consume local storage rather than hard-code here. staging/src/k8s.io/client-go/tools/pager/pager.go (1 line): - line 70: // TODO: introduce other types of paging functions - such as those that retrieve from a list cmd/kube-scheduler/app/options/deprecated.go (1 line): - line 27: // TODO remove these fields once the deprecated flags are removed. pkg/scheduler/framework/plugins/imagelocality/image_locality.go (1 line): - line 117: // TODO: cover the corner cases of missed matches, e.g, staging/src/k8s.io/client-go/tools/clientcmd/loader.go (1 line): - line 460: // TODO: find a way to do this with actual file locks. Will staging/src/k8s.io/api/policy/v1beta1/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/cli-runtime/pkg/resource/scheme.go (1 line): - line 71: // TODO: scheme.Codecs here should become "pkg/apis/server/scheme" which is the minimal core you need staging/src/k8s.io/apiserver/pkg/apis/apiserver/v1/register.go (1 line): - line 31: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/apiserver/pkg/apis/example2/v1/register.go (1 line): - line 42: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/kubectl/pkg/cmd/patch/patch.go (1 line): - line 333: // TODO: This is pretty hacky, we need a better structured error from the json-patch pkg/controller/volume/ephemeral/config/v1alpha1/conversion.go (1 line): - line 29: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions staging/src/k8s.io/api/networking/v1alpha1/well_known_labels.go (1 line): - line 21: // TODO: Use IPFamily as field with a field selector,And the value is set based on staging/src/k8s.io/apiserver/pkg/admission/plugin/resourcequota/resource_access.go (1 line): - line 117: // TODO: If there are multiple operations at the same time and cache has just expired, staging/src/k8s.io/code-generator/cmd/prerelease-lifecycle-gen/prerelease-lifecycle-generators/status.go (1 line): - line 241: // TODO: build a more fundamental concept in gengo for dealing with modifications cmd/kubeadm/app/util/config/cluster.go (1 line): - line 154: // TODO: in future we want to switch to a more canonical way for doing this e.g. by having this staging/src/k8s.io/api/certificates/v1beta1/register.go (1 line): - line 42: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/apimachinery/pkg/apis/meta/v1/unstructured/unstructured.go (1 line): - line 38: // TODO: make the serialization part of this type distinct from the field accessors. pkg/registry/events/rest/storage_events.go (1 line): - line 39: // TODO refactor the plumbing to provide the information in the APIGroupInfo staging/src/k8s.io/kubectl/pkg/generate/generate.go (1 line): - line 36: // TODO: facilitate structured json generator input schemes staging/src/k8s.io/api/events/v1/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/apiserver/pkg/audit/request.go (1 line): - line 263: // TODO a deep copy isn't really needed here, figure out how we can reliably staging/src/k8s.io/kube-aggregator/pkg/apis/apiregistration/v1beta1/register.go (1 line): - line 38: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. pkg/registry/authorization/rest/storage_authorization.go (1 line): - line 46: // TODO refactor the plumbing to provide the information in the APIGroupInfo pkg/probe/exec/errors.go (1 line): - line 33: // TODO: this error type can likely be removed when we support CRI errors. staging/src/k8s.io/code-generator/cmd/go-to-protobuf/protobuf/namer.go (1 line): - line 148: // TODO: should methods be walked? pkg/registry/certificates/rest/storage_certificates.go (1 line): - line 40: // TODO refactor the plumbing to provide the information in the APIGroupInfo pkg/controller/volume/expand/expand_controller.go (1 line): - line 323: // TODO make concurrency configurable (workers argument). previously, nestedpendingoperations spawned unlimited goroutines pkg/controller/endpointslice/config/v1alpha1/conversion.go (1 line): - line 29: // TODO: Fix the bug in conversion-gen so it automatically discovers these staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1/deepcopy.go (1 line): - line 19: // TODO: Update this after a tag is created for interface fields in DeepCopy pkg/registry/admissionregistration/resolver/resolver.go (1 line): - line 37: // TODO: refactor this into an efficient gvk --> gvr resolver that remembers hits and re-resolves group/version info on misses staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/mutating/dispatcher.go (1 line): - line 379: // TODO: if we have multiple mutating webhooks, we can remember the json pkg/kubelet/leaky/leaky.go (1 line): - line 18: // out through bad abstractions. TODO: delete all of this. pkg/registry/core/pod/storage/storage.go (1 line): - line 179: // TODO: move me to a binding strategy pkg/controller/nodeipam/config/v1alpha1/conversion.go (1 line): - line 29: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions staging/src/k8s.io/code-generator/cmd/go-to-protobuf/protobuf/package.go (1 line): - line 163: // TODO hard error? staging/src/k8s.io/apimachinery/pkg/util/proxy/upgradeaware.go (1 line): - line 455: // FIXME: Taken from net/http/httputil/reverseproxy.go as singleJoiningSlash is not exported to be re-used. cluster/addons/rbac/legacy-kubelet-user/kubelet-binding.yaml (1 line): - line 3: # TODO: remove this once new nodes are granted individual identities and the pkg/kubelet/cm/devicemanager/pod_devices.go (1 line): - line 313: // TODO: This may need to be part of Device plugin API. cmd/kubeadm/app/util/config/joinconfiguration.go (1 line): - line 67: // Nb. --config overrides command line flags, TODO: fix this plugin/pkg/auth/authorizer/node/graph_populator.go (1 line): - line 144: // TODO: skip add if uid, pvc, and secrets are all identical between old and new staging/src/k8s.io/api/rbac/v1beta1/register.go (1 line): - line 36: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. pkg/controller/volume/attachdetach/statusupdater/node_status_updater.go (1 line): - line 63: // TODO: investigate right behavior if nodeName is empty staging/src/k8s.io/api/coordination/v1/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/apimachinery/pkg/apis/testapigroup/fuzzer/fuzzer.go (1 line): - line 37: // TODO: uncomment when round trip starts from a versioned object staging/src/k8s.io/kubectl/pkg/cmd/set/set_resources.go (1 line): - line 190: // TODO: this should be in the builder - if someone specifies tuples, fail when pkg/apis/core/objectreference.go (1 line): - line 17: //TODO: consider making these methods functions, because we don't want helper cluster/addons/dns/kube-dns/kube-dns.yaml.in (1 line): - line 119: # TODO: Set memory limits when we've profiled the container for large staging/src/k8s.io/apiserver/pkg/registry/generic/rest/streamer.go (1 line): - line 91: // TODO prefer segregate TLS errors more reliably, but we do want to increment a count pkg/registry/policy/rest/storage_policy.go (1 line): - line 35: // TODO refactor the plumbing to provide the information in the APIGroupInfo staging/src/k8s.io/api/authentication/v1beta1/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/apiserver/pkg/storage/names/generate.go (1 line): - line 43: // TODO: make this flexible for non-core resources with alternate naming rules. cluster/addons/calico-policy-controller/ipamblock-crd.yaml (1 line): - line 41: # TODO: This nullable is manually added in. We should update controller-gen cmd/kubeadm/app/phases/certs/renewal/manager.go (1 line): - line 426: // TODO: Remove these mutators after the organization migration is complete in a future release cluster/addons/dns/kube-dns/kube-dns.yaml.sed (1 line): - line 119: # TODO: Set memory limits when we've profiled the container for large plugin/pkg/auth/authorizer/rbac/bootstrappolicy/controller_policy.go (1 line): - line 122: // TODO: remove "update" once staging/src/k8s.io/apiserver/pkg/registry/generic/testing/tester.go (1 line): - line 138: // TODO: This should be filtered, the registry should not be aware of this level of detail staging/src/k8s.io/component-helpers/auth/rbac/validation/policy_comparator.go (1 line): - line 31: // TODO: it might be nice to collapse the list down into something more human readable staging/src/k8s.io/kubectl/pkg/cmd/set/helper.go (1 line): - line 45: // TODO: turn into a regex and handle greedy matches and backtracking. pkg/controller/podautoscaler/horizontal.go (1 line): - line 249: // TODO: could we leak if we fail to get the key? staging/src/k8s.io/api/coordination/v1beta1/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. plugin/pkg/admission/serviceaccount/admission.go (1 line): - line 103: // TODO: enable this once we've swept secret usage to account for adding secret references to service accounts pkg/controller/namespace/config/v1alpha1/conversion.go (1 line): - line 29: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions pkg/registry/core/service/allocator/bitmap.go (1 line): - line 36: // TODO: use RLE and compact the allocator to minimize space. pkg/printers/internalversion/import_known_versions.go (1 line): - line 21: // TODO: Remove these manual install once we don't need legacy scheme in get command staging/src/k8s.io/apiserver/pkg/apis/apiserver/v1alpha1/register.go (1 line): - line 35: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. pkg/controller/job/config/v1alpha1/conversion.go (1 line): - line 29: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions staging/src/k8s.io/apiserver/pkg/util/webhook/validation.go (1 line): - line 73: // TODO: replace below with url.Parse + verifying that host is empty? pkg/kubelet/server/stats/fs_resource_analyzer.go (1 line): - line 103: // TODO: Differentiate between stats being empty pkg/volume/emptydir/empty_dir.go (1 line): - line 41: // TODO: in the near future, this will be changed to be more restrictive pkg/apis/core/fuzzer/fuzzer.go (1 line): - line 125: // TODO: uncomment when round trip starts from a versioned object staging/src/k8s.io/apimachinery/pkg/runtime/serializer/json/json.go (1 line): - line 267: // TODO: rework YAMLToJSONStrict to return warnings about duplicate fields without terminating so we don't have to do this twice. staging/src/k8s.io/apiserver/pkg/admission/plugin/resourcequota/apis/resourcequota/v1alpha1/register.go (1 line): - line 31: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/kubectl/pkg/cmd/taint/utils.go (1 line): - line 162: // TODO: This needs a rewrite to take only the new values instead of appended newTaints list to be consistent. staging/src/k8s.io/cli-runtime/pkg/printers/tableprinter.go (1 line): - line 476: // TODO: remove this once we drop the legacy printers staging/src/k8s.io/apiserver/pkg/endpoints/metrics/metrics.go (1 line): - line 771: // TODO: this is a fairly large allocation for what it does, consider staging/src/k8s.io/cloud-provider/controllers/service/controller.go (1 line): - line 653: // TODO: Should we check name? (In theory, an LB could expose it) cmd/kube-controller-manager/app/options/options.go (1 line): - line 421: // TODO: validate component config, master and kubeconfig staging/src/k8s.io/legacy-cloud-providers/vsphere/vclib/connection.go (1 line): - line 93: // TODO: Add separate fields for certificate and private-key. cmd/kube-controller-manager/app/plugins_providers.go (1 line): - line 42: // TODO: fail and return here once alpha only tests can set the feature flags for a plugin correctly staging/src/k8s.io/apiserver/pkg/apis/apiserver/v1beta1/register.go (1 line): - line 35: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/apiserver/plugin/pkg/authorizer/webhook/webhook.go (1 line): - line 279: // TODO: need to finish the method to get the rules when using webhook mode pkg/registry/storage/rest/storage_storage.go (1 line): - line 43: // TODO refactor the plumbing to provide the information in the APIGroupInfo staging/src/k8s.io/apimachinery/pkg/api/meta/interfaces.go (1 line): - line 112: // TODO: split into sub-interfaces cmd/kubeadm/app/phases/upgrade/health.go (1 line): - line 169: // TODO: refactor this if the TTL controller is enabled in kubeadm once it goes Beta. staging/src/k8s.io/apiserver/pkg/server/httplog/httplog.go (1 line): - line 55: // TODO now that we're using go-restful, we shouldn't need to be wrapping staging/src/k8s.io/apimachinery/pkg/runtime/negotiate.go (1 line): - line 45: // TODO: `pretty=1` is handled in NegotiateOutputMediaType, consider moving it to this method pkg/proxy/endpoints.go (1 line): - line 365: // TODO: If this will appear to be computationally expensive, consider staging/src/k8s.io/kubectl/pkg/cmd/label/label.go (1 line): - line 275: // TODO: support bulk generic output a la Get staging/src/k8s.io/cli-runtime/pkg/printers/name.go (1 line): - line 61: // TODO chase the caller that is setting this and remove it. pkg/volume/rbd/disk_manager.go (1 line): - line 20: // TODO: consolidate, refactor, and share diskManager among iSCSI, GCE PD, and RBD staging/src/k8s.io/api/admission/v1/register.go (1 line): - line 36: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. cmd/kubeadm/app/apis/kubeadm/scheme/scheme.go (1 line): - line 47: // TODO: https://github.com/kubernetes/kubeadm/issues/2890 cmd/kubeadm/app/phases/etcd/local.go (1 line): - line 244: // TODO: start using --initial-corrupt-check once the graduated flag is available, pkg/scheduler/apis/config/validation/validation.go (1 line): - line 44: // TODO: This can be removed when ResourceLock is not available pkg/kubelet/stats/helper.go (1 line): - line 300: // TODO: cadvisor should export this https://github.com/google/cadvisor/blob/master/metrics/prometheus.go#L596 pkg/util/oom/oom.go (1 line): - line 21: // TODO: make this an interface, and inject a mock ioutil struct for testing. staging/src/k8s.io/apimachinery/pkg/apis/testapigroup/v1/register.go (1 line): - line 42: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. cmd/kube-scheduler/app/options/options.go (1 line): - line 347: // TODO remove masterOverride when CLI flags are removed. pkg/volume/flexvolume/probe.go (1 line): - line 83: // TODO use a concurrent map to avoid Locking the entire map pkg/registry/rbac/role/storage/storage.go (1 line): - line 45: // TODO: define table converter that exposes more than name/creation timestamp? pkg/apis/storage/validation/validation.go (1 line): - line 283: // TODO (verult) consider improving runtime staging/src/k8s.io/apiserver/pkg/admission/plugin/resourcequota/controller.go (1 line): - line 62: // TODO these are used together to bucket items by namespace and then batch them up for processing. plugin/pkg/auth/authorizer/rbac/bootstrappolicy/namespace_policy.go (1 line): - line 106: // TODO: Create util on Role+Binding for leader locking if more cases evolve. staging/src/k8s.io/client-go/kubernetes/typed/core/v1/event_expansion.go (1 line): - line 154: // TODO: This is a temporary arrangement and will be removed once all clients are moved to use the clientset. staging/src/k8s.io/apimachinery/pkg/api/errors/errors.go (1 line): - line 252: // TODO: Get obj details here? pkg/kubelet/cm/dra/state/state_checkpoint.go (1 line): - line 67: // TODO: remove in Beta staging/src/k8s.io/client-go/tools/remotecommand/v1.go (1 line): - line 125: // TODO this goroutine will never exit cleanly (the io.Copy never unblocks) staging/src/k8s.io/code-generator/cmd/go-to-protobuf/protobuf/parser.go (1 line): - line 111: // TODO: move into upstream gogo-protobuf once https://github.com/gogo/protobuf/issues/181 pkg/controller/nodeipam/ipam/cidrset/cidr_set.go (1 line): - line 57: // TODO: https://github.com/kubernetes/kubernetes/issues/44918 cmd/kubeadm/app/cmd/phases/init/kubelet.go (1 line): - line 74: // TODO: Maybe we want to do that some time in the future, in order to remove some logic from the mark-control-plane phase? pkg/controller/resourcequota/resource_quota_monitor.go (1 line): - line 176: // TODO: if we can share storage with garbage collector, it may make sense to support other resources staging/src/k8s.io/sample-apiserver/pkg/apis/wardle/v1beta1/register.go (1 line): - line 33: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. cluster/addons/rbac/cluster-loadbalancing/glbc/roles.yaml (1 line): - line 29: # TODO: switch to patch services/status pkg/kubelet/cm/devicemanager/types.go (1 line): - line 100: // TODO: evaluate whether we need this error definition. staging/src/k8s.io/kube-aggregator/pkg/controllers/status/available_controller.go (1 line): - line 150: // TODO: decouple from legacyregistry staging/src/k8s.io/client-go/rest/url_utils.go (1 line): - line 83: // TODO: move the default to secure when the apiserver supports TLS by default staging/src/k8s.io/kubectl/pkg/cmd/apply/patcher.go (1 line): - line 388: // TODO: use wait staging/src/k8s.io/api/networking/v1alpha1/register.go (1 line): - line 43: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. pkg/kubelet/kubelet_resources.go (1 line): - line 33: // TODO: if/when we have pod level resources, we need to update this function staging/src/k8s.io/apiextensions-apiserver/pkg/crdserverscheme/unstructured.go (1 line): - line 35: // TODO this only works for the apiextensions server and doesn't recognize any types. Move to point of use. staging/src/k8s.io/cloud-provider/controllers/service/config/v1alpha1/conversion.go (1 line): - line 28: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions pkg/controller/replicaset/config/v1alpha1/conversion.go (1 line): - line 29: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions staging/src/k8s.io/code-generator/cmd/applyconfiguration-gen/generators/jsontagutil.go (1 line): - line 26: // TODO: This implements the same functionality as https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/runtime/converter.go#L236 pkg/volume/local/local.go (1 line): - line 199: // TODO: check if no path and no topology constraints are ok staging/src/k8s.io/client-go/tools/remotecommand/v2.go (1 line): - line 112: // TODO we aren't using go-dockerclient any more; revisit this to determine if it's still pkg/apis/core/v1/register.go (1 line): - line 36: // TODO: remove these global variables plugin/pkg/admission/eventratelimit/apis/eventratelimit/register.go (1 line): - line 48: // TODO this will get cleaned up with the scheme types are fixed staging/src/k8s.io/mount-utils/mount.go (1 line): - line 267: // FIXME if multiple devices mounted on the same mount path, only the first one is returned. pkg/registry/apps/statefulset/storage/storage.go (1 line): - line 266: // TODO: Create a variant of ObjectMeta type that only contains the fields below. pkg/kubelet/pod/testing/fake_mirror_client.go (1 line): - line 54: // TODO (Robert Krawitz): Implement UID checking pkg/registry/core/service/storage/storage.go (1 line): - line 342: // TODO: This is clumsy. It was added for fear that the endpoints cmd/kubeadm/app/apis/kubeadm/validation/validation.go (1 line): - line 138: // TODO: Maybe validate .Taints as well in the future using something like validateNodeTaints() in pkg/apis/core/validation staging/src/k8s.io/apiextensions-apiserver/pkg/client/informers/externalversions/generic.go (1 line): - line 53: // TODO extend this to unknown resources with a client pool pkg/util/iptables/iptables.go (1 line): - line 530: // TODO: This misses reorderings e.g. "-x foo ! -y bar" will match "! -x foo -y bar" pkg/registry/apps/replicaset/storage/storage.go (1 line): - line 272: // TODO: Create a variant of ObjectMeta type that only contains the fields below. cmd/kubeadm/app/phases/certs/certlist.go (1 line): - line 354: // TODO: etcd 3.2 introduced an undocumented requirement for ClientAuth usage on the pkg/controller/nodeipam/node_ipam_controller.go (1 line): - line 123: // TODO: Abstract this check into a generic controller manager should run method. staging/src/k8s.io/client-go/scale/client.go (1 line): - line 92: // TODO: we "cheat" here since the API path really only depends on group ATM, but this should cmd/kubeadm/app/util/apiclient/idempotency.go (1 line): - line 42: // TODO: We should invent a dynamic mechanism for this using the dynamic client instead of hard-coding these functions per-type pkg/volume/testing/volume_host.go (1 line): - line 60: // TODO: Extract fields specific to fakeKubeletVolumeHost and fakeAttachDetachVolumeHost. staging/src/k8s.io/api/admission/v1beta1/register.go (1 line): - line 36: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/code-generator/cmd/informer-gen/generators/generic.go (1 line): - line 168: // TODO extend this to unknown resources with a client pool staging/src/k8s.io/kubectl/pkg/polymorphichelpers/protocolsforobject.go (1 line): - line 32: // TODO: replace with a swagger schema based approach (identify pod selector via schema introspection) staging/src/k8s.io/apimachinery/pkg/labels/selector.go (1 line): - line 960: // TODO: Consider exporting the internalSelector type instead. cmd/kubeadm/app/apis/kubeadm/v1beta4/types.go (1 line): - line 215: //TODO: evaluate if we need also a ImageName based on user feedbacks pkg/kubelet/stats/cri_stats_provider_windows.go (1 line): - line 198: // TODO: add support of multiple interfaces for getting default interface. staging/src/k8s.io/apimachinery/pkg/util/strategicpatch/patch.go (1 line): - line 191: // TODO: figure out if we need this. This shouldn't be needed by apply. When would the original map have patch directives in it? staging/src/k8s.io/apiserver/pkg/endpoints/request/doc.go (1 line): - line 19: // TODO: this package is temporary. Handlers must move into pkg/apiserver/handlers to avoid dependency cycle staging/src/k8s.io/csi-translation-lib/plugins/aws_ebs.go (1 line): - line 260: // TODO: Maybe we should pass a URL into the Volume functions pkg/controller/nodeipam/ipam/multicidrset/multi_cidr_set.go (1 line): - line 80: // TODO: https://github.com/kubernetes/kubernetes/issues/44918 pkg/apis/batch/types.go (1 line): - line 327: // TODO enabled it when https://github.com/kubernetes/kubernetes/issues/28486 has been fixed staging/src/k8s.io/client-go/tools/clientcmd/api/register.go (1 line): - line 25: // TODO this should be in the "kubeconfig" group pkg/controller/clusterroleaggregation/clusterroleaggregation_controller.go (1 line): - line 127: if errors.IsUnsupportedMediaType(err) { // TODO: Remove this fallback at least one release after ServerSideApply GA pkg/controller/podgc/config/v1alpha1/conversion.go (1 line): - line 29: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions staging/src/k8s.io/apimachinery/pkg/util/managedfields/internal/lastappliedmanager.go (1 line): - line 154: // TODO: replace with merge.Conflicts.ToSet() staging/src/k8s.io/apimachinery/pkg/util/intstr/generated.proto (1 line): - line 31: // TODO: Rename to Int32OrString staging/src/k8s.io/kubectl/pkg/drain/filters.go (1 line): - line 225: // TODO: this warning gets dropped by subsequent filters; pkg/scheduler/framework/plugins/nodeaffinity/node_affinity.go (1 line): - line 304: // TODO: parse requiredDuringSchedulingRequiredDuringExecution when it gets added to the API. cmd/kubeadm/app/componentconfigs/configset.go (1 line): - line 329: // TODO: investigate if the function can be repurposed for validating component config via CLI pkg/registry/core/namespace/storage/storage.go (1 line): - line 173: // TODO: enhance graceful deletion's calls to DeleteStrategy to allow phase change and finalizer patterns staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/validation.go (1 line): - line 182: // TODO: this is actually a field.Invalid error, but we cannot do JSON serialization of metadata here to get a proper message pkg/kubelet/status/status_manager.go (1 line): - line 842: // TODO: make me easier to express from client code pkg/apis/core/taint.go (1 line): - line 17: //TODO: consider making these methods functions, because we don't want helper staging/src/k8s.io/apimachinery/pkg/util/intstr/intstr.go (1 line): - line 35: // TODO: Rename to Int32OrString cmd/kubelet/app/server.go (1 line): - line 1281: // TODO: block until all sources have delivered at least one update to the channel, or break the sync loop staging/src/k8s.io/cli-runtime/pkg/resource/client.go (1 line): - line 25: // TODO require negotiatedSerializer. leaving it optional lets us plumb current behavior and deal with the difference after major plumbing is complete cmd/fieldnamedocscheck/field_name_docs_check.go (1 line): - line 83: // TODO: a manual pass adding back-ticks to the doc strings, then update the linter to staging/src/k8s.io/apiserver/pkg/admission/plugin/resourcequota/apis/resourcequota/v1beta1/register.go (1 line): - line 31: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. cmd/kubeadm/app/util/config/common.go (1 line): - line 87: // TODO: https://github.com/kubernetes/kubeadm/issues/2890 pkg/kubectl/cmd/convert/import_known_versions.go (1 line): - line 20: // TODO: Remove these manual install once we don't need legacy scheme in convert pkg/scheduler/apis/config/types.go (1 line): - line 63: // TODO: We might wanna make this a substruct like Debugging componentbaseconfig.DebuggingConfiguration staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/config/apis/webhookadmission/v1alpha1/register.go (1 line): - line 31: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. pkg/controller/daemon/config/v1alpha1/conversion.go (1 line): - line 29: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions staging/src/k8s.io/kubectl/pkg/util/i18n/i18n.go (1 line): - line 158: // TODO: list the directory and load all files. staging/src/k8s.io/kubectl/pkg/cmd/util/editor/editor.go (1 line): - line 35: // TODO: on Windows rely on 'start' to launch the editor associated staging/src/k8s.io/kubectl/pkg/cmd/debug/debug.go (1 line): - line 695: // TODO: expose the timeout pkg/volume/util/hostutil/hostutil_linux.go (1 line): - line 157: // TODO once the nsenter implementation is removed, this method can be removed pkg/controller/cronjob/injection.go (1 line): - line 87: // TODO: delete by UID? pkg/controller/deployment/deployment_controller.go (1 line): - line 609: // TODO: Deep-copy only when needed. staging/src/k8s.io/apimachinery/pkg/api/equality/semantic.go (1 line): - line 32: // TODO: if we decide it's important, it should be safe to start comparing the format. staging/src/k8s.io/api/admissionregistration/v1beta1/register.go (1 line): - line 36: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. pkg/controller/job/job_controller.go (1 line): - line 548: // TODO: Handle overlapping controllers better. Either disallow them at admission time or staging/src/k8s.io/apiserver/pkg/registry/rest/update.go (1 line): - line 86: // TODO: add other common fields that require global validation. staging/src/k8s.io/client-go/util/certificate/certificate_manager.go (1 line): - line 530: // TODO: return errors, have callers handle and log them correctly pkg/kubelet/config/common.go (1 line): - line 34: // TODO: remove this import if pkg/controller/podautoscaler/config/v1alpha1/conversion.go (1 line): - line 29: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions staging/src/k8s.io/kube-aggregator/pkg/client/informers/externalversions/generic.go (1 line): - line 53: // TODO extend this to unknown resources with a client pool pkg/registry/core/pod/storage/eviction.go (1 line): - line 408: // TODO: Once there are time-based staging/src/k8s.io/cloud-provider/config/v1alpha1/conversion.go (1 line): - line 28: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions pkg/volume/metrics_block.go (1 line): - line 57: // TODO: Windows does not yet support VolumeMode=Block pkg/api/testing/fuzzer.go (1 line): - line 55: // TODO: uncomment when round trip starts from a versioned object staging/src/k8s.io/code-generator/cmd/lister-gen/main.go (1 line): - line 35: // TODO: move this out of lister-gen pkg/kubelet/cadvisor/util.go (1 line): - line 72: // TODO: cri-o relies on cadvisor as a temporary workaround. The code should pkg/serviceaccount/jwt.go (1 line): - line 276: // TODO: Pick the key that has the same key ID as `tok`, if one exists. staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/schema/cel/compilation.go (1 line): - line 231: // TODO: Ideally we could configure the per expression limit at validation time and set it to the remaining overall budget, but we would either need a way to pass in a limit at evaluation time or move program creation to validation time staging/src/k8s.io/controller-manager/pkg/clientbuilder/client_builder.go (1 line): - line 28: // TODO: Extract this into a separate controller utilities repo (issues/68947) staging/src/k8s.io/sample-apiserver/pkg/registry/wardle/flunder/etcd.go (1 line): - line 43: // TODO: define table converter that exposes more than name/creation timestamp staging/src/k8s.io/apiserver/pkg/admission/plugin/resourcequota/apis/resourcequota/v1/register.go (1 line): - line 31: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. pkg/kubelet/eviction/eviction_manager.go (1 line): - line 250: // TODO: have a function in cadvisor that lets us know if global housekeeping has completed pkg/kubelet/kuberuntime/helpers.go (1 line): - line 111: // TODO: Remove this once it becomes obsolete. staging/src/k8s.io/api/events/v1beta1/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/apiserver/pkg/apis/config/register.go (1 line): - line 48: // TODO this will get cleaned up with the scheme types are fixed staging/src/k8s.io/apiserver/pkg/server/options/encryptionconfig/controller/controller.go (1 line): - line 166: // TODO can work queue metrics help here? staging/src/k8s.io/api/apps/v1/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. plugin/pkg/admission/antiaffinity/admission.go (1 line): - line 71: // TODO: Uncomment this block when implement RequiredDuringSchedulingRequiredDuringExecution. pkg/registry/coordination/rest/storage_coordination.go (1 line): - line 35: // TODO refactor the plumbing to provide the information in the APIGroupInfo staging/src/k8s.io/legacy-cloud-providers/azure/azure.go (1 line): - line 689: // TODO: implement ONLY for external cloud provider staging/src/k8s.io/cli-runtime/pkg/genericclioptions/builder_flags.go (1 line): - line 209: // TODO resource builders needs to become more interfacey pkg/controller/serviceaccount/serviceaccounts_controller.go (1 line): - line 207: // TODO eliminate this once the fake client can handle creation without NS staging/src/k8s.io/apiserver/pkg/server/storage/storage_factory.go (1 line): - line 218: // TODO deads2k or liggitt determine if have ever stored any of our cohabitating resources in a different location on new clusters pkg/quota/v1/evaluator/core/persistent_volume_claims.go (1 line): - line 55: /* TODO: prune? staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/generic/webhook.go (1 line): - line 109: // TODO find a better way wire this, but keep this pull small for now. staging/src/k8s.io/code-generator/cmd/client-gen/types/helpers.go (1 line): - line 32: // TODO once we've cleared the last uses as strings, this special case should be removed. cmd/kubeadm/app/discovery/discovery.go (1 line): - line 41: // TODO: Print summary info about the CA certificate, along with the checksum signature staging/src/k8s.io/api/authentication/v1alpha1/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/api/scheduling/v1/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. cmd/kubelet/app/auth.go (1 line): - line 100: // TODO: See if we can pass ctx to the current method staging/src/k8s.io/kubectl/pkg/cmd/testing/fake.go (1 line): - line 635: // TODO: make this opt-in? pkg/controller/statefulset/stateful_set_status_updater.go (1 line): - line 59: // TODO: This context.TODO should use a real context once we have RetryOnConflictWithContext staging/src/k8s.io/component-helpers/storage/volume/pv_helpers.go (1 line): - line 73: // TODO: remove beta anno once deprecation period ends pkg/volume/util/atomic_writer.go (1 line): - line 275: // TODO: somehow unify this with the similar api validation, staging/src/k8s.io/apimachinery/pkg/util/yaml/decoder.go (1 line): - line 165: // TODO: switch to readline approach. pkg/controller/certificates/signer/config/v1alpha1/conversion.go (1 line): - line 29: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions staging/src/k8s.io/legacy-cloud-providers/gce/gce_loadbalancer.go (1 line): - line 127: // TODO: replace DefaultLoadBalancerName to generate more meaningful loadbalancer names. pkg/controller/cronjob/utils.go (1 line): - line 85: // TODO: @alpatel the memory footprint can may be reduced here by staging/src/k8s.io/apimachinery/pkg/apis/meta/internalversion/register.go (1 line): - line 30: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. pkg/scheduler/metrics/resources/resources.go (1 line): - line 192: // TODO: resolve https://github.com/kubernetes/kubernetes/issues/96515 and add a condition here pkg/proxy/endpointslicecache.go (1 line): - line 256: // TODO: handle nil ports to mean "all" staging/src/k8s.io/api/admissionregistration/v1alpha1/register.go (1 line): - line 36: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. pkg/kubelet/kubelet_server_journal.go (1 line): - line 76: // TODO: Also set a response header that indicates how the request's query was resolved, staging/src/k8s.io/kubectl/pkg/cmd/set/set_subject.go (1 line): - line 242: // TODO: switch UpdatePodSpecForObject to work on v1.PodSpec cmd/kubeadm/app/cmd/options/generic.go (1 line): - line 57: // TODO: https://github.com/kubernetes/kubeadm/issues/1601 pkg/registry/batch/rest/storage_batch.go (1 line): - line 36: // TODO refactor the plumbing to provide the information in the APIGroupInfo staging/src/k8s.io/apiserver/pkg/quota/v1/generic/evaluator.go (1 line): - line 239: // TODO move to dynamic client in future pkg/apis/policy/register.go (1 line): - line 49: // TODO this gets cleaned up when the types are fixed pkg/controller/tainteviction/taint_eviction.go (1 line): - line 53: // TODO (k82cn): Figure out a reasonable number of workers/channels and propagate staging/src/k8s.io/apiextensions-apiserver/pkg/controller/finalizer/crd_finalizer.go (1 line): - line 233: // TODO not all servers are synchronized on caches. It is possible for a stale one to still be creating things. staging/src/k8s.io/apiserver/pkg/storage/selection_predicate.go (1 line): - line 133: // TODO: should be namespace.name staging/src/k8s.io/code-generator/cmd/client-gen/generators/generator_for_clientset.go (1 line): - line 70: // TODO: We actually don't need any type information to generate the clientset, pkg/registry/apps/deployment/storage/storage.go (1 line): - line 377: // TODO: Create a variant of ObjectMeta type that only contains the fields below. plugin/pkg/admission/podtolerationrestriction/apis/podtolerationrestriction/v1alpha1/register.go (1 line): - line 31: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/api/storage/v1/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. pkg/volume/fc/fc_util.go (1 line): - line 324: // TODO: FC plugin can't obtain the devicePath from kubelet because devicePath plugin/pkg/admission/eventratelimit/apis/eventratelimit/v1alpha1/register.go (1 line): - line 31: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/client-go/util/csaupgrade/upgrade.go (1 line): - line 243: //!TODO: some users may want to migrate subresources. cmd/kube-proxy/app/conntrack.go (1 line): - line 88: // TODO: generify this and sysctl to a new sysfs.WriteInt() staging/src/k8s.io/apiextensions-apiserver/pkg/cmd/server/options/options.go (1 line): - line 100: // TODO have a "real" external address staging/src/k8s.io/api/networking/v1/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. pkg/controller/cronjob/config/v1alpha1/conversion.go (1 line): - line 29: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions staging/src/k8s.io/apiserver/pkg/storage/interfaces.go (1 line): - line 251: // TODO: Remove when storage.Interface will be separate from etc3.store. staging/src/k8s.io/apiserver/pkg/apis/example/fuzzer/fuzzer.go (1 line): - line 37: // TODO: uncomment when round trip starts from a versioned object staging/src/k8s.io/apiserver/pkg/util/flowcontrol/watch_tracker.go (1 line): - line 41: // TODO: For now we only track the number of watches registered staging/src/k8s.io/sample-apiserver/pkg/apis/wardle/v1alpha1/register.go (1 line): - line 32: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. pkg/kubelet/types/types.go (1 line): - line 27: // TODO: Reconcile custom types in kubelet/types and this subpackage staging/src/k8s.io/api/authentication/v1/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/apiserver/pkg/cel/library/cost.go (1 line): - line 299: // TODO: This could potentially be optimized by sampling maps and lists instead of traversing. staging/src/k8s.io/kubectl/pkg/cmd/apply/applyset.go (1 line): - line 297: // TODO: handle GVRs for now-deleted CRDs staging/src/k8s.io/cloud-provider/controllers/node/config/v1alpha1/conversion.go (1 line): - line 28: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions pkg/registry/rbac/rest/storage_rbac.go (1 line): - line 70: // TODO refactor the plumbing to provide the information in the APIGroupInfo cluster/images/etcd/migrate/migrator.go (1 line): - line 59: cfg *EtcdMigrateCfg // TODO: don't wire this directly in pkg/proxy/types.go (1 line): - line 106: // TODO: Rename functions to be consistent with ServicePort. staging/src/k8s.io/api/batch/v1/types.go (1 line): - line 325: // TODO enabled it when https://github.com/kubernetes/kubernetes/issues/28486 has been fixed staging/src/k8s.io/apiextensions-apiserver/pkg/registry/customresourcedefinition/etcd.go (1 line): - line 57: // TODO: define table converter that exposes more than name/creation timestamp staging/src/k8s.io/kube-aggregator/pkg/apis/apiregistration/v1/register.go (1 line): - line 38: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/code-generator/cmd/informer-gen/main.go (1 line): - line 35: // TODO: move out of informer-gen cmd/kubeadm/app/cmd/phases/join/kubelet.go (1 line): - line 194: // TODO: think of a better place to move this call - e.g. a hidden phase. pkg/apis/coordination/register.go (1 line): - line 49: // TODO this gets cleaned up when the types are fixed pkg/kubelet/cm/memorymanager/memory_manager.go (1 line): - line 309: // TODO: move the method to the upper level, to re-use it under the CPU and memory managers pkg/registry/resource/rest/storage_resource.go (1 line): - line 38: // TODO refactor the plumbing to provide the information in the APIGroupInfo staging/src/k8s.io/apiextensions-apiserver/pkg/registry/customresource/etcd.go (1 line): - line 72: panic(err) // TODO: Propagate error up pkg/scheduler/apis/config/validation/validation_pluginargs.go (1 line): - line 252: // TODO: Add validation for requiredDuringSchedulingRequiredDuringExecution when it gets added to the API. cmd/kubeadm/app/cmd/phases/init/waitcontrolplane.go (1 line): - line 75: // TODO: think of a better place to move this call - e.g. a hidden phase. pkg/apis/core/v1/defaults.go (1 line): - line 52: // TODO: support templates defined elsewhere when we support them in the API staging/src/k8s.io/api/autoscaling/v2beta1/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/pod-security-admission/admission/api/helpers.go (1 line): - line 28: // TODO: deduplicate against PolicyToEvaluate staging/src/k8s.io/apiserver/pkg/server/filters/priority-and-fairness.go (1 line): - line 276: // TODO: Consider finishing the request as soon as Handle call panics. pkg/controller/nodeipam/ipam/cidr_allocator.go (1 line): - line 54: // TODO: figure out the good setting for those constants. staging/src/k8s.io/api/rbac/v1alpha1/register.go (1 line): - line 36: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. pkg/controller/serviceaccount/config/v1alpha1/conversion.go (1 line): - line 29: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions staging/src/k8s.io/mount-utils/mount_helper_unix.go (1 line): - line 183: // TODO: clean this up to use pkg/util/file/FileExists staging/src/k8s.io/component-helpers/node/topology/helpers.go (1 line): - line 37: // TODO: "failure-domain.beta..." names are deprecated, but will staging/src/k8s.io/kubelet/pkg/cri/streaming/remotecommand/websocket.go (1 line): - line 105: // TODO: make generic to SPDY and WebSockets and do it outside of this method? staging/src/k8s.io/client-go/testing/fixture.go (1 line): - line 111: // TODO: Currently we're handling subresource creation as an update pkg/apis/core/helper/helpers.go (1 line): - line 97: // TODO: if we decide it's important, it should be safe to start comparing the format. staging/src/k8s.io/apiserver/pkg/endpoints/handlers/negotiation/negotiate.go (1 line): - line 51: // TODO: move into resthandler staging/src/k8s.io/api/autoscaling/v1/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. pkg/scheduler/framework/plugins/nodevolumelimits/non_csi.go (1 line): - line 50: // TODO We should determine the max based on VM size pkg/proxy/ipvs/util/ipvs_linux.go (1 line): - line 195: // TODO: aggregate errors? staging/src/k8s.io/legacy-cloud-providers/azure/azure_routes.go (1 line): - line 386: //TODO (khenidak) add support for unmanaged nodes when the feature reaches beta pkg/registry/apps/rest/storage_apps.go (1 line): - line 41: // TODO refactor the plumbing to provide the information in the APIGroupInfo staging/src/k8s.io/kubectl/pkg/cmd/explain/explain.go (1 line): - line 160: // TODO: After we figured out the new syntax to separate group and resource, allow staging/src/k8s.io/apimachinery/pkg/runtime/embedded.go (1 line): - line 130: // TODO: Set ContentEncoding and ContentType appropriately. pkg/kubelet/kuberuntime/labels.go (1 line): - line 33: // TODO: change those label names to follow kubernetes's format staging/src/k8s.io/apiserver/pkg/server/egressselector/egress_selector.go (1 line): - line 208: // TODO At the moment, it does not use the provided context. staging/src/k8s.io/legacy-cloud-providers/gce/gce_routes.go (1 line): - line 57: // TODO: Should we lastComponent(target) this? pkg/controller/replication/config/v1alpha1/conversion.go (1 line): - line 29: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions staging/src/k8s.io/apiserver/pkg/server/filters/cors.go (1 line): - line 27: // TODO: use restful.CrossOriginResourceSharing pkg/registry/batch/job/strategy.go (1 line): - line 271: // TODO: generalize generateSelector so it can work for other controller staging/src/k8s.io/kubectl/pkg/util/completion/completion.go (1 line): - line 273: // TODO:Should set --request-timeout=5s staging/src/k8s.io/controller-manager/options/generic.go (1 line): - line 118: // TODO: This can be removed when ResourceLock is not available pkg/controller/ttlafterfinished/config/v1alpha1/conversion.go (1 line): - line 29: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions pkg/controller/resourcequota/config/v1alpha1/conversion.go (1 line): - line 29: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions pkg/controller/validatingadmissionpolicystatus/config/v1alpha1/conversion.go (1 line): - line 28: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/matchconditions/matcher.go (1 line): - line 99: //TODO: add default so that if in future we add different failure types it doesn't fall through staging/src/k8s.io/apimachinery/pkg/version/types.go (1 line): - line 20: // TODO: Add []string of api versions supported? It's still unclear staging/src/k8s.io/apimachinery/pkg/apis/meta/v1/register.go (1 line): - line 39: // TODO: this should be v1 probably pkg/controller/util/node/controller_utils.go (1 line): - line 187: // TODO: This requires a transaction, either both node status is updated staging/src/k8s.io/api/networking/v1beta1/register.go (1 line): - line 38: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/api/apps/v1beta1/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. pkg/volume/iscsi/iscsi.go (1 line): - line 391: // TODO: extract from mount table in GetAttributes() to be sure? cmd/kube-controller-manager/app/options/deprecatedcontroller.go (1 line): - line 26: // TODO remove these fields once the deprecated flags are removed. staging/src/k8s.io/component-base/logs/datapol/datapol.go (1 line): - line 33: //TODO maybe export a metric cmd/kubeadm/app/cmd/phases/workflow/runner.go (1 line): - line 78: // TODO: If we ever decide to get more sophisticated we can swap this type with a well defined dag or tree library. pkg/controller/statefulset/stateful_pod_control.go (1 line): - line 361: // TODO: Check resource requirements and accessmodes, update if necessary pkg/kubeapiserver/default_storage_factory_builder.go (1 line): - line 71: // TODO (https://github.com/kubernetes/kubernetes/issues/108451): remove the override in 1.25. staging/src/k8s.io/api/apps/v1beta2/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/legacy-cloud-providers/gce/gce_networkendpointgroup.go (1 line): - line 63: // TODO: filter for the region the cluster is in. pkg/apis/resource/v1alpha2/register.go (1 line): - line 36: // TODO: remove these global variables staging/src/k8s.io/apiserver/pkg/server/storage/resource_config.go (1 line): - line 106: // TODO this must be removed and we enable/disable individual resources. cluster/images/etcd/migrate/migrate_server.go (1 line): - line 42: // TODO: Add support for listening to client via TLS. pkg/registry/networking/rest/storage_settings.go (1 line): - line 40: // TODO refactor the plumbing to provide the information in the APIGroupInfo staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/deepcopy.go (1 line): - line 19: // TODO: Update this after a tag is created for interface fields in DeepCopy pkg/proxy/service.go (1 line): - line 366: // TODO: If this will appear to be computationally expensive, consider staging/src/k8s.io/apimachinery/pkg/apis/meta/fuzzer/fuzzer.go (1 line): - line 61: // TODO: uncomment when round trip starts from a versioned object pkg/kubelet/kuberuntime/kuberuntime_gc.go (1 line): - line 358: // TODO: we should handle container not found (i.e. container was deleted) case differently staging/src/k8s.io/cli-runtime/pkg/printers/jsonpath.go (1 line): - line 33: // TODO: how to document this for users? pkg/kubelet/cm/cpumanager/cpu_manager.go (1 line): - line 514: // TODO: Consider adding a `ResourceConfigForContainer` helper in staging/src/k8s.io/sample-apiserver/pkg/cmd/server/start.go (1 line): - line 120: // TODO have a "real" external address cmd/kube-apiserver/app/testing/testserver.go (1 line): - line 295: // TODO: set up a general clean up for testserver staging/src/k8s.io/apiserver/pkg/registry/generic/storage_decorator.go (1 line): - line 55: // TODO: Once cacher is enabled on all registries (event registry is special), we will remove this method. pkg/kubelet/volumemanager/reconciler/reconstruct.go (1 line): - line 142: //TODO: the devicePath might not be correct for some volume plugins: see issue #54108 staging/src/k8s.io/client-go/testing/actions.go (1 line): - line 483: // TODO this is wrong, but no worse than before pkg/controlplane/reconcilers/endpointsadapter.go (1 line): - line 124: // TODO: Add support for dual stack here (and in the rest of staging/src/k8s.io/kubectl/pkg/util/prune/prune.go (1 line): - line 68: // TODO in kubectl v1.29, add back non-namespaced resource only if namespace is not specified pkg/volume/git_repo/git_repo.go (1 line): - line 172: SELinuxRelabel: true, // xattr change should be okay, TODO: double check staging/src/k8s.io/kube-aggregator/pkg/cmd/server/start.go (1 line): - line 123: // TODO have a "real" external address staging/src/k8s.io/kubectl/pkg/cmd/wait/wait.go (1 line): - line 367: // TODO this could do something slightly fancier if we wish staging/src/k8s.io/apimachinery/pkg/api/resource/amount.go (1 line): - line 83: // TODO: attempt to reduce factors, although it is assumed that factors are reduced prior staging/src/k8s.io/legacy-cloud-providers/azure/azure_standard.go (1 line): - line 612: // TODO (khenidak): This should read all nics, not just the primary staging/src/k8s.io/kubectl/pkg/cmd/attach/attach.go (1 line): - line 261: // TODO: convert this to a clean "wait" behavior pkg/registry/apps/daemonset/strategy.go (1 line): - line 108: // TODO: Any changes to a part of the object that represents desired state (labels, staging/src/k8s.io/api/imagepolicy/v1alpha1/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. pkg/controller/garbagecollector/config/v1alpha1/conversion.go (1 line): - line 29: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions staging/src/k8s.io/legacy-cloud-providers/gce/gce_healthchecks.go (1 line): - line 37: // TODO: use a shared constant once ports in pkg/cluster/ports are in a common external repo. pkg/controller/daemon/update.go (1 line): - line 543: // TODO: Is it okay to get from historyLister? staging/src/k8s.io/api/authorization/v1beta1/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/apiserver/pkg/server/storage/resource_encoding_config.go (1 line): - line 28: // TODO this should actually return a GroupVersionKind since you can logically have multiple "matching" Kinds cmd/kube-scheduler/app/server.go (1 line): - line 190: // TODO: handle stoppedCh and listenerStoppedCh returned by c.SecureServing.Serve pkg/volume/util/hostutil/fake_hostutil.go (1 line): - line 37: // TODO: no callers were initializing the struct with any MountPoints. Check staging/src/k8s.io/mount-utils/mount_helper_windows.go (1 line): - line 100: // TODO: clean this up to use pkg/util/file/FileExists staging/src/k8s.io/client-go/tools/auth/clientauth.go (1 line): - line 65: // TODO: need a way to rotate Tokens. Therefore, need a way for client object to be reset when the authcfg is updated. staging/src/k8s.io/code-generator/cmd/client-gen/generators/fake/generator_fake_for_clientset.go (1 line): - line 86: // TODO: We actually don't need any type information to generate the clientset, staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1/zz_generated.conversion.go (1 line): - line 717: // FIXME: Type apiextensions.JSON is unsupported. pkg/kubelet/cloudresource/cloud_request_manager.go (1 line): - line 96: // TODO: If IP addresses couldn't be fetched from the cloud provider, should pkg/apis/batch/validation/validation.go (1 line): - line 89: // TODO: generalize for other controller objects that will follow the same pattern, such as ReplicaSet and DaemonSet, and pkg/kubelet/envvars/envvars.go (1 line): - line 65: // TODO: If we simplify to "all names are DNS1123Subdomains" this staging/src/k8s.io/apimachinery/pkg/util/net/interface.go (1 line): - line 348: // TODO: Decide if should open up to allow IPv6 LLAs in future. plugin/pkg/admission/imagepolicy/admission.go (1 line): - line 261: // TODO: move this to a versioned configuration file format cmd/kubelet/app/server_others.go (1 line): - line 31: // TODO: Check if kubelet is running in the `initial` user namespace. plugin/pkg/auth/authenticator/token/bootstrap/bootstrap.go (1 line): - line 40: // TODO: A few methods in this package is copied from other sources. Either staging/src/k8s.io/client-go/tools/events/interfaces.go (1 line): - line 48: // TODO: figure out if this can be removed. pkg/registry/core/pod/rest/log.go (1 line): - line 50: // TODO - return a resource that represents a log pkg/controller/replicaset/replica_set_utils.go (1 line): - line 52: // TODO: This can clobber an update if we allow multiple agents to write to the pkg/registry/rbac/clusterrole/storage/storage.go (1 line): - line 45: // TODO: define table converter that exposes more than name/creation timestamp? pkg/registry/core/node/storage/storage.go (1 line): - line 138: // TODO: Remove the conversion. Consider only return the NodeAddresses staging/src/k8s.io/apiserver/pkg/storage/storagebackend/factory/etcd3.go (1 line): - line 446: // TODO: fix duplicated storage destroy calls higher level staging/src/k8s.io/apiserver/pkg/util/peerproxy/peerproxy_handler.go (1 line): - line 176: // TODO: maintain locally serviceable GVRs somewhere so that we dont have to staging/src/k8s.io/component-base/metrics/counter.go (1 line): - line 112: // TODO: make this true: var _ CounterVecMetric = &CounterVec{} staging/src/k8s.io/apiserver/pkg/apis/example/v1/register.go (1 line): - line 42: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/apiserver/pkg/storage/etcd3/compact.go (1 line): - line 45: // TODO: We might keep a longer history (12h) in the future once storage API can take advantage of past version of keys. staging/src/k8s.io/client-go/informers/generic.go (1 line): - line 97: // TODO extend this to unknown resources with a client pool staging/src/k8s.io/client-go/util/retry/util.go (1 line): - line 102: // TODO: Make Backoff an interface? staging/src/k8s.io/apiserver/pkg/endpoints/filters/impersonation.go (1 line): - line 253: // TODO fight the good fight for ObjectReference to refer to resources and subresources pkg/volume/vsphere_volume/vsphere_volume_util.go (1 line): - line 153: // TODO: implement PVC.Selector parsing pkg/controller/volume/attachdetach/config/v1alpha1/conversion.go (1 line): - line 29: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions pkg/registry/core/limitrange/storage/storage.go (1 line): - line 45: // TODO: define table converter that exposes more than name/creation timestamp pkg/volume/vsphere_volume/vsphere_volume.go (1 line): - line 228: // TODO: handle failed mounts here. staging/src/k8s.io/api/batch/v1/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/api/rbac/v1/register.go (1 line): - line 36: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/code-generator/cmd/applyconfiguration-gen/main.go (1 line): - line 34: customArgs.AddFlags(pflag.CommandLine, "k8s.io/kubernetes/pkg/apis") // TODO: move this input path out of applyconfiguration-gen pkg/volume/azure_file/azure_provision.go (1 line): - line 190: // TODO: implement c.options.ProvisionerSelector parsing staging/src/k8s.io/apiserver/pkg/cel/types.go (1 line): - line 486: // TODO: implement for OpenAPI types to enable CEL object instantiation, which is needed staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/validating/dispatcher.go (1 line): - line 241: // TODO: merge status errors; until then, just return the first one. staging/src/k8s.io/client-go/tools/watch/until.go (1 line): - line 55: // TODO: Consider making this function private to prevent misuse when the other occurrences in our codebase are gone. pkg/controller/volume/persistentvolume/pv_controller.go (1 line): - line 942: // TODO: if resync is ever changed to a larger period, we might need to change how we set the default class on existing unbound claims pkg/controller/controller_ref_manager.go (1 line): - line 257: // TODO: If the pod has owner references, but none of them staging/src/k8s.io/kubectl/pkg/polymorphichelpers/multiprotocolsforobject.go (1 line): - line 32: // TODO: replace with a swagger schema based approach (identify pod selector via schema introspection) staging/src/k8s.io/client-go/tools/record/event.go (1 line): - line 261: // TODO: make me an object with parameterizable queue length and retry interval staging/src/k8s.io/apimachinery/pkg/api/apitesting/codec.go (1 line): - line 58: // TODO: remove for etcd3 / make parameterizable cmd/kubeadm/app/cmd/options/token.go (1 line): - line 40: // TODO: In the future, we might want to group the flags in a better way than adding them all individually like this pkg/apis/extensions/register.go (1 line): - line 51: // TODO this gets cleaned up when the types are fixed pkg/kubelet/cm/dra/manager.go (1 line): - line 185: // TODO: We (re)add the claimInfo object to the cache and pkg/controller/nodelifecycle/config/v1alpha1/conversion.go (1 line): - line 29: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions staging/src/k8s.io/apiextensions-apiserver/pkg/controller/status/naming_controller.go (1 line): - line 55: // TODO to revisit this if naming conflicts are found to occur in the wild staging/src/k8s.io/apimachinery/pkg/runtime/serializer/versioning/versioning.go (1 line): - line 33: // TODO: I should be a scheme interface? staging/src/k8s.io/client-go/kubernetes/typed/events/v1beta1/event_expansion.go (1 line): - line 28: // TODO: Add querying functions to the event expansion staging/src/k8s.io/api/batch/v1beta1/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. pkg/kubelet/container/ref.go (1 line): - line 36: // TODO: figure out intelligent way to refer to containers that we implicitly cmd/kubeadm/app/cmd/config.go (1 line): - line 223: UnsafeSkipCAVerification: true, // TODO: UnsafeSkipCAVerification: true needs to be set for validation to pass, but shouldn't be recommended as the default plugin/pkg/admission/storage/persistentvolume/label/admission.go (1 line): - line 177: // TODO: remove this once all the cloud provider change to GA topology labels pkg/controller/resourcequota/resource_quota_controller.go (1 line): - line 426: // TODO: make this support targeted replenishment to a specific kind, right now it does a full recalc on that quota. staging/src/k8s.io/kubectl/pkg/polymorphichelpers/mapbasedselectorforobject.go (1 line): - line 35: // TODO: replace with a swagger schema based approach (identify pod selector via schema introspection) staging/src/k8s.io/apiserver/pkg/cel/openapi/extensions.go (1 line): - line 87: // TODO: simplify pkg/controller/endpointslicemirroring/config/v1alpha1/conversion.go (1 line): - line 29: // manner. TODO: Fix the bug in conversion-gen so it automatically discovers pkg/controller/daemon/util/daemonset_util.go (1 line): - line 118: // TODO: do we need to validate if the DaemonSet is RollingUpdate or not? pkg/registry/admissionregistration/rest/storage_apiserver.go (1 line): - line 46: // TODO refactor the plumbing to provide the information in the APIGroupInfo pkg/kubelet/cm/memorymanager/policy_static.go (1 line): - line 183: // TODO: we should refactor our state structs to reflect the amount of the re-used memory pkg/volume/cephfs/cephfs.go (1 line): - line 344: // TODO: cephfs fuse currently doesn't support secret option, staging/src/k8s.io/kube-scheduler/config/v1/types.go (1 line): - line 57: // TODO: We might wanna make this a substruct like Debugging componentbaseconfigv1alpha1.DebuggingConfiguration staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/predicates/namespace/matcher.go (1 line): - line 105: // TODO: figure out a way selective exempt cluster scoped resources. staging/src/k8s.io/client-go/tools/watch/retrywatcher.go (1 line): - line 68: // TODO: revisit this if we ever get WATCH v2 where it means start "now" pkg/kubelet/kubelet_node_status.go (1 line): - line 388: // TODO: We can't assume that the node has credentials to talk to the pkg/controller/statefulset/config/v1alpha1/conversion.go (1 line): - line 29: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions staging/src/k8s.io/kubectl/pkg/scale/scale.go (1 line): - line 40: // TODO: Make the implementation of this watch-based (#56075) once #31345 is fixed. staging/src/k8s.io/apimachinery/pkg/api/resource/scale_int.go (1 line): - line 82: // TODO: create loop up table if exp costs too much. staging/src/k8s.io/kubectl/pkg/cmd/clusterinfo/clusterinfo_dump.go (1 line): - line 209: // TODO: this is repetitive in the extreme. Use reflection or staging/src/k8s.io/apiserver/pkg/server/filters/with_retry_after.go (1 line): - line 64: // TODO: is there a way to merge WithWaitGroup and this filter? staging/src/k8s.io/api/admissionregistration/v1/register.go (1 line): - line 36: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. pkg/api/testing/conversion.go (1 line): - line 54: t.Logf("FIXME: \"name\" is deprecated by \"metadata.name\", it should be removed from selectable fields of kind=%s", kind) cmd/kubeadm/app/apis/kubeadm/v1beta3/doc.go (1 line): - line 284: //TODO: The BootstrapTokenString object should move out to either k8s.io/client-go or k8s.io/api in the future staging/src/k8s.io/cli-runtime/pkg/genericclioptions/record_flags.go (1 line): - line 88: // TODO have this only take a flagset cluster/addons/calico-policy-controller/bgppeers-crd.yaml (1 line): - line 67: TODO: Add other useful fields. apiVersion, kind, uid?' pkg/kubelet/kubelet_network.go (1 line): - line 31: // TODO: We should have a mechanism to say whether native cloud provider pkg/volume/util/subpath/subpath_linux.go (1 line): - line 38: // TODO: pass in directory using kubelet_getters instead staging/src/k8s.io/apimachinery/pkg/util/naming/from_stack.go (1 line): - line 81: // TODO: Go does not expose this via runtime https://github.com/golang/go/issues/11440 staging/src/k8s.io/controller-manager/config/v1alpha1/conversion.go (1 line): - line 28: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions staging/src/k8s.io/apimachinery/pkg/runtime/serializer/negotiated_codec.go (1 line): - line 23: // TODO: We should split negotiated serializers that we can change versions on from those we can change staging/src/k8s.io/apiserver/pkg/audit/scheme.go (1 line): - line 17: // TODO: Delete this file if we generate a clientset. plugin/pkg/admission/podnodeselector/admission.go (1 line): - line 51: // TODO move this to a versioned configuration file format. staging/src/k8s.io/dynamic-resource-allocation/kubeletplugin/noderegistrar.go (1 line): - line 40: supportedVersions: []string{"1.0.0"}, // TODO: is this correct? pkg/volume/rbd/rbd.go (1 line): - line 830: // persisted on the disk, DO NOT change them. (TODO: refactoring to use a dedicated struct?) staging/src/k8s.io/api/scheduling/v1beta1/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. pkg/apis/abac/latest/latest.go (1 line): - line 26: // TODO: this file is totally wrong, it should look like other latest files. pkg/controller/ttl/ttl_controller.go (1 line): - line 22: // TODO: This is a temporary workaround for the Kubelet not being able to pkg/registry/apps/statefulset/strategy.go (1 line): - line 221: // TODO: Validate status updates. staging/src/k8s.io/cloud-provider/fake/fake.go (1 line): - line 201: // TODO: replace DefaultLoadBalancerName to generate more meaningful loadbalancer names. staging/src/k8s.io/cloud-provider/options/options.go (1 line): - line 242: // TODO: find more elegant way than syncing back the values. pkg/kubelet/kuberuntime/kuberuntime_image.go (1 line): - line 148: // TODO: Get imagefs stats directly from CRI. staging/src/k8s.io/component-base/config/v1alpha1/conversion.go (1 line): - line 28: // TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions staging/src/k8s.io/csi-translation-lib/plugins/gce_pd.go (1 line): - line 380: // TODO: Replace this with the imported one from GCE PD CSI Driver when staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/deepcopy.go (1 line): - line 21: // TODO: Update this after a tag is created for interface fields in DeepCopy staging/src/k8s.io/api/storage/v1beta1/register.go (1 line): - line 37: // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. staging/src/k8s.io/kubectl/pkg/cmd/apply/apply.go (1 line): - line 77: PruneWhitelist []string // TODO: Remove this in kubectl 1.28 or later pkg/kubelet/cri/remote/remote_runtime.go (1 line): - line 179: // TODO: Make the pod sandbox timeout configurable.