eas-cli icon indicating copy to clipboard operation
eas-cli copied to clipboard

EAS Update doesn't update if change is very small

Open pbclyde opened this issue 3 years ago • 3 comments
trafficstars

Build/Submit details page URL

No response

Summary

eas update does not catch all changes. Sometimes a very small change does not appear to be included in the build.

Managed or bare?

Bare

Environment

expo-env-info 1.0.5 environment info: System: OS: macOS 12.5.1 Shell: 5.8.1 - /bin/zsh Binaries: Node: 16.16.0 - ~/.nvm/versions/node/v16.16.0/bin/node Yarn: 1.17.3 - ~/Sites/paybright/ejected4/node_modules/.bin/yarn npm: 8.11.0 - ~/.nvm/versions/node/v16.16.0/bin/npm Watchman: 4.9.0 - /usr/local/bin/watchman Managers: CocoaPods: 1.11.2 - /usr/local/bin/pod SDKs: iOS SDK: Platforms: DriverKit 21.4, iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5 Android SDK: API Levels: 29, 30 Build Tools: 29.0.2, 30.0.3 System Images: android-30 | Google APIs Intel x86 Atom IDEs: Android Studio: 2020.3 AI-203.7717.56.2031.7621141 Xcode: 13.3/13E113 - /usr/bin/xcodebuild npmPackages: @expo/webpack-config: ^0.16.24 => 0.16.24 babel-preset-expo: 9.0.1 => 9.0.1 expo: ^44.0.0 => 44.0.1 react: 17.0.1 => 17.0.1 react-dom: 17.0.1 => 17.0.1 react-native: 0.64.3 => 0.64.3 react-native-web: 0.17.1 => 0.17.1 Expo Workflow: bare

Error output

No response

Reproducible demo or steps to reproduce from a blank project

Built a binary which contained this line of code

const profile = process.env.PROFILE const profileKey = profile || __DEV__ ? Channel.DEVELOPMENT : Channel.PRODUCTION

this logic was wrong so the line was changed to:

const profile = process.env.PROFILE const profile = profile || (__DEV__ ? Channel.DEVELOPMENT : Channel.PRODUCTION)

ran the following cmd for updating:

PROFILE=preview eas update --branch preview --message "update profile logic"

that line wouldn't update until the variable names were changed... it seems like the initial change (adding the parenthesis) was too insignificant to be picked up. Very odd behavior.

pbclyde avatar Sep 09 '22 00:09 pbclyde

is anyone reviewing this? Seems like these issues arent getting reviewed since this one is opened for six days now. Is there a better place we can go for our issues with eas?

mikeRChambers610 avatar Sep 14 '22 19:09 mikeRChambers610

I suspect the size of code change is a red herring assuming that the minifier produced different code. To pick up the update, by default an app will first look for a new update the next time the app is cold launched and will download the update in the background, and then it will launch that update the next time the app is cold launched.

Do you see an entry for your update with just the parentheses changes listed in EAS CLI or on the website?

ide avatar Sep 16 '22 16:09 ide

Something is not right in eas build either when slight changes are send to TestFlight.

aliexalter avatar Oct 09 '22 14:10 aliexalter

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.

expo-bot avatar Mar 01 '23 00:03 expo-bot