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

Upgrade Snack to Expo SDK 46 beta #315

Merged
merged 27 commits into from
Jul 26, 2022
Merged

Conversation

byCedric
Copy link
Member

@byCedric byCedric commented Jul 20, 2022

Why

We need to upgrade to SDK 46, this is a test run to see what will happen during the beta.

How

Followed the steps in ./docs/expo-sdk-upgrade.md

Test Plan

After everything seems ok, I'll manually deploy it to staging (without merging to main). Done!

@byCedric byCedric requested a review from brentvatne July 20, 2022 10:48
@byCedric byCedric temporarily deployed to runtime-staging July 20, 2022 12:50 Inactive
@byCedric
Copy link
Member Author

Runtime deployment issues were caused by the new CLI. I replaced expo build:web with expo export:web, and force-used the old Expo CLI for expo-cli publish.

This defers security to GitHub and environments to prevent accidential deployments. Locally, you have to add this environment variable to enable pushing, which is an opt-in and prevents accidental pushes too
@byCedric byCedric force-pushed the refactor/upgrade-sdk-46-beta branch from ef287ef to 3a7c73a Compare July 20, 2022 13:51
@byCedric byCedric temporarily deployed to snackager-staging July 20, 2022 14:07 Inactive
@byCedric byCedric temporarily deployed to runtime-staging July 20, 2022 14:15 Inactive
@byCedric byCedric temporarily deployed to website-staging July 20, 2022 14:16 Inactive
Not sure why this is necessary, probably good to check on this after stable release
@byCedric byCedric temporarily deployed to runtime-staging July 20, 2022 16:01 Inactive
@byCedric byCedric temporarily deployed to runtime-staging July 20, 2022 17:37 Inactive
@byCedric byCedric temporarily deployed to website-staging July 20, 2022 18:09 Inactive
Copy link
Member

@brentvatne brentvatne left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i'm not too familiar with snack but this all looks pretty reasonable. looking forward to seeing the solution for skia support :) let me know if you need anything from me

@@ -1,3 +1,11 @@
import * as Amplitude from 'expo-analytics-amplitude';
// Disable Amplitude for SDK 46
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ah - i didn't realize that we were using this in the snack runtime 😰

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I already pinged @tcdavis, but we aren't using analytics from the Runtime anymore. So should be good :)

* [snackager] Add babel proposal export namespace from for reanimated

* [snackager] Add test for react native reanimated 2.9.1

* [snackager] Add reanimated as external for skia since its bundled inside the runtime

* [snackager] Remove reanimated hidden peer dep because it can now bundle

* [snackager] Update bundling snapshot for reanimated 2.9.1
@byCedric byCedric mentioned this pull request Jul 23, 2022
14 tasks
@byCedric byCedric changed the base branch from main to sdk/46 July 26, 2022 09:39
@byCedric
Copy link
Member Author

Change of plans, I'm squashing all the SDK 46 PRs into sdk/46, so we can merge it in main once the stable SDK is out cc @brentvatne. Helps me validate a few things, but still be able to update runtime to whatever we need for the stable release.

@byCedric byCedric marked this pull request as ready for review July 26, 2022 09:42
@byCedric byCedric merged commit 929ed6b into sdk/46 Jul 26, 2022
@byCedric byCedric deleted the refactor/upgrade-sdk-46-beta branch July 26, 2022 09:45
byCedric added a commit that referenced this pull request Aug 2, 2022
* [runtime] Upgrade to expo sdk 46 beta

* [runtime] Change app.json to sdk 46

* [runtime] Change entrypoint to index

* [runtime] Customized web files

* [runtime] Disable unknown exceptions in typescript

* [runtime] Remove react 17 types with resolutions

This is caused by DefinitelyTyped/DefinitelyTyped#59862

* [runtime] Upgrade eslint to latest version for typescript

* [runtime] Fix all new eslint errors

* [docs] Change upgrade instructions to match snack-content types

* [snack-content] Update SDK types dropping 43 and adding 46

* [snack-sdk] Update all tests for sdk 46

* [snack-sdk] Update snapshots for sdk 46

* [website] Update sdk list for sdk 46

* [website] Update snapshots for sdk 46

* [snackager] Update snapshot tests for sdk 46

* [runtime] Switch to expo export:web for web deployments

* [runtime] Force old expo-cli for publish

* [runtime] Update all patches to latest versions

* [CI] Use opt-in to skaffold push to allow custom branches

This defers security to GitHub and environments to prevent accidential deployments. Locally, you have to add this environment variable to enable pushing, which is an opt-in and prevents accidental pushes too

* [runtime] Disable Amplitude since its unavailable for SDK 46

* [runtime] Add babel polyfill in production app

Not sure why this is necessary, probably good to check on this after stable release

* [runtime] Bump snack-babel-standalone to version to 1.1.0

* [CI] Allow runtime to take 4gb when publishing

* [snack-content] Set SDK 46 as default SDK for web

* [snackager] Fix bundling react-native-reanimated@2.9.1 (#316)

* [snackager] Add babel proposal export namespace from for reanimated

* [snackager] Add test for react native reanimated 2.9.1

* [snackager] Add reanimated as external for skia since its bundled inside the runtime

* [snackager] Remove reanimated hidden peer dep because it can now bundle

* [snackager] Update bundling snapshot for reanimated 2.9.1

* [snackager] Update snapshot tests for default sdk 46

* [snack-sdk] Update snapshot tests for default sdk 46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants