Skip to content

Commit

Permalink
chore: add eslint-plugin-react-compiler to React package (#565)
Browse files Browse the repository at this point in the history
* chore: add eslint-plugin-react-compiler and enable for React package.

* disable compiler

* Change files

* update plugin

---------

Co-authored-by: Oleksandr Fediashov <[email protected]>
  • Loading branch information
spmonahan and layershifter authored Aug 8, 2024
1 parent bdb268b commit 4436d63
Show file tree
Hide file tree
Showing 5 changed files with 128 additions and 56 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"type": "patch",
"comment": "chore: add eslint-plugin-react-compiler and enable for React package.",
"packageName": "@griffel/react",
"email": "[email protected]",
"dependentChangeType": "patch"
}
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,7 @@
"eslint-plugin-jest": "^27.0.1",
"eslint-plugin-jsx-a11y": "6.6.1",
"eslint-plugin-react": "7.33.2",
"eslint-plugin-react-compiler": "0.0.0-experimental-9ed098e-20240725",
"eslint-plugin-react-hooks": "4.6.0",
"fela": "^12.2.0",
"fela-plugin-embedded": "^12.2.0",
Expand Down
4 changes: 4 additions & 0 deletions packages/react/.eslintrc.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
{
"extends": ["plugin:@nx/react", "../../.eslintrc.json"],
"plugins": ["react-compiler"],
"ignorePatterns": ["!**/*"],
"rules": {
"react-compiler/react-compiler": "error"
},
"overrides": [
{
"files": ["*.ts", "*.tsx", "*.js", "*.jsx"],
Expand Down
2 changes: 2 additions & 0 deletions packages/react/src/RendererContext.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,8 @@ const RendererContext = React.createContext<GriffelRenderer>(createDOMRenderer()
* @public
*/
export const RendererProvider: React.FC<RendererProviderProps> = ({ children, renderer, targetDocument }) => {
'use no memo';

if (canUseDOM()) {
// This if statement technically breaks the rules of hooks, but is safe because the condition never changes after
// mounting.
Expand Down
170 changes: 114 additions & 56 deletions yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -262,15 +262,15 @@ __metadata:
languageName: node
linkType: hard

"@babel/generator@npm:>=7, @babel/generator@npm:^7.23.0, @babel/generator@npm:^7.23.3, @babel/generator@npm:^7.23.5, @babel/generator@npm:^7.24.4, @babel/generator@npm:^7.24.7, @babel/generator@npm:^7.7.2":
version: 7.24.7
resolution: "@babel/generator@npm:7.24.7"
"@babel/generator@npm:>=7, @babel/generator@npm:^7.23.0, @babel/generator@npm:^7.23.3, @babel/generator@npm:^7.23.5, @babel/generator@npm:^7.24.4, @babel/generator@npm:^7.24.7, @babel/generator@npm:^7.25.0, @babel/generator@npm:^7.7.2":
version: 7.25.0
resolution: "@babel/generator@npm:7.25.0"
dependencies:
"@babel/types": "npm:^7.24.7"
"@babel/types": "npm:^7.25.0"
"@jridgewell/gen-mapping": "npm:^0.3.5"
"@jridgewell/trace-mapping": "npm:^0.3.25"
jsesc: "npm:^2.5.1"
checksum: 10/c71d24a4b41b19c10d2f2eb819f27d4cf94220e2322f7c8fed8bfbbb115b2bebbdd6dc1f27dac78a175e90604def58d763af87e0fa81ce4ab1582858162cf768
checksum: 10/de3ce2ae7aa0c9585260556ca5a81ce2ce6b8269e3260d7bb4e47a74661af715184ca6343e9906c22e4dd3eed5ce39977dfaf6cded4d2d8968fa096c7cf66697
languageName: node
linkType: hard

Expand Down Expand Up @@ -306,22 +306,20 @@ __metadata:
languageName: node
linkType: hard

"@babel/helper-create-class-features-plugin@npm:^7.23.6, @babel/helper-create-class-features-plugin@npm:^7.23.7, @babel/helper-create-class-features-plugin@npm:^7.24.7":
version: 7.24.7
resolution: "@babel/helper-create-class-features-plugin@npm:7.24.7"
"@babel/helper-create-class-features-plugin@npm:^7.18.6, @babel/helper-create-class-features-plugin@npm:^7.23.6, @babel/helper-create-class-features-plugin@npm:^7.23.7, @babel/helper-create-class-features-plugin@npm:^7.24.7":
version: 7.25.0
resolution: "@babel/helper-create-class-features-plugin@npm:7.25.0"
dependencies:
"@babel/helper-annotate-as-pure": "npm:^7.24.7"
"@babel/helper-environment-visitor": "npm:^7.24.7"
"@babel/helper-function-name": "npm:^7.24.7"
"@babel/helper-member-expression-to-functions": "npm:^7.24.7"
"@babel/helper-member-expression-to-functions": "npm:^7.24.8"
"@babel/helper-optimise-call-expression": "npm:^7.24.7"
"@babel/helper-replace-supers": "npm:^7.24.7"
"@babel/helper-replace-supers": "npm:^7.25.0"
"@babel/helper-skip-transparent-expression-wrappers": "npm:^7.24.7"
"@babel/helper-split-export-declaration": "npm:^7.24.7"
"@babel/traverse": "npm:^7.25.0"
semver: "npm:^6.3.1"
peerDependencies:
"@babel/core": ^7.0.0
checksum: 10/8ecb1c2acc808e1e0c21dccc7ea6899de9a140cb1856946800176b4784de6fccd575661fbff7744bb895d01aa6956ce963446b8577c4c2334293ba5579d5cdb9
checksum: 10/d0f6b63bd3f6da5204200ab7bb43ccc04fe75256aacf53e5dd60d5f56f5cb1bc7c8b315ecbbc4edca53aa71021ac9322376d7a4b2ee57166b8660488766d2784
languageName: node
linkType: hard

Expand Down Expand Up @@ -381,13 +379,13 @@ __metadata:
languageName: node
linkType: hard

"@babel/helper-member-expression-to-functions@npm:^7.24.7":
version: 7.24.7
resolution: "@babel/helper-member-expression-to-functions@npm:7.24.7"
"@babel/helper-member-expression-to-functions@npm:^7.24.8":
version: 7.24.8
resolution: "@babel/helper-member-expression-to-functions@npm:7.24.8"
dependencies:
"@babel/traverse": "npm:^7.24.7"
"@babel/types": "npm:^7.24.7"
checksum: 10/d990752aaff311aba0ca61539e1776c5ba2818836403f9bafac849deb4cd24c082cbde5f23e490b7f3614c95ff67f8d75fa5e2f14cb00586a72c96c158e1127b
"@babel/traverse": "npm:^7.24.8"
"@babel/types": "npm:^7.24.8"
checksum: 10/ac878761cfd0a46c081cda0da75cc186f922cf16e8ecdd0c4fb6dca4330d9fe4871b41a9976224cf9669c9e7fe0421b5c27349f2e99c125fa0be871b327fa770
languageName: node
linkType: hard

Expand Down Expand Up @@ -445,16 +443,16 @@ __metadata:
languageName: node
linkType: hard

"@babel/helper-replace-supers@npm:^7.24.7":
version: 7.24.7
resolution: "@babel/helper-replace-supers@npm:7.24.7"
"@babel/helper-replace-supers@npm:^7.24.7, @babel/helper-replace-supers@npm:^7.25.0":
version: 7.25.0
resolution: "@babel/helper-replace-supers@npm:7.25.0"
dependencies:
"@babel/helper-environment-visitor": "npm:^7.24.7"
"@babel/helper-member-expression-to-functions": "npm:^7.24.7"
"@babel/helper-member-expression-to-functions": "npm:^7.24.8"
"@babel/helper-optimise-call-expression": "npm:^7.24.7"
"@babel/traverse": "npm:^7.25.0"
peerDependencies:
"@babel/core": ^7.0.0
checksum: 10/18b7c3709819d008a14953e885748f3e197537f131d8f7ae095fec245506d854ff40b236edb1754afb6467f795aa90ae42a1d961a89557702249bacfc3fdad19
checksum: 10/97c6c17780cb9692132f7243f5a21fb6420104cb8ff8752dc03cfc9a1912a243994c0290c77ff096637ab6f2a7363b63811cfc68c2bad44e6b39460ac2f6a63f
languageName: node
linkType: hard

Expand Down Expand Up @@ -487,10 +485,10 @@ __metadata:
languageName: node
linkType: hard

"@babel/helper-string-parser@npm:^7.24.7":
version: 7.24.7
resolution: "@babel/helper-string-parser@npm:7.24.7"
checksum: 10/603d8d962bbe89907aa99a8f19a006759ab7b2464615f20a6a22e3e2e8375af37ddd0e5175c9e622e1c4b2d83607ffb41055a59d0ce34404502af30fde573a5c
"@babel/helper-string-parser@npm:^7.24.8":
version: 7.24.8
resolution: "@babel/helper-string-parser@npm:7.24.8"
checksum: 10/6d1bf8f27dd725ce02bdc6dffca3c95fb9ab8a06adc2edbd9c1c9d68500274230d1a609025833ed81981eff560045b6b38f7b4c6fb1ab19fc90e5004e3932535
languageName: node
linkType: hard

Expand Down Expand Up @@ -542,12 +540,14 @@ __metadata:
languageName: node
linkType: hard

"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.24.4, @babel/parser@npm:^7.24.7":
version: 7.24.7
resolution: "@babel/parser@npm:7.24.7"
"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.24.4, @babel/parser@npm:^7.24.7, @babel/parser@npm:^7.25.0, @babel/parser@npm:^7.25.3":
version: 7.25.3
resolution: "@babel/parser@npm:7.25.3"
dependencies:
"@babel/types": "npm:^7.25.2"
bin:
parser: ./bin/babel-parser.js
checksum: 10/ef9ebce60e13db560ccc7af9235d460f6726bb7e23ae2d675098c1fc43d5249067be60d4118889dad33b1d4f85162cf66baf554719e1669f29bb20e71322568e
checksum: 10/7bd57e89110bdc9cffe0ef2f2286f1cfb9bbb3aa1d9208c287e0bf6a1eb4cfe6ab33958876ebc59aafcbe3e2381c4449240fc7cc2ff32b79bc9db89cd52fc779
languageName: node
linkType: hard

Expand Down Expand Up @@ -624,6 +624,18 @@ __metadata:
languageName: node
linkType: hard

"@babel/plugin-proposal-private-methods@npm:^7.18.6":
version: 7.18.6
resolution: "@babel/plugin-proposal-private-methods@npm:7.18.6"
dependencies:
"@babel/helper-create-class-features-plugin": "npm:^7.18.6"
"@babel/helper-plugin-utils": "npm:^7.18.6"
peerDependencies:
"@babel/core": ^7.0.0-0
checksum: 10/22d8502ee96bca99ad2c8393e8493e2b8d4507576dd054490fd8201a36824373440106f5b098b6d821b026c7e72b0424ff4aeca69ed5f42e48f029d3a156d5ad
languageName: node
linkType: hard

"@babel/plugin-proposal-private-property-in-object@npm:7.21.0-placeholder-for-preset-env.2":
version: 7.21.0-placeholder-for-preset-env.2
resolution: "@babel/plugin-proposal-private-property-in-object@npm:7.21.0-placeholder-for-preset-env.2"
Expand Down Expand Up @@ -1721,43 +1733,40 @@ __metadata:
languageName: node
linkType: hard

"@babel/template@npm:>=7, @babel/template@npm:^7.22.15, @babel/template@npm:^7.24.7, @babel/template@npm:^7.3.3":
version: 7.24.7
resolution: "@babel/template@npm:7.24.7"
"@babel/template@npm:>=7, @babel/template@npm:^7.22.15, @babel/template@npm:^7.24.7, @babel/template@npm:^7.25.0, @babel/template@npm:^7.3.3":
version: 7.25.0
resolution: "@babel/template@npm:7.25.0"
dependencies:
"@babel/code-frame": "npm:^7.24.7"
"@babel/parser": "npm:^7.24.7"
"@babel/types": "npm:^7.24.7"
checksum: 10/5975d404ef51cf379515eb0f80b115981d0b9dff5539e53a47516644abb8c83d7559f5b083eb1d4977b20d8359ebb2f911ccd4f729143f8958fdc465f976d843
"@babel/parser": "npm:^7.25.0"
"@babel/types": "npm:^7.25.0"
checksum: 10/07ebecf6db8b28244b7397628e09c99e7a317b959b926d90455c7253c88df3677a5a32d1501d9749fe292a263ff51a4b6b5385bcabd5dadd3a48036f4d4949e0
languageName: node
linkType: hard

"@babel/traverse@npm:>=7, @babel/traverse@npm:^7.16.0, @babel/traverse@npm:^7.18.9, @babel/traverse@npm:^7.22.8, @babel/traverse@npm:^7.23.2, @babel/traverse@npm:^7.23.5, @babel/traverse@npm:^7.24.1, @babel/traverse@npm:^7.24.7, @babel/traverse@npm:^7.4.5":
version: 7.24.7
resolution: "@babel/traverse@npm:7.24.7"
"@babel/traverse@npm:>=7, @babel/traverse@npm:^7.16.0, @babel/traverse@npm:^7.18.9, @babel/traverse@npm:^7.22.8, @babel/traverse@npm:^7.23.2, @babel/traverse@npm:^7.23.5, @babel/traverse@npm:^7.24.1, @babel/traverse@npm:^7.24.7, @babel/traverse@npm:^7.24.8, @babel/traverse@npm:^7.25.0, @babel/traverse@npm:^7.4.5":
version: 7.25.3
resolution: "@babel/traverse@npm:7.25.3"
dependencies:
"@babel/code-frame": "npm:^7.24.7"
"@babel/generator": "npm:^7.24.7"
"@babel/helper-environment-visitor": "npm:^7.24.7"
"@babel/helper-function-name": "npm:^7.24.7"
"@babel/helper-hoist-variables": "npm:^7.24.7"
"@babel/helper-split-export-declaration": "npm:^7.24.7"
"@babel/parser": "npm:^7.24.7"
"@babel/types": "npm:^7.24.7"
"@babel/generator": "npm:^7.25.0"
"@babel/parser": "npm:^7.25.3"
"@babel/template": "npm:^7.25.0"
"@babel/types": "npm:^7.25.2"
debug: "npm:^4.3.1"
globals: "npm:^11.1.0"
checksum: 10/785cf26383a992740e492efba7016de964cd06c05c9d7146fa1b5ead409e054c444f50b36dc37856884a56e32cf9d3105ddf1543486b6df68300bffb117a245a
checksum: 10/fba34f323e17fa83372fc290bc12413a50e2f780a86c7d8b1875c594b6be2857867804de5d52ab10a78a9cae29e1b09ea15d85ad63671ce97d79c40650282bb9
languageName: node
linkType: hard

"@babel/types@npm:^7.0.0, @babel/types@npm:^7.18.9, @babel/types@npm:^7.20.7, @babel/types@npm:^7.21.3, @babel/types@npm:^7.22.15, @babel/types@npm:^7.23.5, @babel/types@npm:^7.24.0, @babel/types@npm:^7.24.7, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4, @babel/types@npm:^7.8.3":
version: 7.24.7
resolution: "@babel/types@npm:7.24.7"
"@babel/types@npm:^7.0.0, @babel/types@npm:^7.18.9, @babel/types@npm:^7.20.7, @babel/types@npm:^7.21.3, @babel/types@npm:^7.22.15, @babel/types@npm:^7.23.5, @babel/types@npm:^7.24.0, @babel/types@npm:^7.24.7, @babel/types@npm:^7.24.8, @babel/types@npm:^7.25.0, @babel/types@npm:^7.25.2, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4":
version: 7.25.2
resolution: "@babel/types@npm:7.25.2"
dependencies:
"@babel/helper-string-parser": "npm:^7.24.7"
"@babel/helper-string-parser": "npm:^7.24.8"
"@babel/helper-validator-identifier": "npm:^7.24.7"
to-fast-properties: "npm:^2.0.0"
checksum: 10/ad3c8c0d6fb4acb0bb74bb5b4bb849b181bf6185677ef9c59c18856c81e43628d0858253cf232f0eca806f02e08eff85a1d3e636a3e94daea737597796b0b430
checksum: 10/ccf5399db1dcd6dd87b84a6f7bc8dd241e04a326f4f038c973c26ccb69cd360c8f2276603f584c58fd94da95229313060b27baceb0d9b18a435742d3f616afd1
languageName: node
linkType: hard

Expand Down Expand Up @@ -12071,6 +12080,22 @@ __metadata:
languageName: node
linkType: hard

"eslint-plugin-react-compiler@npm:0.0.0-experimental-9ed098e-20240725":
version: 0.0.0-experimental-9ed098e-20240725
resolution: "eslint-plugin-react-compiler@npm:0.0.0-experimental-9ed098e-20240725"
dependencies:
"@babel/core": "npm:^7.24.4"
"@babel/parser": "npm:^7.24.4"
"@babel/plugin-proposal-private-methods": "npm:^7.18.6"
hermes-parser: "npm:^0.20.1"
zod: "npm:^3.22.4"
zod-validation-error: "npm:^3.0.3"
peerDependencies:
eslint: ">=7"
checksum: 10/cff861ee847a0bab167d40159a157ca6827b019e79e34eb3cb41677aa0de56e48c5c922138f11ab0f03b3056a52cbda468f3b08678f2c693aaf87f56a3ef43f8
languageName: node
linkType: hard

"eslint-plugin-react-hooks@npm:4.6.0":
version: 4.6.0
resolution: "eslint-plugin-react-hooks@npm:4.6.0"
Expand Down Expand Up @@ -13692,6 +13717,7 @@ __metadata:
eslint-plugin-jest: "npm:^27.0.1"
eslint-plugin-jsx-a11y: "npm:6.6.1"
eslint-plugin-react: "npm:7.33.2"
eslint-plugin-react-compiler: "npm:0.0.0-experimental-9ed098e-20240725"
eslint-plugin-react-hooks: "npm:4.6.0"
fela: "npm:^12.2.0"
fela-plugin-embedded: "npm:^12.2.0"
Expand Down Expand Up @@ -14067,6 +14093,22 @@ __metadata:
languageName: node
linkType: hard

"hermes-estree@npm:0.20.1":
version: 0.20.1
resolution: "hermes-estree@npm:0.20.1"
checksum: 10/b98fc2943bd9fdd904c094e995f79cb7d5958393e221006af81d88f3aed52ddbf15138a6606766d5e6be7ba166576be65f577d0c72ae5eb0f3f56d4720b32baa
languageName: node
linkType: hard

"hermes-parser@npm:^0.20.1":
version: 0.20.1
resolution: "hermes-parser@npm:0.20.1"
dependencies:
hermes-estree: "npm:0.20.1"
checksum: 10/b1ae9e9f6b49234fcf2bd45eafde140a3c727b8bcb845ab398016a538f040d326291d1f8b75fd91793b8817f2c600a890e251984d55bdedea74a5143d29f0c81
languageName: node
linkType: hard

"highlight.js@npm:11.4.0":
version: 11.4.0
resolution: "highlight.js@npm:11.4.0"
Expand Down Expand Up @@ -25609,6 +25651,22 @@ __metadata:
languageName: node
linkType: hard

"zod-validation-error@npm:^3.0.3":
version: 3.3.1
resolution: "zod-validation-error@npm:3.3.1"
peerDependencies:
zod: ^3.18.0
checksum: 10/4b168437e5683a81ab01aaf4b8ad30511d3145f16b4f42ad156ab7423410b77465b47bb4ba3f4e9780c7d9ccc718d7af2ddafd1e8491590a7f579724d753235e
languageName: node
linkType: hard

"zod@npm:^3.22.4":
version: 3.23.8
resolution: "zod@npm:3.23.8"
checksum: 10/846fd73e1af0def79c19d510ea9e4a795544a67d5b34b7e1c4d0425bf6bfd1c719446d94cdfa1721c1987d891321d61f779e8236fde517dc0e524aa851a6eff1
languageName: node
linkType: hard

"zwitch@npm:^1.0.0":
version: 1.0.5
resolution: "zwitch@npm:1.0.5"
Expand Down

0 comments on commit 4436d63

Please sign in to comment.