classtranscribe / FrontEnd

The React + Redux Frontend for ClassTranscribe
https://classtranscribe.illinois.edu
Other
25 stars 27 forks source link

Fix @babel/plugin-proposal-private-property-in-object errors #819

Open harsh183 opened 3 weeks ago

harsh183 commented 3 weeks ago

Looks like @babel/plugin-proposal-private-property-in-object is deprecated and to be replaced with @babel/plugin-transform-private-property-in-object.

Honestly I'm not sure how much we use it, so I'd be glad to not have this warning every time, but I haven't looked into it. Here's what warning we get when running a build:

Creating an optimized production build...
One of your dependencies, babel-preset-react-app, is importing the
"@babel/plugin-proposal-private-property-in-object" package without
declaring it in its dependencies. This is currently working because
"@babel/plugin-proposal-private-property-in-object" is already in your
node_modules folder for unrelated reasons, but it may break at any time.

babel-preset-react-app is part of the create-react-app project, which
is not maintianed anymore. It is thus unlikely that this bug will
ever be fixed. Add "@babel/plugin-proposal-private-property-in-object" to
your devDependencies to work around this error. This will make this message
go away.

Adding it in dev dependencies didn't make the warnings go away, maybe migrating over or removing this somehow might be the move.

Relevant links:

https://babeljs.io/docs/babel-plugin-transform-private-property-in-object

https://stackoverflow.com/questions/76435306/babel-preset-react-app-is-importing-the-babel-plugin-proposal-private-propert

harsh183 commented 3 weeks ago

Figured out what unrelated reasons probably is after running grep on node_modules

./@babel/preset-env/package.json: "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2",

When I run head

{
  "name": "@babel/preset-env",
  "version": "7.24.5",
  "description": "A Babel preset for each environment.",
  "author": "The Babel Team (https://babel.dev/team)",
  "homepage": "https://babel.dev/docs/en/next/babel-preset-env",
  "bugs": "https://github.com/babel/babel/issues?utf8=%E2%9C%93&q=is%3Aissue+label%3A%22pkg%3A%20preset-env%22+is%3Aopen",
  "license": "MIT",

Looks like the latest code on github still has this too, so it's a safe warning to ignore. React Scripts will maybe fix it one day (fix in Github https://github.com/facebook/create-react-app/commit/0f5e990b8a04f53861d64ff53751517bbf73d867), but doesn't look like they're going to release it any time soon.