Invariant Violation: ViewPropTypes has been removed from React Native.

Description
Recently updated react to 18 version, and since that I'm not able to build my app. At first I've received "TypeError: dispatcher.useSyncExternalStore is not a function." and fixed by updating react-native to "0.69.0-rc.0" version. But now having these errors:
`ERROR  Invariant Violation: ViewPropTypes has been removed from React Native. Migrate to ViewPropTypes exported from 'deprecated-react-native-prop-types'.

ERROR  Invariant Violation: Module AppRegistry is not a registered callable module (calling runApplication). A frequent cause of the error is that the application entry file path is incorrect.
      This can also happen when the JS bundle is corrupt or there is an early initialization error when loading React Native.

ERROR  Invariant Violation: Module AppRegistry is not a registered callable module (calling runApplication). A frequent cause of the error is that the application entry file path is incorrect.
      This can also happen when the JS bundle is corrupt or there is an early initialization error when loading React Native.

Version
0.69.0-rc.0
Output of npx react-native info
OS: Linux 5.13 Ubuntu 20.04.4 LTS (Focal Fossa)
CPU: (4) x64 Intel(R) Core(TM) i5-6500 CPU @ 3.20GHz
Memory: 1.75 GB / 15.50 GB
Shell: 5.0.17 - /bin/bash
Binaries:
Node: 12.14.1 - ~/.nvm/versions/node/v12.14.1/bin/node
Yarn: Not Found
npm: 8.7.0 - ~/.nvm/versions/node/v12.14.1/bin/npm
Watchman: Not Found
SDKs:
Android SDK: Not Found
IDEs:
Android Studio: Not Found
Languages:
Java: 11.0.15 - /usr/bin/javac
npmPackages:
@react-native-community/cli: Not Found
react: 18.1.0 => 18.1.0
react-native: ^0.69.0-rc.0 => 0.69.0-rc.0
npmGlobalPackages:
react-native: Not Found
Steps to reproduce
react-native run-android
Snack, code example, screenshot, or link to a repository
No response

Thanks for reporting this. It's tracked here also: https://github.com/reactwg/react-native-releases/discussions/21#discussioncomment-2680240

I think maybe the error is new in 10199b158138b8645550b5579df87e654213fe42 ?

Hi @BobDev1, is this issue still happening or can we consider the issue closed?

same issue

Same here after bumping up to "0.69.0"
System:
    OS: macOS 12.1
    CPU: (10) x64 Apple M1 Max
    Memory: 636.61 MB / 64.00 GB
    Shell: 5.8 - /bin/zsh
  Binaries:
    Node: 16.14.2 - /usr/local/bin/node
    Yarn: 3.1.0 - ~/Projects/toss-vietnam-app/node_modules/.bin/yarn
    npm: 8.5.0 - /usr/local/bin/npm
    Watchman: Not Found
  Managers:
    CocoaPods: 1.11.3 - /usr/local/bin/pod
  SDKs:
    iOS SDK:
      Platforms: DriverKit 21.4, iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5
    Android SDK: Not Found
  IDEs:
    Android Studio: 2021.1 AI-211.7628.21.2111.8139111
    Xcode: 13.3/13E113 - /usr/bin/xcodebuild
  Languages:
    Java: 11.0.11 - /usr/bin/javac
  npmPackages:
    @react-native-community/cli: Not Found
    react: Not Found
    react-native: Not Found
    react-native-macos: Not Found
  npmGlobalPackages:
    *react-native*: Not Found

Same issue here after upgrading to 0.69, there are a lot of external libraries still using ViewPropTypes. Perhaps an unpopular opinion, but maybe it's too early to deprecate ViewPropTypes completely?

Hi,
this issue can be solved using babel-plugin-module-resolver
you can alias react-native module, with example like bellow

import * as StandardModule from 'react-native';

// And let's stub out everything that's missing!

delete StandardModule['ViewPropTypes'];

delete StandardModule['ColorPropType'];

delete StandardModule['EdgeInsetsPropType'];

delete StandardModule['PointPropType'];

module.exports = {

    ...StandardModule,

    get ViewPropTypes(){

        return require('deprecated-react-native-prop-types/DeprecatedViewPropTypes');

    },

    get ColorPropType(){

        return require('deprecated-react-native-prop-types/DeprecatedColorPropType');

    },

    get EdgeInsetsPropType(){

        return require('deprecated-react-native-prop-types/DeprecatedEdgeInsetsPropType')

    },

    get PointPropType(){

        return require('deprecated-react-native-prop-types/DeprecatedPointPropType');

    }

}

saved the code to javascript file to use in babel config, and you need to set up a proper resolver for allowlist/blocklist certain library that can result in a conflicting file.
for the example see bellow,

 ["module-resolver", {

      "root": ["."],

      resolvePath(sourcePath, currentFile, opts) {

        if(sourcePath === 'react-native' && currentFile.includes('node_modules') && currentFile.includes("react-native-gesture-handler") === false  && currentFile.includes("node_modules\\react-native\\") === false){

          return  path.resolve(__dirname, 'resolver/react-native');

        }

        /**

         * The `opts` argument is the options object that is passed through the Babel config.

         * opts = {

         *   extensions: [".js"],

         *   resolvePath: ...,

         * }

         */

        return undefined;

      }

    }]

Still an issue in 0.69.1. see my comments #33557

Hi,
this issue can be solved using babel-plugin-module-resolver
you can alias react-native module, with example like bellow

import * as StandardModule from 'react-native';

// And let's stub out everything that's missing!

delete StandardModule['ViewPropTypes'];

delete StandardModule['ColorPropType'];

delete StandardModule['EdgeInsetsPropType'];

delete StandardModule['PointPropType'];

module.exports = {

    ...StandardModule,

    get ViewPropTypes(){

        return require('deprecated-react-native-prop-types/DeprecatedViewPropTypes');

    },

    get ColorPropType(){

        return require('deprecated-react-native-prop-types/DeprecatedColorPropType');

    },

    get EdgeInsetsPropType(){

        return require('deprecated-react-native-prop-types/DeprecatedEdgeInsetsPropType')

    },

    get PointPropType(){

        return require('deprecated-react-native-prop-types/DeprecatedPointPropType');

    }

}

saved the code to javascript file to use in babel config, and you need to set up a proper resolver for allowlist/blocklist certain library that can result in a conflicting file. for the example see bellow,

 ["module-resolver", {

      "root": ["."],

      resolvePath(sourcePath, currentFile, opts) {

        if(sourcePath === 'react-native' && currentFile.includes('node_modules') && currentFile.includes("react-native-gesture-handler") === false  && currentFile.includes("node_modules\\react-native\\") === false){

          return  path.resolve(__dirname, 'resolver/react-native');

        }

        /**

         * The `opts` argument is the options object that is passed through the Babel config.

         * opts = {

         *   extensions: [".js"],

         *   resolvePath: ...,

         * }

         */

        return undefined;

      }

    }]

I'm interested in this solution but I'm not very familiar with how to use the module resolver. Could you please provide a sample complete solution with filename/locations? Would be very helpful! Thank you..

Hi,
this issue can be solved using babel-plugin-module-resolver
you can alias react-native module, with example like bellow

import * as StandardModule from 'react-native';

// And let's stub out everything that's missing!

delete StandardModule['ViewPropTypes'];

delete StandardModule['ColorPropType'];

delete StandardModule['EdgeInsetsPropType'];

delete StandardModule['PointPropType'];

module.exports = {

    ...StandardModule,

    get ViewPropTypes(){

        return require('deprecated-react-native-prop-types/DeprecatedViewPropTypes');

    },

    get ColorPropType(){

        return require('deprecated-react-native-prop-types/DeprecatedColorPropType');

    },

    get EdgeInsetsPropType(){

        return require('deprecated-react-native-prop-types/DeprecatedEdgeInsetsPropType')

    },

    get PointPropType(){

        return require('deprecated-react-native-prop-types/DeprecatedPointPropType');

    }

}

saved the code to javascript file to use in babel config, and you need to set up a proper resolver for allowlist/blocklist certain library that can result in a conflicting file. for the example see bellow,

 ["module-resolver", {

      "root": ["."],

      resolvePath(sourcePath, currentFile, opts) {

        if(sourcePath === 'react-native' && currentFile.includes('node_modules') && currentFile.includes("react-native-gesture-handler") === false  && currentFile.includes("node_modules\\react-native\\") === false){

          return  path.resolve(__dirname, 'resolver/react-native');

        }

        /**

         * The `opts` argument is the options object that is passed through the Babel config.

         * opts = {

         *   extensions: [".js"],

         *   resolvePath: ...,

         * }

         */

        return undefined;

      }

    }]

I'm interested in this solution but I'm not very familiar with how to use the module resolver. Could you please provide a sample complete solution with filename/locations? Would be very helpful! Thank you..
UPDATE:
I got the resolver implemented and running but it doesn't seem to be use the deprecated-react-native-prop-types. Still getting the following on app start.
 ERROR Invariant Violation: ViewPropTypes has been removed from React Native. Migrate to ViewPropTypes exported from 'deprecated-react-native-prop-types'.
UPDATE 2:
I removed the last check on the filtering 'if' statement "currentFile.includes("node_modules\react-native") === false" and it stopped complaining about prop types. Now the complaint is..
TypeError: undefined is not an object (evaluating '_reactNative.StyleSheet.create')

you need to exclude react-native inside the folder of node_modules from being replaced with babel-plugin-module-resolver.

Hi,
I use babel-plugin-module-resolver based on experience dealing with the same issue to 'overrides' certain native components inside the react-native package which not working in web implementation (react-native-web).
@ajp8164
Based on my setup of a project the resolver needs to be excluded from node_modules/react-native, because it will break the importing use inside the react-native package. you only need to replace other packages/project files besides the node_modules/react-native to use the resolver file when importing the react-native package.

@psycheangel
Thanks for the help! Would you mind explaining where that first code segment is getting saved where you sub out the missing prop types and how its getting referenced by the module-resolver?
My understanding was saving it in resolver/react-native.js
Then

      "root": ["."],

      resolvePath(sourcePath, currentFile, opts) {

        if(sourcePath === 'react-native' && currentFile.includes('node_modules') && currentFile.includes("react-native-gesture-handler") === false  && currentFile.includes("node_modules\\react-native\\") === false){

          return  path.resolve(__dirname, 'resolver/react-native');

        }

        return undefined;

      }

    }]

In babel.config.js
And in the .babelrc having an
"extends": "./babel.config.js"

Is this correct?

@CaptainJeff
I create an example GitHub repo using the standard init project, here is the link

@ajp8164 Hi, I'm facing the exact same issue like you. have you resolved it already?

I tried the link, but it it broke my alias configuration. Looks like I'll need to keep looking

I tried the link, but it it broke my alias configuration. Looks like I'll need to keep looking

same issue

@psycheangel not working with alias

@jpike88 Have you found a solution to work with alias?

I used 'deprecated-react-native-prop-types' instead

Can you tell me what files and where this is written? I am a little confused where this code should go. Thank you.

you'd use it wherever you're importing the ViewPropTypes properly, usually you're importing it directly from 'react-native', so you'd just replace 'react-native' with 'deprecated-react-native-prop-types'. If the ViewPropTypes are being imported by a 3rd party library you'll need to fork that library and fix it accordingly

I tried @psycheangel solutions, It indeed fixes the dependencies issues, but introduces new issues on different libraries and on iOS.
I updated the resolver so it works on more use cases:
import PropTypes from "prop-types";
import * as StandardModule from 'react-native';

// Text.propTypes is deprecated too... react-native-multiple-select uses this as of Jul/18/2022
StandardModule.Text.propTypes = PropTypes.shape(StandardModule.TextStyle);

const deprecatedProps = {
  'ViewPropTypes': require('deprecated-react-native-prop-types/DeprecatedViewPropTypes'),
  'ColorPropType': require('deprecated-react-native-prop-types/DeprecatedColorPropType'),
  'EdgeInsetsPropType': require('deprecated-react-native-prop-types/DeprecatedEdgeInsetsPropType'),
  'PointPropType': require('deprecated-react-native-prop-types/DeprecatedPointPropType'),
};

// Had to use a proxy because ...StandardModule made think react-native that all modules were being used and was triggering some unnecessary validations / native dep checks. This prevents that from happening.
const objProx = new Proxy(StandardModule, {
  get(obj, prop) {
    if (prop in deprecatedProps) {
        return deprecatedProps[prop];
    }
    return StandardModule[prop];
  }
});

module.exports = objProx;

Finally on babel.config.js:
Added a replace on the currentFile path so it works across Unix / windows machines.
    ["module-resolver", {
      "root": ["."],
      resolvePath(sourcePath, currentFile, opts) {
        // Replace unix paths to windows paths...
        const currFile = currentFile.replace(/\//g,'\\');
        if(sourcePath === 'react-native' && currFile.includes("node_modules\\react-native\\") === false && currFile.includes('resolver\\react-native\\') === false){
          // console.log('testing',sourcePath, currentFile)
          return  path.resolve(__dirname, 'resolver/react-native');
        }
        return undefined;
      }
    }],

With these updates, I was able to run our app on RN 0.69.1 and 0.69.2, with Android and iOS working.
Thank you @psycheangel for the help!

Nice discussion going on here, inspired me to implement a workaround in our app using patch-package.

Install patch-package into your project, as per the instructions.

Install deprecated-react-native-prop-types using npm install deprecated-react-native-prop-types or yarn add deprecated-react-native-prop-types.

The invariant seems to be enforced in node_modules/react-native/index.js, starting at line 436:

So, change these lines to return the corresponding Prop Types from deprecated-react-native-prop-types instead:

Save and run npx patch-package react-native to save the patch.

Rebuild and the app should launch.

Only thing to keep in mind is that this patch will need to be reapplied with every upgrade to react-native, or until the libraries in question are updated to import from deprecated-react-native-prop-types instead.

I tried @psycheangel solution here, It fixes the deprecated dependencies issues, but introduces new issues on different external libraries and on iOS.
I updated the resolver to work on more use cases:

resolvers/react-native/index.js

import PropTypes from "prop-types";
import * as StandardModule from 'react-native';

// Text.propTypes is deprecated too... react-native-multiple-select uses this as of Jul/18/2022
StandardModule.Text.propTypes = PropTypes.shape(StandardModule.TextStyle);

const deprecatedProps = {
  'ViewPropTypes': require('deprecated-react-native-prop-types/DeprecatedViewPropTypes'),
  'ColorPropType': require('deprecated-react-native-prop-types/DeprecatedColorPropType'),
  'EdgeInsetsPropType': require('deprecated-react-native-prop-types/DeprecatedEdgeInsetsPropType'),
  'PointPropType': require('deprecated-react-native-prop-types/DeprecatedPointPropType'),
};

// Had to use a proxy because ...StandardModule made think react-native that all modules were
// being used and was triggering some unnecessary validations / native dep checks.
// This prevents that from happening.
const objProx = new Proxy(StandardModule, {
  get(obj, prop) {
    if (prop in deprecatedProps) {
        return deprecatedProps[prop];
    }
    return StandardModule[prop];
  }
});

module.exports = objProx;

babel.config.js:

Added a replace on the currentFile path so it works across Unix / windows machines.
    ["module-resolver", {
      "root": ["."],
      resolvePath(sourcePath, currentFile, opts) {
        // Replace unix paths to windows paths...
        const currFile = currentFile.replace(/\//g,'\\');
        if(sourcePath === 'react-native' && currFile.includes("node_modules\\react-native\\") === false && currFile.includes('resolver\\react-native\\') === false){
          // console.log('testing',sourcePath, currentFile)
          return  path.resolve(__dirname, 'resolver/react-native');
        }
        return undefined;
      }
    }],

With these updates, I was able to run our app on RN 0.69.1 and 0.69.2, with Android and iOS working.
Thank you @psycheangel for the help!

thanks for the addition, nice idea.

Haven't used Reflect, can you point me into how to use it for this?

@psycheangel Haven't used Reflect, can you point me into how to use it for this?

import * as StandardModule from 'react-native';

const deprecatedProps = {
  'ViewPropTypes': require('deprecated-react-native-prop-types/DeprecatedViewPropTypes'),
  'ColorPropType': require('deprecated-react-native-prop-types/DeprecatedColorPropType'),
  'EdgeInsetsPropType': require('deprecated-react-native-prop-types/DeprecatedEdgeInsetsPropType'),
  'PointPropType': require('deprecated-react-native-prop-types/DeprecatedPointPropType'),
};

// Had to use a proxy because ...StandardModule made think react-native that all modules were
// being used and was triggering some unnecessary validations / native dep checks.
// This prevents that from happening.
const objProx = new Proxy(StandardModule, {
  get(obj, prop) {
    if (prop in deprecatedProps) {
        return deprecatedProps[prop];
    }
    return Reflect.get(...arguments);
  }
});

module.exports = objProx;

有什么好的解决办法么，我也遇到了，升级RN，从0.64到0.69.1会报这个错

@xiaoketeng use deprecated-react-native-prop-types

@xiaoketeng use deprecated-react-native-prop-types

What if the issue was caused by dependencies?

You'll need to either convince the maintainer to fix it, or fork the dependency and fix it. There's no other way to remove that error

is there a way to get this fixed ?

it's really unprofessional when someone just decides to break up the whole react-native community because he decided to deprecate a functionality that he doesn't like

Nice discussion going on here, inspired me to implement a workaround in our app using patch-package.

Install patch-package into your project, as per the instructions.
Install deprecated-react-native-prop-types by running npm install deprecated-react-native-prop-types or yarn add deprecated-react-native-prop-types.
The invariant seems to be enforced in node_modules/react-native/index.js, starting at line 436:

So, change these lines to return the corresponding Prop Types from deprecated-react-native-prop-types instead:

Save and run npx patch-package react-native to save the patch.
Rebuild and the app should launch.

Only thing to keep in mind is that this patch will need to be reapplied with every upgrade to react-native, or until the libraries in question are updated to import from deprecated-react-native-prop-types instead.

i was facing the same issue after following all these instructions i'm getting new error related  to  _reactNative.TextInput.propTypes.style

my project info

Nice discussion going on here, inspired me to implement a workaround in our app using patch-package.

Install patch-package into your project, as per the instructions.
Install deprecated-react-native-prop-types by running npm install deprecated-react-native-prop-types or yarn add deprecated-react-native-prop-types.
The invariant seems to be enforced in node_modules/react-native/index.js, starting at line 436:

So, change these lines to return the corresponding Prop Types from deprecated-react-native-prop-types instead:

Save and run npx patch-package react-native to save the patch.
Rebuild and the app should launch.

Only thing to keep in mind is that this patch will need to be reapplied with every upgrade to react-native, or until the libraries in question are updated to import from deprecated-react-native-prop-types instead.

i was facing the same issue after following all these instructions i'm getting new error related to _reactNative.TextInput.propTypes.style
my project info

Try running react-native start —reset-cache and rebuilding.

still not working.

@MohammadAyazSheikh I was literally having this issue a few minutes ago. It is really not related to the issue in this page, but this thread describes many reasons for it: #26687 (comment).
In my case, it was a race condition of some old library (that I haven't identified, nor do I intend to) and AppRegistry is initialized way too late.

i was my updating my existing project from react native 0.68.2 to 0.69.3 i correctly reinstalled all the packages and replace source file in the new project after moving to new version i was getting errors related to
Invariant Violation: ViewPropTypes has been removed from React Native
and
Invariant Violation: Module AppRegistry is not a registered callabel module
after following all the instructions as described by @goguda  invariant Violation: ViewPropTypes has been removed from React Native error has gone but it is throwing new error now  TypeError: undefined is not an object (evaluating '_reactNative.TextInput.propTypes.style') i'm completely lost why i'm getting all these errors here my package.json file
{
"name": "thenextcut",
"version": "0.0.1",
"private": true,
"scripts": {
"android": "react-native run-android",
"ios": "react-native run-ios",
"start": "react-native start",
"test": "jest",
"lint": "eslint .",
"postinstall": "patch-package"
},
"dependencies": {
"@gorhom/bottom-sheet": "^4.3.2",
"@react-native-async-storage/async-storage": "^1.17.6",
"@react-native-community/geolocation": "^2.1.0",
"@react-native-community/netinfo": "^9.0.0",
"@react-native-community/push-notification-ios": "^1.10.1",
"@react-native-masked-view/masked-view": "^0.2.6",
"@react-navigation/bottom-tabs": "^6.3.1",
"@react-navigation/material-top-tabs": "^6.2.1",
"@react-navigation/native": "^6.0.10",
"@react-navigation/stack": "^6.2.1",
"deprecated-react-native-prop-types": "^2.3.0",
"lottie-ios": "^3.2.3",
"lottie-react-native": "^5.1.3",
"moment": "^2.29.3",
"moment-range": "^4.0.2",
"react": "18.0.0",
"react-native": "0.69.3",
"react-native-animatable": "^1.3.3",
"react-native-calendar-strip": "^2.2.6",
"react-native-calendars": "^1.1275.0",
"react-native-chart-kit": "^6.12.0",
"react-native-confirmation-code-input": "^1.0.4",
"react-native-date-picker": "^4.2.2",
"react-native-flatlist-alphabet": "^1.1.2",
"react-native-geocoding": "^0.5.0",
"react-native-geolocation-service": "^5.3.0-beta.4",
"react-native-gesture-handler": "^2.4.2",
"react-native-image-crop-picker": "^0.37.3",
"react-native-image-picker": "^4.8.4",
"react-native-linear-gradient": "^2.5.6",
"react-native-maps": "^0.31.1",
"react-native-open-maps": "^0.4.0",
"react-native-pager-view": "^5.4.24",
"react-native-paper": "^4.12.1",
"react-native-push-notification": "^8.1.1",
"react-native-ratings": "^8.1.0",
"react-native-reanimated": "^2.8.0",
"react-native-safe-area-context": "^4.3.1",
"react-native-screens": "^3.13.1",
"react-native-simple-toast": "^1.1.3",
"react-native-svg": "^12.3.0",
"react-native-tab-view": "^3.1.1",
"react-native-toast-notifications": "^3.3.0",
"react-native-uuid": "^2.0.1",
"react-native-vector-icons": "^9.1.0",
"react-redux": "^8.0.2",
"redux": "^4.2.0",
"redux-logger": "^3.0.6",
"redux-thunk": "^2.4.1"
},
"devDependencies": {
"@babel/core": "^7.12.9",
"@babel/runtime": "^7.12.5",
"@react-native-community/eslint-config": "^2.0.0",
"babel-jest": "^26.6.3",
"eslint": "^7.32.0",
"jest": "^26.6.3",
"metro-react-native-babel-preset": "^0.70.3",
"react-test-renderer": "18.0.0"
},
"jest": {
"preset": "react-native"
}
}

@MohammadAyazSheikh I was literally having this issue a few minutes ago. It is really not related to the issue in this page, but this thread describes many reasons for it: #26687 (comment).
In my case, it was a race condition of some old library (that I haven't identified, nor do I intend to) and AppRegistry is initialized way too late.

i was my updating my existing project from react native 0.68.2 to 0.69.3 i correctly reinstalled all the packages and replace source file in the new project after moving to new version i was getting errors related to Invariant Violation: ViewPropTypes has been removed from React Native and Invariant Violation: Module AppRegistry is not a registered callabel module after following all the instructions as described by @goguda invariant Violation: ViewPropTypes has been removed from React Native error has gone but it is throwing new error now TypeError: undefined is not an object (evaluating '_reactNative.TextInput.propTypes.style') i'm completely lost why i'm getting all these errors here my package.json file
{ "name": "thenextcut", "version": "0.0.1", "private": true, "scripts": { "android": "react-native run-android", "ios": "react-native run-ios", "start": "react-native start", "test": "jest", "lint": "eslint .", "postinstall": "patch-package" }, "dependencies": { "@gorhom/bottom-sheet": "^4.3.2", "@react-native-async-storage/async-storage": "^1.17.6", "@react-native-community/geolocation": "^2.1.0", "@react-native-community/netinfo": "^9.0.0", "@react-native-community/push-notification-ios": "^1.10.1", "@react-native-masked-view/masked-view": "^0.2.6", "@react-navigation/bottom-tabs": "^6.3.1", "@react-navigation/material-top-tabs": "^6.2.1", "@react-navigation/native": "^6.0.10", "@react-navigation/stack": "^6.2.1", "deprecated-react-native-prop-types": "^2.3.0", "lottie-ios": "^3.2.3", "lottie-react-native": "^5.1.3", "moment": "^2.29.3", "moment-range": "^4.0.2", "react": "18.0.0", "react-native": "0.69.3", "react-native-animatable": "^1.3.3", "react-native-calendar-strip": "^2.2.6", "react-native-calendars": "^1.1275.0", "react-native-chart-kit": "^6.12.0", "react-native-confirmation-code-input": "^1.0.4", "react-native-date-picker": "^4.2.2", "react-native-flatlist-alphabet": "^1.1.2", "react-native-geocoding": "^0.5.0", "react-native-geolocation-service": "^5.3.0-beta.4", "react-native-gesture-handler": "^2.4.2", "react-native-image-crop-picker": "^0.37.3", "react-native-image-picker": "^4.8.4", "react-native-linear-gradient": "^2.5.6", "react-native-maps": "^0.31.1", "react-native-open-maps": "^0.4.0", "react-native-pager-view": "^5.4.24", "react-native-paper": "^4.12.1", "react-native-push-notification": "^8.1.1", "react-native-ratings": "^8.1.0", "react-native-reanimated": "^2.8.0", "react-native-safe-area-context": "^4.3.1", "react-native-screens": "^3.13.1", "react-native-simple-toast": "^1.1.3", "react-native-svg": "^12.3.0", "react-native-tab-view": "^3.1.1", "react-native-toast-notifications": "^3.3.0", "react-native-uuid": "^2.0.1", "react-native-vector-icons": "^9.1.0", "react-redux": "^8.0.2", "redux": "^4.2.0", "redux-logger": "^3.0.6", "redux-thunk": "^2.4.1" }, "devDependencies": { "@babel/core": "^7.12.9", "@babel/runtime": "^7.12.5", "@react-native-community/eslint-config": "^2.0.0", "babel-jest": "^26.6.3", "eslint": "^7.32.0", "jest": "^26.6.3", "metro-react-native-babel-preset": "^0.70.3", "react-test-renderer": "18.0.0" }, "jest": { "preset": "react-native" } }

Yes, I also had this problem with the Text props. In my case, if I'm not mistaken, it was because of react-native-credit-card-input, which is just way too old.

@MohammadAyazSheikh I was literally having this issue a few minutes ago. It is really not related to the issue in this page, but this thread describes many reasons for it: #26687 (comment).
In my case, it was a race condition of some old library (that I haven't identified, nor do I intend to) and AppRegistry is initialized way too late.

i was my updating my existing project from react native 0.68.2 to 0.69.3 i correctly reinstalled all the packages and replace source file in the new project after moving to new version i was getting errors related to Invariant Violation: ViewPropTypes has been removed from React Native and Invariant Violation: Module AppRegistry is not a registered callabel module after following all the instructions as described by @goguda invariant Violation: ViewPropTypes has been removed from React Native error has gone but it is throwing new error now TypeError: undefined is not an object (evaluating '_reactNative.TextInput.propTypes.style') i'm completely lost why i'm getting all these errors here my package.json file
{ "name": "thenextcut", "version": "0.0.1", "private": true, "scripts": { "android": "react-native run-android", "ios": "react-native run-ios", "start": "react-native start", "test": "jest", "lint": "eslint .", "postinstall": "patch-package" }, "dependencies": { "@gorhom/bottom-sheet": "^4.3.2", "@react-native-async-storage/async-storage": "^1.17.6", "@react-native-community/geolocation": "^2.1.0", "@react-native-community/netinfo": "^9.0.0", "@react-native-community/push-notification-ios": "^1.10.1", "@react-native-masked-view/masked-view": "^0.2.6", "@react-navigation/bottom-tabs": "^6.3.1", "@react-navigation/material-top-tabs": "^6.2.1", "@react-navigation/native": "^6.0.10", "@react-navigation/stack": "^6.2.1", "deprecated-react-native-prop-types": "^2.3.0", "lottie-ios": "^3.2.3", "lottie-react-native": "^5.1.3", "moment": "^2.29.3", "moment-range": "^4.0.2", "react": "18.0.0", "react-native": "0.69.3", "react-native-animatable": "^1.3.3", "react-native-calendar-strip": "^2.2.6", "react-native-calendars": "^1.1275.0", "react-native-chart-kit": "^6.12.0", "react-native-confirmation-code-input": "^1.0.4", "react-native-date-picker": "^4.2.2", "react-native-flatlist-alphabet": "^1.1.2", "react-native-geocoding": "^0.5.0", "react-native-geolocation-service": "^5.3.0-beta.4", "react-native-gesture-handler": "^2.4.2", "react-native-image-crop-picker": "^0.37.3", "react-native-image-picker": "^4.8.4", "react-native-linear-gradient": "^2.5.6", "react-native-maps": "^0.31.1", "react-native-open-maps": "^0.4.0", "react-native-pager-view": "^5.4.24", "react-native-paper": "^4.12.1", "react-native-push-notification": "^8.1.1", "react-native-ratings": "^8.1.0", "react-native-reanimated": "^2.8.0", "react-native-safe-area-context": "^4.3.1", "react-native-screens": "^3.13.1", "react-native-simple-toast": "^1.1.3", "react-native-svg": "^12.3.0", "react-native-tab-view": "^3.1.1", "react-native-toast-notifications": "^3.3.0", "react-native-uuid": "^2.0.1", "react-native-vector-icons": "^9.1.0", "react-redux": "^8.0.2", "redux": "^4.2.0", "redux-logger": "^3.0.6", "redux-thunk": "^2.4.1" }, "devDependencies": { "@babel/core": "^7.12.9", "@babel/runtime": "^7.12.5", "@react-native-community/eslint-config": "^2.0.0", "babel-jest": "^26.6.3", "eslint": "^7.32.0", "jest": "^26.6.3", "metro-react-native-babel-preset": "^0.70.3", "react-test-renderer": "18.0.0" }, "jest": { "preset": "react-native" } }

+1, having same issue and the call stack doesnt even tells where it comes from.

Try searching on node_modules and you'll quickly find out some library that hasn't been updated. Alternatively, if possible, you may use patch-package to replace the old references with the ones on deprecated-react-native-prop-types.

Nice discussion going on here, inspired me to implement a workaround in our app using patch-package.

Install patch-package into your project, as per the instructions.
Install deprecated-react-native-prop-types by running npm install deprecated-react-native-prop-types or yarn add deprecated-react-native-prop-types.
The invariant seems to be enforced in node_modules/react-native/index.js, starting at line 436:

So, change these lines to return the corresponding Prop Types from deprecated-react-native-prop-types instead:

Save and run npx patch-package react-native to save the patch.
Rebuild and the app should launch.

Only thing to keep in mind is that this patch will need to be reapplied with every upgrade to react-native, or until the libraries in question are updated to import from deprecated-react-native-prop-types instead.

i was facing the same issue after following all these instructions i'm getting new error related to _reactNative.TextInput.propTypes.style
my project info

Try running react-native start —reset-cache and rebuilding.

Thank you...
this work for me but its temproraily 👍

Here is the diff for goguda’s solution. You can just paste this into a file called react-native+0.69.3.patch so you don’t have to copy the screenshot edits manually:
diff --git a/node_modules/react-native/index.js b/node_modules/react-native/index.js
index d59ba34..1bc8c9d 100644
--- a/node_modules/react-native/index.js
+++ b/node_modules/react-native/index.js
@@ -435,32 +435,16 @@ module.exports = {
   },
   // Deprecated Prop Types
   get ColorPropType(): $FlowFixMe {
-    invariant(
-      false,
-      'ColorPropType has been removed from React Native. Migrate to ' +
-        "ColorPropType exported from 'deprecated-react-native-prop-types'.",
-    );
+    return require('deprecated-react-native-prop-types').ColorPropType;
   },
   get EdgeInsetsPropType(): $FlowFixMe {
-    invariant(
-      false,
-      'EdgeInsetsPropType has been removed from React Native. Migrate to ' +
-        "EdgeInsetsPropType exported from 'deprecated-react-native-prop-types'.",
-    );
+    return require('deprecated-react-native-prop-types').EdgeInsetsPropType;
   },
   get PointPropType(): $FlowFixMe {
-    invariant(
-      false,
-      'PointPropType has been removed from React Native. Migrate to ' +
-        "PointPropType exported from 'deprecated-react-native-prop-types'.",
-    );
+    return require('deprecated-react-native-prop-types').PointPropType;
   },
   get ViewPropTypes(): $FlowFixMe {
-    invariant(
-      false,
-      'ViewPropTypes has been removed from React Native. Migrate to ' +
-        "ViewPropTypes exported from 'deprecated-react-native-prop-types'.",
-    );
+    return require('deprecated-react-native-prop-types').ViewPropTypes;
   },
 };

Here is the diff for @goguda’s solution. You can just paste this into a file called react-native+0.69.3.patch so you don’t have to copy the screenshot edits manually:
diff --git a/node_modules/react-native/index.js b/node_modules/react-native/index.js
index d59ba34..1bc8c9d 100644
--- a/node_modules/react-native/index.js
+++ b/node_modules/react-native/index.js
@@ -435,32 +435,16 @@ module.exports = {
   },
   // Deprecated Prop Types
   get ColorPropType(): $FlowFixMe {
-    invariant(
-      false,
-      'ColorPropType has been removed from React Native. Migrate to ' +
-        "ColorPropType exported from 'deprecated-react-native-prop-types'.",
-    );
+    return require('deprecated-react-native-prop-types').ColorPropType;
   },
   get EdgeInsetsPropType(): $FlowFixMe {
-    invariant(
-      false,
-      'EdgeInsetsPropType has been removed from React Native. Migrate to ' +
-        "EdgeInsetsPropType exported from 'deprecated-react-native-prop-types'.",
-    );
+    return require('deprecated-react-native-prop-types').EdgeInsetsPropType;
   },
   get PointPropType(): $FlowFixMe {
-    invariant(
-      false,
-      'PointPropType has been removed from React Native. Migrate to ' +
-        "PointPropType exported from 'deprecated-react-native-prop-types'.",
-    );
+    return require('deprecated-react-native-prop-types').PointPropType;
   },
   get ViewPropTypes(): $FlowFixMe {
-    invariant(
-      false,
-      'ViewPropTypes has been removed from React Native. Migrate to ' +
-        "ViewPropTypes exported from 'deprecated-react-native-prop-types'.",
-    );
+    return require('deprecated-react-native-prop-types').ViewPropTypes;
   },
 };

Don't forget to mention it must be inside a patches folder and you need the patch-package dependency for it to run automatically on every yarn/npm install command.

Here is the diff for @goguda’s solution. You can just paste this into a file called react-native+0.69.3.patch so you don’t have to copy the screenshot edits manually:
diff --git a/node_modules/react-native/index.js b/node_modules/react-native/index.js
index d59ba34..1bc8c9d 100644
--- a/node_modules/react-native/index.js
+++ b/node_modules/react-native/index.js
@@ -435,32 +435,16 @@ module.exports = {
   },
   // Deprecated Prop Types
   get ColorPropType(): $FlowFixMe {
-    invariant(
-      false,
-      'ColorPropType has been removed from React Native. Migrate to ' +
-        "ColorPropType exported from 'deprecated-react-native-prop-types'.",
-    );
+    return require('deprecated-react-native-prop-types').ColorPropType;
   },
   get EdgeInsetsPropType(): $FlowFixMe {
-    invariant(
-      false,
-      'EdgeInsetsPropType has been removed from React Native. Migrate to ' +
-        "EdgeInsetsPropType exported from 'deprecated-react-native-prop-types'.",
-    );
+    return require('deprecated-react-native-prop-types').EdgeInsetsPropType;
   },
   get PointPropType(): $FlowFixMe {
-    invariant(
-      false,
-      'PointPropType has been removed from React Native. Migrate to ' +
-        "PointPropType exported from 'deprecated-react-native-prop-types'.",
-    );
+    return require('deprecated-react-native-prop-types').PointPropType;
   },
   get ViewPropTypes(): $FlowFixMe {
-    invariant(
-      false,
-      'ViewPropTypes has been removed from React Native. Migrate to ' +
-        "ViewPropTypes exported from 'deprecated-react-native-prop-types'.",
-    );
+    return require('deprecated-react-native-prop-types').ViewPropTypes;
   },
 };

Can also confirm working on 0.69.4 🙏

react-native start —reset-cache

Thank you it works for me

@KianooshSoleimani
Could u plz explain why it's temporarily? Thx

Created a file rn-polyfill-depricated-proptypes.js, and imported at top of index.js. Solved the issue for me
you may also change the get function to return from deprecated-react-native-prop-types
const reactnative = require('react-native');

Object.defineProperty(reactnative, 'ColorPropType', {
  configurable: true,
  get() {
    return {};
  },
});

Object.defineProperty(reactnative, 'EdgeInsetsPropType', {
  configurable: true,
  get() {
    return {};
  },
});

Object.defineProperty(reactnative, 'PointPropType', {
  configurable: true,
  get() {
    return {};
  },
});

Object.defineProperty(reactnative, 'ViewPropTypes', {
  configurable: true,
  get() {
    return {};
  },
});

found out:
https://github.com/facebook/react-native/issues/33557#issuecomment-1211324410

Hey all, as mentioned in https://github.com/facebook/react-native/issues/33557, we're in the process of removing PropTypes from React Native. As part of this process, we will first introduce a deprecation warning and then remove the proptypes in a future version.
Because of this it is not recommended to ignore the warning as some comments above suggest (I've hidden those comments as outdated to prevent confusion). If you ignore the warning then in a future version you will hit issues like https://github.com/facebook/react-native/issues/33734 when we fully remove the deprecated code.
It's also not recommend to use patch-package on the React Native file because this will only mask the issue.
Recommended Fix
The recommended fix is to find the code that is using PropTypes and switch the import from:
import { ViewPropTypes } from 'react-native';

to:
import { ViewPropTypes } from 'deprecated-react-native-prop-types';

Sometimes, a library you depend on may be using the PropTypes. In that case, it's recommended to submit an issue or PR to the library and/or update to the latest version. In extreme cases (like the library you're using is unmaintained) you may need to fork the library, or use patch-package for that library itself to replace the types until it's fixed upstream.

Hey all, as mentioned in #33557, back in 2018 we started to remove PropTypes from React Native. Last year, in 0.68 we introduced a deprecation warning which notified users that the change is coming, and in 0.69 we removed the PropTypes entirely..
Because of this it is not recommended to ignore the warning as some comments above suggest (I've hidden those comments as outdated to prevent confusion). If you ignore the warning then in a future version you will hit issues like #33734 when we fully remove the deprecated code.
It's also not recommend to use patch-package on the React Native file because this will only mask the issue.
Recommended Fix
The recommended fix is to switch from PropTypes to a type system like TypeScript.
If you need to continue using PropTypes, the fix is to find the code that is using PropTypes and switch the import from:
import { ViewPropTypes } from 'react-native';

to:
import { ViewPropTypes } from 'deprecated-react-native-prop-types';

Sometimes, a library you depend on may be using the PropTypes. In that case, it's recommended to submit an issue or PR to the library and/or update to the latest version. In extreme cases (like the library you're using is unmaintained) you may need to fork the library, or use patch-package for that library itself to replace the types until it's fixed upstream.

Any suggestion how to know which dependencies were affected by this issue?

This is a big issue for anyone that wants to upgrade react-native. It will be great if we can find a workaround, as going manually and looking for the hundreds of places in which a correction is needed is not feasible.

Same problem, just downgrade and wait for someone to fix it

I've been using this resolver solution for a while and it works very well. No intrusion.

Have you resolved this problem, other than patching? I tried the patch option but it returns the following:

I have already done
cd android && gradlew clean
react-native start --reset-cache
npm cache clean --force
and it keeps sending the same error.
I would like to use version 69.4 but I have many third party libraries that use propsType so it is not working.

@MohammadAyazSheikh did you manage to solve it ?

@mukti107 you can place a complete example that has worked for you, when I run your example it returns the following message.

same issue here version 0.69.4

any news ?

@MohammadAyazSheikh did you manage to solve it ?

no 😐

Just wanted to share our experience regarding this issue in case it helps anyone (this probably won't help people who are stuck with old dependency versions).
We were seeing this error and simply needed to update 2 of our dependencies (expo from 44.0.6 to 45.0.6 and expo-barcode-scanner from 11.2.1 to 11.3.0) and the issue went away for us. If there's anyone new to this issue, it would be worth checking into updating your dependencies before trying out any of the patch solutions suggested in this thread.

I've been using this resolver solution for a while and it works very well. No intrusion.

it doesn't seems working .
`// module.exports = {
//   presets: ['module:metro-react-native-babel-preset'],
//   sourceMaps: 'inline',
//   plugins: [
//     [
//       '@babel/plugin-proposal-decorators',
//       {
//         legacy: true,
//       },
//     ],
//     [
//       'module-resolver',
//       {
//         extensions: ['.js', '.ts', '.tsx', '.css', '.svg'],
//         root: ['./src'],
//       },
//     ],
//     "react-native-reanimated/plugin"
//   ],
// };
var path = require('path');
module.exports = {
presets: ['module:metro-react-native-babel-preset'],
sourceMaps: 'inline',
plugins: [
[
'@babel/plugin-proposal-decorators',
{
legacy: true,
},
],
// [
//   'module-resolver',
//   {
//     extensions: ['.js', '.ts', '.tsx', '.css', '.svg'],
//     root: ['./src'],
//   },
// ],
"react-native-reanimated/plugin",
[
  'module-resolver',
  {
    root: ['.'],
    extension:['.ts','.tsx','.js'],
    resolvePath(sourcePath, currentFile, opts) {
      // if(sourcePath === 'react-native' && currentFile.includes("node_modules\\react-native\\") === false && currentFile.includes('resolver\\react-native\\') === false){
      //   console.log('testing',sourcePath, currentFile)
      //   return  path.resolve(__dirname, 'resolver/react-native');
      // }
      console.log('in resoleve');

      // macos/linux paths
      if (
        sourcePath === 'react-native' &&
        currentFile.includes('node_modules/react-native/') === false &&
        currentFile.includes('resolver/react-native/') === false
      ) {
        console.log('testing', sourcePath, currentFile);
        return path.resolve(__dirname, 'resolver/react-native');
      }
      console.log('not found');
      /**
       * The `opts` argument is the options object that is passed through the Babel config.
       * opts = {
       *   extensions: [".js"],
       *   resolvePath: ...,
       * }
       */
      return undefined;
    },
  },
],

],
};
`

@mukti107  your solution sends the following error message, you know how to fix it:
_reactNative.TextInput.propTypes.style

Any suggestion how to know which dependencies were affected by this issue?

There should be a stack trace and/or component stack trace that points to the component/library causing the issue. If you think it's in your application, and not a library, you could grep for all usages of the deprecated prop types.
If you can share a repo, I'm happy to take a look to help debug what's using the PropTypes.

If I understand well the revolver solution only works for babel so people using hermes still have the issue. Anyone knows the equivalent of that solution on hermes ?

Hi,
this issue can be solved using babel-plugin-module-resolver
you can alias react-native module, with example like bellow

import * as StandardModule from 'react-native';

// And let's stub out everything that's missing!

delete StandardModule['ViewPropTypes'];

delete StandardModule['ColorPropType'];

delete StandardModule['EdgeInsetsPropType'];

delete StandardModule['PointPropType'];

module.exports = {

    ...StandardModule,

    get ViewPropTypes(){

        return require('deprecated-react-native-prop-types/DeprecatedViewPropTypes');

    },

    get ColorPropType(){

        return require('deprecated-react-native-prop-types/DeprecatedColorPropType');

    },

    get EdgeInsetsPropType(){

        return require('deprecated-react-native-prop-types/DeprecatedEdgeInsetsPropType')

    },

    get PointPropType(){

        return require('deprecated-react-native-prop-types/DeprecatedPointPropType');

    }

}

saved the code to javascript file to use in babel config, and you need to set up a proper resolver for allowlist/blocklist certain library that can result in a conflicting file. for the example see bellow,

 ["module-resolver", {

      "root": ["."],

      resolvePath(sourcePath, currentFile, opts) {

        if(sourcePath === 'react-native' && currentFile.includes('node_modules') && currentFile.includes("react-native-gesture-handler") === false  && currentFile.includes("node_modules\\react-native\\") === false){

          return  path.resolve(__dirname, 'resolver/react-native');

        }

        /**

         * The `opts` argument is the options object that is passed through the Babel config.

         * opts = {

         *   extensions: [".js"],

         *   resolvePath: ...,

         * }

         */

        return undefined;

      }

    }]

@psycheangel thanks so much, it works like voodoo, my app is now running on Android without issues, I haven't tried it on Android yet

Have you resolved this problem, other than patching? I tried the patch option but it returns the following:

I have already done cd android && gradlew clean react-native start --reset-cache npm cache clean --force
and it keeps sending the same error.
I would like to use version 69.4 but I have many third party libraries that use propsType so it is not working.

Did you solve this issue

For me I used the "temporary" solution with patch-package : https://github.com/facebook/react-native/issues/33734#issuecomment-1206494929
The solution with the resolver only works if you use babel, but if you use hermes like me this solution will not have any effect. So the patch-package can be temporary solution will waiting for the dependencies to publish an update.

We were using RN 0.67.2 with React 17.0.2 and upgraded to RN 0.69.4 and React 18.0.0 and got this error even with Hermes.
What would be the easiest fix for this?

There is no easy fix for this. It's a problem in react-native library.
How can this be closed? You have to make a lot of weird shady changes to your code so you can run it.

For those who don't use hermes, you can solve the _reactNative.textInput.propTypes.style error using the method of @mukti107 and @psycheangel only that I have added a new option that has neither of the 2 forms.

They must create a file in the root with the name they like in my case rn-polyfill-depricated-proptypes.js and they will place it in the index.js of the project at the top like this

after this add the following to the created file
`/**
*File:  rn-polyfill-depricated-proptypes.js
**/
import * as StandardModule from 'react-native';
const deprecatedProps = {
TextInputPropTypes: require('deprecated-react-native-prop-types/DeprecatedTextInputPropTypes'),
};
const txtImputProx = new Proxy(StandardModule.TextInput, {
get(obj, prop) {
// console.log("StandardModule--> ", StandardModule);
if (prop === 'propTypes') return deprecatedProps.TextInputPropTypes;
return Reflect.get(...arguments);
},
});
const reactnative = require('react-native');
Object.defineProperty(reactnative, 'ColorPropType', {
configurable: true,
get() {
return require('deprecated-react-native-prop-types').ColorPropType;
},
});
Object.defineProperty(reactnative, 'EdgeInsetsPropType', {
configurable: true,
get() {
return require('deprecated-react-native-prop-types').EdgeInsetsPropType;
},
});
Object.defineProperty(reactnative, 'PointPropType', {
configurable: true,
get() {
return require('deprecated-react-native-prop-types').PointPropType;
},
});
Object.defineProperty(reactnative, 'ViewPropTypes', {
configurable: true,
get() {
return require('deprecated-react-native-prop-types').ViewPropTypes;
},
});
Object.defineProperty(reactnative, 'TextPropTypes', {
configurable: true,
get() {
return require('deprecated-react-native-prop-types').TextPropTypes;
},
});
Object.defineProperty(reactnative, 'TextInputPropTypes', {
configurable: true,
get() {
return require('deprecated-react-native-prop-types').TextInputPropTypes;
},
});
Object.defineProperty(reactnative, 'TextInput', {
configurable: true,
get() {
// return require('deprecated-react-native-prop-types').TextInputPropTypes;
return txtImputProx;
},
});`
This way it will work for them and the app will run perfectly, but in my case FETCH() doesn't work for me, does anyone have an idea why fetech doesn't work in react-native 69.4
very thankful.
I hope the contribution helps you.

In my case, the app is working but the fetch only works after about 10 minutes, someone will know what's going on.

Fixed issue for 69.4 and the fetch() issue is because it was using react-native-cli and should be removed.

@CCB-cerivera It would be nice if that polyfill module just implemented your solution.
It's much simpler than using babel or any of the other solutions, and should work everywhere. Hopefully most dependencies will have this problem fixed soon, but your code could be a useful NPM package if you're feeling ambitious.
Either way, it's working well for me. Thanks!

I fixed the probleme by patching react-native package
first install patch-package and deprecated-react-native-prop-types
then create this file patches/react-native+0.69.5.patch
and past the code under, and yarn install or npm install
`
diff --git a/node_modules/react-native/index.js b/node_modules/react-native/index.js
index d59ba34..fad680a 100644
--- a/node_modules/react-native/index.js
+++ b/node_modules/react-native/index.js
@@ -435,32 +435,16 @@ module.exports = {
},
// Deprecated Prop Types
get ColorPropType(): $FlowFixMe {

invariant(

 false,

 'ColorPropType has been removed from React Native. Migrate to ' +

   "ColorPropType exported from 'deprecated-react-native-prop-types'.",

);

return require('deprecated-react-native-prop-types/DeprecatedColorPropType');
},
get EdgeInsetsPropType(): $FlowFixMe {

invariant(

 false,

 'EdgeInsetsPropType has been removed from React Native. Migrate to ' +

   "EdgeInsetsPropType exported from 'deprecated-react-native-prop-types'.",

);

return require('deprecated-react-native-prop-types/DeprecatedEdgeInsetsPropType')
},
get PointPropType(): $FlowFixMe {

invariant(

 false,

 'PointPropType has been removed from React Native. Migrate to ' +

   "PointPropType exported from 'deprecated-react-native-prop-types'.",

);

return require('deprecated-react-native-prop-types/DeprecatedPointPropType');
},
get ViewPropTypes(): $FlowFixMe {

invariant(

 false,

 'ViewPropTypes has been removed from React Native. Migrate to ' +

   "ViewPropTypes exported from 'deprecated-react-native-prop-types'.",

);

return require('deprecated-react-native-prop-types/DeprecatedViewPropTypes');
},
};

`

@ha-abdou please use the above solution it will work for you without having to patch.
https://github.com/facebook/react-native/issues/33734#issuecomment-1226350831

Locking this to prevent confusion as the recommended fix is getting buried.
The recommended fix is [here](https://github.com/facebook/react-native/issues/33734#issuecomment-1212215459.

Hey all, just to re-iterate, back in 2018 we started to remove PropTypes from React Native. Last year, in 0.68 we introduced a deprecation warning which notified users that the change is coming, and in 0.69 we removed the PropTypes entirely.
Because of this it is not recommended to ignore the warning as some comments above suggest (I've hidden those comments as outdated to prevent confusion). If you ignore the warning then in a future version you will hit issues like https://github.com/facebook/react-native/issues/33734 when we fully remove the deprecated code.
It's also not recommend to use patch-package on the React Native file because this will only mask the issue.
Recommended Fix
The recommended fix is to switch from PropTypes to a type system like TypeScript.
If you need to continue using PropTypes, the fix is to find the code that is using PropTypes and switch the import from:
import { ViewPropTypes } from 'react-native';

to:
import { ViewPropTypes } from 'deprecated-react-native-prop-types';

Sometimes, a library you depend on may be using the PropTypes. In that case, it's recommended to submit an issue or PR to the library and/or update to the latest version. In extreme cases (like the library you're using is unmaintained) you may need to fork the library, or use patch-package for that library itself to replace the types until it's fixed upstream.
Improving the error reporting
We've heard feedback that it can be hard to find the source of the component that is using the deprecated types. We've shipped two fixes to address this issue.
Code frames for the source of the issue
First, we added better stack frame collapsing to internal React Native frames so that LogBox shows you where the type is being used:

This fix is available in 0.70, but you may need to bump the CLI version with the instructions here.
Reporting crashes in the app
Second, we found an issue where propTypes errors could crash the app without reporting any errors other than the console. This makes it really difficult to find which component or library are using propTypes because the console doesn't report the stack trace.
This is being addressed by https://github.com/facebook/react-native/issues/34649, which will display the error in LogBox instead of the white screen. This will land in the next release a the latest, but as a workaround you can add:
require('../ReactNative/AppRegistry');

To line 47 in /node_modules/react-natve/Libraries/Core/InitializeCore.js as done here.
Summary
The correct fix here is to switch to deprecated-react-native-prop-types or a type system like Typescript.
Please do not patch or ignore warnings to work around this issue.
If you have any trouble finding the source of the prop type usage, please file a new issue with repro steps so we can help you find the source and fix the error reporting to make it easier to find the source.


Install dependencies into folder

[x] I have searched the issues of this repo and believe that this is not a duplicate.
[x] I have searched the documentation and believe that my question is not covered.

Question
Is it possible to install dependencies into directory like using next pip command?
pip install -r requirements.txt -t ./vendor

Poetry works within a virtual environment, which is IMO a more robust and encompassing approach.

I need to bundle them into directory for AWS lambda so that's why I need it.

Then how about
<path to poetry venv>/bin/pip freeze >requirements.txt && pip install -r requirements.txt -t ./vendor

It worked for me for a while. But recently I added a package from git repository.

@azag0 Working with AWS is a quite common use case. How about adding a new command to poetry where it's possible to specify ?

This is not supported and likely won't be .


is this sdk supports PKCE?

Hello,
My application is a web based application and is self hosted by my clients, this is why i can't use the app client secret.
Is there a way to use PKCE to authenticate and fetch the access and refresh token?

Hi @idanbenezra , this section explains how we support PKCE to authenticate.
Hope this helps, thus closing this issue. Please reopen this incase you still encounter some issue.

Hey @yash30201
Thanks for the reply.
I did find this documentation before, However i didn't find any way to use it using this SDK.
Is this supported?


🚀 perf: add mongodb indexes

See https://github.com/featbit/featbit/pull/673

@dsun0720

Hey @deleteLater  could you release the changes? https://github.com/featbit/featbit-charts/actions/runs/11416099413


Rom full keyset update

This PR adds two new fake production keys to the ROM. It also adds a new command to opentitantool to export a key to a header file suitable for use in the ROM/ROM_EXT. I also added some documentation about the process.
Some remarks:

I created a new opentitantool command instead of extending show because it seems to make more sense. The show command returns a RSA public key object that can be displayed in several formats (json, yaml, etc). The printing is done in the generic part of the ott code so it would be hard to extend to print the header file.

Some open questions/remaining items:

[ ] update the key slots
[ ] document the key slots: what is the best place to do so?
[ ] update the e2e tests

This PR should not be merged before #17375  and #17398

Thanks @pamaury, I apologize if I'm missing something obvious but I'm not sure if I follow the goal of this change. Couldn't you achieve the same without introducing additional complexity and rewriting existing code?

The goal of the PR is to implement the e2e_key_validity test more thoroughly. The current test does not check all values of CREATOR_SW_CFG_SIGVERIFY_RSA_KEY_EN so it does actually test all possible combinations.
Changing this requires some code to generate the value of CREATOR_SW_CFG_SIGVERIFY_RSA_KEY_EN based on the index of the key we want to invalidate. Also, after discussing with @cfrantz , I took this opportunity to move most of the hardcoded key names from the BUILD file to rules/rom.bzl. While this makes this PR a little big bigger, I think it also makes the code easier to follow and change in the future.


Search

Closes #34

Summary
-Added search for user functionality
-Added ability to send a follow request to another user
-Changed usernames to be lowercase to fit app design/Firestore design
After this is merged, I'll make a separate PR for Javadocs/test fixes

@WJXHenry Updated the Firestore thing, gonna need another review


SM-60 retrieve a single reparation request material #60

Pull request content

SM-60 Retrieve a single reparation request material

Note
This pull request shouldn't be merged before the following pull requests have been merged;

[x] https://github.com/KA-Huis/space-management/pull/93
[x] https://github.com/KA-Huis/space-management/pull/94

@Hoopless Looks good to me. You can merge it.


Renew develop

PR types
Performance optimization
PR changes
Models
Description
Removed some redundant code
two picture below shows the difference

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.mengziheng seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

文件权限变更需要改回一下


[SAGE-11] Foundations: Update border tokens

Description

[x] update border-radius values
[x] change border-radius values in the following components:

Alert
Hero
Modal
Stat box
Upload Card

Screenshots

Card

Before
After

Panel

Before
After

Alert

Before
After

Modal

Before
After

Stat box

Before
After

Upload Card

Before
After

Testing in sage-lib

Testing in kajabi-products

(LOW/MEDIUM/HIGH/BREAKING) Description of the change and its impact with QA as the audience.

[ ] One more examples of the component in use to either test the change or verify the change has not had adverse effects.

Related

Closes SAGE-11

@QuintonJason this should also be pointed to the epic branch, right?

Looks like border-radius on SagePanelFigure isn't carrying across as expected:

Setting border-radius: inherit on .sage-panel__figure--bleed-top seems to fix it. Token change is looking great everywhere else.

Nice find! 🔬  I'll get this updated in the am as the bridge

@monkeypox8 pushed a fixed. Thanks again for the sharp eye


Node from renderer

Hey, thanks so much for this library!
I'm trying to convert a large project from webpack to vite using electron-vite.  I'm trying to make the renderer be able to us fs.
I have:
  const mainWindow = new BrowserWindow({
   ...
    webPreferences: {
      preload: path.join(__dirname, "../preload/index.js"),
      // we do not show external web content, so there is no threat, so no need for sandboxing
      nodeIntegration: true,
      sandbox: false,
     contextIsolation: false
    }

However this code works fine in preload, but not in the renderer:
import * as fs from "fs";
const csv = fs.readFileSync(
  "somepath/test.csv",
  "utf8"
);

In the renderer, I get
Uncaught TypeError: fs.readFileSync is not a function
    at index.tsx:12:16

This is a large codebase that mostly just does local file management, and all from the renderer. There is no reason to complicate it by moving all this to the main process, since  there is no security difference between renderer process and main process if the only code being displayed is what ships with the application.
Is there something I need to do to enable using nodejs functions in the renderer?
Electron-Vite Version
1.0.16
Electron Version
22.3.0
Vite Version
4.0.0
Validations

[X] Follow the Code of Conduct.
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.

@hatton I think what you say is reasonable. Currently, electorn-vite not support nodeIntegration. But there is also a way to support that is to use require to import the node module which is not very elegant. Or you can use plugin vite-plugin-commonjs-externals to handle.
Also, I'm looking for a better way to support this.

@alex8088 this is an important feature for large projects with nodeIntegration:true

https://github.com/vite-plugin/vite-plugin-optimizer
Above plugin helped a lot to convert to require statements. But got struck for the globals like process

@alex8088 so using your suggestion, I actually can use fs. But not path.
I've pushed a repo demonstrating this here: https://github.com/hatton/electron-react-vite-lingui
I wonder if you might have any more suggestions?
(I didn't try the require because I need various libraries that I don't control to work too, and so I think I need to get this stuff working without an approach that requires changing code.)

@hatton try add path into commonjsexternal plugin like fs.

@alex8088 Well that's embarrassing. Should have quit for the day sooner. Thanks for your patient help. I committed that fix.
OK, so now 'path' is good in my code, but a critical library, lingui, is still broken when it tries to use path

Note, I have asked vite to exclude path:
const nodeImportToTurnIntoRequire = ["fs", "path"];
export default defineConfig({
  main: {
    optimizeDeps: {
      exclude: nodeImportToTurnIntoRequire,
    },

But that doesn't seem to do anything.
Looking through vite issues like this one, it seems like this is a common problem but each time, the recommendation is "use a different package". That's not an option for me.

try to externalize lingui too?

Yeah, externalizing lingui leads to react errors inside of lingui.
Uncaught Error: Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:

But of course the library does not violate hooks. npm ls react and npm ls react-dom both show everything using the same version of reacct.
I'm afraid I just don't understand enough about building/bundling... I don't even know what externalizing means.
At this point, let me just thank you so much for your generosity in helping me. I think I'll need to just take a different approach.

@hatton I think what you say is reasonable. Currently, electorn-vite not support nodeIntegration. But there is also a way to support that is to use require to import the node module which is not very elegant. Or you can use plugin vite-plugin-commonjs-externals to handle.
Also, I'm looking for a better way to support this.

error during start dev server and electron app:
TypeError: commonjsExternalsPlugin is not a function

@hatton Hi, currently which is the way to allow to use node packages in the renderer?
Thanks

@MiniSuperDev  Here is the vite.config.ts I ended up with.


Building value is not blue for census tract<PHONE_NUMBER>0 even though it is 90th

The building value field should be blue in the side panel for census tract<PHONE_NUMBER>0
https://d29zfl8cj7y1zf.cloudfront.net/en/cejst#10.17/41.9023/-101.7773

The data is ~0.897. so when we determine whether that is >=90th percentile, it is NOT and so it is NOT included. But when we round the number for the UI, it looks like 90.
This will affect ALL percentile fields for all values between .895 and .8999999999.
I think we need a steer from design/product (@BethMattern @glennettec @KameronKerger ) on how they want this to look.
Some options:

Force all values between .895 and .8999999 to actually round down to .89 to make the visuals appear better.

Round up .895 to .90 before percentile cutoff (I don't think we want this, that's a major effect on the definition).

Add an explanatory note or asterisk.

Another option: if we're going to essentially use "floors" for our percentile cutoffs where .89999999 is not above the threshold but .90 is, then perhaps we should no longer round numbers anywhere, and instead always floor them (e.g., .899999 goes to .89, and so does, e.g., .7363459342 to .73). This would be consistent and also make the thresholds match. It's also a fairly trivial backend change.

We will do that.

This is where we round -- we use Pandas.round: https://github.com/usds/justice40-tool/blob/main/data/data-pipeline/data_pipeline/etl/score/etl_score_post.py#L216

@saran-ahluwalia is this the rounding thing you talked about in standup today?

Yes @BethMattern, I believe that this is the main issue associated with the current task.

@esfoobar-usds @BethMattern Is there any other QA and/or additional client-side validation that needs to occur before this is closed?

Your round PR should take care of this, but we'll double check shortly.


Updated physics engine to use wind sensor

Created a private instance of the WindSensor class in the physics engine node.
Added a new private method: __update_wind_sensor(). This method updates the wind attribute of the WindSensor instance using the wind generator (self.__wind_generator).
Integrated __update_wind_sensor() call right before self.__update_boat_state() in the __publish() function.
Modified the self.__update_boat_state() method to use data from the WindSensor instead of the wind generator, introducing realistic noise into the simulation.
Resolves #426

Issue with be addressed in a separate PR


ESLint icons

Hello, it would be great to use the ESLint icon

for the following files:

.eslintrc
.eslintrc.js
.eslintrc.json
.eslintrc.yml
.eslintrc.yaml
.eslintignore

I've added it as a custom icon in my own editor and it seems to work well.  I'd be happy to submit a PR if this is agreeable.

Thanks for submitting an issue!
After thinking about it a bit I am inclined to think that some of these should really just display the default for that file extension such as the .yaml file. At least those are my thoughts.
Let's leave the issue open and look for some more feedback.

Okay, sure thing. I guess I have to ask what makes this different from .bowerrc or package.json, both of which are configuration files which could just as easily have the default icons.  But by giving them their own logos, they are easier to find among more generic files. And, ESLint config files are often spread throughout a project, not just at the root, which in my mind makes them even more necessary to be able to quickly grep visually.
At any rate, those were my thoughts, and I'll be happy to see what others think. Thanks for making the package hackable, so I could already add it for myself.  :)

Actually that is a very good point with the package.json argument. Some icons in text editors just add {} regardless of what type of json file it is. File-icons, however, does add the npm logo for that one.
I'd take a pr for this, thanks =)


Implement a simple way to feature/hide listings

Checklist:

[x] Test your work and double-check to confirm that you didn't break anything
[x] Wrap any new text/strings for translation
~[ ] Update any relevant READMEs and docs~

Description:
A simple version of hidden/featured listings implementation.
Solves issue: https://github.com/OriginProtocol/origin-dapp/issues/643#event-1875878859

@micahalcorn @franckc  This is good to go by me—merge whenever is good on your end.

Note for future: If we keep this method, just realized that the network ID is actually part of the listing ID (e.g. 999-000-4,999-000-3), so we could just have one file that contained all listings to hide/feature across all networks.

So cool,
https://github.com/OriginProtocol/origin-dapp/blob/hidefeature_list/featurelist_999.txt
yields this display:

@wanderingstan yeah good point much simpler having only 2 files. If we were to change files to .json we could have everything in 1 file.
I did create a bug with this branch 🙈 where empty listing file results in an invalid empty string listing-id. Fix is here: https://github.com/OriginProtocol/origin-dapp/pull/654


Icons don't have a ripple

The matSuffix icons should be buttons so they actually appear clickable with ripples.
Example
<button matSuffix mat-icon-button aria-label="Clear" (click)="value=''">
      <mat-icon>close</mat-icon>
</button>

https://material.angular.io/components/input/examples#input-clearable

Thank you @mvanderlee .
Would be fixing it in upcoming version for V16 and V17 both.


chore(resources#popmods): replace moment with luxon

This PR replaces moment with luxon.
Why? https://momentjs.com/docs/#/-project-status/

I don't see the benefit of the "from the creators of.." note. It goes against the design of the other list points, where just the package name is highlighted and linked as well. Surely "moment" is a name known by veterans, but really them recommending their new project over moment really suggests that we should just move on with the more modern alternatives instead of sticking to referring back to the older approach.


The output bboxes is so big??

problem
I run the detect.py for testing the resnet50 network and got a output image as follows:

I think the boxes is bigger than their face. It is significantly different from the example in README. What was wrong??
@biubug6

problem
I run the detect.py for testing the resnet50 network and got a output image as follows:

I think the boxes is bigger than their face. It is significantly different from the example in README. What was wrong??
@biubug6

hi，buddy. How to set parameters to get your result? My result is awful, all of the bounding boxes are not locating on faces

problem
I run the detect.py for testing the resnet50 network and got a output image as follows:

I think the boxes is bigger than their face. It is significantly different from the example in README. What was wrong??
@biubug6

hi，buddy. How to set parameters to get your result? My result is awful, all of the bounding boxes are not locating on faces

I just modify the parameter of cpu and network to True and resnet50.

problem
I run the detect.py for testing the resnet50 network and got a output image as follows:

I think the boxes is bigger than their face. It is significantly different from the example in README. What was wrong??
@biubug6

hi，buddy. How to set parameters to get your result? My result is awful, all of the bounding boxes are not locating on faces

I just modify the parameter of cpu and network to True and resnet50.

When first running, the model used is a pre-trained resnet model named 'resnet50-19c8e357.pth'?
I downloaded it manually according to the url path and put it in the right place.
If so, it is strange that I cannot get faces' locations.


fix: "iam:PassRole" defined in CFN to work properly in AWS China

Fixes #6843
Description
This change fixes User <role> is not authorized to perform: iam:PassRole on resource... error in AWS China
How was this change tested?
Manually in aws-cn partition.
Does this change impact docs?

[x] Yes, PR includes docs updates
[ ] Yes, issue opened: #
[ ] No

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

It looks like this is not enough to fix the problem, which is weird.
Originally, with unmodified CFN I got to the point of NodeClaim being created, but stuck in unknown status due to not authorized to perform: iam:PassRole error. After manually editing IAM policy to include .cn suffix in the condition, NodeClaim got unstuck and everything worked fine after that.
Based on this result, I assumed that fix in CFN should work. However, after actually testing it from scratch with new CFN, I got result of EC2NodeClass stuck in unknown status, and controller contains the following in the log:
{"level":"ERROR","time":"2024-08-22T12:14:08.847Z","logger":"controller","message":"Reconciler error","commit":"5bdf9c3","controller":"nodeclass.status","controllerGroup":"karpenter.k8s.aws","controllerKind":"EC2N
odeClass","EC2NodeClass":{"name":"system"},"namespace":"","name":"align-default","reconcileID":"cc596ee6-c7d7-4559-9911-a6a634de7507","error":"creating instance profile, adding role \"KarpenterNodeRole-foo\" to instance profile \"foo_17739752741978510565\", AccessDenied: User: arn:aws-cn:sts::<redacted>:assumed-role/eksctl-foo-addon-ia-Role1-rAgitn6Z4WLZ/1724327649811376400 is not authorized to perform: iam:PassRole on resource: arn:aws-cn:iam::<redacted>:role/KarpenterNodeRole-foo because no identity-based policy allows the iam:PassRole action\n\tstatus code: 403, request id: 96b8440a-6cd2-4cf7-8ec2-0a0eabab5d34"}

Is it possible that controller has some iam simulate policy calls with hardcoded "ec2.amazonaws.com" principal?

Update: completely removing condition block fixes the problem.
However, I'm not sure this is the desired solution.
If everyone is ok with such change, I can update the PR.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>4
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 79.311%

Totals

Change from base Build<PHONE_NUMBER>3:
0.0%

Covered Lines:
5938

Relevant Lines:
7487

💛  - Coveralls

@jonathan-innis Please, check my last 2 comments before merge.
While the change is correct from CFN standpoint, the controller still encounters a problem in AWS China (I don't understand why), and I only managed to avoid the problem by removing the condition block completely.

and I only managed to avoid the problem by removing the condition block completely

The principal that you are giving access to looks correct to me, so not sure why you would be running into issues with the PassRole. Please let me know but we can hold this PR until then

After manually editing IAM policy to include .cn suffix in the condition, NodeClaim got unstuck and everything worked fine after that

It sounds like you were able to get this to work by just editing the condition key originally so I'm surprised if there's anything else that we need to do here.

After manually editing IAM policy to include .cn suffix in the condition, NodeClaim got unstuck and everything worked fine after that

It sounds like you were able to get this to work by just editing the condition key originally so I'm surprised if there's anything else that we need to do here.

Yes, but this implies that we're already at the stage where NodeClaim is created, and EC2NodeClass was created and reconciled before, which for me only works with old condition (without .cn suffix), or without a condition at all.
If I apply new CFN with .cn suffix first, the whole process fails much earlier because EC2NodeClass can't reconcile due to a similar permission error.

which for me only works with old condition (without .cn suffix), or without a condition at all

That sounds odd to me -- I'm surprised that that's the case

That sounds odd to me -- I'm surprised that that's the case

I also don't understand the reason, but those are the test results.
If you have an access to aws-cn partition, you can try yourself - should be quite simple to reproduce. If not, I can gather more data if you'll tell me what to look at.

If you have an access to aws-cn partition, you can try yourself - should be quite simple to reproduce

Yeah, I was going to try and track this down. Don't have an account at this point, but we'll see what I can do :)

Hmmm -- you're right. I was able to repro with the same policy and I'm getting authorization failures. I'm following up with some folks on the EC2 team to see if we can track-down what's going on here.

Ok, so I think I figured out what you're running into here: This seems to be failing because one call (iam:AddRoleToInstanceProfile) expects one iam:PassedToService context key and another call (ec2:RunInstances) expects another. If I get the instance profile created with the role and then drop ec2.amazonaws.com, leaving just ec2.amazonaws.com.cn, everything just works. The problem is getting to that point. I had to craft my policy like below to get it to succeed always.
{
            "Sid": "AllowPassingInstanceRole",
            "Effect": "Allow",
            "Resource": "<>",
            "Action": "iam:PassRole",
            "Condition": {
                "StringLike": {
                    "iam:PassedToService": [
                        "ec2.amazonaws.com",
                        "ec2.amazonaws.com.cn"
                    ]
                }
            }
        },

Something seems weird here (this definitely isn't behavior I would expect) so I'm following-up with some folks to see if I can make some headway.

Ok, confirmed with the EC2 folks -- this is just "the way it is" so we have to code in a conditional into the CF code to make sure both SPs get added in China. @artem-nefedov Is this something that you want to add?

Potentially related: https://github.com/aws/aws-cdk/issues/1282

@jonathan-innis I've updated PR accordingly. If it would make sense to also add service names from other AWS partitions, I'm not aware what these are.

@jonathan-innis My bad, I didn't notice the "conditional" part, let me change this

I use a mapping instead of a condition because there could be more than 2 partitions.
@jonathan-innis Check 441e05859904256b41b0e1b120df85a43c15960c.  Does this look correct to you?

Is it even possible to use functions inside json that's passed as a string

Ah, yeah, that's a good point -- we are doing a substitution at the top above that should allow us to replace everything in the string, but you would have to have the function resolve the value outside of that context.
The good news is that we are close to completely remove the need to "stringify" this whole thing. The whole reason we had to is because you can't template permission policies around keys for aws:RequestTag and aws:ResourceTag in YAML. With the addition of eks:eks-cluster-name, we should be able to remove scoping on kubernetes.io/cluster/<cluster-name> and replace it with eks:eks-cluster-name -- allowing us to use YAML.
I suspect that would also simplify the integration here as well.

Would it be acceptable to put a hardcoded list for the time being in order to unblock AWS China users?
I don't think that would compromise security in AWS Global.

Would it be acceptable to put a hardcoded list for the time being in order to unblock AWS China users

Yep, seems reasonable to me.

@jonathan-innis for some reason, URLs for all releases (including new one v1.0.2) still return old policy without the list:
https://raw.githubusercontent.com/aws/karpenter-provider-aws/v1.0.2/website/content/en/preview/getting-started/getting-started-with-karpenter/cloudformation.yaml
Even though documentation section here was changed to include the list:
https://karpenter.sh/v1.0/reference/cloudformation/#allowpassinginstancerole


(#21103) Add puppet yum provider retry operation

Without this feature, yum provider would have failed operation in progress if any yum operation had failed single time, which would cause, for example, wanted package installation failed and all dependencies skipped considering puppet agent run as failed.
This is a problem because provider should ensure operation completion a better way, at least it should try to expire local cache for yum and retry failed operation.
Solution/Improvement: If operation wanted had failed, puppet provider for yum would try to expire cache and redo failed operation for several times (3 is default. TODO - make it configurable via conf file.)
Why it is a good improvement: That might restore failed operation in some cases (f.e. broken or outdated metadata file in cache which would cause "Error 256 No more mirrors to try") and allow puppet to continue its operations.
TODO - add tests
Signed-off-by: Bogdan Dobrelya<EMAIL_ADDRESS>

I realize that commenting on a two-year-old thread is a bit of necromancy, but this problem is still alive and well in my organization (I swear, something is wrong with our network, but I'll happily blame yum). Let me bring one new point to the table, though...
You accept retries on the exec resource (via the tries attribute), why not on package?
https://docs.puppet.com/puppet/latest/reference/type.html#exec-attribute-tries
I have to convert my nice package resource chains into one nasty exec now. I lose all the benefits of using the package resource (except that this one works more reliably).
yum install --assumeyes foo bar baz || (yum clean expire-cache && yum history redo last)

Maybe it's enough to put the expire-cache statement at the beginning of my manifest, before any package resources, but I'm not sure. The problem is transient enough.


added keepScripts URI param to leave scripts in the rendered output

Rendertron can be used for SSR. For this scenario we should leave scripts in the rendered output. Added keepScripts query param to enable this feature. By default, render endpoint falls back to the old behavior (strips all scripts)

@godgav Thank you very much for your contribution.
As far as I can tell, this PR implements two new features: keepScripts and waitForSelector.
Regarding keepScripts, I'm not sure about this use case to be honest. If you want proper SSR (with or without hydration), there are many much better-suited options available. Besides the various SSR solutions for popular frameworks such as next.js, nuxt.js or Angular Universal also things like razzle are much more robust and usually faster as they don't have to spin up a headless browser.
With regards to waitForSelector, what's the use case there?


Remove duplicated CSS property in 'rct-item-content'

Overview of PR
Just a small cleanup during work on my implementation, nothing fancy.

good catch thanks!


[FR/ Enhancement] Canvas Support

Being able to change embeded cards' colors based on tags, metadata, filepath just like links.
Alternative / Extra:
Being able to supercharge cards' inline title (when active) or filename on top.

This plugin helps a ton in terms of skimming easily all around the app. Since Canvas is about birds' eye view and laying down notes next to each other, Supercharged Links would be a great for that.
For example, distinguishing literature notes, permanent notes and fleeting notes when zoomed out.

I think this needs to be a bit more specific. Automatically changing the card colour could be confusing when users attempt to manually set it. And I'm not sure what you mean with the cards title

Good point. Maybe not changing the whole color but only changing  border's color. I'm not sure, I can't think of a better way at the moment.
This is what I meant by cards' title:


Cleanup bottleneck setup

The bottleneck debug setup was a bit janky. This also adds a specific debug line for dropped commands so that users can see if this functionality is being hit or not. I still think there is likely work to be done with the dropped commands. I think they'd still be executing in the child process even when dropped. I'm thinking we'll have to keep track of all child processes in the PerforceService and then call end on any processes that come through the onCommandDropped callback similar to how you're ending them in execCommand currently:
var child = CP.exec(cmdLine, cmdArgs, responseCallback);

if (input != null) {
    child.stdin.end(input, 'utf8');
}

This extension is being deprecated, please have a look at mjcrouch 2020 Fork


core: capture exceptions caused by unregistered provider and auto-register it

General Guidelines

[x] The PR has modified HISTORY.rst with an appropriate description of the change (see Modifying change log).

Command Guidelines

[x] Each command and parameter has a meaningful description.
[x] Each new command has a test.

(see Authoring Command Modules)

Codecov Report

Merging #3045 into master will decrease coverage by 0.13%.
The diff coverage is 87.23%.

@@            Coverage Diff             @@
##           master    #3045      +/-   ##
==========================================
- Coverage    63.1%   62.97%   -0.14%
==========================================
  Files         484      484
  Lines       27625    27644      +19
  Branches     4280     4269      -11
==========================================
- Hits        17434    17410      -24
- Misses       9035     9078      +43
  Partials     1156     1156

Impacted Files
Coverage Δ

...urce/azure/cli/command_modules/resource/_params.py
100% <100%> (ø)
:arrow_up:

...azure-cli-core/azure/cli/core/commands/__init__.py
85.51% <100%> (+3.64%)
:arrow_up:

...ource/azure/cli/command_modules/resource/custom.py
49.46% <60%> (-0.64%)
:arrow_down:

.../azure/cli/command_modules/resource/_validators.py
87.5% <0%> (-12.5%)
:arrow_down:

...cli-core/azure/cli/core/commands/_introspection.py
83.11% <0%> (-11.69%)
:arrow_down:

...command_modules/azure-cli-shell/azclishell/util.py
60.34% <0%> (-6.9%)
:arrow_down:

src/azure-cli-core/azure/cli/core/prompting.py
24.09% <0%> (-6.03%)
:arrow_down:

...c/azure-cli-testsdk/azure/cli/testsdk/utilities.py
27.27% <0%> (-4.55%)
:arrow_down:

...-cli-acs/azure/cli/command_modules/acs/_actions.py
51.92% <0%> (-3.85%)
:arrow_down:

src/azure-cli-core/azure/cli/core/_session.py
66.66% <0%> (-3.71%)
:arrow_down:

... and 14 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 0184a16...9893343. Read the comment docs.

Fix CI first, of course.

Ping @derekbekoe @vivsriaus


Add Pathways section, filters and download link

WIP - Until the links PR is merged and I can finish the link to pathways part. Also methodology is missing
This PR adds the pathways section to the data explorer:

[x]  Add section on the router
[x]  Fetch data, metadata from the production URL
[x]  Add filters
[x]  Fix download link
[x] Add methodology from the different model, scenario, and indicator
[x]  Fix double fetching
[x]  Fix link to the module with params

The links PR is now merged.

@Bluesmile82 is this ready for review? can we remove the WIP?

Ready!

Should work now! Region locations are showing an id on the fetch because they don't have a iso_code

So the backend needs to adapt to this? @agnessa can the backend handle the id if that is passed? or should we create "fake" iso's?

The link back from the Data Explorer to Pathways doesn't seem to be working when selecting a location that has an ISO code. As it doesn't get translated to an id.

Ready again! Thanks for the catch. Too many edge cases 😅

@Bluesmile82 just a doubt, would make sense to store the bulk data (without filters) and use it when filters are cleared instead of fetching again all the data every time the user clears a selection?

I agree that this is maybe depending too much on the backend but after implementing pagination the load time will be much faster

There's another PR with pre-filtering across selectors, so maybe that can be done afterwards!


Fix mixed closed and open generics IEnumerable resolving again

Same as https://github.com/aspnet/DependencyInjection/pull/530 but with a bug fixed

@pakrym Did this make it into 2.0.0-preview2-final? Or is this an RTM fix?

RTM


Unexpected error when plotting data points

Trying to plot some data points using sublime text and I get this error. Any help would be appreciated.
Command ran:
from manimlib.imports import *

#Function to return data from .csv file to an array

def get_coords_from_csv(coronavirus_data):
    import csv
    coords = []
    with open(f'coronavirus_data.csv', 'r') as csvFile:
        reader = csv.reader(csvFile)
        for row in reader:
            x,y = row
            coord = [float(x),float(y)]
            coords.append(coord)
    csvFile.close()
    return coords

class GraphFromData(GraphScene):
	def get_points_from_coords(self,coords):
		return[
		self.coords_to_point(px,py)
		for px,py in coords
		]

	def get_dots_from_coords(self, coords, radius=0.1):
		points = self.get_points_from_coords(coords)
		dots = VGroup(*[
			Dot(radius=radius).move_to([px,py,pz])
			for px,py,pz in points
			]
		)
		return dots

class DiscreteGraphFromSetPoints(VMobject):
	def __init__(self, set_of_points, **kwargs):
		super().__init__(**kwargs)
		self.set_points_as_corners(set_of_points)

class SmoothGraphFromSetPoints(VMobject):
	def __init__(self, set_of_points, **kwargs):
		super().__init__(**kwargs)
		self.set_points_smoothly(set_of_points)

#Graph with set of points
class CustomGraph1(GraphFromData):
	def construct(self):
		self.setup_axes()
		coords = get_coords_from_csv("coronavirus_data")
		dots = self.get_dots_from_coords(coords)
		self.add(dots)

The error:
Traceback (most recent call last):
File "/Users/lewis/Documents/animation/manim/manimlib/extract_scene.py", line 155, in main
scene = SceneClass(**scene_kwargs)
File "/Users/lewis/Documents/animation/manim/manimlib/scene/scene.py", line 53, in init
self.construct()
File "coronavirus.py", line 49, in construct
coords = get_coords_from_csv("coronavirus_data")
File "coronavirus.py", line 13, in get_coords_from_csv
coord = [float(x),float(y)]
ValueError: could not convert string to float: '\ufeff1'
Many thanks :)

This issue is not related to manim.
Your CSV file has a "byte order mark" (BOM- FEFF). Don't be upset... BOM is designed to break things that should work. :-/
Just remove the first byte from your CSV. I think it is a good idea to use a good editor that does not put invisible garbage into your file.


Start actual extractions on verified reference datasets

Discuss with Christina on which files can be used for initial extractions
extractions directory: /vitodata/worldcereal_data/EXTRACTIONS

@cbutsko will work on an example reference dataset that can server as the source for the first real extraction pipeline.
@GriffinBabe, let Christina know what you'd need exactly!


lmb-793: update the email value where the emails should come from

Description
The credentials for the email sender where not set. This is a PR so the email is already defined (from jira ticket Tim)
How to test
Cannot test without password, look if the value is good

Looks good, but do you know the password as well? Because this should be updated in the override on the server (not sure about test and dev, but certainly on prod) when merged.

Haha nope that was something that we will get from person X that is in Tims ticket


跨网视频首次黑屏，第二次以后正常

复现步骤：
a设备与b设备处于不同网络，一个wifi一个4g，
a，b启动demo app，进入p2p sample。
a设备呼叫b设备（或者b呼叫a），a、b都只能看到自己的画面，对方画面黑色，声音也听不到。
挂断后再次a设备呼叫b设备（或者b呼叫a），画面都正常了，双方都能看到对方画面。
所用服务器是自己用flutter_webrtc_server项目搭建的，经过https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/      测试正常
请问第一次黑屏是什么原因呢？另外如果双方都处于同一wifi下，那么就完全正常了

看日志都正常收到了视频帧，也正常渲染了，为什么却显示黑屏呢

I/org.webrtc.Logging(21429): CameraStatistics: Camera fps: 30.
I/org.webrtc.Logging(21429): EglRenderer: Duration: 4003 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
I/org.webrtc.Logging(21429): EglRenderer: Duration: 4005 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
I/org.webrtc.Logging(21429): EglRenderer: Duration: 4003 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
I/org.webrtc.Logging(21429): CameraStatistics: Camera fps: 30.
I/flutter (21429): Received data: {}
I/org.webrtc.Logging(21429): EglRenderer: Duration: 4001 ms. Frames received: 120. Dropped: 0. Rendered: 120. Render fps: 30.0. Average render time: 2979 us. Average swapBuffer time: 1967 us.
I/org.webrtc.Logging(21429): CameraStatistics: Camera fps: 30.
I/org.webrtc.Logging(21429): EglRenderer: Duration: 4004 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
I/org.webrtc.Logging(21429): EglRenderer: Duration: 4003 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
I/org.webrtc.Logging(21429): EglRenderer: Duration: 4004 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
I/org.webrtc.Logging(21429): CameraStatistics: Camera fps: 30.
I/org.webrtc.Logging(21429): EglRenderer: Duration: 4001 ms. Frames received: 120. Dropped: 0. Rendered: 120. Render fps: 30.0. Average render time: 2875 us. Average swapBuffer time: 1879 us.
I/org.webrtc.Logging(21429): CameraStatistics: Camera fps: 30.
I/org.webrtc.Logging(21429): EglRenderer: Duration: 4004 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
I/flutter (21429): Received data: {}
I/FrameFlow(21429): FrameFlowInit app is not supported by frameflow solution
2
I/org.webrtc.Logging(21429): EglRenderer: Duration: 4003 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
I/org.webrtc.Logging(21429): CameraStatistics: Camera fps: 30.
I/org.webrtc.Logging(21429): EglRenderer: Duration: 4003 ms. Frames received: 120. Dropped: 0. Rendered: 120. Render fps: 30.0. Average render time: 3179 us. Average swapBuffer time: 2047 us.
I/org.webrtc.Logging(21429): CameraStatistics: Camera fps: 30.
I/org.webrtc.Logging(21429): EglRenderer: Duration: 4002 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
I/org.webrtc.Logging(21429): EglRenderer: Duration: 4004 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
I/flutter (21429): Received data: {}
I/org.webrtc.Logging(21429): EglRenderer: Duration: 4010 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
I/org.webrtc.Logging(21429): CameraStatistics: Camera fps: 30.
V/PlayerBase(21429): baseRelease() piid=11807 state=0
I/org.webrtc.Logging(21429): EglRenderer: Duration: 4000 ms. Frames received: 120. Dropped: 0. Rendered: 120. Render fps: 30.0. Average render time: 2990 us. Average swapBuffer time: 1846 us.
I/org.webrtc.Logging(21429): CameraStatistics: Camera fps: 30.

你可以尝试在第一次呼叫时切换横竖屏，

多谢大佬回复，现在发现问题主要还是不稳定的问题，不同机型稳定性不同，我在您的flutter webrtc插件中提了issue，麻烦您看下，感谢感谢


terraform_tracker Lambda doesn't send notifications if you're using AssumeRole

We don't use this Lambda any more!


feat: update set contract uri of the seller

Codecov Report

Merging #462 (7fe05ce) into main (a567fc5) will decrease coverage by 0.10%.
The diff coverage is 25.00%.

@@            Coverage Diff             @@
##             main     #462      +/-   ##
==========================================
- Coverage   54.75%   54.65%   -0.10%
==========================================
  Files         127      127
  Lines        3680     3692      +12
  Branches      625      629       +4
==========================================
+ Hits         2015     2018       +3
- Misses       1665     1674       +9

Flag
Coverage Δ

common
84.82% <ø> (ø)

core-sdk
51.22% <25.00%> (-0.11%)
:arrow_down:

eth-connect-sdk
18.30% <ø> (ø)

ethers-sdk
67.12% <ø> (ø)

ipfs-storage
94.02% <ø> (ø)

metadata
97.56% <ø> (ø)

unittests
54.65% <25.00%> (-0.10%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

packages/core-sdk/src/voucher/mixin.ts
20.51% <14.28%> (-0.62%)
:arrow_down:

packages/core-sdk/src/voucher/handler.ts
28.88% <33.33%> (+0.31%)
:arrow_up:

packages/core-sdk/src/voucher/interface.ts
51.11% <50.00%> (-0.06%)
:arrow_down:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more