kubernetes-sigs/headlamp
View on GitHubRule of hooks fixes needed (ubmrella issue)
Open
#5,183 opened on Apr 23, 2026
frontendgood first issuekind/bugquality
Repository metrics
- Stars
- (6,936 stars)
- PR merge metrics
- (PR metrics pending)
Description
Suppressed react-hooks lint violations — TODO to fix properly
Each item below is a self-contained description of a suppressed violation. Each could become a standalone sub-issue. They follow the <area>: <description> commit-message convention.
react-hooks/rules-of-hooks violations (58 suppressions across 21 files)
- https://github.com/kubernetes-sigs/headlamp/issues/5184
- https://github.com/kubernetes-sigs/headlamp/issues/5185
- https://github.com/kubernetes-sigs/headlamp/issues/5186
- https://github.com/kubernetes-sigs/headlamp/issues/5187
- https://github.com/kubernetes-sigs/headlamp/issues/5188
- https://github.com/kubernetes-sigs/headlamp/issues/5189
- https://github.com/kubernetes-sigs/headlamp/issues/5190
- https://github.com/kubernetes-sigs/headlamp/issues/5191
- https://github.com/kubernetes-sigs/headlamp/issues/5192
- https://github.com/kubernetes-sigs/headlamp/issues/5193
- https://github.com/kubernetes-sigs/headlamp/issues/5194
- https://github.com/kubernetes-sigs/headlamp/issues/5195
- https://github.com/kubernetes-sigs/headlamp/issues/5240
- https://github.com/kubernetes-sigs/headlamp/issues/5241
- https://github.com/kubernetes-sigs/headlamp/issues/5242
- https://github.com/kubernetes-sigs/headlamp/issues/5243
- https://github.com/kubernetes-sigs/headlamp/issues/5244
- https://github.com/kubernetes-sigs/headlamp/issues/5245
- https://github.com/kubernetes-sigs/headlamp/issues/5246
- https://github.com/kubernetes-sigs/headlamp/issues/5247
- https://github.com/kubernetes-sigs/headlamp/issues/5248
react-hooks/exhaustive-deps violations (145 suppressions across 73 files)
- frontend: App: Fix
react-hooks/exhaustive-deps— missing dependency inuseEffect. File:frontend/src/App.tsx - frontend: AppContainer.stories: Fix
react-hooks/exhaustive-deps— missing dependency in effect insidewithEnv. File:frontend/src/components/App/AppContainer.stories.tsx - frontend: Home: Fix
react-hooks/exhaustive-deps— 3 effects with missing dependencies. File:frontend/src/components/App/Home/index.tsx - frontend: Notifications: Fix
react-hooks/exhaustive-deps— missing dependency inuseEffect. File:frontend/src/components/App/Notifications/Notifications.tsx - frontend: PluginSettings: Fix
react-hooks/exhaustive-deps— missing dependency in effect. File:frontend/src/components/App/PluginSettings/PluginSettings.tsx - frontend: RouteSwitcher.stories: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/App/RouteSwitcher.stories.tsx - frontend: RouteSwitcher: Fix
react-hooks/exhaustive-deps— 3 effects with missing dependencies. File:frontend/src/components/App/RouteSwitcher.tsx - frontend: Settings/hook: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/App/Settings/hook.tsx - frontend: NodeShellSettings: Fix
react-hooks/exhaustive-deps— multiple effects with missing dependencies. File:frontend/src/components/App/Settings/NodeShellSettings.tsx - frontend: NumRowsInput: Fix
react-hooks/exhaustive-deps— 3 effects with missing dependencies. File:frontend/src/components/App/Settings/NumRowsInput.tsx - frontend: PodDebugSettings: Fix
react-hooks/exhaustive-deps— multiple effects with missing dependencies. File:frontend/src/components/App/Settings/PodDebugSettings.tsx - frontend: Settings: Fix
react-hooks/exhaustive-deps— 3 effects with missing dependencies. File:frontend/src/components/App/Settings/Settings.tsx - frontend: SettingsCluster: Fix
react-hooks/exhaustive-deps— 4 effects with missing dependencies. File:frontend/src/components/App/Settings/SettingsCluster.tsx - frontend: TopBar: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/App/TopBar.tsx - frontend: Chooser: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/cluster/Chooser.tsx - frontend: ClusterChooserPopup: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/cluster/ClusterChooserPopup.tsx - frontend: KubeConfigLoader: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/cluster/KubeConfigLoader.tsx - frontend: ActionsNotifier: Fix
react-hooks/exhaustive-deps— 2 effects with missing dependencies. File:frontend/src/components/common/ActionsNotifier.tsx - frontend: Dialog: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/common/Dialog.tsx - frontend: Label: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/common/Label.tsx - frontend: LogViewer: Fix
react-hooks/exhaustive-deps— multiple effects with missing dependencies. File:frontend/src/components/common/LogViewer.tsx - frontend: NamespacesAutocomplete: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/common/NamespacesAutocomplete.tsx - frontend: ObjectEventList: Fix
react-hooks/exhaustive-deps— effects with missing dependencies. File:frontend/src/components/common/ObjectEventList.tsx - frontend: ReleaseNotes: Fix
react-hooks/exhaustive-deps— 2 effects with missing dependencies. File:frontend/src/components/common/ReleaseNotes/ReleaseNotes.tsx - frontend: AuthVisible: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/common/Resource/AuthVisible.tsx - frontend: CreateButton: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/common/Resource/CreateButton.tsx - frontend: DeleteMultipleButton: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/common/Resource/DeleteMultipleButton.tsx - frontend: EditButton: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/common/Resource/EditButton.tsx - frontend: EditorDialog: Fix
react-hooks/exhaustive-deps— 2 effects with missing dependencies. File:frontend/src/components/common/Resource/EditorDialog.tsx - frontend: LogsButton: Fix
react-hooks/exhaustive-deps— 2 effects with missing dependencies. File:frontend/src/components/common/Resource/LogsButton.tsx - frontend: Resource: Fix
react-hooks/exhaustive-deps— multiple effects/memos with missing dependencies. File:frontend/src/components/common/Resource/Resource.tsx - frontend: ResourceTable: Fix
react-hooks/exhaustive-deps— 4 effects with missing dependencies. File:frontend/src/components/common/Resource/ResourceTable.tsx - frontend: RevisionHistorySection: Fix
react-hooks/exhaustive-deps— effects with missing dependencies. File:frontend/src/components/common/Resource/RevisionHistorySection.tsx - frontend: ViewButton: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/common/Resource/ViewButton.tsx - frontend: SectionFilterHeader: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/common/SectionFilterHeader.tsx - frontend: ShowHideLabel: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/common/ShowHideLabel/ShowHideLabel.tsx - frontend: SimpleTable: Fix
react-hooks/exhaustive-deps— 3 effects with missing dependencies. File:frontend/src/components/common/SimpleTable.tsx - frontend: Table: Fix
react-hooks/exhaustive-deps— multiple effects with missing dependencies. File:frontend/src/components/common/Table/Table.tsx - frontend: Terminal.stories: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/common/Terminal.stories.tsx - frontend: Terminal: Fix
react-hooks/exhaustive-deps— 3 effects with missing dependencies. File:frontend/src/components/common/Terminal.tsx - frontend: TimezoneSelect: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/common/TimezoneSelect/TimezoneSelect.tsx - frontend: configmap/Details: Fix
react-hooks/exhaustive-deps— missing dependency insection(). File:frontend/src/components/configmap/Details.tsx - frontend: CustomResourceInstancesList: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/crd/CustomResourceInstancesList.tsx - frontend: CustomResourceList: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/crd/CustomResourceList.tsx - frontend: DetailsViewSection.stories: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/DetailsViewSection/DetailsViewSection.stories.tsx - frontend: DetailsViewSection: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/DetailsViewSection/DetailsViewSection.tsx - frontend: GlobalSearchContent: Fix
react-hooks/exhaustive-deps— 7 effects/memos with missing dependencies. File:frontend/src/components/globalSearch/GlobalSearchContent.tsx - frontend: useLocalStorageState: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/globalSearch/useLocalStorageState.tsx - frontend: useRecent: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/globalSearch/useRecent.tsx - frontend: CreateNamespaceButton: Fix
react-hooks/exhaustive-deps— effects with missing dependencies. File:frontend/src/components/namespace/CreateNamespaceButton.tsx - frontend: namespace/List: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/namespace/List.tsx - frontend: NodeShellTerminal: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/node/NodeShellTerminal.tsx - frontend: pod/Details: Fix
react-hooks/exhaustive-deps— effects with missing dependencies. File:frontend/src/components/pod/Details.tsx - frontend: pod/List: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/pod/List.tsx - frontend: PodDebugTerminal: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/pod/PodDebugTerminal.tsx - frontend: portforward/index: Fix
react-hooks/exhaustive-deps— 2 effects with missing dependencies. File:frontend/src/components/portforward/index.tsx - frontend: ProjectDetails: Fix
react-hooks/exhaustive-deps— effects with missing dependencies. File:frontend/src/components/project/ProjectDetails.tsx - frontend: ProjectList: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/project/ProjectList.tsx - frontend: ProjectResourcesTab: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/project/ProjectResourcesTab.tsx - frontend: GraphView: Fix
react-hooks/exhaustive-deps— 3 effects with missing dependencies. File:frontend/src/components/resourceMap/GraphView.tsx - frontend: KubeObjectGlance: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/resourceMap/KubeObjectGlance/KubeObjectGlance.tsx - frontend: KubeNodeDetails: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/resourceMap/details/KubeNodeDetails.tsx - frontend: GraphSources: Fix
react-hooks/exhaustive-deps— effects with missing dependencies. File:frontend/src/components/resourceMap/sources/GraphSources.tsx - frontend: relations: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/resourceMap/sources/definitions/relations.tsx - frontend: useGraphViewport: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/resourceMap/useGraphViewport.ts - frontend: useQueryParamsState: Fix
react-hooks/exhaustive-deps— 2 effects with missing dependencies. File:frontend/src/components/resourceMap/useQueryParamsState.tsx - frontend: secret/Details: Fix
react-hooks/exhaustive-deps— missing dependency insection(). File:frontend/src/components/secret/Details.tsx - frontend: NavigationTabs: Fix
react-hooks/exhaustive-deps— effects with missing dependencies. File:frontend/src/components/Sidebar/NavigationTabs.tsx - frontend: Sidebar: Fix
react-hooks/exhaustive-deps— effects with missing dependencies. File:frontend/src/components/Sidebar/Sidebar.tsx - frontend: useSidebarItems: Fix
react-hooks/exhaustive-deps— 4 effects with missing dependencies. File:frontend/src/components/Sidebar/useSidebarItems.tsx - frontend: AdvancedSearch: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/advancedSearch/AdvancedSearch.tsx - frontend: ApiResourcePicker: Fix
react-hooks/exhaustive-deps— 2 effects with missing dependencies. File:frontend/src/components/advancedSearch/ApiResourcePicker.tsx - frontend: useKubeLists: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/advancedSearch/utils/useKubeLists.tsx - frontend: LocaleSelect: Fix
react-hooks/exhaustive-deps— effects with missing dependencies. File:frontend/src/i18n/LocaleSelect/LocaleSelect.tsx - frontend: electronI18n: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/i18n/electronI18n.tsx - frontend: ThemeProviderNexti18n: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/i18n/ThemeProviderNexti18n.tsx - frontend: OauthPopup: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/components/oidcauth/OauthPopup.tsx - frontend: api/v2/hooks: Fix
react-hooks/exhaustive-deps— 2 effects with missing dependencies. File:frontend/src/lib/k8s/api/v2/hooks.ts - frontend: useKubeObjectList: Fix
react-hooks/exhaustive-deps— 3 effects with missing dependencies. File:frontend/src/lib/k8s/api/v2/useKubeObjectList.ts - frontend: event: Fix
react-hooks/exhaustive-deps— effects with missing dependencies in class static methods. File:frontend/src/lib/k8s/event.ts - frontend: k8s/index: Fix
react-hooks/exhaustive-deps— effects with missing dependencies. File:frontend/src/lib/k8s/index.ts - frontend: KubeObject: Fix
react-hooks/exhaustive-deps— effect with missing dependency. File:frontend/src/lib/k8s/KubeObject.ts - frontend: useTerminalStream: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/lib/k8s/useTerminalStream.ts - frontend: router: Fix
react-hooks/exhaustive-deps— missing dependency in nested component. File:frontend/src/lib/router/index.tsx - frontend: themes: Fix
react-hooks/exhaustive-deps— missing dependency. File:frontend/src/lib/themes.ts - frontend: util: Fix
react-hooks/exhaustive-deps— effects/memos with missing dependencies. File:frontend/src/lib/util.ts - frontend: Plugins: Fix
react-hooks/exhaustive-deps— effect with missing dependencies. File:frontend/src/plugin/Plugins.tsx
react-hooks/set-state-in-effect violations (17 suppressions across 12 files)
- frontend: Activity: Fix
react-hooks/set-state-in-effect— state setter called inside an effect without proper cleanup. File:frontend/src/components/activity/Activity.tsx - frontend: useTypeDefinition: Fix
react-hooks/set-state-in-effect— state setter called inside an effect. File:frontend/src/components/advancedSearch/utils/useTypeDefinition.tsx - frontend: PluginSettings: Fix
react-hooks/set-state-in-effect— state setter in effect. File:frontend/src/components/App/PluginSettings/PluginSettings.tsx - frontend: PluginSettingsDetails: Fix
react-hooks/set-state-in-effect— state setter in effect. File:frontend/src/components/App/PluginSettings/PluginSettingsDetails.tsx - frontend: Settings/hook: Fix
react-hooks/set-state-in-effect— state setter in effect. File:frontend/src/components/App/Settings/hook.tsx - frontend: NodeShellSettings: Fix
react-hooks/set-state-in-effect— state setter in effect. File:frontend/src/components/App/Settings/NodeShellSettings.tsx - frontend: PodDebugSettings: Fix
react-hooks/set-state-in-effect— state setter in effect. File:frontend/src/components/App/Settings/PodDebugSettings.tsx - frontend: ShortcutsSettings: Fix
react-hooks/set-state-in-effect— state setter in effect. File:frontend/src/components/App/Settings/ShortcutsSettings.tsx - frontend: ObjectEventList: Fix
react-hooks/set-state-in-effect— state setter in effect. File:frontend/src/components/common/ObjectEventList.tsx - frontend: RevisionHistorySection: Fix
react-hooks/set-state-in-effect— state setter in effect. File:frontend/src/components/common/Resource/RevisionHistorySection.tsx - frontend: RollbackDialog: Fix
react-hooks/set-state-in-effect— state setter in effect. File:frontend/src/components/common/Resource/RollbackDialog.tsx - frontend: Table: Fix
react-hooks/set-state-in-effect— state setter in effect. File:frontend/src/components/common/Table/Table.tsx - frontend: CreateNamespaceButton: Fix
react-hooks/set-state-in-effect— state setter in effect. File:frontend/src/components/namespace/CreateNamespaceButton.tsx - frontend: ProjectDetails: Fix
react-hooks/set-state-in-effect— state setter in effect. File:frontend/src/components/project/ProjectDetails.tsx - frontend: KubeObjectNode: Fix
react-hooks/set-state-in-effect— state setter in effect. File:frontend/src/components/resourceMap/nodes/KubeObjectNode.tsx
react-hooks/static-components violations (12 suppressions across 4 files)
- frontend: AppContainer: Fix
react-hooks/static-components— component created during render. Move component definition outside the render function or memoize. File:frontend/src/components/App/AppContainer.tsx - frontend: ClusterNameEditor: Fix
react-hooks/static-components— component created during render. File:frontend/src/components/App/Settings/ClusterNameEditor.tsx - frontend: Dialog: Fix
react-hooks/static-components— component created during render. File:frontend/src/components/common/Dialog.tsx - frontend: Resource: Fix
react-hooks/static-components— 7 instances ofLivenessProbeItemand other components created during render. Move definitions outside the render function. File:frontend/src/components/common/Resource/Resource.tsx - frontend: Chooser: Fix
react-hooks/static-components— component created during render. File:frontend/src/components/cluster/Chooser.tsx
react-hooks/use-memo violations (9 suppressions across 6 files)
- frontend: ClusterChooserPopup: Fix
react-hooks/use-memo— expensive computation should be wrapped inuseMemo. File:frontend/src/components/cluster/ClusterChooserPopup.tsx - frontend: EditButton: Fix
react-hooks/use-memo— computation should be memoized. File:frontend/src/components/common/Resource/EditButton.tsx - frontend: ScaleButton: Fix
react-hooks/use-memo— computation should be memoized. File:frontend/src/components/common/Resource/ScaleButton.tsx - frontend: Table: Fix
react-hooks/use-memo— computation should be memoized. File:frontend/src/components/common/Table/Table.tsx - frontend: GlobalSearchContent: Fix
react-hooks/use-memo— multiple computations should be memoized. File:frontend/src/components/globalSearch/GlobalSearchContent.tsx - frontend: GraphSources: Fix
react-hooks/use-memo— computation should be memoized. File:frontend/src/components/resourceMap/sources/GraphSources.tsx - frontend: k8s/index: Fix
react-hooks/use-memo— computation should be memoized. File:frontend/src/lib/k8s/index.ts - frontend: useKubeObjectList: Fix
react-hooks/use-memo— computation should be memoized. File:frontend/src/lib/k8s/api/v2/useKubeObjectList.ts
react-hooks/immutability violations (6 suppressions across 4 files)
- frontend: Link: Fix
react-hooks/immutability— ref or state value mutated directly instead of using setter. File:frontend/src/components/common/Link.tsx - frontend: LogViewer: Fix
react-hooks/immutability— ref or state value mutated directly. File:frontend/src/components/common/LogViewer.tsx - frontend: EditorDialog: Fix
react-hooks/immutability— ref or state value mutated directly. File:frontend/src/components/common/Resource/EditorDialog.tsx - frontend: Resource: Fix
react-hooks/immutability— ref or state value mutated directly. File:frontend/src/components/common/Resource/Resource.tsx - frontend: Terminal.stories: Fix
react-hooks/immutability— ref or state value mutated directly. File:frontend/src/components/common/Terminal.stories.tsx - frontend: LocaleSelect: Fix
react-hooks/immutability— ref or state value mutated directly. File:frontend/src/i18n/LocaleSelect/LocaleSelect.tsx
react-hooks/purity violations (2 suppressions across 2 files)
- frontend: ResourceTable: Fix
react-hooks/purity— impure function call during render. File:frontend/src/components/common/Resource/ResourceTable.tsx - frontend: util: Fix
react-hooks/purity—Math.random()called during render inuseId. File:frontend/src/lib/util.ts
react-hooks/refs violations (4 suppressions across 1 file)
- frontend: Chart: Fix
react-hooks/refs— ref access pattern issue. File:frontend/src/components/common/Chart.tsx