Upgrading to SDK 38: React Native version mismatch

Please provide the following:

  1. SDK Version: 38
  2. Platforms(Android/iOS/web/all): Android

I’ve upgraded our app to use SDK 38, and I’ve been unable to get it to run locally on two different android devices. I’ve been running into:

console: error: React Native version mismatch

JavaScript version: 0.62.2
Native version: 0.61.4

Just for fun, I ran expo build:android just to see if the APK generated would work, and it in fact does. So I have a feeling this is either an issue with the expo CLI or the app?

I’ve completely deleted and reinstall node_modules, ran yarn cache clean --all, tried upgrading using expo upgrade and tried just upgrading to react-native to 38.0.2 manually in the package.json and rerunning yarn. Still getting the same error.

Both android devices say their Expo app supports 35, 36, 36, 38, and the client version is 2.16.1.

Currently running expo-cli v3.22.3, WSL2 Ubuntu 20.04. I’ve also tried running expo start -c, but still getting the same error.

Any tips?

Hi,
I am having the same issue. Were you able to solve the problem?

Thanks.

I have the same problem after upgrade to Expo 38. There is any solution?

What does expo diagnostics give you?

Thanks for your reply. I have tried all above, uninstall and install again, but same error in expo app.

The diagnostics output:

$ expo diagnostics

Expo CLI 3.25.1 environment info:
System:
OS: Windows 10 10.0.18362
Binaries:
Node: 10.22.0 - C:\Program Files\nodejs\node.EXE
npm: 6.14.6 - C:\Program Files\nodejs\npm.CMD
IDEs:
Android Studio: Version 4.0.0.0 AI-193.6911.18.40.6626763
npmPackages:
expo: ^38.0.0 => 38.0.9
react: 16.11.0 => 16.11.0
react-native: https://github.com/expo/react-native/archive/sdk-38.0.2.tar.gz => 0.62.2
react-navigation: ^2.18.0 => 2.18.3

I’m afraid I don’t know where this error is coming from, but I see you’re using an outdated version of node. Maybe see if upgrading to node 12.x helps?

Hi,
I am having same error.
console : error: “React Native verison mismatch”.
JavaScript version: 0.61.4
Native version: 0.62.2

using “expo”: “^38.0.9”,
There is any solution?

Thanks

What do you get when you run expo diagnostics?

I run:
expo install react-native

and output:

+ react-native@0.62.2
updated 1 package and audited 1343 packages in 134.166s

but when I run expo start -c and enter with Expo App, the error come back and say:

Error....
Javascript version: 0.62.2
Native version: 0.59.8

What is native version here? Javascript in Expo App o reac-native version in Expo App?

Are you using the bare workflow? If you are using the managed workflow you should not install react-native.

Hi @wodin this is what I get when I run expo diagnostics:

  Expo CLI 3.27.4 environment info:
    System:
      OS: Linux 4.19 Ubuntu 20.04.1 LTS (Focal Fossa)
      Shell: 5.0.17 - /bin/bash
    Binaries:
      Node: 14.10.0 - /usr/bin/node
      Yarn: 1.22.5 - /usr/bin/yarn
      npm: 6.14.8 - /usr/bin/npm
    npmPackages:
      expo: ^38.0.0 => 38.0.10
      react: 16.11.0 => 16.11.0
      react-dom: 16.11.0 => 16.11.0
      react-native: https://github.com/expo/react-native/archive/sdk-38.0.2.tar.gz => 0.62.2
      react-native-web: ~0.11.7 => 0.11.7
    Expo Workflow: managed

Still running into the same issue. My fellow colleagues working on the app don’t see the same issue, so my hunch is some weird caching thing.

that looks right! you could try closing expo-cli and then running expo start -c to clear the cache

Just gave that another shot, but still no dice :frowning:

can you try clearing the application cache for expo client on android?

Did you update the sdkVersion in your app.json?

{
  "expo": {
   ...
    "sdkVersion": "38.0.0",
 

So I did all those things and nothing worked…

BUT I just updated to SDK39 and everything’s working again so… ¯\_(ツ)_/¯