Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

aws-appsync/redux-offline/netinfo is at 4.7.0 which conflicts with expo 37 which requires 5.5.0 #5359

Closed
danalexilewis opened this issue Apr 10, 2020 · 25 comments
Assignees
Labels
React Native React Native related issue

Comments

@danalexilewis
Copy link

Hi team,

I am currently working in an expo/amplify project in response to Covid19 - different because of the emphasis on privacy unlike other app initatives.

In any case I am running into an issue where expo have moved to using netinfo 5.5.1 on the latest SDK 37 and it looks like the api changed in the last major release.

Looking at the code here it looks like it would be easy for you to upgrade to using the new API and then be able to version bump the package here

Hopefully its a really easy fix - I don't know what I don't know when I look at this :)

cheers
Dan

@jordanranz jordanranz added the React Native React Native related issue label Apr 10, 2020
@amhinson
Copy link
Contributor

Hey @agentlewis, we can definitely take a look at this. Just for reference, what is the current behavior you're seeing in Expo? Is the app crashing, or just showing a warning?

@Ashish-Nanda
Copy link
Contributor

Hi @agentlewis. Can you give more detail about the issue you are facing with NetInfo. What all are you using from Amplify? The version of the dependency you linked is a devDependency.

If you are installing NetInfo in your app, you should be able to use 5.5.1, as can be seen from the peerDependencies here

I have used 5.5.1 in an app that uses DataStore on React Native and it works fine. Based on the issue you linked it seems you are using the AppsyncSDK as well. There we have a hard dependency on 4.7.0 because of redux-offline using the old API.

If you can give us more detail about what you are using from amplify and whether you are using appsync-sdk, it will be easier to diagnose and fix the problem.

@Ashish-Nanda
Copy link
Contributor

Ok I can see your package.json file includes aws-appsync.
Could you share the exact error you are getting? Also does SDK 37 not allow you to use v4.7.0, like you could if you used a RN CLI app?

Based on your answers to the above we can look at some paths forward.

@danalexilewis
Copy link
Author

danalexilewis commented Apr 10, 2020

Hey @amhinson and @Ashish-Nanda thanks for getting back to me.

You are indeed both correct - after posting this I carried on going through the logs/dependencies and realised that indeed aws-async uses redux-offline which needs 4.7.0.

Could you share the exact error you are getting?

Yes of course :

Screenshot of pop over error in expo-client loading on Android (newish phone)

Screenshot_20200411-082720_Expo

And this warning

Screenshot_20200411-083425_Expo

Also does SDK 37 not allow you to use v4.7.0, like you could if you used a RN CLI app?

It throws a warning about it not being 5.5.1 and then an error about getConnectionInfo either not being a function or expecting 2 arguments and got 3.

I will take another look at this today and see if I can get some more info, I think the errors out of the expo log may be more informative then those on the phone 🐥. Thanks 🙏

@danalexilewis
Copy link
Author

danalexilewis commented Apr 10, 2020

Yes the error from the expo metro log is wayyyy more helpful. Please note the other two images are just what is seen on the expo client.


[Unhandled promise rejection: TypeError: _netinfo.default.getConnectionInfo is not a function. (In '_netinfo.default.getConnectionInfo()', '_netinfo.default.getConnectionInfo' is undefined)]
- node_modules\@redux-offline\redux-offline\lib\defaults\detectNetwork.native.js:96:14 in _callee2$
- node_modules\regenerator-runtime\runtime.js:45:44 in tryCatch
- node_modules\regenerator-runtime\runtime.js:274:30 in invoke
- node_modules\@babel\runtime\helpers\asyncToGenerator.js:2:6 in asyncGeneratorStep
- node_modules\@babel\runtime\helpers\asyncToGenerator.js:24:6 in _next
* http://192.168.1.23:19001/node_modules%5Cexpo%5CAppEntry.bundle?platform=android&dev=true&minify=false&hot=false:501323:14 in <unknown>
- node_modules\promise\setimmediate\core.js:45:7 in tryCallTwo
- node_modules\promise\setimmediate\core.js:200:23 in doResolve
- node_modules\promise\setimmediate\core.js:66:12 in Promise
- node_modules\@babel\runtime\helpers\asyncToGenerator.js:20:15 in <anonymous>
* http://192.168.1.23:19001/node_modules%5Cexpo%5CAppEntry.bundle?platform=android&dev=true&minify=false&hot=false:502627:17 in DetectNetwork
- node_modules\@redux-offline\redux-offline\lib\defaults\detectNetwork.native.js:224:24 in _default
- node_modules\@redux-offline\redux-offline\lib\index.js:70:17 in <anonymous>
- node_modules\redux\lib\applyMiddleware.js:37:30 in <anonymous>
- node_modules\aws-appsync\lib\store.js:80:4 in newStore
- node_modules\aws-appsync\lib\client.js:186:120 in AWSAppSyncClient
* http://192.168.1.23:19001/node_modules%5Cexpo%5CAppEntry.bundle?platform=android&dev=true&minify=false&hot=false:374042:39 in <unknown>
- node_modules\metro\src\lib\polyfills\require.js:322:6 in loadModuleImplementation
* http://192.168.1.23:19001/node_modules%5Cexpo%5CAppEntry.bundle?platform=android&dev=true&minify=false&hot=false:124246:55 in <unknown>
- node_modules\metro\src\lib\polyfills\require.js:322:6 in loadModuleImplementation
- node_modules\expo\AppEntry.js:3:0 in <global>
- node_modules\metro\src\lib\polyfills\require.js:322:6 in loadModuleImplementation
- node_modules\metro\src\lib\polyfills\require.js:201:45 in guardedLoadModule
* http://192.168.1.23:19001/node_modules%5Cexpo%5CAppEntry.bundle?platform=android&dev=true&minify=false&hot=false:505560:4 in global code

[Unhandled promise rejection: TypeError: _netinfo.default.getConnectionInfo is not a function. (In '_netinfo.default.getConnectionInfo()', '_netinfo.default.getConnectionInfo' is undefined)]
- node_modules\@redux-offline\redux-offline\lib\defaults\detectNetwork.native.js:197:16 in _callee4$
- node_modules\regenerator-runtime\runtime.js:45:44 in tryCatch
- node_modules\regenerator-runtime\runtime.js:274:30 in invoke
- node_modules\@babel\runtime\helpers\asyncToGenerator.js:2:6 in asyncGeneratorStep
- node_modules\@babel\runtime\helpers\asyncToGenerator.js:24:6 in _next
* http://192.168.1.23:19001/node_modules%5Cexpo%5CAppEntry.bundle?platform=android&dev=true&minify=false&hot=false:501323:14 in <unknown>
- node_modules\promise\setimmediate\core.js:45:7 in tryCallTwo
- node_modules\promise\setimmediate\core.js:200:23 in doResolve
- node_modules\promise\setimmediate\core.js:66:12 in Promise
- node_modules\@babel\runtime\helpers\asyncToGenerator.js:20:15 in <anonymous>
- node_modules\react-native\Libraries\AppState\AppState.js:89:20 in addListener$argument_1
- node_modules\react-native\Libraries\vendor\emitter\EventEmitter.js:190:12 in emit
- node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:436:47 in __callFunction
- node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:111:26 in __guard$argument_0
- node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:384:10 in __guard
- node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:110:17 in __guard$argument_0
* [native code]:null in callFunctionReturnFlushedQueue

// Some cognito user login  logs are between these promise rejections

[Unhandled promise rejection: TypeError: _netinfo.default.getConnectionInfo is not a function. (In '_netinfo.default.getConnectionInfo()', '_netinfo.default.getConnectionInfo' is undefined)]
- node_modules\@redux-offline\redux-offline\lib\defaults\detectNetwork.native.js:197:16 in _callee4$
- node_modules\regenerator-runtime\runtime.js:45:44 in tryCatch
- node_modules\regenerator-runtime\runtime.js:274:30 in invoke
- node_modules\@babel\runtime\helpers\asyncToGenerator.js:2:6 in asyncGeneratorStep
- node_modules\@babel\runtime\helpers\asyncToGenerator.js:24:6 in _next
* http://192.168.1.23:19001/node_modules%5Cexpo%5CAppEntry.bundle?platform=android&dev=true&minify=false&hot=false:501323:14 in <unknown>
- node_modules\promise\setimmediate\core.js:45:7 in tryCallTwo
- node_modules\promise\setimmediate\core.js:200:23 in doResolve
- node_modules\promise\setimmediate\core.js:66:12 in Promise
- node_modules\@babel\runtime\helpers\asyncToGenerator.js:20:15 in <anonymous>
- node_modules\react-native\Libraries\AppState\AppState.js:89:20 in addListener$argument_1
- node_modules\react-native\Libraries\vendor\emitter\EventEmitter.js:190:12 in emit
- node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:436:47 in __callFunction
- node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:111:26 in __guard$argument_0
- node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:384:10 in __guard
- node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:110:17 in __guard$argument_0
* [native code]:null in callFunctionReturnFlushedQueue

[Unhandled promise rejection: TypeError: _netinfo.default.getConnectionInfo is not a function. (In '_netinfo.default.getConnectionInfo()', '_netinfo.default.getConnectionInfo' is undefined)]
- node_modules\@redux-offline\redux-offline\lib\defaults\detectNetwork.native.js:197:16 in _callee4$
- node_modules\regenerator-runtime\runtime.js:45:44 in tryCatch
- node_modules\regenerator-runtime\runtime.js:274:30 in invoke
- node_modules\@babel\runtime\helpers\asyncToGenerator.js:2:6 in asyncGeneratorStep
- node_modules\@babel\runtime\helpers\asyncToGenerator.js:24:6 in _next
* http://192.168.1.23:19001/node_modules%5Cexpo%5CAppEntry.bundle?platform=android&dev=true&minify=false&hot=false:501323:14 in <unknown>
- node_modules\promise\setimmediate\core.js:45:7 in tryCallTwo
- node_modules\promise\setimmediate\core.js:200:23 in doResolve
- node_modules\promise\setimmediate\core.js:66:12 in Promise
- node_modules\@babel\runtime\helpers\asyncToGenerator.js:20:15 in <anonymous>
- node_modules\react-native\Libraries\AppState\AppState.js:89:20 in addListener$argument_1
- node_modules\react-native\Libraries\vendor\emitter\EventEmitter.js:190:12 in emit
- node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:436:47 in __callFunction
- node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:111:26 in __guard$argument_0
- node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:384:10 in __guard
- node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:110:17 in __guard$argument_0
* [native code]:null in callFunctionReturnFlushedQueue

@sammartinez sammartinez added the question General question label Apr 10, 2020
@danalexilewis danalexilewis changed the title Bump Neinfo to 5.5.1? Bump Neinfo to 5.5.1? & aws-appsync/redux-offline/netinfo is at 4.7.0 which conflicts with expo 37 Apr 10, 2020
@danalexilewis
Copy link
Author

danalexilewis commented Apr 10, 2020

not a great title - I'll update it to something more descriptive later.
This issue feels very similar: redux-offline/redux-offline#381

@Ashish-Nanda
Copy link
Contributor

Ashish-Nanda commented Apr 10, 2020

@agentlewis Thanks for the detailed response.

Can you try the following:

Delete node modules:
rm -rf node_modules

Install the specific version (4.7.0) of NetInfo:
npm install --save @react-native-community/netinfo@4.7.0

and npm install your other depedencies.

I'm pretty sure this should work, since it has worked for a customer using Expo 36 in the past. You can see the discussion and solution here

I will also try to upgrade NetInfo in the AppSync SDK, but the above solution would be your quickest path to getting unblocked.

@danalexilewis
Copy link
Author

danalexilewis commented Apr 10, 2020

@Ashish-Nanda Hey there, I tried the above and:

It updates expo to 37.0.7

and

then installs netinfo 5.5.1

resulting/current package.json in case you can spot a mole to wack!

{
    "main": "node_modules/expo/AppEntry.js",
    "scripts": {
        "modelgen": "node amplify/scripts/amplify-modelgen.js",
        "amplify-push": "node amplify/scripts/amplify-push.js",
        "build": "expo build:web",
        "start": "expo start",
        "android": "expo start --android",
        "ios": "expo start --ios",
        "web": "expo start --web",
        "eject": "expo eject",
        "seed:db": "node scripts/seed.js",
        "seed:gen": "node scripts/generate-fake-data.js",
        "rm": "rm -rf node_modules && rm yarn.lock && rm package-lock.json",
        "scrub": "yarn cache clean && yarn install"
    },
    "dependencies": {
        "@aws-amplify/analytics": "^3.1.6",
        "@aws-amplify/api": "^3.1.6",
        "@aws-amplify/auth": "^3.2.3",
        "@aws-amplify/core": "^3.2.3",
        "@aws-amplify/datastore": "^2.0.4",
        "@aws-amplify/interactions": "^3.1.6",
        "@aws-amplify/pubsub": "^3.0.7",
        "@aws-amplify/storage": "^3.1.6",
        "@aws-amplify/xr": "^2.1.6",
        "@expo/vector-icons": "^10.0.0",
        "@react-native-community/async-storage": "^1.9.0",
        "@react-native-community/masked-view": "0.1.6",
        "@react-native-community/netinfo": "5.5.1",
        "@react-navigation/bottom-tabs": "^5.2.6",
        "@react-navigation/native": "^5.1.5",
        "@react-navigation/stack": "^5.2.10",
        "apollo-boost": "^0.4.7",
        "apollo-client": "^2.6.8",
        "aws-amplify": "^3.0.7",
        "aws-amplify-react": "^4.1.6",
        "aws-appsync": "^3.0.2",
        "aws-appsync-react": "^3.0.2",
        "base-64": "^0.1.0",
        "binconv": "^0.2.0",
        "date-fns": "^2.11.1",
        "expo": "^37.0.7",
        "expo-crypto": "~8.1.0",
        "expo-device": "~2.1.0",
        "expo-random": "~8.1.0",
        "expo-secure-store": "~8.1.0",
        "graphql": "^14.0.0",
        "graphql-tag": "^2.10.3",
        "react": "16.9.0",
        "react-apollo": "^3.1.4",
        "react-dom": "16.9.0",
        "react-native": "https://github.com/expo/react-native/archive/sdk-37.0.1.tar.gz",
        "react-native-elements": "^1.2.7",
        "react-native-gesture-handler": "~1.6.0",
        "react-native-reanimated": "~1.7.0",
        "react-native-safe-area-context": "0.7.3",
        "react-native-screens": "~2.2.0",
        "react-native-vector-icons": "^6.6.0",
        "react-native-web": "^0.11.7",
        "string-encode": "^0.2.1"
    },
    "devDependencies": {
        "@babel/core": "^7.9.0",
        "@babel/runtime": "^7.9.2",
        "@types/react": "^16.9.23",
        "@types/react-native": "^0.61.17",
        "aws-sdk": "^2.651.0",
        "babel-preset-expo": "^8.1.0",
        "casual": "^1.6.2",
        "ini": "^1.3.5",
        "inquirer": "^6.5.1",
        "typescript": "^3.8.3"
    },
    "private": true
}

@Ashish-Nanda
Copy link
Contributor

Ashish-Nanda commented Apr 11, 2020

@agentlewis I just cloned your app which has a package.json file like the one above. I used this branch: https://github.com/Ecosify/COVID-Community-Health-App/tree/chor/readme-and-build

  1. I then deleted the yarn.lock and package-lock.json files.

  2. Deleted node_modules

  3. I edited the package.json file directly to set the correct version of NetInfo:

"@react-native-community/netinfo": "4.7.0"
  1. Then ran yarn

Now my package.json, yarn.lock and node_modules, all have the correct version of NetInfo (4.7.0)

I cant run the app to confirm because I dont have the exports file, or know how you have configured the backend. But since you do not have the correct version of NetInfo being installed, lets try the above first to see if it installs correctly for you.

Here is the diff after the above steps:

diff --git a/package.json b/package.json
index 375e88c..804a389 100644
--- a/package.json
+++ b/package.json
@@ -19,7 +19,7 @@
         "@expo/vector-icons": "^10.0.0",
         "@react-native-community/async-storage": "^1.9.0",
         "@react-native-community/masked-view": "0.1.6",
-        "@react-native-community/netinfo": "5.5.1",
+        "@react-native-community/netinfo": "4.7.0",
         "@react-navigation/bottom-tabs": "^5.2.6",
         "@react-navigation/native": "^5.1.5",
         "@react-navigation/stack": "^5.2.10",


diff --git a/yarn.lock b/yarn.lock
index 9d7c531..acff634 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -2394,10 +2394,10 @@
   resolved "https://registry.yarnpkg.com/@react-native-community/masked-view/-/masked-view-0.1.6.tgz#c7f2ac187c1f25aa8c30d11baa8f4398eca3bb84"
   integrity sha512-PpMoeXwPUoldCRKDuSi+zK5rT+sJTW6ri6RdGPkSKRzU77Q1d9IaR0O5IKvBj0XSdL3p+dcOa05gk35aGDffBQ==
 
-"@react-native-community/netinfo@5.5.1":
-  version "5.5.1"
-  resolved "https://registry.yarnpkg.com/@react-native-community/netinfo/-/netinfo-5.5.1.tgz#6433d4d9d5fbe836f019e5a88a6a24b6e2dc50b9"
-  integrity sha512-6NKX/WzzC5FP2RSzoq+7CW/iIiRL2S6yN0JKiGvZ8EWAzJ43dbX5KG4kRa1JiKopAal5Vyh80dymbygeylwekQ==
+"@react-native-community/netinfo@4.7.0":
+  version "4.7.0"
+  resolved "https://registry.yarnpkg.com/@react-native-community/netinfo/-/netinfo-4.7.0.tgz#7482d36836cac69d0a0ae25581f65bc472639930"
+  integrity sha512-a/sDB+AsLEUNmhAUlAaTYeXKyQdFGBUfatqKkX5jluBo2CB3OAuTHfm7rSjcaLB9EmG5iSq3fOTpync2E7EYTA==
 
 "@react-navigation/bottom-tabs@^5.2.6":
   version "5.2.6"

@danalexilewis
Copy link
Author

danalexilewis commented Apr 11, 2020

Hey @Ashish-Nanda

Sorry you couldn't build the project - we should have added a default file in git.

Try creating and adding this to src/aws-exports.js

// WARNING: DO NOT EDIT. This file is automatically generated by AWS Amplify. It will be overwritten.

const awsmobile = {
    "aws_project_region": "us-west-2",
    "aws_cognito_region": "us-west-2",
    "aws_user_pools_id": "example",
    "aws_user_pools_web_client_id": "example",
    "oauth": {},
    "aws_appsync_graphqlEndpoint": "example",
    "aws_appsync_region": "example",
    "aws_appsync_authenticationType": "AMAZON_COGNITO_USER_POOLS",
    "aws_content_delivery_bucket": "example",
    "aws_content_delivery_bucket_region": "us-west-2",
    "aws_content_delivery_url": "http://example.s3-website-us-west-2.amazonaws.com"
};


export default awsmobile;

It should be able to build then - but may error. To get the correct version of that file you need to go through the amplify configure and amplify pull process.

Running with 4.7.0

Regarding your steps to force set the version. I had done this previously, but just tried again now.

Confirming changes after following your instructions with diffing (happy to discover Diff syntax highlighting):

diff --git a/package.json b/package.json
index d816805..913faba 100644
--- a/package.json
+++ b/package.json
@@ -27,7 +27,7 @@
         "@expo/vector-icons": "^10.0.0",
         "@react-native-community/async-storage": "^1.9.0",
         "@react-native-community/masked-view": "0.1.6",
-        "@react-native-community/netinfo": "5.5.1",
+        "@react-native-community/netinfo": "4.7.0",
         "@react-navigation/bottom-tabs": "^5.2.6",
         "@react-navigation/native": "^5.1.5",
         "@react-navigation/stack": "^5.2.10",
@@ -40,7 +40,7 @@
         "base-64": "^0.1.0",
         "binconv": "^0.2.0",
         "date-fns": "^2.11.1",
-        "expo": "^37.0.3",
+        "expo": "^37.0.7",
         "expo-crypto": "~8.1.0",
         "expo-device": "~2.1.0",
         "expo-random": "~8.1.0",

  resolved "https://registry.yarnpkg.com/@react-native-community/masked-view/-/masked-view-0.1.6.tgz#c7f2ac187c1f25aa8c30d11baa8f4398eca3bb84"
   integrity sha512-PpMoeXwPUoldCRKDuSi+zK5rT+sJTW6ri6RdGPkSKRzU77Q1d9IaR0O5IKvBj0XSdL3p+dcOa05gk35aGDffBQ==

-"@react-native-community/netinfo@5.5.1":
-  version "5.5.1"
-  resolved "https://registry.yarnpkg.com/@react-native-community/netinfo/-/netinfo-5.5.1.tgz#6433d4d9d5fbe836f019e5a88a6a24b6e2dc50b9"
-  integrity sha512-6NKX/WzzC5FP2RSzoq+7CW/iIiRL2S6yN0JKiGvZ8EWAzJ43dbX5KG4kRa1JiKopAal5Vyh80dymbygeylwekQ==
+"@react-native-community/netinfo@4.7.0":
+  version "4.7.0"
+  resolved "https://registry.yarnpkg.com/@react-native-community/netinfo/-/netinfo-4.7.0.tgz#7482d36836cac69d0a0ae25581f65bc472639930"
+  integrity sha512-a/sDB+AsLEUNmhAUlAaTYeXKyQdFGBUfatqKkX5jluBo2CB3OAuTHfm7rSjcaLB9EmG5iSq3fOTpync2E7EYTA==

Running the result does not show me anything in the expo metro logs. I just get this error screen on the phone:

Screenshot_20200411-131922_Expo

Noticing

Also unlike when I use 5.5.1 I cannot just escape the errors and get back in the app react-native ui - with 4.7.0 it crashes I assume at runtime, but maybe compile time. I don't really understand the build life cycle with expo.

@Ashish-Nanda
Copy link
Contributor

I see. Its possible that this version is incompatible with Expo 37. When using Expo 36 you did not face issues right? I see thats what you have on your master branch. Is there a need for you to upgrade?

Regarding NetInfo, I will need to do a bunch of tests and see if the upgrade to 5.5.1 works in aws-appsync. Will give it a try and keep you posted.

@danalexilewis
Copy link
Author

Hey @Ashish-Nanda yes we started on 36. But as I worked through building for android I encountered other problems. Upgrading got rid of those.

@danalexilewis
Copy link
Author

danalexilewis commented Apr 11, 2020

Ok I can confirm that downgrading back to expo 36.0.2 and netinfo 4.7.0 I now have a working build.

just tested with aws-amplify-react-native 4.0.3 (previously removed to debug) and thats working as well - so Yay we have an interim fix.

So now there is just a depreciated warning that fires in the expo client. I'll look and see if I can silence this.

Thanks so much for helping me navigate this config. Hopefully we can get redux-offline and appsync to "just work" with expo sdk 37. But until than I can keep rushing for the finish line on this Grass roots Covid Response App :)

Heres my current package.json

{
    "main": "node_modules/expo/AppEntry.js",
    "scripts": {
        "modelgen": "node amplify/scripts/amplify-modelgen.js",
        "amplify-push": "node amplify/scripts/amplify-push.js",
        "build": "expo build:web",
        "start": "expo start",
        "android": "expo start --android",
        "ios": "expo start --ios",
        "web": "expo start --web",
        "eject": "expo eject",
        "seed:db": "node scripts/seed.js",
        "seed:gen": "node scripts/generate-fake-data.js",
        "rm": "rm -rf node_modules && rm yarn.lock && rm package-lock.json",
        "scrub": "yarn cache clean && yarn install"
    },
    "dependencies": {
        "@aws-amplify/analytics": "^3.1.6",
        "@aws-amplify/api": "^3.1.6",
        "@aws-amplify/auth": "^3.2.3",
        "@aws-amplify/core": "^3.2.3",
        "@aws-amplify/datastore": "^2.0.4",
        "@aws-amplify/interactions": "^3.1.6",
        "@aws-amplify/pubsub": "^3.0.7",
        "@aws-amplify/storage": "^3.1.6",
        "@aws-amplify/xr": "^2.1.6",
        "@expo/vector-icons": "^10.0.0",
        "@react-native-community/async-storage": "^1.9.0",
        "@react-native-community/masked-view": "0.1.6",
        "@react-native-community/netinfo": "4.7.0",
        "@react-navigation/bottom-tabs": "^5.2.6",
        "@react-navigation/native": "^5.1.5",
        "@react-navigation/stack": "^5.2.10",
        "apollo-boost": "^0.4.7",
        "apollo-client": "^2.6.8",
        "aws-amplify": "^3.0.7",
        "aws-amplify-react-native": "^4.0.3",
        "aws-appsync": "^3.0.2",
        "aws-appsync-react": "^3.0.2",
        "base-64": "^0.1.0",
        "binconv": "^0.2.0",
        "date-fns": "^2.11.1",
        "expo": "^36.0.2",
        "expo-crypto": "~8.1.0",
        "expo-device": "~2.1.0",
        "expo-random": "~8.1.0",
        "expo-secure-store": "~8.1.0",
        "graphql": "^14.0.0",
        "graphql-tag": "^2.10.3",
        "react": "16.9.0",
        "react-apollo": "^3.1.4",
        "react-dom": "16.9.0",
        "react-native": "https://github.com/expo/react-native/archive/sdk-36.0.1.tar.gz",
        "react-native-elements": "^1.2.7",
        "react-native-gesture-handler": "~1.6.0",
        "react-native-reanimated": "~1.7.0",
        "react-native-safe-area-context": "0.7.3",
        "react-native-screens": "~2.2.0",
        "react-native-vector-icons": "^6.6.0",
        "react-native-web": "^0.11.7",
        "string-encode": "^0.2.1"
    },
    "devDependencies": {
        "@babel/core": "^7.9.0",
        "@babel/runtime": "^7.9.2",
        "@types/react": "^16.9.23",
        "@types/react-native": "^0.61.17",
        "aws-sdk": "^2.651.0",
        "babel-preset-expo": "^8.1.0",
        "casual": "^1.6.2",
        "ini": "^1.3.5",
        "inquirer": "^6.5.1",
        "typescript": "^3.8.3"
    },
    "private": true
}

@mauerbac
Copy link
Member

Hi @agentlewis - wanted to follow-up on this. is it safe to close this issue out?

@mauerbac mauerbac added the pending-close-response-required A response is required for this issue to remain open, it will be closed within the next 7 days. label Apr 20, 2020
@danalexilewis
Copy link
Author

Hey @mauerbac - the dependency of appsync on redux-offline which depends on netinfo 4.7 is still a blocker for us upgrading.

I would think the best thing would be to leave this open until either:

  • appsync works out a work around for the netInfo dependency
  • redux-offline is updated

From our dev team perspective this is still an open issue. I respect your team may have a different view on this though.

Cheers
D

@stale stale bot removed the pending-close-response-required A response is required for this issue to remain open, it will be closed within the next 7 days. label Apr 22, 2020
@danalexilewis danalexilewis changed the title Bump Neinfo to 5.5.1? & aws-appsync/redux-offline/netinfo is at 4.7.0 which conflicts with expo 37 aws-appsync/redux-offline/netinfo is at 4.7.0 which conflicts with expo 37 which requires 5.5.0 Apr 22, 2020
@Ashish-Nanda Ashish-Nanda removed the question General question label Apr 22, 2020
@danalexilewis
Copy link
Author

@mauerbac redux-offline issue may be a possible temporary fix

And here is a PR for supporting expo sdk 36 (now on 37 but it should be enough)

Lastly I expect this to be resolved with the release of redux-offline V3 but looks like this will be a few weeks/months away.

@sorodrigo
Copy link

yarn add @redux-offline/redux-offline@expo

expo

@mauerbac
Copy link
Member

haha, thanks for the PR @sorodrigo . @Ashish-Nanda are you able to take a look?

@sichiu
Copy link

sichiu commented Jun 3, 2020

Any update on this?

@mauerbac
Copy link
Member

mauerbac commented Jun 9, 2020

Pinging @AshanFernando / @sammartinez

@stale
Copy link

stale bot commented Jul 11, 2020

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the pending-close-response-required A response is required for this issue to remain open, it will be closed within the next 7 days. label Jul 11, 2020
@Ashish-Nanda
Copy link
Contributor

@agentlewis @sichiu

This should work now. We recently merged a PR in the aws-appsync SDK: awslabs/aws-mobile-appsync-sdk-js#551
This PR upgrades redux-offline and as a result NetInfo 5.x can be used. You will also need to use @react-native-community/async-storage
Please install aws-appsync v4.0.0 and follow the instructions here

@stale stale bot removed the pending-close-response-required A response is required for this issue to remain open, it will be closed within the next 7 days. label Jul 14, 2020
@Ashish-Nanda Ashish-Nanda added the pending-close-response-required A response is required for this issue to remain open, it will be closed within the next 7 days. label Jul 14, 2020
@danalexilewis
Copy link
Author

@Ashish-Nanda great thanks :)

@stale stale bot removed the pending-close-response-required A response is required for this issue to remain open, it will be closed within the next 7 days. label Jul 14, 2020
@Ashish-Nanda
Copy link
Contributor

Will go ahead and close the issue since the fix has been merged and released. Let us know if you have any questions.

@github-actions
Copy link

This issue has been automatically locked since there hasn't been any recent activity after it was closed. Please open a new issue for related bugs.

Looking for a help forum? We recommend joining the Amplify Community Discord server *-help channels or Discussions for those types of questions.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Jul 14, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
React Native React Native related issue
Projects
None yet
Development

No branches or pull requests

8 participants