Closed jamesscaggs closed 4 years ago
Hi @jamesscaggs, is this a plugin that you have deployed before on your Flex instance? Also we currently only support developing plugins against the React version 16.5.2 although we are working on supporting newer versions of React. Also did you also delete the package-lock.json before running npm install?
@jamesscaggs to add to @rnairtwilio's comment, we unfortunately currently only support React v16.5.2. It must be left pinned to that older version. This is on our radar to fix this issue and allow developers to use any version of React they wish.
@rnairtwilio Yes, this flex plugin is deployed an in production.
I deleted the package-lock.json before running npm install.
@ktalebian
The thing is my master branch package.json has the correct version of React but still throws the same error. I've been bypassing it the whole time by skipping the pre-flight check but I am hoping to get to the bottom of it.
See master branch package.json below
{
"name": "plugin-facebook-messages",
"version": "0.0.0",
"scripts": {
"bootstrap": "flex-plugin check-start",
"prebuild": "rm -rf build && npm run bootstrap",
"build": "flex-plugin build",
"clear": "flex-plugin clear",
"predeploy": "npm run build",
"deploy": "flex-plugin deploy",
"eject": "flex-plugin eject",
"info": "flex-plugin info",
"postinstall": "npm run bootstrap",
"list": "flex-plugin list",
"remove": "flex-plugin remove",
"prestart": "npm run bootstrap",
"start": "flex-plugin start",
"test": "flex-plugin test --env=jsdom"
},
"dependencies": {
"craco-config-flex-plugin": "^3.0.6",
"dotenv": "^8.2.0",
"flex-dev-utils": "^3.3.4",
"flex-plugin": "^3.0.0",
"flex-plugin-scripts": "^3.2.0",
"keytar": "^5.0.0",
"react": "16.5.2",
"react-dom": "16.5.2",
"react-scripts": "3.2.0"
},
"devDependencies": {
"@twilio/flex-ui": "^1",
"babel-polyfill": "^6.26.0",
"enzyme": "^3.10.0",
"enzyme-adapter-react-16": "^1.14.0"
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
}
}
Any other ideas?
The script checks the version by reading node_modules/react/package.json
. If it says you have v16.13.1 installed then that's the version inside your node_modules
. I would recommend deleting node_modules
and package-lock.json
and re-installing.
Also, verify the version manually by running grep version node_modules/react/package.json
and see what version is actually installed. Also, remove flex-dev-utils
- you don't/shouldn't install that package; it's a dependency of our scripts and they will install whatever version they require.
Another caveat: you may also want to upgrade craco-config-flex-plugin
, flex-plugin
, flex-plugin-scripts
, and react-scripts
to their latest versions.
@ktalebian @rnairtwilio
I got it resolved.
Uninstalled create-flex-plugin globally
Updated my scripts and dependencies to match the migrating from 2.x to 3.x doc,
Then: Deleted node_modules Deleted package-lock.json npm install
I'll go ahead and remove the dev-utils script for good measure.
Thanks!
Glad it all worked out. You can also update the create-flex-plugin
using npm install -g create-flex-plugin@latest
. You may have had an older version, but the newer versions do notify it whenever there is an update available for it.
Description
A clear and concise description of what the bug is.
Recently ran ncu -u in my existing flex plugin project and afterwards got this error:
I followed steps 1-4 above and ran npm install again and receive the same error.
Versions
create-flex-plugin
3.11.0
flex-plugin
^3.5.0
craco-config-flex-plugin
^3.10.1
node
12.14.0
npm
6.14.5
Steps to Reproduce
Please provide the steps to reproduce this bug:
ncu -u
to updateExpected Behavior
Expected to update flex plugin in my project and be able to start without skipping pre-check flight
Screenshots
If applicable, add screenshots to help explain your problem.
Additional Context
Add any other context about the problem here.
Full npm log
Package.json
_Note: react is not included since I deleted them per instructions in step 1-4. react_dom was outdated so I removed it with intentions to reinstall latest after updating flex.