upgrade eslint-plugin-react-hooks from 2.3.0 to 4.0.4#68295
upgrade eslint-plugin-react-hooks from 2.3.0 to 4.0.4#68295oatkiller merged 4 commits intoelastic:masterfrom
Conversation
|
Pinging @elastic/apm-ui (Team:apm) |
|
Pinging @elastic/ingest-management (Team:Ingest Management) |
|
Makes sense to me! Tagging a few folks who had it turned off in their plugins. Anybody object or have a legit reason this shouldn't be turned on? |
| id={useMemo(() => htmlIdGenerator()(), [])} | ||
| key={useMemo(() => htmlIdGenerator()(), [])} | ||
| id={ | ||
| /* eslint-disable-next-line react-hooks/rules-of-hooks */ |
There was a problem hiding this comment.
what is the rule here? That all hooks be called from the root of the component and its value referenced here?
|
@stacey-gammon When the rules were originally added they revealed a number of violations in some of our plugins. We have issues for tracking and fixing these violations but haven't prioritized them yet. |
| /* eslint-disable-next-line react-hooks/exhaustive-deps */ | ||
| const formatYShort = useCallback(getFormatYShort(transactionType), [ | ||
| transactionType, | ||
| ]); |
There was a problem hiding this comment.
What's the violation here?
sorenlouv
left a comment
There was a problem hiding this comment.
just one clarifying question. APM changes lgtm
walterra
left a comment
There was a problem hiding this comment.
ML/Transform changes LGTM
weltenwort
left a comment
There was a problem hiding this comment.
infra plugin changes LGTM, thanks for updating! ❤️
|
@cjcenizal Would you be willing to approve this change? |
patrykkopycinski
left a comment
There was a problem hiding this comment.
Security LGTM. Thank you @oatkiller 💪
timroes
left a comment
There was a problem hiding this comment.
Looked at App code only. Excludes look fine for me.
💚 Build SucceededHistory
To update your PR or re-run it, just comment with: |
* updates `eslint-plugin-react-hooks` from `v2.3.0` to `v4.0.4`. * Disable rules on failing lines
Thanks for the flag, @stacey-gammon ... #68453 re-enables the rule for Canvas. |
|
It makes sense to me! |
* master: (57 commits) Add app arch team as owner of datemath package (elastic#66880) [Observability] Landing page for Observability (elastic#67467) [SIEM] Fix timeline buildGlobalQuery (elastic#68320) Optimize saved objects getScopedClient and HTTP API (elastic#68221) [Maps] Fix mb-style interpolate style rule (elastic#68413) update script to always download node (elastic#68421) [SECURITY SOLEIL] Fix selection of event type when no siem index signal created (elastic#68291) [DOCS] Adds note about configuring File Data Visualizer (elastic#68407) [DOCS] Adds link from remote clusters to index patterns (elastic#68406) [QA] slack notify on failure (elastic#68126) upgrade eslint-plugin-react-hooks from 2.3.0 to 4.0.4 (elastic#68295) moving to jira to a gold license (elastic#67178) [DOCS] Revises doc on adding data (elastic#68038) [APM] Add ThemeProvider to support dark mode (elastic#68242) Make welcome screen disabling first action in loginIfPrompted (elastic#68238) [QA] Code coverage: unskip tests, collect tests results, exclude bundles from report (elastic#64477) [ML] Functional tests - disable flaky regression and classification creation test [Alerting] change eventLog ILM requests to absolute URLs (elastic#68331) Report page load asset size (elastic#66224) [SIEM][CASE] Change SIEM to Security (elastic#68365) ...



Summary
This PR updates
eslint-plugin-react-hooksfromv2.3.0tov4.0.4. Any lint failures resulting from this are being ignored using comments.See
eslint-plugin-react-hooks's CHANGELOG.mdBackground
The rules of hooks are important to follow. These can be enforced using the
react-hookseslint plugin. Kibana uses this plugin, but the version is old. Many teams have disabled the rules in their code:The following plugins have 'exhaustive-deps' disabled:
es_ui_sharedkibana_reactkibana_utilscanvasindex_managementlensmlsnapshot_restoresecurity_solution(formerlysiem)kibana_reacthas disabledrules_of_hooksas well.Perhaps the latest version will address some of the issues that original drove teams to disable the rules. See the
eslint-plugin-react-hooksCHANGELOG.mdThe
security_solutionplugin would like to re-enable the rule only after upgrading to the latest major version.Related
eslint-plugin-react-hooks's CHANGELOG.mdChecklist
Delete any items that are not applicable to this PR.
For maintainers