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

[cli] try to detect if deep link was successful #18839

Merged
merged 4 commits into from Sep 26, 2022

Conversation

esamelson
Copy link
Contributor

Why

fourth step of ENG-6120; ports expo/expo-cli@9777ad6 and the relevant portions of expo/expo-cli@b5c59a7 to the new CLI

How

  • Copied HTML changes to this repo and resolved conflicts
  • Pull scheme and SDK version into InterstitialPageHandler, and replace the relevant strings in HTML

Test Plan

Added unit tests for all new functionality and updated existing tests. Tested manually to ensure the page looks as expected (parity with old CLI).

Checklist

@linear
Copy link

linear bot commented Aug 26, 2022

ENG-6120 Take user to interstitial when launching dev client project from versioned CLI

  • pressing i
  • pressing a
  • passing ios or android flag

@@ -70,7 +70,9 @@ export class MetroBundlerDevServer extends BundlerDevServer {
// https://github.com/expo/expo/issues/13114
prependMiddleware(middleware, manifestMiddleware);

middleware.use(new InterstitialPageMiddleware(this.projectRoot).getHandler());
middleware.use(
new InterstitialPageMiddleware(this.projectRoot, options.location.scheme).getHandler()
Copy link
Contributor

Choose a reason for hiding this comment

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

The other middleware uses the format of projectRoot, { options as object }

Copy link
Contributor

Choose a reason for hiding this comment

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

The scheme here is capable of being dynamic, seems like we shouldn't pass in the default value.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Could you point me to where the scheme should come from then? Do you mean retrieve it using getOptionalDevClientSchemeAsync inside of the InterstitialPageMiddleware (and fall back to this value if that returns null)?

Copy link
Contributor

Choose a reason for hiding this comment

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

I recommended a TODO, for now. I can implement this later since it's an edge case they may only happen theoretically.

Copy link
Contributor

@EvanBacon EvanBacon left a comment

Choose a reason for hiding this comment

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

check comments

Copy link
Contributor

@EvanBacon EvanBacon left a comment

Choose a reason for hiding this comment

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

LGTM

@EvanBacon EvanBacon merged commit a4b0519 into @eric/eng-6120-2 Sep 26, 2022
@EvanBacon EvanBacon deleted the @eric/eng-6120-3 branch September 26, 2022 17:07
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

3 participants