Remove Amplitude from Expo Go (#22523)
add EXPO_SDK_NATIVE_MODULES_SECRET to secrets
[android] Remove Fabric and Crashlytics on Android (#8211)# Why Closes #8047 # How I removed: - Fabric and Crashlytics setup - `FABRIC_API_KEY` and `FABRIC_SECRET_KEY` from secrets keys
[android] Remove Fabric and Crashlytics on Android (#8211)# Why Closes #8047 # How I removed: - Fabric and Crashlytics setup - `FABRIC_API_KEY` and `FABRIC_SECRET_KEY` from secrets keys - `fabric.properties` files - Removed Fabric and Crashlytics files from cluttered `.gitignore` files # Test Plan CI jobs passed, Android's client builds and works as expected.
show more ...
[secrets] Migrate Expo Client to Expo Client (exponent-5dd6d) GCP project (#7688)# Why It seems that the currently used `GOOGLE_CLIENT_API_KEY` key is… not present in any of the GCP projects we
[secrets] Migrate Expo Client to Expo Client (exponent-5dd6d) GCP project (#7688)# Why It seems that the currently used `GOOGLE_CLIENT_API_KEY` key is… not present in any of the GCP projects we have. This may be the reason for why the Firebase Installations API always returns a 400 status code for registration request and why Expo clients cannot fetch the FCM token. Fixes https://github.com/expo/expo/issues/7673 and https://github.com/expo/expo/issues/7606. # How For both: - https://console.cloud.google.com/apis/credentials?project=exponent-5dd6d - https://console.cloud.google.com/apis/credentials?project=exponentjs I have 1. verified there is no such key as the one we seem to be using (`AIzaSyCJ…`) in neither [`exponentjs`](https://console.cloud.google.com/apis/credentials?project=exponentjs) dashboard nor [`exponent-5dd6d`](https://console.cloud.google.com/apis/credentials?project=exponent-5dd6d) 2. I went to [_Firebase Installations API_ dashboard of `exponent-5dd6d`](https://console.cloud.google.com/apis/api/firebaseinstallations.googleapis.com/overview?project=exponent-5dd6d&authuser=1) to see the following graph consisting only of 4xx responses:  3. facing this information I have created new keys in the `exponent-5dd6d` project: - an Android Maps key restricted to `host.exp.exponent` and Maps API - an Android key restricted to `host.exp.exponent` and Cloud Messaging + Installations API - an iOS key restricted to `host.exp.Exponent` and Maps API 4. knowing that the Google Maps Android key is not in fact used to access Cloud Messaging or Firebase Installations APIs I have removed those two from among the list of allowed services for this key. # Test Plan To test for the presence of this problem properly, Expo Client must be first removed from the device, otherwise the cache of tokens we keep may affect the results of the experiment. After installing Expo client app I opened an SDK37 experience that does not provide its own `google-services.json`, which requests the Expo push token. The Promise resolved successfully with an Expo push token (which allows to send notifications successfully). I have also run the Maps screen from NCL on both Expo clients and both showed the map. I have also confirmed that running the Maps screen shows some usage of the keys — good.
[bare-expo] Update Android google-services.json to use Bare Expo firebase project
[bare-expo] Add GoogleService-Info.plist to bare-expo (#6934)* [secrets][template-files] Add GoogleService-Info.plist secrets & templates for bare-expo * [bare-expo] Add optional GoogleService-Inf
[bare-expo] Add GoogleService-Info.plist to bare-expo (#6934)* [secrets][template-files] Add GoogleService-Info.plist secrets & templates for bare-expo * [bare-expo] Add optional GoogleService-Info.plist file linking
[bare-expo][tools] Add google-services.json to bare-expo (#6576)# Why We'll need Firebase integrated for `expo-notifications`. # How - added `dev.expo.payments` to our `exponentjs` Firebas
[bare-expo][tools] Add google-services.json to bare-expo (#6576)# Why We'll need Firebase integrated for `expo-notifications`. # How - added `dev.expo.payments` to our `exponentjs` Firebase console, - added a template file for a minimal `google-services.json` and configured `expotools` to generate it to `bare-expo` project, - added generated file path to root `.gitignore` in `Generated files` section - provided placeholder values for this new template, - copied `GenerateDynamicMacrosPlugin` from the root Android project, changing the number of `../` accordingly, - added [the Google Services Gradle plugin](https://developers.google.com/android/guides/google-services-plugin) to `bare-expo` # Test Plan 1. `et android-generate-dynamic-macros` ```sh rm apps/bare-expo/android/app/google-services.json # failed as expected et android-generate-dynamic-macros # finished successfully cat apps/bare-expo/android/app/google-services.json # printed file ``` 2. Project sync step - opened Android Studio - project synced - `apps/bare-expo/android/app/google-services.json` was created - app ran without problems
[android] Rotate Android Google Maps API keyThis adds a new key for the Android Google Maps API. The new key is restricted just to Expo (debug and production) using the keystore signatures, and wil
[android] Rotate Android Google Maps API keyThis adds a new key for the Android Google Maps API. The new key is restricted just to Expo (debug and production) using the keystore signatures, and will work only with Google Maps. (In the future, we may generalize this to be a Google API key for other Google services, and explicitly opt-in to allowing other services to use the key.)The key is controlled through GCP and is restricted via keystore signatures so it will work only in the Expo client.Tested by building a debug APK and ensuring that Google Maps in NCL works. Also opened the APK with Android Studio, inspected AndroidManifest.xml, and saw the new key inside of it.
[expo-face-detector] Change face detection library to MLKit (#4056)* Exchange GoogleVision to MLKit. Temporarily remove FaceDetector from versioned ABIs to limit errors. * Remove old implementat
[expo-face-detector] Change face detection library to MLKit (#4056)* Exchange GoogleVision to MLKit. Temporarily remove FaceDetector from versioned ABIs to limit errors. * Remove old implementations from compile path. * Update project.pbxproj after deleting old FaceDetectors. * Exchange GMVision to MLKit for Face Detection. * [WIP] More or less working version of portrait camera detection. * Correct transformations for landscape non mirrored. * Correct scaling with regard to cropping. * Translation with regard to cropping on non-mirrored. * Handle cropping translation in mirror. * Refactor transitions to nice matrix operations. * Add some comments. * Refactor. Extract transformation creation to calculator. * Read orientation on main thread. * Handle properties properly. Add timeInterval. * Update facedetector docs. * [WIP] * Formatting. * Updated pbxproj. * Change dependency from Google Mobile Vision to MLKit. * Review suggestions. * Add FaceDetector screen for detecting faces on picked images. * Correct detecting faces on UIImage. * Apply review suggestions. * Detect faces from file in android. * Return image data along with detected faces for file. * Reformat to use registered face detector instead forcibly using expo face detector. * Handle mirrored images in camera preview. * Correct iOS FeceDetector enabling. * Respect tracking settings. * Respect minTimeInterval. Correct yawAngle in mirrored images in Android. * Request CAMERA_ROLL permission in FaceDetector test screen. * Upmerge master. * Applying review suggestions. * Update apps/native-component-list/src/screens/FaceDetectorScreen.tsx Co-Authored-By: Stanisław Chmiela <[email protected]> * Update apps/native-component-list/src/screens/FaceDetectorScreen.tsx Co-Authored-By: Stanisław Chmiela <[email protected]> * Update docs/pages/versions/unversioned/sdk/facedetector.md Co-Authored-By: Stanisław Chmiela <[email protected]> * Temporarilrly remove FaceDetector from SDK333. * Handle orientation change. * Correct FaceDetector screen. * [ios] Autogenerate GoogleService-Info.plist * Mark detected faces on FaceDetectorScreen. * Correct rotation matrix for -90 degrees rotation. * Move iOS changes to old ABIs. * Update Pods. * Backport android face detector.
[tools] Split powertools out into expotoolsThis is a subset of powertools that we need in this repo to do things like publish dev versions of home. This commit copies most of powertools with the fo
[tools] Split powertools out into expotoolsThis is a subset of powertools that we need in this repo to do things like publish dev versions of home. This commit copies most of powertools with the following changes:- Paths are updated for the Expo repo- Removed commands that belong more in powertools- Changed uses of `exp` to use `expo` (Expo CLI) instead- Removed old bootstrap/expu/yarnu scripts- Removed fixtures for SDK versions we don't include in the client anymore- Converted from Flow to TypeScript- Moved sensitive environment variables out of the scripts and into an encrypted fileNote: the commands to published (unversioned/versioned) test suite just use whatever version is in app.json.Tested the publish-dev-home command and verified that after building the iOS app with the `PUBLISHED` manifest (twice, to flush caches) Home loaded fine.
Move universal modules to packages (#2380)* Move modules to packages * Remove unused, old, unmaintained standalone projects * Replace ['"/]modules['"/] with packages * Run pod install afte
Move universal modules to packages (#2380)* Move modules to packages * Remove unused, old, unmaintained standalone projects * Replace ['"/]modules['"/] with packages * Run pod install after regenerating ios files
[secrets] Remove __internal__ and replace it with `secrets` insteadRather than looking for the `__internal__` directory, we now use `secrets`, which contains encrypted secret values.
[secrets] Add `lock` and `unlock` scripts to run git-crypt with the right keyThese are convenience scripts that use the right key. I also added an `.envrc` file that adds tools/bin to PATH.
[secrets] Add a `secrets` directory encrypted with `git-crypt` + READMEThis adds an encrypted `secrets` directory for low-security secrets, such as configuration keys for the client. See the README
[secrets] Add a `secrets` directory encrypted with `git-crypt` + READMEThis adds an encrypted `secrets` directory for low-security secrets, such as configuration keys for the client. See the README for more details.Test plan: Added a test file with some placeholder text to verify that it is encrypted on GitHub.