Expensify / App

Welcome to New Expensify: a complete re-imagination of financial collaboration, centered around chat. Help us build the next generation of Expensify by sharing feedback and contributing to the code.
https://new.expensify.com
MIT License
3.5k stars 2.85k forks source link

[$125] [Dev] Console Warning: No native ExponentConstants module found #51054

Open m-natarajan opened 1 week ago

m-natarajan commented 1 week ago

If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!


Version Number: Reproducible in staging?: DEV Reproducible in production?: DEV If this was caught on HybridApp, is this reproducible on New Expensify Standalone?: If this was caught during regression testing, add the test name, ID and link from TestRail: Email or phone of affected tester (no customers): Logs: https://stackoverflow.com/c/expensify/questions/4856 Expensify/Expensify Issue URL: Issue reported by: @eVoloshchak Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1729174865370699

Action Performed:

  1. Launch the iOS app
  2. Observe the warning

Expected Result:

No warning is displayed

Actual Result:

Warning is displayed

Workaround:

unknown

Platforms:

Which of our officially supported platforms is this issue occurring on?

Screenshots/Videos

Add any screenshot/video evidence ![Simulator Screenshot - iPhone 15 Pro - 2024-10-17 at 16 17 56](https://github.com/user-attachments/assets/2e076611-8c45-408f-ac83-fa1e228efc92) https://github.com/user-attachments/assets/82efbce0-52e7-44dc-9c30-25a1ba3902e8

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~021849240595196131510
  • Upwork Job ID: 1849240595196131510
  • Last Price Increase: 2024-10-24
Issue OwnerCurrent Issue Owner: @mollfpr
melvin-bot[bot] commented 1 week ago

Triggered auto assignment to @twisterdotcom (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details. Please add this bug to a GH project, as outlined in the SO.

MelvinBot commented 1 week ago

This has been labelled "Needs Reproduction". Follow the steps here: https://stackoverflowteams.com/c/expensify/questions/16989

bernhardoj commented 1 week ago

Proposal

Please re-state the problem that we are trying to solve in this issue.

A "No native ExponentConstants module found" warning is shown.

What is the root cause of that problem?

We don't link the expo-const module, so it's not found. https://github.com/Expensify/App/blob/c3d33fcec7df3fcbb31cdfcb61951ce985da63c7/package.json#L354-L357

expo-const is being used in expo-asset module and it's found in PlatformUtils file. However, all the properties that is being used inside the file doesn't exist even if we installed the expo-const. https://github.com/expo/expo/blob/d576550145ede25dec3f6636bf260f7b05bec7a6/packages/expo-asset/src/PlatformUtils.ts#L32-L39

So, it's no different whether we include expo-const module or not. Here is the available properites from expo-const.

{"addListener": [Function addListener], "debugMode": true, "deviceName": "iPhone 15 Plus", "emit": [Function emit], "executionEnvironment": "bare", "getWebViewUserAgentAsync": [Function getWebViewUserAgentAsync], "isHeadless": false, "listenerCount": [Function listenerCount], "manifest": {"description": "New Expensify is the next generation of Expensify: a reimagination of payments based atop a foundation of chat.", "name": "new.expensify", "platforms": ["ios", "android", "web"], "sdkVersion": "51.0.0", "slug": "new.expensify", "version": "9.0.50-7"}, "platform": {"ios": {"buildNumber": "9.0.50.7"}}, "removeAllListeners": [Function removeAllListeners], "removeListener": [Function removeListener], "removeSubscription": [Function removeSubscription], "sessionId": "715902EE-F726-43EA-B204-6797A7E27318", "statusBarHeight": 54, "systemFonts": [listOfFontsTooLong]}

What changes do you think we should make in order to solve the problem?

We can suppress the warning. One way to do it is by suppressing it here. https://github.com/Expensify/App/blob/c3d33fcec7df3fcbb31cdfcb61951ce985da63c7/src/App.tsx#L48-L53

'No native ExponentConstants module found',

OR

We can link the expo-const by remove it from the auto-link exclude list. https://github.com/Expensify/App/blob/c3d33fcec7df3fcbb31cdfcb61951ce985da63c7/package.json#L354-L357

melvin-bot[bot] commented 5 days ago

@twisterdotcom Whoops! This issue is 2 days overdue. Let's get this updated quick!

melvin-bot[bot] commented 3 days ago

@twisterdotcom Huh... This is 4 days overdue. Who can take care of this?

twisterdotcom commented 3 days ago

Seems straightforward right? I haven't recreated this, so will lean on C+ too for this dev specific issue.

melvin-bot[bot] commented 3 days ago

Job added to Upwork: https://www.upwork.com/jobs/~021849240595196131510

melvin-bot[bot] commented 3 days ago

Triggered auto assignment to Contributor-plus team member for initial proposal review - @mollfpr (External)

melvin-bot[bot] commented 3 days ago

Upwork job price has been updated to $125

twisterdotcom commented 3 days ago

Downgrading as this isn't customer facing.