After updating to Exp v. 23, I got this error:
App.json:
package.json
React.PropTypes is no longer defined (this is a change in React). Run grep -r '\.PropTypes' .
to see where it might be accessed.
I followed your instructions, and thousands of lines of codes were spit back out. Here’s a small sample:
./node_modules/@expo/vector-icons/node_modules/prop-types/CHANGELOG.md:* **Critical Bugfix:** Fix an accidental breaking change that caused errors in production when used through `React.PropTypes`. ([@gaearon](https://github.com/gaearon) in [#20](https://github.com/reactjs/prop-types/pull/20))
./node_modules/@expo/vector-icons/node_modules/prop-types/factoryWithTypeCheckers.js: // Old behavior for people using React.PropTypes
./node_modules/@expo/vector-icons/node_modules/prop-types/factoryWithTypeCheckers.js: 'You are manually calling a React.PropTypes validation ' +
./node_modules/@expo/vector-icons/node_modules/prop-types/factoryWithTypeCheckers.js: ReactPropTypes.PropTypes = ReactPropTypes;
./node_modules/@expo/vector-icons/node_modules/prop-types/prop-types.js: ReactPropTypes.PropTypes = ReactPropTypes;
./node_modules/@expo/vector-icons/node_modules/prop-types/prop-types.js: // Old behavior for people using React.PropTypes
./node_modules/@expo/vector-icons/node_modules/prop-types/prop-types.js: 'You are manually calling a React.PropTypes validation ' +
./node_modules/eslint-plugin-react/lib/rules/no-unused-prop-types.js: // Verify React.PropTypes that are functions
./node_modules/eslint-plugin-react/lib/rules/prop-types.js: * @param {ASTNode} value Node of the React.PropTypes for the desired property
./node_modules/eslint-plugin-react/lib/rules/prop-types.js: // Verify React.PropTypes that are functions
./node_modules/eslint-plugin-react/lib/rules/require-default-props.js: // foo: React.PropTypes.string.isRequired,
./node_modules/eslint-plugin-react/lib/rules/require-default-props.js: // bar: React.PropTypes.string
./node_modules/eslint-plugin-react/lib/rules/require-default-props.js: // MyComponent.propTypes.baz = React.PropTypes.string;
./node_modules/eslint-plugin-react/lib/rules/require-default-props.js: // name: React.PropTypes.string
./node_modules/eslint-plugin-react/lib/rules/require-default-props.js: // foo: React.PropTypes.string,
./node_modules/eslint-plugin-react/lib/rules/require-default-props.js: // bar: React.PropTypes.string.isRequired
./node_modules/eslint-plugin-react/lib/rules/require-default-props.js: // foo: React.PropTypes.string.isRequired,
./node_modules/lottie-react-native/node_modules/prop-types/CHANGELOG.md:* **Critical Bugfix:** Fix an accidental breaking change that caused errors in production when used through `React.PropTypes`. ([@gaearon](https://github.com/gaearon) in [#20](https://github.com/reactjs/prop-types/pull/20))
./node_modules/lottie-react-native/node_modules/prop-types/checkPropTypes.js: invariant(typeof typeSpecs[typeSpecName] === 'function', '%s: %s type `%s` is invalid; it must be a function, usually from ' + 'React.PropTypes.', componentName || 'React class', location, typeSpecName);
./node_modules/lottie-react-native/node_modules/prop-types/factoryWithThrowingShims.js: ReactPropTypes.PropTypes = ReactPropTypes;
./node_modules/lottie-react-native/node_modules/prop-types/factoryWithTypeCheckers.js: // Old behavior for people using React.PropTypes
./node_modules/lottie-react-native/node_modules/prop-types/factoryWithTypeCheckers.js: 'You are manually calling a React.PropTypes validation ' +
./node_modules/lottie-react-native/node_modules/prop-types/factoryWithTypeCheckers.js: ReactPropTypes.PropTypes = ReactPropTypes;
./node_modules/mobx-react/CHANGELOG.md: name: React.PropTypes.string
./node_modules/mobx-react/custom.js:// Copied from React.PropTypes
./node_modules/mobx-react/custom.js:// Copied from React.PropTypes
./node_modules/mobx-react/custom.js:// Copied from React.PropTypes
./node_modules/mobx-react/custom.js:// Copied from React.PropTypes
./node_modules/mobx-react/custom.js:exports.PropTypes = propTypes;
./node_modules/native-base/node_modules/prop-types/factoryWithThrowingShims.js: ReactPropTypes.PropTypes = ReactPropTypes;
./node_modules/native-base/node_modules/prop-types/factoryWithTypeCheckers.js: // Old behavior for people using React.PropTypes
./node_modules/native-base/node_modules/prop-types/factoryWithTypeCheckers.js: 'You are manually calling a React.PropTypes validation ' +
./node_modules/native-base/node_modules/prop-types/factoryWithTypeCheckers.js: ReactPropTypes.PropTypes = ReactPropTypes;
./node_modules/native-base/node_modules/prop-types/prop-types.js:(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.PropTypes = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof
./node_modules/native-base-shoutem-theme/node_modules/prop-types/factoryWithThrowingShims.js: ReactPropTypes.PropTypes = ReactPropTypes;
./node_modules/native-base-shoutem-theme/node_modules/prop-types/factoryWithTypeCheckers.js: // Old behavior for people using React.PropTypes
./node_modules/native-base-shoutem-theme/node_modules/prop-types/factoryWithTypeCheckers.js: 'You are manually calling a React.PropTypes validation ' +
./node_modules/native-base-shoutem-theme/node_modules/prop-types/factoryWithTypeCheckers.js: ReactPropTypes.PropTypes = ReactPropTypes;
./node_modules/prop-types/factoryWithThrowingShims.js: ReactPropTypes.PropTypes = ReactPropTypes;
./node_modules/prop-types/factoryWithTypeCheckers.js: // Old behavior for people using React.PropTypes
./node_modules/prop-types/factoryWithTypeCheckers.js: 'You are manually calling a React.PropTypes validation ' +
./node_modules/prop-types/factoryWithTypeCheckers.js: ReactPropTypes.PropTypes = ReactPropTypes;
./node_modules/prop-types/prop-types.js: ReactPropTypes.PropTypes = ReactPropTypes;
./node_modules/prop-types/prop-types.js: // Old behavior for people using React.PropTypes
./node_modules/prop-types/prop-types.js: 'You are manually calling a React.PropTypes validation ' +
./node_modules/prop-types/prop-types.js: ReactPropTypes.PropTypes = ReactPropTypes;
./node_modules/react-devtools-core/build/standalone.js: browserName: React.PropTypes.string.isRequired,
./node_modules/react-devtools-core/build/standalone.js: defaultThemeName: React.PropTypes.string.isRequired,
./node_modules/react-devtools-core/build/standalone.js: showHiddenThemes: React.PropTypes.bool.isRequired,
./node_modules/react-devtools-core/build/standalone.js: showInspectButton: React.PropTypes.bool.isRequired,
./node_modules/react-devtools-core/build/standalone.js: store: React.PropTypes.object,
./node_modules/react-devtools-core/build/standalone.js: theme: React.PropTypes.object.isRequired,
./node_modules/react-devtools-core/build/standalone.js: themeName: React.PropTypes.string.isRequired,
./node_modules/react-devtools-core/build/standalone.js: themes: React.PropTypes.object.isRequired
And many, many more lines similar to this, then a bunch of garbled text.
How am I supposed to fix this many files?!!??
You should just grep through your source files, not including node_modules.