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

SDK 39++ bug fix release #10464

Closed
ide opened this issue Sep 30, 2020 · 52 comments
Closed

SDK 39++ bug fix release #10464

ide opened this issue Sep 30, 2020 · 52 comments
Assignees

Comments

@ide
Copy link
Member

ide commented Sep 30, 2020

@ide ide changed the title SDK 39.1 bug fix release SDK 39.0.1 bug fix release Sep 30, 2020
@sjchmiela sjchmiela pinned this issue Sep 30, 2020
@himrocks33
Copy link

@ide Would this not be 39.0.4? It appears the current released version is already 39.0.3?

@ide
Copy link
Member Author

ide commented Sep 30, 2020

The title refers to an abstract version number, not the expo package.

@ejia-techsursolutions
Copy link

Is this released already?

@ide ide changed the title SDK 39.0.1 bug fix release SDK 39++ bug fix release Sep 30, 2020
@ide
Copy link
Member Author

ide commented Sep 30, 2020

No this is an in-progress issue.

@natemartins

This comment has been minimized.

@ide
Copy link
Member Author

ide commented Sep 30, 2020

If you can trace your issue back to one of the ones in the first post, it will be fixed with an upcoming release. It sounds like you may need to debug further, though, to narrow the cause down.

For Android there is a splash screen configuration fix coming, but not one that would fix an error - that probably requires a deeper understanding of the cause too. It's a lot easier to help if you can identify the root cause or one close to it.

We are prioritizing the fixes in the first post and I'd expect them to take a couple of days. The app review process is unpredictable and at best (if lucky) will take a few hours but typically takes a day or two.

@natemartins

This comment has been minimized.

@ide

This comment has been minimized.

@brentvatne
Copy link
Member

@natemartins - this is a common issue when upgrading and not necessarily a bug in sdk 39 but rather an issue in your app code that resulted from updating a variety of libraries. perhaps the issue is in one of your project dependencies, please read https://expo.fyi/no-registered-application and try narrowing down the source of the error as described in this doc. i'm going to hide comments above because they are not related to this issue. if you do determine while debugging that this you have discovered a bug and you've been able to isolate it, please create a new issue and fill out the issue template so we have the information that we need to help.

@yuraxdrumz
Copy link

Hey, guys. Thanks for the hard work!
Will the fix for splash screen be included in this release (#10263)?
Looks like the fix for it was introduced in expo-splash-screen@0.7.1 but I cant install it yet, as I probably need the native dependencies as well.

@lukmccall
Copy link
Contributor

lukmccall commented Oct 1, 2020

I think we should also fix #10469.

This problem consists of two minor ones:

@himrocks33
Copy link

@ide Is there an idea of when this may be released? The document picker crashing is holding up out deployment.
Thank you,
Ben

@ide
Copy link
Member Author

ide commented Oct 1, 2020

The estimate is sometime within the next 1-5 days.

@brentvatne
Copy link
Member

brentvatne commented Oct 3, 2020

Hi everyone! I am both pleased and relieved to be able to tell you that we have now rolled out the following fixes for SDK 39:

  • expo-updates:
    • Standalone apps built for SDK 39 now properly read updates from the release channel they are built against (issue).
    • Standalone apps for iOS will read assets correctly from exported projects (built with expo export), and iOS and Android standalone apps support assetUrlOverride with absolute urls. (issue, issue)
    • Updates.reloadAsync() is supported in development once again. (pr)
  • expo-splash-screen:
    • android.splash.hdpi and other *dpi properties are used as expected in Expo client on Android. (issue)
    • iOS and Android splash screen image no longer flickers after completing bundle download within Expo client (issue)
    • Configuration of splash screen in Android standalone apps now works the same as before. (issue)
  • react-native:
    • Fixed regression in Blob support. (issue)
    • TouchableOpacity press-in delay removed. (issue)
    • Fix Xiaomi TextInput native crash. (issue)
  • Remote JS debugging on Android no longer crashes the Expo client app (issue).
  • DocumentPicker on iOS 14 no crashes in Expo client on iOS 14, also fixed issue with being unable to open it more than once on iOS 14. (issue).
  • TaskManager no longer crashes on Android in release mode. (issue 12)
  • Linking.getInitialUrl() on Android returns the correct deep link URL (issue).
  • Published apps that throw exceptions before loading no longer hang on splash screen in Expo client, instead they will show an error screen. In standalone apps, the app will crash rather than hang (as expected). (issue)
  • Updated Facebook Audience Network SDK (pr).
  • Fix regression in notification icons with expo-notifications. (issue)
  • QR code scanner to scan to open apps in Expo client for Android no longer skewed on some devices. (issue)

Next steps

  • Download the latest iOS and Android clients from the stores.
  • Install the latest iOS and Android clients with expo client:install:ios and expo client:install:android

If you previously upgraded your project to SDK 39

  • For managed apps, change your react-native version to https://github.com/expo/react-native/archive/sdk-39.0.3.tar.gz. For bare apps, we recommend using react-native 0.63.3.
  • Run yarn upgrade to update to the latest version of packages in your project for their current semantic version range. npm does not have an equivalent command, so you can delete your package-lock.json and node_modules and run npm install again.
  • Build your standalone apps again.

Thank you again for your patience and detailed issue reports! We'll follow up again soon with plans for avoiding shipping significant regressions again in the future.

@bcteam2020

This comment has been minimized.

@nightmarelie

This comment has been minimized.

@girishjjain
Copy link

Hi @brentvatne, I followed your steps to upgrade and got app updated but I don't see this fix working. Is that fix not available as part of this release? or do I need to follow any additional steps for it? Thanks.

Note: I did download the latest client on device/simulator to verify the fix.

@xnaveira
Copy link

xnaveira commented Oct 5, 2020

@nightmarelie Did you followed this step to upgrade the mobile client? That helped me.

Install the latest iOS and Android clients with expo client:install:ios and expo client:install:android

@nightmarelie
Copy link

@nightmarelie Did you followed this step to upgrade the mobile client? That helped me.

Install the latest iOS and Android clients with expo client:install:ios and expo client:install:android

Yes, it helped. I thought a simple removal of the client with subsequent installation would be enough, but no!

@kailo777

This comment has been minimized.

@donni106
Copy link
Contributor

donni106 commented Oct 5, 2020

I also try it with expo client:install:android

expo client:install:android
You are currently using SDK 39.0.0. Would you like to install client 2.17.4 released for this SDK?

the expo --version 3.27.13

What did I miss?

@kailo777

2.17.4 is the version of the Expo Client App on the Phone.
3.27.13 is the Expo CLI version you are using in the terminal.

With running expo client:install:android you are installing the latest version of the Expo Client App on a connected Android device or emulator, which needs to be 2.17.4 for the latest Expo SDK 39.

@nightmarelie
Copy link

@nightmarelie @xnaveira

I also try it with expo client:install:android

expo client:install:android
You are currently using SDK 39.0.0. Would you like to install client 2.17.4 released for this SDK?

the expo --version 3.27.13

What did I miss?

I have the following versions:
2.17.4 - client version
3.27.13 - cli
and everything works

try to start with -c flag. yarn start -c (Clear the Metro bundler cache)

@kailo777
Copy link

kailo777 commented Oct 5, 2020

guys it works you are awesome!

@svaldi
Copy link

svaldi commented Oct 5, 2020

Thank you so much @brentvatne @ide and all the ones involve on this new release. 👍

@sreimer15
Copy link

I've followed the instructions here and i'm still getting errors when trying to deploy my project to a specific release channel. For expo 39.
The android app deploys correctly to the release channel but the ios app does not. It loads the splash screen for a second and then shows a completely blank screen.
I can run the app locally however.
No errors appear in logs or anywhere else. Is there anyway I can debug this a little bit better? Thank you!

@gang544043963
Copy link

gang544043963 commented Oct 10, 2020

Hi, I've followed the instructions to update the SDK to 39.0.3, and I can check the version from 'node_modules/expo' and 'node_modules/react-native', expo is 39.0.3, react-native is 0.63.2.
But, expo version in my package.json is still 39.0.0 ("expo": "^39.0.0"), and when I build my project, I got many log info like "Expo SDK: 39.0.0", "sdkVersion": "39.0.0".
I'm not sure whether I update the SDK version successful. (OTA still doesn't work)

More info:
when I run "expo publish:history --platform ios" to check the publish history, result is :

publishedTime appVersion sdkVersion platform channel publicationId
Sat Oct 10 2020 09:53:19 GMT+0800 2.4.0 39.0.0 ios ab_qa d6007d4a-b279-4683-9dfd-e639216ffc1f

@bcteam2020
Copy link

@gang544043963 Change the "expo": "^39.0.0" to 39.0.3 manually and then delete package-lock.json, node_modules, npm install
it should work

@gang544043963
Copy link

@bcteam2020 I'v tried this, the same result.

@bcteam2020
Copy link

bcteam2020 commented Oct 10, 2020

@gang544043963
Try these steps

make sure expo-cli is 3.27.14
expo client (uninstall and install)
expo start --clear (just to clear the cache)
create new build
publish update

@gang544043963
Copy link

Thank you @bcteam2020 for your kindly reply.
One more question, is it display "Expo SDK: 39.0.0" or "Expo SDK: 39.0.3" when you run expo publish in terminal?
Mine is "Expo SDK: 39.0.0". (My OTA just work well in default channel, so I can make sure the SDK hasn't update successfully)
Thanks again!

@dante314
Copy link

dante314 commented Oct 12, 2020

Hola, acabo de solucionar mi problema

Problema:

[Unhandled promise rejection: Error: No native splash screen registered for provided activity. Please configure your application's main Activity to call 'SplashScreen.show' (https://github.com/expo/expo/tree/master/packages/expo-splash-screen#-configure-android).]

  • node_modules/react-native/Libraries/BatchedBridge/NativeModules.js:103:50 in promiseMethodWrapper

Causa:

`import React, { useState } from 'react';
import { StyleSheet, Text, View } from 'react-native';
import CategoriesScreen from './screens/CategoriesScreen';
// npm install --save expo-font o expo install --save expo-font
import * as Font from 'expo-font';
import { AppLoading } from 'expo';

const fetchFont = () => {
return Font.loadAsync({
'open-sans': require('./assets/fonts/OpenSans-Regular.ttf'),
});
};

export default function App() {
const [fontLoaded, setFontLoaded] = useState(false);

if (!fontLoaded) {
return (
<AppLoading
startAsync={fetchFont}
onFinish={() => setFontLoaded(true)}
/>)
}
return (



);
}

const styles = StyleSheet.create({

});`

Salida en terminal:

[Unhandled promise rejection: Error: No native splash screen registered for provided activity. Please configure your application's main Activity to call 'SplashScreen.show' (https://github.com/expo/expo/tree/master/packages/expo-splash-screen#-configure-android).]

  • node_modules/react-native/Libraries/BatchedBridge/NativeModules.js:103:50 in promiseMethodWrapper
  • node_modules/@unimodules/react-native-adapter/build/NativeModulesProxy.native.js:15:23 in moduleName.methodInfo.name
  • node_modules/expo-splash-screen/build/SplashScreen.js:23:7 in preventAutoHideAsync
  • node_modules/regenerator-runtime/runtime.js:63:36 in tryCatch
  • node_modules/regenerator-runtime/runtime.js:293:29 in invoke
  • node_modules/regenerator-runtime/runtime.js:63:36 in tryCatch
  • node_modules/regenerator-runtime/runtime.js:154:27 in invoke
  • node_modules/regenerator-runtime/runtime.js:189:16 in PromiseImpl$argument_0
  • node_modules/react-native/node_modules/promise/setimmediate/core.js:45:6 in tryCallTwo
  • node_modules/react-native/node_modules/promise/setimmediate/core.js:200:22 in doResolve
  • node_modules/react-native/node_modules/promise/setimmediate/core.js:66:11 in Promise
  • node_modules/regenerator-runtime/runtime.js:188:15 in callInvokeWithMethodAndArg
  • node_modules/regenerator-runtime/runtime.js:211:38 in enqueue
  • node_modules/regenerator-runtime/runtime.js:238:8 in exports.async
  • node_modules/expo-splash-screen/build/SplashScreen.js:23:7 in preventAutoHideAsync
  • node_modules/expo/build/launch/AppLoadingNativeWrapper.js:5:8 in AppLoading#constructor
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:7655:17 in constructClassInstance
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:12377:26 in updateClassComponent
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:19181:22 in beginWork$1
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:18085:22 in performUnitOfWork
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:18013:38 in workLoopSync
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:17977:18 in renderRootSync
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:17674:33 in performSyncWorkOnRoot
  • [native code]:null in performSyncWorkOnRoot
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:5321:31 in runWithPriority$argument_1
  • node_modules/scheduler/cjs/scheduler.development.js:653:23 in unstable_runWithPriority
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:5316:21 in flushSyncCallbackQueueImpl
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:5304:28 in flushSyncCallbackQueue
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:17125:30 in scheduleUpdateOnFiber
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:20527:14 in updateContainer
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:21068:17 in render
  • node_modules/react-native/Libraries/ReactNative/renderApplication.js:54:4 in renderApplication
  • node_modules/react-native/Libraries/ReactNative/AppRegistry.js:117:25 in runnables.appKey.run
  • node_modules/react-native/Libraries/ReactNative/AppRegistry.js:213:4 in runApplication
  • node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:416:4 in __callFunction
  • node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:109:6 in __guard$argument_0
  • node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:364:10 in __guard
  • node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:108:4 in callFunctionReturnFlushedQueue
  • [native code]:null in callFunctionReturnFlushedQueue

[Unhandled promise rejection: Error: No native splash screen registered for provided activity. Please configure your application's main Activity to call 'SplashScreen.show' (https://github.com/expo/expo/tree/master/packages/expo-splash-screen#-configure-android).]

  • node_modules/react-native/Libraries/BatchedBridge/NativeModules.js:103:50 in promiseMethodWrapper
  • node_modules/@unimodules/react-native-adapter/build/NativeModulesProxy.native.js:15:23 in moduleName.methodInfo.name
  • node_modules/expo-splash-screen/build/SplashScreen.js:29:7 in hideAsync
  • node_modules/regenerator-runtime/runtime.js:63:36 in tryCatch
  • node_modules/regenerator-runtime/runtime.js:293:29 in invoke
  • node_modules/regenerator-runtime/runtime.js:63:36 in tryCatch
  • node_modules/regenerator-runtime/runtime.js:154:27 in invoke
  • node_modules/regenerator-runtime/runtime.js:189:16 in PromiseImpl$argument_0
  • node_modules/react-native/node_modules/promise/setimmediate/core.js:45:6 in tryCallTwo
  • node_modules/react-native/node_modules/promise/setimmediate/core.js:200:22 in doResolve
  • node_modules/react-native/node_modules/promise/setimmediate/core.js:66:11 in Promise
  • node_modules/regenerator-runtime/runtime.js:188:15 in callInvokeWithMethodAndArg
  • node_modules/regenerator-runtime/runtime.js:211:38 in enqueue
  • node_modules/regenerator-runtime/runtime.js:238:8 in exports.async
  • node_modules/expo-splash-screen/build/SplashScreen.js:29:7 in hideAsync
  • node_modules/expo/build/launch/AppLoadingNativeWrapper.js:15:33 in setTimeout$argument_0
  • node_modules/react-native/Libraries/Core/Timers/JSTimers.js:130:14 in _callTimer
  • node_modules/react-native/Libraries/Core/Timers/JSTimers.js:383:16 in callTimers
  • node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:416:4 in __callFunction
  • node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:109:6 in __guard$argument_0
  • node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:364:10 in __guard
  • node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:108:4 in callFunctionReturnFlushedQueue
  • [native code]:null in callFunctionReturnFlushedQueue

HIlo seguido para solucionarlo:

revisar file > package.json:

"dependencies": {
"expo": "~39.0.3",
"expo-status-bar": "~1.0.2",
"react": "16.13.1",
"react-dom": "16.13.1",
"react-native": "https://github.com/expo/react-native/archive/sdk-39.0.3.tar.gz",
"react-native-web": "~0.13.12"
},

$ rm -rf node_modules , $ rm package-lock.json
$ npm ls react-native => react-native@0.63.2
$ expo client:install:ios and $ expo client:install:android // trabajo en linux y solo uso android
$ npm install
$ expo start

expo --version => 3.27.14

PDT: Antes de empezar todo este proceso, había corrido: $ npm i -g expo-cli@latest

Suerte!

@summerkiflain
Copy link

@brentvatne https://github.com/expo/react-native/archive/sdk-39.0.3.tar.gz is installing react-native 0.62.2 for managed workflows, I have tried expo upgrade, yarn upgrade, yarn i after removing node_modules and yarn.lock file even cleared yarn cache with yarn cache clean but it always fetches 0.62.2, shouldn't it get 0.63.3 for managed workflows?

@dante314
Copy link

Esto es lo que tengo actualmente en package.json y estoy trabajando sin problemas. Fíjate en cambiar manualmente de versión como lo hice .

"dependencies": {
"@react-native-community/masked-view": "0.1.10",
"expo": "~39.0.3", /**** yo cambié manualmente esto, de 39.0.2 a 39.0.3 ***/
"expo-status-bar": "~1.0.2",
"react": "16.13.1",
"react-dom": "16.13.1",
"react-native": "https://github.com/expo/react-native/archive/sdk-39.0.3.tar.gz",
"react-native-gesture-handler": "~1.7.0",
"react-native-reanimated": "~1.13.0",
"react-native-safe-area-context": "3.1.4",
"react-native-screens": "~2.10.1",
"react-native-web": "~0.13.12",
"react-navigation": "^4.4.2",
"react-navigation-stack": "^2.8.4"
},
No te olvides de hacer esto que es muy importante, pero antes elimina el cliente en el dispositivo virtual , "elimina el ícono"

$ expo client:install:ios and $ expo client:install:android // trabajo en linux y solo uso android

Suerte!

@daniel
Copy link

daniel commented Oct 15, 2020

Should I upgrade the expo package to 39.0.3 too? The instructions above doesn't mention it and expo upgrade doesn't upgrade it (I have 39.0.0 installed).

@brentvatne
Copy link
Member

brentvatne commented Oct 19, 2020

@daniel - it doesn't matter. we didn't mention it in instructions because it's not needed. we did not release a new version of the expo package as part of the bugfix release.

@brentvatne
Copy link
Member

@summerkiflain - the version is 0.62.2 but we cherry-picked in some commits from 0.63.3, which was a small patch release.

@brentvatne
Copy link
Member

hi all, i just wanted to update you with some news on what we'll be doing to help ensure stability and reliability in future releases. starting with sdk 40, we're going to try out a beta release period final to the sdk release. you can read more about this in this blog post: Coming soon: Beta release period for Expo SDK

i'm going to lock this thread now because i believe everything has been covered and it's becoming inactive. please create a new issue and follow the issue template if you were intending on replying in here.

@expo expo locked as resolved and limited conversation to collaborators Oct 19, 2020
@sjchmiela sjchmiela unpinned this issue Oct 26, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests