Title: tools: replace deprecated ESLint globals value 'readable' with 'readonly' for EventSource · Issue #64757 · nodejs/node · GitHub
Open Graph Title: tools: replace deprecated ESLint globals value 'readable' with 'readonly' for EventSource · Issue #64757 · nodejs/node
X Title: tools: replace deprecated ESLint globals value 'readable' with 'readonly' for EventSource · Issue #64757 · nodejs/node
Description: Version main @ 4a5eb1c Platform N/A, this is lint tooling configuration only. Subsystem tools / lint (eslint.config.mjs) What steps will reproduce the bug? Not a runtime bug, a leftover deprecated value in the lint config. In eslint.conf...
Open Graph Description: Version main @ 4a5eb1c Platform N/A, this is lint tooling configuration only. Subsystem tools / lint (eslint.config.mjs) What steps will reproduce the bug? Not a runtime bug, a leftover deprecated ...
X Description: Version main @ 4a5eb1c Platform N/A, this is lint tooling configuration only. Subsystem tools / lint (eslint.config.mjs) What steps will reproduce the bug? Not a runtime bug, a leftover deprecated ...
Opengraph URL: https://github.com/nodejs/node/issues/64757
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"tools: replace deprecated ESLint globals value 'readable' with 'readonly' for EventSource","articleBody":"### Version\n\n`main` @ 4a5eb1cf73babe1ff38354570b65308d3ad23897\n\n### Platform\n\nN/A, this is lint tooling configuration only.\n\n### Subsystem\n\ntools / lint (`eslint.config.mjs`)\n\n### What steps will reproduce the bug?\n\nNot a runtime bug, a leftover deprecated value in the lint config.\n\nIn `eslint.config.mjs`, inside the general globals block, `EventSource` is declared with the legacy value `'readable'` while every other global in the same object uses `'readonly'`:\n\n```js\n// eslint.config.mjs:131\nEventSource: 'readable',\n```\n\nIt is the only remaining occurrence in the repository:\n\n```console\n$ git grep -nE \"'(readable|writeable)'\" -- '*eslint*.mjs' '*eslint*.js'\neslint.config.mjs:131: EventSource: 'readable',\n```\n\n### How often does it reproduce? Does it reproduce on all platforms?\n\nAlways, the value is static config.\n\n### What is the expected behavior? Why is that the expected behavior?\n\n`EventSource: 'readonly'`, matching the other 40+ entries in the same block.\n\nESLint keeps `'readable'` and `'writeable'` working only for historical reasons and documents them as deprecated in favour of `'readonly'` and `'writable'` (see [eslint/eslint#11359](https://github.com/eslint/eslint/issues/11359), which introduced the current spellings).\n\n### What do you see instead?\n\nThe deprecated spelling is still used. Behavior is unchanged today, since `'readable'` is treated as equivalent to `'readonly'`, so this is a consistency and future-proofing fix rather than a functional one.\n\n### Additional information\n\nOrigin of the inconsistency: the old `.eslintrc.js` used `'readable'` for all of these globals. The flat config migration in 7e6d92c485c (\"tools: update ESLint to v9 and use flat config\") converted them to `'readonly'` but missed this single entry:\n\n```console\n$ git show 7e6d92c485c:eslint.config.mjs | grep -E \"CustomEvent|EventSource|WebSocket\"\n CustomEvent: 'readonly',\n EventSource: 'readable',\n WebSocket: 'readonly',\n```\n\nFix is a one line change. Looks suitable for a first time contributor.\n\nI searched open and closed issues and PRs for this and found nothing existing.\n\nSuggested labels: `tools`, `good first issue`. I do not have triage permission on the repo, so I could not apply them myself.\n","author":{"url":"https://github.com/HoneyTyagii","@type":"Person","name":"HoneyTyagii"},"datePublished":"2026-07-26T14:54:25Z","url":"https://github.com/nodejs/node/issues/64757"}
| react-profiling | 0 |
| react-import-map | react,react-dom,react-dom/client,react-dom/profiling,react-is,react-reconciler,react/compiler-runtime,react/jsx-dev-runtime,react/jsx-runtime,scheduler@d5750093facf |
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:194c178a-9697-628d-75f3-bd19dbc5098c |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | A48A:D9695:41C59F:55701F:6AED21D0 |
| html-safe-nonce | f69094373cc53d4882501a543d671bbfaf2f89d1f7b0b6f24a46133910230cc5 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJBNDhBOkQ5Njk1OjQxQzU5Rjo1NTcwMUY6NkFFRDIxRDAiLCJ2aXNpdG9yX2lkIjoiNjAyNzY1NTQxNjgwMTczMTAyNCIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | 7a99cf7d75e8dd48f1770ad8f84b96272e08912a21248b37cd1bab4d5059b9fb |
| hovercard-subject-tag | issue:4981101365 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/nodejs/node/64757/issue_layout |
| twitter:image | https://opengraph.githubassets.com/b5cd2637a4bd80d5b9c7a2ae1524f9cc7f7339cd5d446e4b0579f9a17808f2af/nodejs/node/issues/64757 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/b5cd2637a4bd80d5b9c7a2ae1524f9cc7f7339cd5d446e4b0579f9a17808f2af/nodejs/node/issues/64757 |
| og:image:alt | Version main @ 4a5eb1c Platform N/A, this is lint tooling configuration only. Subsystem tools / lint (eslint.config.mjs) What steps will reproduce the bug? Not a runtime bug, a leftover deprecated ... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | HoneyTyagii |
| hostname | github.com |
| expected-hostname | github.com |
| None | e3e0f7f63e50c6fe879198a93a0a023a648ecc0a5e9bc3b5e033ac57172237e6 |
| turbo-cache-control | no-preview |
| go-import | github.com/nodejs/node git https://github.com/nodejs/node.git |
| octolytics-dimension-user_id | 9950313 |
| octolytics-dimension-user_login | nodejs |
| octolytics-dimension-repository_id | 27193779 |
| octolytics-dimension-repository_nwo | nodejs/node |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 27193779 |
| octolytics-dimension-repository_network_root_nwo | nodejs/node |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 707a24b346ac8a82878b9c084efaa38a997660cb |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
| react-app-name | issues |
Links:
Viewport: width=device-width