Blog

 / Expo SDK 37— What’s new?

Expo SDK 37— What’s new?

Tom Riglar

I’m back with my perspective on the latest release from Expo.

feature-image

Thu Apr 02 2020 - 3 min read

I’m back with my perspective on the latest release from Expo.

Once again I will be picking out the bits that stand out to me followed by a deeper look at the third party updates. You can see the full release from Expo here.

Bare

One of the biggest changes to Expo in the past year. SDK 37 has changed the Expo workflow fundamentally by deprecating the ExpoKit workflow.

A very common problem that people face when using Expo is that you cannot use native modules in the Managed workflow. Initially the only pathway to including native code was to eject your app into ExpoKit.

In 2019 Bare workflow was announced as a replacement for ExpoKit but has taken a while to reach feature parity. Yesterday the feature parity was finally reached.

You can now use notifications and Over The Air (OTA) updates with a Bare app. We are already implementing OTA for one of our clients and will be sure to keep an eye out for any issues.

If you use ExpoKit then it’s time to upgrade as the June release of SDK 38 will be the last.

Let us know if you need any help doing the migration.

Bare workflow

Expo Web

Everyone is understandably very excited about the idea of releasing their apps to web ‘for free’.

There are still a few things stopping me from hitting expo start:web though. Primarily it’s due to react-navigation which I use in every one of my apps and is still working on support for expo web.

Once we get 1.0 I’ll be sure to take a good look at the whole system.

UIWebView removed

I don’t have much more to say than expo do but it will be a welcome change to no longer receive these warnings from the infamous Apple app store.

Third party libs

There are a ton here so I’ll try be brief. It’s from my viewpoint so apologies if I overlook something important to you.

New

badgin — adds ability to increment badges on the favicon
expo-firebase-core — a base package to help support firebase features in expo
expo-firebase-analytics — implements google analytics in your expo app, this was a very highly requested feature
expo-firebase-recaptcha — primitives for building firebase authentication flows
Favicon badge with badgin

Updates

react-native-shared-element — primarily bug fixes
@react-native-community/netinfo — previously deprecated methods have now been removed, if you ignored previous warnings then you might face issues, react-native-web support
@react-native-community/datetimepicker — bug fixes, improved prettier and TS
react-native-gesture-handler — many small changes, added ability to use gesture handler in modals (this must have been a frustrating feature omission!), SSR support for web
@react-native-community/masked-view — no clear info on changes between releases
@react-native-community/viewpager — updated to Android X, several fixes
react-native-reanimated — many fixes and features, most significant features seem to be for web
react-native-svg — masks support native elements, this should allow for some creative visuals
react-native-view-shot — no clear changelog
react-native-webview — a big change to the way navigation events trigger on iOS. clearHistory, clearCache and clearFormData on Android
react-native-appearance — no clear changelog
react-native-safe-area-context — several small fixes
react-native-screens — no longer in alpha/beta!, this library has been in use within react-navigation since SDK30 and now has its first full release. no clear changelog but mostly seems like fixes

What Would I like to have seen?

React native just released version 0.62 with built in support for the Facebook Flipper dev tool.

Right now I use react-native-debugger but Flipper looks like a step up for debugging with support for network, databases and more on top of the regular React Native debug tools.

Other changes

There are a ton of other changes I haven’t detailed here. Let me know in the comments if there’s something important that I didn’t include so I can add it in. The full change log is here: https://github.com/expo/expo/blob/master/CHANGELOG.md

At Morrow we use Expo every day to speed up app development for our clients. If you would like to find out more about how to increase speed without cutting corners on your project, please reach out.

Copyright © 2021 Morrow Digital Ltd | Registered in England #11169148

Privacy Policy