Builds fails on EAS when using `transcrypt` and decrypting files in a pre install hook
- Dominant language
- TypeScript
- Stars
- 1.4k
- Forks
- 236
- Avg merge
- 3d 1h
- Merged PRs (30d)
- 91
Description
### Build/Submit details page URL
https://expo.dev/accounts/finaryapp/projects/finary-app/builds/4edd010d-2817-4ea8-a642-dfc695bb30d9
### Summary
We are using [transcrypt](https://github.com/elasticdog/transcrypt) to encrypt & decrypt files on our repository. This is done in `eas-build-pre-install` which installs `transcrypt` and decrypt some files.
About 2 hours ago, our builds started to fail on EAS for the same reason: `transcrypt: the repo is dirty; commit or stash your changes before running transcrypt`.
After some investigation, it looks like we don't need to decrypt our files anymore due to a change on EAS build system. I think this could be related to the [recent v15 release](https://github.com/expo/eas-cli/releases/tag/v15.0.0).
We can remove the decrypt step and let EAS manage everything with Git, but I wanted to open an issue to let you know that this change caused a lot of build errors on our side and to ask what are the next steps required to fix this.
### Managed or bare?
Managed
### Environment
```
expo-env-info 1.2.2 environment info:
System:
OS: macOS 15.2
Shell: 5.9 - /bin/zsh
Binaries:
Node: 20.18.2 - ~/.local/state/fnm_multishells/53599_1738320923047/bin/node
Yarn: 1.22.22 - /opt/homebrew/bin/yarn
npm: 10.8.2 - ~/.local/state/fnm_multishells/53599_1738320923047/bin/npm
Watchman: 2024.12.02.00 - /opt/homebrew/bin/watchman
Managers:
CocoaPods: 1.16.2 - /opt/homebrew/bin/pod
SDKs:
iOS SDK:
Platforms: DriverKit 24.2, iOS 18.2, macOS 15.2, tvOS 18.2, visionOS 2.2, watchOS 11.2
Android SDK:
API Levels: 31, 34
Build Tools: 33.0.1, 34.0.0
System Images: android-34 | Google APIs ARM 64 v8a, android-34 | Google Play ARM 64 v8a
IDEs:
Android Studio: 2024.2 AI-242.23726.103.2422.12816248
Xcode: 16.2/16C5032a - /usr/bin/xcodebuild
npmPackages:
expo: ~51.0.39 => 51.0.39
react: 18.2.0 => 18.2.0
react-dom: 18.2.0 => 18.2.0
react-native: 0.74.5 => 0.74.5
Expo Workflow: bare
```
### Error output
_No response_
### Reproducible demo or steps to reproduce from a blank project
1. Initialize an Expo project with a git repository and `transcrypt`
2. Encrypt some files and add an `eas-build-pre-install` to install `transcrypt` and decrypt the files
3. Run the build on EAS servers
Contributor guide
Assessment
This issue has not been assessed yet.