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 46: expo-linking needs access to the expo-constants manifest (app.json or app.config.js) to determine what URI scheme to use. #20740

Closed
dochonglo opened this issue Jan 7, 2023 · 3 comments
Labels
incomplete issue: missing or invalid repro A minimal reproducible example is required for most issues needs review Issue is ready to be reviewed by a maintainer

Comments

@dochonglo
Copy link

dochonglo commented Jan 7, 2023

Summary

expo-linking needs access to the expo-constants manifest (app.json or app.config js) to determine what
URI scheme to use. Setup the manifest and rebuild:
https://github.com/expo/expo/blob/main/packages/ expo-constants/README.md

Below is a photo of the issue:

IMG_BF08043DDE22-1

### Managed or bare workflow? If you have iOS/ or android/ directories in your project, the answer is bare!

bare

What platform(s) does this occur on?

iOS

My question

It's unclear to me what this error is happening after upgrading from SDK 45 to 46. My scheme is already defined in my app.json file. Also, I've followed the link in the error, and I've set up the manifest correctly and rebuilt. Is this a bug?

What platform(s) does this occur on?

iOS

What platform(s) does this occur on?

iOS

Environment

 expo-env-info 1.0.5 environment info:
    System:
      OS: macOS 13.1
      Shell: 3.2.57 - /bin/bash
    Binaries:
      Node: 19.3.0 - ~/projects/testing/node_modules/.bin/node
      npm: 7.20.5 - ~/projects/testing/node_modules/.bin/npm
      Watchman: 2023.01.02.00 - /usr/local/bin/watchman
    Managers:
      CocoaPods: 1.11.3 - /usr/local/bin/pod
    SDKs:
      iOS SDK:
        Platforms: DriverKit 22.2, iOS 16.2, macOS 13.1, tvOS 16.1, watchOS 9.1
    IDEs:
      Android Studio: 4.1 AI-201.8743.12.41.6953283
      Xcode: 14.2/14C18 - /usr/bin/xcodebuild
    npmPackages:
      expo: ^46.0.0 => 46.0.19 
      react: 18.0.0 => 18.0.0 
      react-dom: 18.0.0 => 18.0.0 
      react-native: 0.69.6 => 0.69.6 
      react-native-web: ~0.18.7 => 0.18.10 
      react-navigation: ^4.0.10 => 4.0.10 
      expo-linking: ~3.2.4
      expo-constants: ^14.0.2
      expo-updates: ~0.14.7
    Expo Workflow: bare

Minimal reproducible example

♥ expo-cli upgrade
Your git working tree is clean
To revert the changes after this command completes, you can run the following:
  git clean --force && git reset --hard
✔ You are currently using SDK 45.0.0. Would you like to update to the latest version, 47.0.0? … no

✔ Choose a SDK version to upgrade to: › 46.0.0


✔ Installed expo@^46.0.0
✔ Validated configuration.
✔ No additional changes necessary to app.json config.

✔ Updated known packages to compatible versions.
✔ Cleared packager cache.
✔ Validated project

👏 Automated upgrade steps complete.
...but this doesn't mean everything is done yet!

Please refer to the release notes for information on any further required steps to update and information about breaking changes:
https://blog.expo.dev/expo-sdk-46-c2a1655f63f7

♥ cd iOS && pod install
@dochonglo dochonglo added the needs validation Issue needs to be validated label Jan 7, 2023
@brentvatne brentvatne added needs review Issue is ready to be reviewed by a maintainer incomplete issue: missing or invalid repro A minimal reproducible example is required for most issues and removed needs validation Issue needs to be validated labels Feb 22, 2023
@expo-bot
Copy link
Collaborator

Hi there! It looks like your issue requires a minimal reproducible example, but it is invalid or absent. Please prepare such an example and share it in a new issue.

The best way to get attention to your issue is to provide a clean and easy way for a developer to reproduce the issue on their own machine. Please do not provide your entire project, or a project with more code than is necessary to reproduce the issue.

A side benefit of going through the process of narrowing down the minimal amount of code needed to reproduce the issue is that you may get lucky and discover that the bug is due to a mistake in your application code that you can quickly fix on your own.

Resources

Common concerns

"I've only been able to reproduce it in private, proprietary code"

You may not have spent enough time narrowing down the root cause of the issue. Try out the techniques discussed in this manual debugging guide to learn how to isolate the problem from the rest of your codebase.

"I didn't have time to create one"

That's understandable, it can take some time to prepare. We ask that you hold off on filing an issue until you are able to fully complete the required fields in the issue template.

"You can reproduce it by yourself by creating a project and following these steps"

This is useful knowledge, but it's still valuable to have the resulting project that is produced from running the steps, where you have verified you can reproduce the issue.

@ManuLpz4
Copy link

@dochonglo did you solve it? I think it's something with the deprecated Expo CLI but I'm not sure and a friend is struggling with this issue too :/

@rafaelmaeuer
Copy link

@ManuLpz4 in my case I was able to fix it by adding following resolution for expo-constants:

"resolutions": {
	"expo-constants": "14.0.2"
}

The error occurred while resetting yarn.lock in the upgrade-progress from Expo-SDK 47 to 48.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
incomplete issue: missing or invalid repro A minimal reproducible example is required for most issues needs review Issue is ready to be reviewed by a maintainer
Projects
None yet
Development

No branches or pull requests

5 participants