@expo/cli 0.22.25 → 0.22.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/bin/cli +91 -93
- package/build/bin/cli.map +1 -1
- package/build/metro-require/require.js +52 -53
- package/build/src/api/endpoint.js +2 -6
- package/build/src/api/endpoint.js.map +1 -1
- package/build/src/api/getExpoGoIntermediateCertificate.js +3 -5
- package/build/src/api/getExpoGoIntermediateCertificate.js.map +1 -1
- package/build/src/api/getExpoSchema.js +12 -16
- package/build/src/api/getExpoSchema.js.map +1 -1
- package/build/src/api/getNativeModuleVersions.js +4 -6
- package/build/src/api/getNativeModuleVersions.js.map +1 -1
- package/build/src/api/getProjectDevelopmentCertificate.js +3 -5
- package/build/src/api/getProjectDevelopmentCertificate.js.map +1 -1
- package/build/src/api/getVersions.js +5 -7
- package/build/src/api/getVersions.js.map +1 -1
- package/build/src/api/graphql/client.js +26 -32
- package/build/src/api/graphql/client.js.map +1 -1
- package/build/src/api/graphql/queries/AppQuery.js +4 -6
- package/build/src/api/graphql/queries/AppQuery.js.map +1 -1
- package/build/src/api/graphql/queries/UserQuery.js +3 -5
- package/build/src/api/graphql/queries/UserQuery.js.map +1 -1
- package/build/src/api/graphql/types/App.js +1 -3
- package/build/src/api/graphql/types/App.js.map +1 -1
- package/build/src/api/rest/cache/FileSystemResponseCache.js +8 -10
- package/build/src/api/rest/cache/FileSystemResponseCache.js.map +1 -1
- package/build/src/api/rest/cache/ResponseCache.js +12 -20
- package/build/src/api/rest/cache/ResponseCache.js.map +1 -1
- package/build/src/api/rest/cache/wrapFetchWithCache.js +11 -13
- package/build/src/api/rest/cache/wrapFetchWithCache.js.map +1 -1
- package/build/src/api/rest/client.js +35 -53
- package/build/src/api/rest/client.js.map +1 -1
- package/build/src/api/rest/client.types.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithBaseUrl.js +3 -5
- package/build/src/api/rest/wrapFetchWithBaseUrl.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithOffline.js +3 -5
- package/build/src/api/rest/wrapFetchWithOffline.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithProgress.js +7 -11
- package/build/src/api/rest/wrapFetchWithProgress.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithProxy.js +3 -5
- package/build/src/api/rest/wrapFetchWithProxy.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithUserAgent.js +6 -8
- package/build/src/api/rest/wrapFetchWithUserAgent.js.map +1 -1
- package/build/src/api/settings.js +5 -7
- package/build/src/api/settings.js.map +1 -1
- package/build/src/api/updateDevelopmentSession.js +17 -23
- package/build/src/api/updateDevelopmentSession.js.map +1 -1
- package/build/src/api/user/UserSettings.js +21 -39
- package/build/src/api/user/UserSettings.js.map +1 -1
- package/build/src/api/user/actions.js +21 -27
- package/build/src/api/user/actions.js.map +1 -1
- package/build/src/api/user/expoSsoLauncher.js +26 -30
- package/build/src/api/user/expoSsoLauncher.js.map +1 -1
- package/build/src/api/user/otp.js +29 -35
- package/build/src/api/user/otp.js.map +1 -1
- package/build/src/api/user/user.js +30 -44
- package/build/src/api/user/user.js.map +1 -1
- package/build/src/config/configAsync.js +23 -29
- package/build/src/config/configAsync.js.map +1 -1
- package/build/src/config/index.js +21 -25
- package/build/src/config/index.js.map +1 -1
- package/build/src/customize/customizeAsync.js +6 -8
- package/build/src/customize/customizeAsync.js.map +1 -1
- package/build/src/customize/generate.js +16 -20
- package/build/src/customize/generate.js.map +1 -1
- package/build/src/customize/index.js +12 -14
- package/build/src/customize/index.js.map +1 -1
- package/build/src/customize/resolveOptions.js +2 -4
- package/build/src/customize/resolveOptions.js.map +1 -1
- package/build/src/customize/templates.js +54 -58
- package/build/src/customize/templates.js.map +1 -1
- package/build/src/customize/typescript.js +7 -11
- package/build/src/customize/typescript.js.map +1 -1
- package/build/src/export/createMetadataJson.js +9 -11
- package/build/src/export/createMetadataJson.js.map +1 -1
- package/build/src/export/embed/exportEager.js +6 -8
- package/build/src/export/embed/exportEager.js.map +1 -1
- package/build/src/export/embed/exportEmbedAsync.js +61 -71
- package/build/src/export/embed/exportEmbedAsync.js.map +1 -1
- package/build/src/export/embed/exportServer.js +55 -57
- package/build/src/export/embed/exportServer.js.map +1 -1
- package/build/src/export/embed/index.js +40 -44
- package/build/src/export/embed/index.js.map +1 -1
- package/build/src/export/embed/resolveOptions.js +36 -44
- package/build/src/export/embed/resolveOptions.js.map +1 -1
- package/build/src/export/embed/xcodeCompilerLogger.js +27 -39
- package/build/src/export/embed/xcodeCompilerLogger.js.map +1 -1
- package/build/src/export/exportApp.js +63 -67
- package/build/src/export/exportApp.js.map +1 -1
- package/build/src/export/exportAssets.js +27 -35
- package/build/src/export/exportAssets.js.map +1 -1
- package/build/src/export/exportAsync.js +9 -13
- package/build/src/export/exportAsync.js.map +1 -1
- package/build/src/export/exportDomComponents.js +45 -53
- package/build/src/export/exportDomComponents.js.map +1 -1
- package/build/src/export/exportHermes.js +63 -85
- package/build/src/export/exportHermes.js.map +1 -1
- package/build/src/export/exportStaticAsync.js +62 -72
- package/build/src/export/exportStaticAsync.js.map +1 -1
- package/build/src/export/favicon.js +27 -33
- package/build/src/export/favicon.js.map +1 -1
- package/build/src/export/getPublicExpoManifest.js +5 -7
- package/build/src/export/getPublicExpoManifest.js.map +1 -1
- package/build/src/export/getResolvedLocales.js +9 -11
- package/build/src/export/getResolvedLocales.js.map +1 -1
- package/build/src/export/html.js +6 -10
- package/build/src/export/html.js.map +1 -1
- package/build/src/export/index.js +28 -32
- package/build/src/export/index.js.map +1 -1
- package/build/src/export/metroAssetLocalPath.js +30 -36
- package/build/src/export/metroAssetLocalPath.js.map +1 -1
- package/build/src/export/persistMetroAssets.js +34 -42
- package/build/src/export/persistMetroAssets.js.map +1 -1
- package/build/src/export/publicFolder.js +6 -10
- package/build/src/export/publicFolder.js.map +1 -1
- package/build/src/export/resolveOptions.js +24 -28
- package/build/src/export/resolveOptions.js.map +1 -1
- package/build/src/export/saveAssets.js +46 -50
- package/build/src/export/saveAssets.js.map +1 -1
- package/build/src/export/web/exportWebAsync.js +11 -13
- package/build/src/export/web/exportWebAsync.js.map +1 -1
- package/build/src/export/web/index.js +15 -19
- package/build/src/export/web/index.js.map +1 -1
- package/build/src/export/web/resolveOptions.js +3 -5
- package/build/src/export/web/resolveOptions.js.map +1 -1
- package/build/src/export/writeContents.js +2 -4
- package/build/src/export/writeContents.js.map +1 -1
- package/build/src/graphql/generated.js +274 -400
- package/build/src/graphql/generated.js.map +1 -1
- package/build/src/install/applyPlugins.js +7 -11
- package/build/src/install/applyPlugins.js.map +1 -1
- package/build/src/install/checkPackages.js +22 -26
- package/build/src/install/checkPackages.js.map +1 -1
- package/build/src/install/fixPackages.js +12 -16
- package/build/src/install/fixPackages.js.map +1 -1
- package/build/src/install/index.js +16 -18
- package/build/src/install/index.js.map +1 -1
- package/build/src/install/installAsync.js +26 -32
- package/build/src/install/installAsync.js.map +1 -1
- package/build/src/install/installExpoPackage.js +18 -22
- package/build/src/install/installExpoPackage.js.map +1 -1
- package/build/src/install/resolveOptions.js +19 -21
- package/build/src/install/resolveOptions.js.map +1 -1
- package/build/src/install/utils/autoAddConfigPlugins.js +14 -18
- package/build/src/install/utils/autoAddConfigPlugins.js.map +1 -1
- package/build/src/install/utils/checkPackagesCompatibility.js +11 -13
- package/build/src/install/utils/checkPackagesCompatibility.js.map +1 -1
- package/build/src/lint/ESlintPrerequisite.js +44 -50
- package/build/src/lint/ESlintPrerequisite.js.map +1 -1
- package/build/src/lint/index.js +8 -12
- package/build/src/lint/index.js.map +1 -1
- package/build/src/lint/lintAsync.js +8 -10
- package/build/src/lint/lintAsync.js.map +1 -1
- package/build/src/log.js +16 -36
- package/build/src/log.js.map +1 -1
- package/build/src/login/index.js +20 -24
- package/build/src/login/index.js.map +1 -1
- package/build/src/logout/index.js +7 -11
- package/build/src/logout/index.js.map +1 -1
- package/build/src/prebuild/clearNativeFolder.js +26 -38
- package/build/src/prebuild/clearNativeFolder.js.map +1 -1
- package/build/src/prebuild/configureProjectAsync.js +14 -18
- package/build/src/prebuild/configureProjectAsync.js.map +1 -1
- package/build/src/prebuild/copyTemplateFiles.js +13 -17
- package/build/src/prebuild/copyTemplateFiles.js.map +1 -1
- package/build/src/prebuild/ensureConfigAsync.js +4 -6
- package/build/src/prebuild/ensureConfigAsync.js.map +1 -1
- package/build/src/prebuild/index.js +32 -36
- package/build/src/prebuild/index.js.map +1 -1
- package/build/src/prebuild/prebuildAsync.js +25 -29
- package/build/src/prebuild/prebuildAsync.js.map +1 -1
- package/build/src/prebuild/renameTemplateAppName.js +40 -46
- package/build/src/prebuild/renameTemplateAppName.js.map +1 -1
- package/build/src/prebuild/resolveOptions.js +52 -66
- package/build/src/prebuild/resolveOptions.js.map +1 -1
- package/build/src/prebuild/resolveTemplate.js +32 -36
- package/build/src/prebuild/resolveTemplate.js.map +1 -1
- package/build/src/prebuild/updateFromTemplate.js +13 -19
- package/build/src/prebuild/updateFromTemplate.js.map +1 -1
- package/build/src/prebuild/updatePackageJson.js +39 -53
- package/build/src/prebuild/updatePackageJson.js.map +1 -1
- package/build/src/prebuild/validateTemplatePlatforms.js +8 -12
- package/build/src/prebuild/validateTemplatePlatforms.js.map +1 -1
- package/build/src/register/index.js +7 -11
- package/build/src/register/index.js.map +1 -1
- package/build/src/register/registerAsync.js +3 -5
- package/build/src/register/registerAsync.js.map +1 -1
- package/build/src/run/android/index.js +32 -36
- package/build/src/run/android/index.js.map +1 -1
- package/build/src/run/android/resolveDevice.js +8 -10
- package/build/src/run/android/resolveDevice.js.map +1 -1
- package/build/src/run/android/resolveGradlePropsAsync.js +16 -18
- package/build/src/run/android/resolveGradlePropsAsync.js.map +1 -1
- package/build/src/run/android/resolveInstallApkName.js +15 -17
- package/build/src/run/android/resolveInstallApkName.js.map +1 -1
- package/build/src/run/android/resolveLaunchProps.js +10 -12
- package/build/src/run/android/resolveLaunchProps.js.map +1 -1
- package/build/src/run/android/resolveOptions.js +2 -4
- package/build/src/run/android/resolveOptions.js.map +1 -1
- package/build/src/run/android/runAndroidAsync.js +21 -23
- package/build/src/run/android/runAndroidAsync.js.map +1 -1
- package/build/src/run/ensureNativeProject.js +5 -7
- package/build/src/run/ensureNativeProject.js.map +1 -1
- package/build/src/run/hints.js +7 -13
- package/build/src/run/hints.js.map +1 -1
- package/build/src/run/index.js +23 -27
- package/build/src/run/index.js.map +1 -1
- package/build/src/run/ios/XcodeBuild.js +56 -74
- package/build/src/run/ios/XcodeBuild.js.map +1 -1
- package/build/src/run/ios/XcodeBuild.types.js.map +1 -1
- package/build/src/run/ios/appleDevice/AppleDevice.js +63 -69
- package/build/src/run/ios/appleDevice/AppleDevice.js.map +1 -1
- package/build/src/run/ios/appleDevice/ClientManager.js +26 -29
- package/build/src/run/ios/appleDevice/ClientManager.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/AFCClient.js +25 -28
- package/build/src/run/ios/appleDevice/client/AFCClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/DebugserverClient.js +26 -29
- package/build/src/run/ios/appleDevice/client/DebugserverClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js +21 -22
- package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/LockdowndClient.js +29 -32
- package/build/src/run/ios/appleDevice/client/LockdowndClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js +24 -28
- package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/ServiceClient.js +4 -7
- package/build/src/run/ios/appleDevice/client/ServiceClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js +27 -28
- package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/installOnDeviceAsync.js +17 -23
- package/build/src/run/ios/appleDevice/installOnDeviceAsync.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js +132 -146
- package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js +21 -29
- package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js +21 -29
- package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js +22 -34
- package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js +17 -27
- package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js.map +1 -1
- package/build/src/run/ios/codeSigning/Security.js +39 -53
- package/build/src/run/ios/codeSigning/Security.js.map +1 -1
- package/build/src/run/ios/codeSigning/configureCodeSigning.js +9 -13
- package/build/src/run/ios/codeSigning/configureCodeSigning.js.map +1 -1
- package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js +19 -27
- package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js.map +1 -1
- package/build/src/run/ios/codeSigning/settings.js +5 -9
- package/build/src/run/ios/codeSigning/settings.js.map +1 -1
- package/build/src/run/ios/codeSigning/simulatorCodeSigning.js +12 -14
- package/build/src/run/ios/codeSigning/simulatorCodeSigning.js.map +1 -1
- package/build/src/run/ios/codeSigning/xcodeCodeSigning.js +21 -27
- package/build/src/run/ios/codeSigning/xcodeCodeSigning.js.map +1 -1
- package/build/src/run/ios/index.js +36 -40
- package/build/src/run/ios/index.js.map +1 -1
- package/build/src/run/ios/launchApp.js +17 -23
- package/build/src/run/ios/launchApp.js.map +1 -1
- package/build/src/run/ios/options/appleDestinations.js +36 -38
- package/build/src/run/ios/options/appleDestinations.js.map +1 -1
- package/build/src/run/ios/options/promptDevice.js +16 -20
- package/build/src/run/ios/options/promptDevice.js.map +1 -1
- package/build/src/run/ios/options/resolveDevice.js +24 -30
- package/build/src/run/ios/options/resolveDevice.js.map +1 -1
- package/build/src/run/ios/options/resolveNativeScheme.js +23 -31
- package/build/src/run/ios/options/resolveNativeScheme.js.map +1 -1
- package/build/src/run/ios/options/resolveOptions.js +5 -7
- package/build/src/run/ios/options/resolveOptions.js.map +1 -1
- package/build/src/run/ios/options/resolveXcodeProject.js +5 -7
- package/build/src/run/ios/options/resolveXcodeProject.js.map +1 -1
- package/build/src/run/ios/runIosAsync.js +44 -48
- package/build/src/run/ios/runIosAsync.js.map +1 -1
- package/build/src/run/ios/validateExternalBinary.js +22 -24
- package/build/src/run/ios/validateExternalBinary.js.map +1 -1
- package/build/src/run/resolveBundlerProps.js +2 -4
- package/build/src/run/resolveBundlerProps.js.map +1 -1
- package/build/src/run/startBundler.js +12 -16
- package/build/src/run/startBundler.js.map +1 -1
- package/build/src/serve/index.js +16 -20
- package/build/src/serve/index.js.map +1 -1
- package/build/src/serve/serveAsync.js +32 -36
- package/build/src/serve/serveAsync.js.map +1 -1
- package/build/src/start/detectDevClient.js +9 -13
- package/build/src/start/detectDevClient.js.map +1 -1
- package/build/src/start/doctor/Prerequisite.js +7 -12
- package/build/src/start/doctor/Prerequisite.js.map +1 -1
- package/build/src/start/doctor/SecurityBinPrerequisite.js +11 -13
- package/build/src/start/doctor/SecurityBinPrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js +19 -23
- package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js +19 -23
- package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/XcodePrerequisite.js +45 -51
- package/build/src/start/doctor/apple/XcodePrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/XcrunPrerequisite.js +16 -18
- package/build/src/start/doctor/apple/XcrunPrerequisite.js.map +1 -1
- package/build/src/start/doctor/dependencies/bundledNativeModules.js +19 -23
- package/build/src/start/doctor/dependencies/bundledNativeModules.js.map +1 -1
- package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js +25 -31
- package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js.map +1 -1
- package/build/src/start/doctor/dependencies/getMissingPackages.js +17 -25
- package/build/src/start/doctor/dependencies/getMissingPackages.js.map +1 -1
- package/build/src/start/doctor/dependencies/getVersionedPackages.js +32 -40
- package/build/src/start/doctor/dependencies/getVersionedPackages.js.map +1 -1
- package/build/src/start/doctor/dependencies/resolvePackages.js +26 -32
- package/build/src/start/doctor/dependencies/resolvePackages.js.map +1 -1
- package/build/src/start/doctor/dependencies/validateDependenciesVersions.js +31 -41
- package/build/src/start/doctor/dependencies/validateDependenciesVersions.js.map +1 -1
- package/build/src/start/doctor/ngrok/ExternalModule.js +29 -34
- package/build/src/start/doctor/ngrok/ExternalModule.js.map +1 -1
- package/build/src/start/doctor/ngrok/NgrokResolver.js +8 -12
- package/build/src/start/doctor/ngrok/NgrokResolver.js.map +1 -1
- package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js +28 -32
- package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js.map +1 -1
- package/build/src/start/doctor/typescript/updateTSConfig.js +17 -23
- package/build/src/start/doctor/typescript/updateTSConfig.js.map +1 -1
- package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js +27 -33
- package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js.map +1 -1
- package/build/src/start/index.js +42 -46
- package/build/src/start/index.js.map +1 -1
- package/build/src/start/interface/KeyPressHandler.js +14 -18
- package/build/src/start/interface/KeyPressHandler.js.map +1 -1
- package/build/src/start/interface/commandsTable.js +80 -94
- package/build/src/start/interface/commandsTable.js.map +1 -1
- package/build/src/start/interface/interactiveActions.js +40 -44
- package/build/src/start/interface/interactiveActions.js.map +1 -1
- package/build/src/start/interface/startInterface.js +61 -65
- package/build/src/start/interface/startInterface.js.map +1 -1
- package/build/src/start/platforms/AppIdResolver.js +4 -6
- package/build/src/start/platforms/AppIdResolver.js.map +1 -1
- package/build/src/start/platforms/DeviceManager.js +6 -10
- package/build/src/start/platforms/DeviceManager.js.map +1 -1
- package/build/src/start/platforms/ExpoGoInstaller.js +20 -25
- package/build/src/start/platforms/ExpoGoInstaller.js.map +1 -1
- package/build/src/start/platforms/PlatformManager.js +15 -17
- package/build/src/start/platforms/PlatformManager.js.map +1 -1
- package/build/src/start/platforms/android/ADBServer.js +35 -39
- package/build/src/start/platforms/android/ADBServer.js.map +1 -1
- package/build/src/start/platforms/android/AndroidAppIdResolver.js +16 -18
- package/build/src/start/platforms/android/AndroidAppIdResolver.js.map +1 -1
- package/build/src/start/platforms/android/AndroidDeviceManager.js +20 -24
- package/build/src/start/platforms/android/AndroidDeviceManager.js.map +1 -1
- package/build/src/start/platforms/android/AndroidPlatformManager.js +17 -17
- package/build/src/start/platforms/android/AndroidPlatformManager.js.map +1 -1
- package/build/src/start/platforms/android/AndroidSdk.js +9 -11
- package/build/src/start/platforms/android/AndroidSdk.js.map +1 -1
- package/build/src/start/platforms/android/activateWindow.js +22 -26
- package/build/src/start/platforms/android/activateWindow.js.map +1 -1
- package/build/src/start/platforms/android/adb.js +83 -121
- package/build/src/start/platforms/android/adb.js.map +1 -1
- package/build/src/start/platforms/android/adbReverse.js +12 -20
- package/build/src/start/platforms/android/adbReverse.js.map +1 -1
- package/build/src/start/platforms/android/emulator.js +26 -36
- package/build/src/start/platforms/android/emulator.js.map +1 -1
- package/build/src/start/platforms/android/getDevices.js +5 -7
- package/build/src/start/platforms/android/getDevices.js.map +1 -1
- package/build/src/start/platforms/android/gradle.js +28 -36
- package/build/src/start/platforms/android/gradle.js.map +1 -1
- package/build/src/start/platforms/android/promptAndroidDevice.js +15 -19
- package/build/src/start/platforms/android/promptAndroidDevice.js.map +1 -1
- package/build/src/start/platforms/ios/AppleAppIdResolver.js +19 -21
- package/build/src/start/platforms/ios/AppleAppIdResolver.js.map +1 -1
- package/build/src/start/platforms/ios/AppleDeviceManager.js +31 -37
- package/build/src/start/platforms/ios/AppleDeviceManager.js.map +1 -1
- package/build/src/start/platforms/ios/ApplePlatformManager.js +12 -12
- package/build/src/start/platforms/ios/ApplePlatformManager.js.map +1 -1
- package/build/src/start/platforms/ios/assertSystemRequirements.js +7 -9
- package/build/src/start/platforms/ios/assertSystemRequirements.js.map +1 -1
- package/build/src/start/platforms/ios/devicectl.js +73 -87
- package/build/src/start/platforms/ios/devicectl.js.map +1 -1
- package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js +18 -22
- package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js.map +1 -1
- package/build/src/start/platforms/ios/getBestSimulator.js +19 -29
- package/build/src/start/platforms/ios/getBestSimulator.js.map +1 -1
- package/build/src/start/platforms/ios/promptAppleDevice.js +10 -14
- package/build/src/start/platforms/ios/promptAppleDevice.js.map +1 -1
- package/build/src/start/platforms/ios/simctl.js +74 -102
- package/build/src/start/platforms/ios/simctl.js.map +1 -1
- package/build/src/start/platforms/ios/simctlLogging.js +52 -57
- package/build/src/start/platforms/ios/simctlLogging.js.map +1 -1
- package/build/src/start/platforms/ios/xcrun.js +18 -22
- package/build/src/start/platforms/ios/xcrun.js.map +1 -1
- package/build/src/start/project/devices.js +9 -19
- package/build/src/start/project/devices.js.map +1 -1
- package/build/src/start/project/dotExpo.js +11 -15
- package/build/src/start/project/dotExpo.js.map +1 -1
- package/build/src/start/project/settings.js +2 -4
- package/build/src/start/project/settings.js.map +1 -1
- package/build/src/start/resolveOptions.js +40 -48
- package/build/src/start/resolveOptions.js.map +1 -1
- package/build/src/start/server/AsyncNgrok.js +51 -55
- package/build/src/start/server/AsyncNgrok.js.map +1 -1
- package/build/src/start/server/AsyncWsTunnel.js +36 -40
- package/build/src/start/server/AsyncWsTunnel.js.map +1 -1
- package/build/src/start/server/BundlerDevServer.js +79 -81
- package/build/src/start/server/BundlerDevServer.js.map +1 -1
- package/build/src/start/server/DevServerManager.js +38 -42
- package/build/src/start/server/DevServerManager.js.map +1 -1
- package/build/src/start/server/DevToolsPluginManager.js +14 -18
- package/build/src/start/server/DevToolsPluginManager.js.map +1 -1
- package/build/src/start/server/DevelopmentSession.js +14 -18
- package/build/src/start/server/DevelopmentSession.js.map +1 -1
- package/build/src/start/server/ReactDevToolsProxy.js +10 -16
- package/build/src/start/server/ReactDevToolsProxy.js.map +1 -1
- package/build/src/start/server/UrlCreator.js +33 -36
- package/build/src/start/server/UrlCreator.js.map +1 -1
- package/build/src/start/server/getStaticRenderFunctions.js +21 -29
- package/build/src/start/server/getStaticRenderFunctions.js.map +1 -1
- package/build/src/start/server/metro/DevToolsPluginWebsocketEndpoint.js +4 -6
- package/build/src/start/server/metro/DevToolsPluginWebsocketEndpoint.js.map +1 -1
- package/build/src/start/server/metro/MetroBundlerDevServer.js +271 -269
- package/build/src/start/server/metro/MetroBundlerDevServer.js.map +1 -1
- package/build/src/start/server/metro/MetroTerminalReporter.js +56 -63
- package/build/src/start/server/metro/MetroTerminalReporter.js.map +1 -1
- package/build/src/start/server/metro/TerminalReporter.js +33 -39
- package/build/src/start/server/metro/TerminalReporter.js.map +1 -1
- package/build/src/start/server/metro/TerminalReporter.types.js.map +1 -1
- package/build/src/start/server/metro/createExpoMetroResolver.js +40 -46
- package/build/src/start/server/metro/createExpoMetroResolver.js.map +1 -1
- package/build/src/start/server/metro/createJResolver.js +28 -32
- package/build/src/start/server/metro/createJResolver.js.map +1 -1
- package/build/src/start/server/metro/createServerComponentsMiddleware.js +92 -96
- package/build/src/start/server/metro/createServerComponentsMiddleware.js.map +1 -1
- package/build/src/start/server/metro/createServerRouteMiddleware.js +30 -32
- package/build/src/start/server/metro/createServerRouteMiddleware.js.map +1 -1
- package/build/src/start/server/metro/debugging/AtlasPrerequisite.js +11 -13
- package/build/src/start/server/metro/debugging/AtlasPrerequisite.js.map +1 -1
- package/build/src/start/server/metro/debugging/MessageHandler.js +1 -3
- package/build/src/start/server/metro/debugging/MessageHandler.js.map +1 -1
- package/build/src/start/server/metro/debugging/attachAtlas.js +22 -26
- package/build/src/start/server/metro/debugging/attachAtlas.js.map +1 -1
- package/build/src/start/server/metro/debugging/createDebugMiddleware.js +17 -19
- package/build/src/start/server/metro/debugging/createDebugMiddleware.js.map +1 -1
- package/build/src/start/server/metro/debugging/createHandlersFactory.js +31 -25
- package/build/src/start/server/metro/debugging/createHandlersFactory.js.map +1 -1
- package/build/src/start/server/metro/debugging/getDebuggerType.js +4 -6
- package/build/src/start/server/metro/debugging/getDebuggerType.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js +8 -14
- package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js +5 -7
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js +6 -8
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js +5 -7
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeEvaluate.js +12 -14
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeEvaluate.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js +10 -14
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js.map +1 -1
- package/build/src/start/server/metro/debugging/pageIsSupported.js +4 -6
- package/build/src/start/server/metro/debugging/pageIsSupported.js.map +1 -1
- package/build/src/start/server/metro/debugging/types.js.map +1 -1
- package/build/src/start/server/metro/dev-server/createEventSocket.js +16 -18
- package/build/src/start/server/metro/dev-server/createEventSocket.js.map +1 -1
- package/build/src/start/server/metro/dev-server/createMessageSocket.js +21 -23
- package/build/src/start/server/metro/dev-server/createMessageSocket.js.map +1 -1
- package/build/src/start/server/metro/dev-server/createMetroMiddleware.js +21 -23
- package/build/src/start/server/metro/dev-server/createMetroMiddleware.js.map +1 -1
- package/build/src/start/server/metro/dev-server/utils/createSocketBroadcaster.js +2 -4
- package/build/src/start/server/metro/dev-server/utils/createSocketBroadcaster.js.map +1 -1
- package/build/src/start/server/metro/dev-server/utils/createSocketMap.js +2 -4
- package/build/src/start/server/metro/dev-server/utils/createSocketMap.js.map +1 -1
- package/build/src/start/server/metro/dev-server/utils/socketMessages.js +4 -8
- package/build/src/start/server/metro/dev-server/utils/socketMessages.js.map +1 -1
- package/build/src/start/server/metro/externals.js +25 -33
- package/build/src/start/server/metro/externals.js.map +1 -1
- package/build/src/start/server/metro/fetchRouterManifest.js +12 -16
- package/build/src/start/server/metro/fetchRouterManifest.js.map +1 -1
- package/build/src/start/server/metro/formatFileCandidates.js +9 -11
- package/build/src/start/server/metro/formatFileCandidates.js.map +1 -1
- package/build/src/start/server/metro/getCssModulesFromBundler.js +18 -22
- package/build/src/start/server/metro/getCssModulesFromBundler.js.map +1 -1
- package/build/src/start/server/metro/instantiateMetro.js +79 -85
- package/build/src/start/server/metro/instantiateMetro.js.map +1 -1
- package/build/src/start/server/metro/log-box/LogBoxLog.js +36 -40
- package/build/src/start/server/metro/log-box/LogBoxLog.js.map +1 -1
- package/build/src/start/server/metro/log-box/LogBoxSymbolication.js +14 -20
- package/build/src/start/server/metro/log-box/LogBoxSymbolication.js.map +1 -1
- package/build/src/start/server/metro/log-box/formatProjectFilePath.js +6 -10
- package/build/src/start/server/metro/log-box/formatProjectFilePath.js.map +1 -1
- package/build/src/start/server/metro/metroErrorInterface.js +78 -88
- package/build/src/start/server/metro/metroErrorInterface.js.map +1 -1
- package/build/src/start/server/metro/metroErrors.js +4 -8
- package/build/src/start/server/metro/metroErrors.js.map +1 -1
- package/build/src/start/server/metro/metroPrivateServer.js +7 -9
- package/build/src/start/server/metro/metroPrivateServer.js.map +1 -1
- package/build/src/start/server/metro/metroVirtualModules.js +8 -10
- package/build/src/start/server/metro/metroVirtualModules.js.map +1 -1
- package/build/src/start/server/metro/metroWatchTypeScriptFiles.js +22 -24
- package/build/src/start/server/metro/metroWatchTypeScriptFiles.js.map +1 -1
- package/build/src/start/server/metro/router.js +32 -48
- package/build/src/start/server/metro/router.js.map +1 -1
- package/build/src/start/server/metro/runServer-fork.js +22 -24
- package/build/src/start/server/metro/runServer-fork.js.map +1 -1
- package/build/src/start/server/metro/serializeHtml.js +22 -24
- package/build/src/start/server/metro/serializeHtml.js.map +1 -1
- package/build/src/start/server/metro/symbolicate.js.map +1 -1
- package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js +29 -35
- package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js.map +1 -1
- package/build/src/start/server/metro/withMetroMultiPlatform.js +139 -149
- package/build/src/start/server/metro/withMetroMultiPlatform.js.map +1 -1
- package/build/src/start/server/metro/withMetroResolvers.js +39 -49
- package/build/src/start/server/metro/withMetroResolvers.js.map +1 -1
- package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js +6 -8
- package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/CorsMiddleware.js +15 -17
- package/build/src/start/server/middleware/CorsMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/CreateFileMiddleware.js +31 -32
- package/build/src/start/server/middleware/CreateFileMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/DevToolsPluginMiddleware.js +19 -22
- package/build/src/start/server/middleware/DevToolsPluginMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/DomComponentsMiddleware.js +27 -33
- package/build/src/start/server/middleware/DomComponentsMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js +60 -64
- package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ExpoMiddleware.js +9 -15
- package/build/src/start/server/middleware/ExpoMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/FaviconMiddleware.js +14 -15
- package/build/src/start/server/middleware/FaviconMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/HistoryFallbackMiddleware.js +2 -4
- package/build/src/start/server/middleware/HistoryFallbackMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/InterstitialPageMiddleware.js +31 -34
- package/build/src/start/server/middleware/InterstitialPageMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ManifestMiddleware.js +56 -64
- package/build/src/start/server/middleware/ManifestMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js +19 -23
- package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js +19 -20
- package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ServeStaticMiddleware.js +9 -11
- package/build/src/start/server/middleware/ServeStaticMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/createBuiltinAPIRequestHandler.js +11 -17
- package/build/src/start/server/middleware/createBuiltinAPIRequestHandler.js.map +1 -1
- package/build/src/start/server/middleware/inspector/CdpClient.js +10 -12
- package/build/src/start/server/middleware/inspector/CdpClient.js.map +1 -1
- package/build/src/start/server/middleware/inspector/JsInspector.js +27 -35
- package/build/src/start/server/middleware/inspector/JsInspector.js.map +1 -1
- package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js +19 -21
- package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/inspector/middlwareMutations.js +2 -6
- package/build/src/start/server/middleware/inspector/middlwareMutations.js.map +1 -1
- package/build/src/start/server/middleware/metroOptions.js +96 -120
- package/build/src/start/server/middleware/metroOptions.js.map +1 -1
- package/build/src/start/server/middleware/mutations.js +3 -7
- package/build/src/start/server/middleware/mutations.js.map +1 -1
- package/build/src/start/server/middleware/resolveAssets.js +18 -26
- package/build/src/start/server/middleware/resolveAssets.js.map +1 -1
- package/build/src/start/server/middleware/resolvePlatform.js +15 -23
- package/build/src/start/server/middleware/resolvePlatform.js.map +1 -1
- package/build/src/start/server/middleware/resolveRuntimeVersionWithExpoUpdatesAsync.js +9 -11
- package/build/src/start/server/middleware/resolveRuntimeVersionWithExpoUpdatesAsync.js.map +1 -1
- package/build/src/start/server/middleware/server.types.js.map +1 -1
- package/build/src/start/server/openPlatforms.js +8 -10
- package/build/src/start/server/openPlatforms.js.map +1 -1
- package/build/src/start/server/platformBundlers.js +11 -13
- package/build/src/start/server/platformBundlers.js.map +1 -1
- package/build/src/start/server/serverLogLikeMetro.js +50 -58
- package/build/src/start/server/serverLogLikeMetro.js.map +1 -1
- package/build/src/start/server/type-generation/expo-env.js +7 -11
- package/build/src/start/server/type-generation/expo-env.js.map +1 -1
- package/build/src/start/server/type-generation/routes.js +54 -76
- package/build/src/start/server/type-generation/routes.js.map +1 -1
- package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js +19 -21
- package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js.map +1 -1
- package/build/src/start/server/type-generation/tsconfig.js +28 -36
- package/build/src/start/server/type-generation/tsconfig.js.map +1 -1
- package/build/src/start/server/webTemplate.js +24 -28
- package/build/src/start/server/webTemplate.js.map +1 -1
- package/build/src/start/server/webpack/WebpackBundlerDevServer.js +46 -52
- package/build/src/start/server/webpack/WebpackBundlerDevServer.js.map +1 -1
- package/build/src/start/server/webpack/compile.js +11 -15
- package/build/src/start/server/webpack/compile.js.map +1 -1
- package/build/src/start/server/webpack/formatWebpackMessages.js +26 -28
- package/build/src/start/server/webpack/formatWebpackMessages.js.map +1 -1
- package/build/src/start/server/webpack/resolveFromProject.js +12 -18
- package/build/src/start/server/webpack/resolveFromProject.js.map +1 -1
- package/build/src/start/server/webpack/tls.js +12 -18
- package/build/src/start/server/webpack/tls.js.map +1 -1
- package/build/src/start/startAsync.js +27 -31
- package/build/src/start/startAsync.js.map +1 -1
- package/build/src/utils/FileNotifier.js +17 -20
- package/build/src/utils/FileNotifier.js.map +1 -1
- package/build/src/utils/ansi.js +5 -7
- package/build/src/utils/ansi.js.map +1 -1
- package/build/src/utils/args.js +14 -24
- package/build/src/utils/args.js.map +1 -1
- package/build/src/utils/array.js +6 -18
- package/build/src/utils/array.js.map +1 -1
- package/build/src/utils/cocoapods.js +46 -54
- package/build/src/utils/cocoapods.js.map +1 -1
- package/build/src/utils/codesigning.js +68 -78
- package/build/src/utils/codesigning.js.map +1 -1
- package/build/src/utils/createFileTransform.js +12 -16
- package/build/src/utils/createFileTransform.js.map +1 -1
- package/build/src/utils/createTempPath.js +13 -17
- package/build/src/utils/createTempPath.js.map +1 -1
- package/build/src/utils/delay.js +6 -12
- package/build/src/utils/delay.js.map +1 -1
- package/build/src/utils/dir.js +28 -46
- package/build/src/utils/dir.js.map +1 -1
- package/build/src/utils/downloadAppAsync.js +8 -10
- package/build/src/utils/downloadAppAsync.js.map +1 -1
- package/build/src/utils/downloadExpoGoAsync.js +21 -25
- package/build/src/utils/downloadExpoGoAsync.js.map +1 -1
- package/build/src/utils/editor.js +35 -41
- package/build/src/utils/editor.js.map +1 -1
- package/build/src/utils/env.js +59 -63
- package/build/src/utils/env.js.map +1 -1
- package/build/src/utils/errors.js +30 -37
- package/build/src/utils/errors.js.map +1 -1
- package/build/src/utils/exit.js +31 -35
- package/build/src/utils/exit.js.map +1 -1
- package/build/src/utils/expoUpdatesCli.js +22 -32
- package/build/src/utils/expoUpdatesCli.js.map +1 -1
- package/build/src/utils/fetch.js +4 -8
- package/build/src/utils/fetch.js.map +1 -1
- package/build/src/utils/filePath.js +6 -10
- package/build/src/utils/filePath.js.map +1 -1
- package/build/src/utils/findUp.js +9 -13
- package/build/src/utils/findUp.js.map +1 -1
- package/build/src/utils/fn.js +2 -6
- package/build/src/utils/fn.js.map +1 -1
- package/build/src/utils/getOrPromptApplicationId.js +26 -32
- package/build/src/utils/getOrPromptApplicationId.js.map +1 -1
- package/build/src/utils/getRunningProcess.js +21 -29
- package/build/src/utils/getRunningProcess.js.map +1 -1
- package/build/src/utils/git.js +20 -26
- package/build/src/utils/git.js.map +1 -1
- package/build/src/utils/glob.js +4 -8
- package/build/src/utils/glob.js.map +1 -1
- package/build/src/utils/interactive.js +1 -3
- package/build/src/utils/interactive.js.map +1 -1
- package/build/src/utils/ip.js +19 -21
- package/build/src/utils/ip.js.map +1 -1
- package/build/src/utils/isModuleSymlinked.js +9 -11
- package/build/src/utils/isModuleSymlinked.js.map +1 -1
- package/build/src/utils/jsonSchemaDeref.js +18 -20
- package/build/src/utils/jsonSchemaDeref.js.map +1 -1
- package/build/src/utils/link.js +13 -17
- package/build/src/utils/link.js.map +1 -1
- package/build/src/utils/mergeGitIgnorePaths.js +28 -46
- package/build/src/utils/mergeGitIgnorePaths.js.map +1 -1
- package/build/src/utils/modifyConfigAsync.js +10 -16
- package/build/src/utils/modifyConfigAsync.js.map +1 -1
- package/build/src/utils/modifyConfigPlugins.js +6 -10
- package/build/src/utils/modifyConfigPlugins.js.map +1 -1
- package/build/src/utils/nodeEnv.js +6 -12
- package/build/src/utils/nodeEnv.js.map +1 -1
- package/build/src/utils/nodeModules.js +8 -10
- package/build/src/utils/nodeModules.js.map +1 -1
- package/build/src/utils/npm.js +36 -50
- package/build/src/utils/npm.js.map +1 -1
- package/build/src/utils/obj.js +5 -11
- package/build/src/utils/obj.js.map +1 -1
- package/build/src/utils/open.js +8 -10
- package/build/src/utils/open.js.map +1 -1
- package/build/src/utils/ora.js +7 -13
- package/build/src/utils/ora.js.map +1 -1
- package/build/src/utils/plist.js +15 -21
- package/build/src/utils/plist.js.map +1 -1
- package/build/src/utils/port.js +33 -43
- package/build/src/utils/port.js.map +1 -1
- package/build/src/utils/profile.js +7 -11
- package/build/src/utils/profile.js.map +1 -1
- package/build/src/utils/progress.js +5 -11
- package/build/src/utils/progress.js.map +1 -1
- package/build/src/utils/prompts.js +29 -47
- package/build/src/utils/prompts.js.map +1 -1
- package/build/src/utils/resolveArgs.js +24 -36
- package/build/src/utils/resolveArgs.js.map +1 -1
- package/build/src/utils/scheme.js +32 -40
- package/build/src/utils/scheme.js.map +1 -1
- package/build/src/utils/stream.js +3 -5
- package/build/src/utils/stream.js.map +1 -1
- package/build/src/utils/strings.js +4 -6
- package/build/src/utils/strings.js.map +1 -1
- package/build/src/utils/tar.js +15 -19
- package/build/src/utils/tar.js.map +1 -1
- package/build/src/utils/telemetry/Telemetry.js +27 -29
- package/build/src/utils/telemetry/Telemetry.js.map +1 -1
- package/build/src/utils/telemetry/clients/FetchClient.js +13 -15
- package/build/src/utils/telemetry/clients/FetchClient.js.map +1 -1
- package/build/src/utils/telemetry/clients/FetchDetachedClient.js +22 -26
- package/build/src/utils/telemetry/clients/FetchDetachedClient.js.map +1 -1
- package/build/src/utils/telemetry/clients/RudderClient.js +8 -10
- package/build/src/utils/telemetry/clients/RudderClient.js.map +1 -1
- package/build/src/utils/telemetry/clients/RudderDetachedClient.js +22 -26
- package/build/src/utils/telemetry/clients/RudderDetachedClient.js.map +1 -1
- package/build/src/utils/telemetry/clients/flushFetchDetached.js +10 -10
- package/build/src/utils/telemetry/clients/flushFetchDetached.js.map +1 -1
- package/build/src/utils/telemetry/clients/flushRudderDetached.js +10 -10
- package/build/src/utils/telemetry/clients/flushRudderDetached.js.map +1 -1
- package/build/src/utils/telemetry/events.js +2 -4
- package/build/src/utils/telemetry/events.js.map +1 -1
- package/build/src/utils/telemetry/flushDetached.js.map +1 -1
- package/build/src/utils/telemetry/index.js +29 -25
- package/build/src/utils/telemetry/index.js.map +1 -1
- package/build/src/utils/telemetry/types.js.map +1 -1
- package/build/src/utils/telemetry/utils/constants.js +4 -8
- package/build/src/utils/telemetry/utils/constants.js.map +1 -1
- package/build/src/utils/telemetry/utils/context.js +14 -18
- package/build/src/utils/telemetry/utils/context.js.map +1 -1
- package/build/src/utils/template.js +4 -6
- package/build/src/utils/template.js.map +1 -1
- package/build/src/utils/terminal.js +2 -4
- package/build/src/utils/terminal.js.map +1 -1
- package/build/src/utils/tsconfig/evaluateTsConfig.js +17 -21
- package/build/src/utils/tsconfig/evaluateTsConfig.js.map +1 -1
- package/build/src/utils/tsconfig/loadTsConfigPaths.js +14 -18
- package/build/src/utils/tsconfig/loadTsConfigPaths.js.map +1 -1
- package/build/src/utils/tsconfig/matchTsConfigPathAlias.js +5 -7
- package/build/src/utils/tsconfig/matchTsConfigPathAlias.js.map +1 -1
- package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js +12 -14
- package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js.map +1 -1
- package/build/src/utils/url.js +13 -23
- package/build/src/utils/url.js.map +1 -1
- package/build/src/utils/validateApplicationId.js +86 -108
- package/build/src/utils/validateApplicationId.js.map +1 -1
- package/build/src/utils/variadic.js +16 -22
- package/build/src/utils/variadic.js.map +1 -1
- package/build/src/whoami/index.js +7 -11
- package/build/src/whoami/index.js.map +1 -1
- package/build/src/whoami/whoamiAsync.js +7 -11
- package/build/src/whoami/whoamiAsync.js.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/run/index.ts"],"sourcesContent":["#!/usr/bin/env node\nimport chalk from 'chalk';\n\nimport { logPlatformRunCommand } from './hints';\nimport { Command } from '../../bin/cli';\nimport { assertWithOptionsArgs, printHelp } from '../utils/args';\nimport { CommandError, logCmdError } from '../utils/errors';\n\nexport const expoRun: Command = async (argv) => {\n const args = assertWithOptionsArgs(\n {\n // Types\n '--help': Boolean,\n // Aliases\n '-h': '--help',\n },\n {\n argv,\n // Allow additional flags for both android and ios commands\n permissive: true,\n }\n );\n\n try {\n let [platform] = args._ ?? [];\n\n // Workaround, filter `--flag` as platform\n if (platform?.startsWith('-')) {\n platform = '';\n }\n\n // Remove the platform from raw arguments, when provided\n const argsWithoutPlatform = !platform ? argv : argv?.splice(1);\n\n // Do not capture `--help` when platform is provided\n if (!platform && args['--help']) {\n printHelp(\n 'Run the native app locally',\n `npx expo run <android|ios>`,\n chalk`{dim $} npx expo run <android|ios> --help Output usage information`\n );\n }\n\n if (!platform) {\n const { selectAsync } = await import('../utils/prompts.js');\n platform = await selectAsync('Select the platform to run', [\n { title: 'Android', value: 'android' },\n { title: 'iOS', value: 'ios' },\n ]);\n }\n\n logPlatformRunCommand(platform, argsWithoutPlatform);\n\n switch (platform) {\n case 'android': {\n const { expoRunAndroid } = await import('./android/index.js');\n return expoRunAndroid(argsWithoutPlatform);\n }\n\n case 'ios': {\n const { expoRunIos } = await import('./ios/index.js');\n return expoRunIos(argsWithoutPlatform);\n }\n\n default:\n throw new CommandError('UNSUPPORTED_PLATFORM', `Unsupported platform: ${platform}`);\n }\n } catch (error: any) {\n logCmdError(error);\n }\n};\n"],"names":["expoRun","argv","args","assertWithOptionsArgs","Boolean","permissive","platform","_","startsWith","argsWithoutPlatform","splice","printHelp","chalk","selectAsync","title","value","logPlatformRunCommand","expoRunAndroid","expoRunIos","CommandError","error","logCmdError"],"mappings":";;;;;+BAQaA;;;
|
|
1
|
+
{"version":3,"sources":["../../../src/run/index.ts"],"sourcesContent":["#!/usr/bin/env node\nimport chalk from 'chalk';\n\nimport { logPlatformRunCommand } from './hints';\nimport { Command } from '../../bin/cli';\nimport { assertWithOptionsArgs, printHelp } from '../utils/args';\nimport { CommandError, logCmdError } from '../utils/errors';\n\nexport const expoRun: Command = async (argv) => {\n const args = assertWithOptionsArgs(\n {\n // Types\n '--help': Boolean,\n // Aliases\n '-h': '--help',\n },\n {\n argv,\n // Allow additional flags for both android and ios commands\n permissive: true,\n }\n );\n\n try {\n let [platform] = args._ ?? [];\n\n // Workaround, filter `--flag` as platform\n if (platform?.startsWith('-')) {\n platform = '';\n }\n\n // Remove the platform from raw arguments, when provided\n const argsWithoutPlatform = !platform ? argv : argv?.splice(1);\n\n // Do not capture `--help` when platform is provided\n if (!platform && args['--help']) {\n printHelp(\n 'Run the native app locally',\n `npx expo run <android|ios>`,\n chalk`{dim $} npx expo run <android|ios> --help Output usage information`\n );\n }\n\n if (!platform) {\n const { selectAsync } = await import('../utils/prompts.js');\n platform = await selectAsync('Select the platform to run', [\n { title: 'Android', value: 'android' },\n { title: 'iOS', value: 'ios' },\n ]);\n }\n\n logPlatformRunCommand(platform, argsWithoutPlatform);\n\n switch (platform) {\n case 'android': {\n const { expoRunAndroid } = await import('./android/index.js');\n return expoRunAndroid(argsWithoutPlatform);\n }\n\n case 'ios': {\n const { expoRunIos } = await import('./ios/index.js');\n return expoRunIos(argsWithoutPlatform);\n }\n\n default:\n throw new CommandError('UNSUPPORTED_PLATFORM', `Unsupported platform: ${platform}`);\n }\n } catch (error: any) {\n logCmdError(error);\n }\n};\n"],"names":["expoRun","argv","args","assertWithOptionsArgs","Boolean","permissive","platform","_","startsWith","argsWithoutPlatform","splice","printHelp","chalk","selectAsync","title","value","logPlatformRunCommand","expoRunAndroid","expoRunIos","CommandError","error","logCmdError"],"mappings":"AAAA;;;;;+BAQaA,SAAO;;aAAPA,OAAO;;;8DAPF,OAAO;;;;;;uBAEa,SAAS;sBAEE,eAAe;wBACtB,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEpD,MAAMA,OAAO,GAAY,OAAOC,IAAI,GAAK;IAC9C,MAAMC,IAAI,GAAGC,IAAAA,KAAqB,sBAAA,EAChC;QACE,QAAQ;QACR,QAAQ,EAAEC,OAAO;QACjB,UAAU;QACV,IAAI,EAAE,QAAQ;KACf,EACD;QACEH,IAAI;QACJ,2DAA2D;QAC3DI,UAAU,EAAE,IAAI;KACjB,CACF,AAAC;IAEF,IAAI;QACF,IAAI,CAACC,QAAQ,CAAC,GAAGJ,IAAI,CAACK,CAAC,IAAI,EAAE,AAAC;QAE9B,0CAA0C;QAC1C,IAAID,QAAQ,QAAY,GAApBA,KAAAA,CAAoB,GAApBA,QAAQ,CAAEE,UAAU,CAAC,GAAG,CAAC,EAAE;YAC7BF,QAAQ,GAAG,EAAE,CAAC;QAChB,CAAC;QAED,wDAAwD;QACxD,MAAMG,mBAAmB,GAAG,CAACH,QAAQ,GAAGL,IAAI,GAAGA,IAAI,QAAQ,GAAZA,KAAAA,CAAY,GAAZA,IAAI,CAAES,MAAM,CAAC,CAAC,CAAC,AAAC;QAE/D,oDAAoD;QACpD,IAAI,CAACJ,QAAQ,IAAIJ,IAAI,CAAC,QAAQ,CAAC,EAAE;YAC/BS,IAAAA,KAAS,UAAA,EACP,4BAA4B,EAC5B,CAAC,0BAA0B,CAAC,EAC5BC,IAAAA,MAAK,EAAA,QAAA,CAAA,CAAC,mEAAmE,CAAC,CAC3E,CAAC;QACJ,CAAC;QAED,IAAI,CAACN,QAAQ,EAAE;YACb,MAAM,EAAEO,WAAW,CAAA,EAAE,GAAG,MAAM,iEAAA,OAAM,CAAC,qBAAqB,GAAC,AAAC;YAC5DP,QAAQ,GAAG,MAAMO,WAAW,CAAC,4BAA4B,EAAE;gBACzD;oBAAEC,KAAK,EAAE,SAAS;oBAAEC,KAAK,EAAE,SAAS;iBAAE;gBACtC;oBAAED,KAAK,EAAE,KAAK;oBAAEC,KAAK,EAAE,KAAK;iBAAE;aAC/B,CAAC,CAAC;QACL,CAAC;QAEDC,IAAAA,MAAqB,sBAAA,EAACV,QAAQ,EAAEG,mBAAmB,CAAC,CAAC;QAErD,OAAQH,QAAQ;YACd,KAAK,SAAS;gBAAE;oBACd,MAAM,EAAEW,cAAc,CAAA,EAAE,GAAG,MAAM,iEAAA,OAAM,CAAC,oBAAoB,GAAC,AAAC;oBAC9D,OAAOA,cAAc,CAACR,mBAAmB,CAAC,CAAC;gBAC7C,CAAC;YAED,KAAK,KAAK;gBAAE;oBACV,MAAM,EAAES,UAAU,CAAA,EAAE,GAAG,MAAM,iEAAA,OAAM,CAAC,gBAAgB,GAAC,AAAC;oBACtD,OAAOA,UAAU,CAACT,mBAAmB,CAAC,CAAC;gBACzC,CAAC;YAED;gBACE,MAAM,IAAIU,OAAY,aAAA,CAAC,sBAAsB,EAAE,CAAC,sBAAsB,EAAEb,QAAQ,CAAC,CAAC,CAAC,CAAC;SACvF;IACH,EAAE,OAAOc,KAAK,EAAO;QACnBC,IAAAA,OAAW,YAAA,EAACD,KAAK,CAAC,CAAC;IACrB,CAAC;AACH,CAAC,AAAC"}
|
|
@@ -9,30 +9,14 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
},
|
|
21
|
-
getAppBinaryPath: function() {
|
|
22
|
-
return getAppBinaryPath;
|
|
23
|
-
},
|
|
24
|
-
getEscapedPath: function() {
|
|
25
|
-
return getEscapedPath;
|
|
26
|
-
},
|
|
27
|
-
getProcessOptions: function() {
|
|
28
|
-
return getProcessOptions;
|
|
29
|
-
},
|
|
30
|
-
getXcodeBuildArgsAsync: function() {
|
|
31
|
-
return getXcodeBuildArgsAsync;
|
|
32
|
-
},
|
|
33
|
-
logPrettyItem: function() {
|
|
34
|
-
return logPrettyItem;
|
|
35
|
-
}
|
|
12
|
+
logPrettyItem: ()=>logPrettyItem,
|
|
13
|
+
getAppBinaryPath: ()=>getAppBinaryPath,
|
|
14
|
+
getEscapedPath: ()=>getEscapedPath,
|
|
15
|
+
extractEnvVariableFromBuild: ()=>extractEnvVariableFromBuild,
|
|
16
|
+
getProcessOptions: ()=>getProcessOptions,
|
|
17
|
+
getXcodeBuildArgsAsync: ()=>getXcodeBuildArgsAsync,
|
|
18
|
+
buildAsync: ()=>buildAsync,
|
|
19
|
+
"_assertXcodeBuildResults": ()=>_assertXcodeBuildResults
|
|
36
20
|
});
|
|
37
21
|
function _xcpretty() {
|
|
38
22
|
const data = require("@expo/xcpretty");
|
|
@@ -42,35 +26,35 @@ function _xcpretty() {
|
|
|
42
26
|
return data;
|
|
43
27
|
}
|
|
44
28
|
function _chalk() {
|
|
45
|
-
const data = /*#__PURE__*/
|
|
29
|
+
const data = /*#__PURE__*/ _interopRequireDefault(require("chalk"));
|
|
46
30
|
_chalk = function() {
|
|
47
31
|
return data;
|
|
48
32
|
};
|
|
49
33
|
return data;
|
|
50
34
|
}
|
|
51
|
-
function
|
|
35
|
+
function _childProcess() {
|
|
52
36
|
const data = require("child_process");
|
|
53
|
-
|
|
37
|
+
_childProcess = function() {
|
|
54
38
|
return data;
|
|
55
39
|
};
|
|
56
40
|
return data;
|
|
57
41
|
}
|
|
58
42
|
function _fs() {
|
|
59
|
-
const data = /*#__PURE__*/
|
|
43
|
+
const data = /*#__PURE__*/ _interopRequireDefault(require("fs"));
|
|
60
44
|
_fs = function() {
|
|
61
45
|
return data;
|
|
62
46
|
};
|
|
63
47
|
return data;
|
|
64
48
|
}
|
|
65
49
|
function _os() {
|
|
66
|
-
const data = /*#__PURE__*/
|
|
50
|
+
const data = /*#__PURE__*/ _interopRequireDefault(require("os"));
|
|
67
51
|
_os = function() {
|
|
68
52
|
return data;
|
|
69
53
|
};
|
|
70
54
|
return data;
|
|
71
55
|
}
|
|
72
56
|
function _path() {
|
|
73
|
-
const data = /*#__PURE__*/
|
|
57
|
+
const data = /*#__PURE__*/ _interopRequireDefault(require("path"));
|
|
74
58
|
_path = function() {
|
|
75
59
|
return data;
|
|
76
60
|
};
|
|
@@ -78,12 +62,12 @@ function _path() {
|
|
|
78
62
|
}
|
|
79
63
|
const _configureCodeSigning = require("./codeSigning/configureCodeSigning");
|
|
80
64
|
const _simulatorCodeSigning = require("./codeSigning/simulatorCodeSigning");
|
|
81
|
-
const _log = /*#__PURE__*/
|
|
65
|
+
const _log = /*#__PURE__*/ _interopRequireWildcard(require("../../log"));
|
|
82
66
|
const _dir = require("../../utils/dir");
|
|
83
67
|
const _env = require("../../utils/env");
|
|
84
68
|
const _errors = require("../../utils/errors");
|
|
85
69
|
const _terminal = require("../../utils/terminal");
|
|
86
|
-
function
|
|
70
|
+
function _interopRequireDefault(obj) {
|
|
87
71
|
return obj && obj.__esModule ? obj : {
|
|
88
72
|
default: obj
|
|
89
73
|
};
|
|
@@ -96,7 +80,7 @@ function _getRequireWildcardCache(nodeInterop) {
|
|
|
96
80
|
return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
|
|
97
81
|
})(nodeInterop);
|
|
98
82
|
}
|
|
99
|
-
function
|
|
83
|
+
function _interopRequireWildcard(obj, nodeInterop) {
|
|
100
84
|
if (!nodeInterop && obj && obj.__esModule) {
|
|
101
85
|
return obj;
|
|
102
86
|
}
|
|
@@ -109,9 +93,7 @@ function _interop_require_wildcard(obj, nodeInterop) {
|
|
|
109
93
|
if (cache && cache.has(obj)) {
|
|
110
94
|
return cache.get(obj);
|
|
111
95
|
}
|
|
112
|
-
var newObj = {
|
|
113
|
-
__proto__: null
|
|
114
|
-
};
|
|
96
|
+
var newObj = {};
|
|
115
97
|
var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
|
|
116
98
|
for(var key in obj){
|
|
117
99
|
if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
@@ -136,12 +118,12 @@ function getAppBinaryPath(buildOutput) {
|
|
|
136
118
|
// Matches what's used in "Bundle React Native code and images" script.
|
|
137
119
|
// Requires that `-hideShellScriptEnvironment` is not included in the build command (extra logs).
|
|
138
120
|
// Like `\=/Users/evanbacon/Library/Developer/Xcode/DerivedData/Exponent-anpuosnglkxokahjhfszejloqfvo/Build/Products/Debug-iphonesimulator`
|
|
139
|
-
const CONFIGURATION_BUILD_DIR = extractEnvVariableFromBuild(buildOutput,
|
|
121
|
+
const CONFIGURATION_BUILD_DIR = extractEnvVariableFromBuild(buildOutput, "CONFIGURATION_BUILD_DIR").sort(// Longer name means more suffixes, we want the shortest possible one to be first.
|
|
140
122
|
// Massive projects (like Expo Go) can sometimes print multiple different sets of environment variables.
|
|
141
123
|
// This can become an issue with some
|
|
142
124
|
(a, b)=>a.length - b.length);
|
|
143
125
|
// Like `Exponent.app`
|
|
144
|
-
const UNLOCALIZED_RESOURCES_FOLDER_PATH = extractEnvVariableFromBuild(buildOutput,
|
|
126
|
+
const UNLOCALIZED_RESOURCES_FOLDER_PATH = extractEnvVariableFromBuild(buildOutput, "UNLOCALIZED_RESOURCES_FOLDER_PATH");
|
|
145
127
|
const binaryPath = _path().default.join(// Use the shortest defined env variable (usually there's just one).
|
|
146
128
|
CONFIGURATION_BUILD_DIR[0], // Use the last defined env variable.
|
|
147
129
|
UNLOCALIZED_RESOURCES_FOLDER_PATH[UNLOCALIZED_RESOURCES_FOLDER_PATH.length - 1]);
|
|
@@ -152,25 +134,25 @@ function getEscapedPath(filePath) {
|
|
|
152
134
|
if (_fs().default.existsSync(filePath)) {
|
|
153
135
|
return filePath;
|
|
154
136
|
}
|
|
155
|
-
const unescapedPath = filePath.split(/\\ /).join(
|
|
137
|
+
const unescapedPath = filePath.split(/\\ /).join(" ");
|
|
156
138
|
if (_fs().default.existsSync(unescapedPath)) {
|
|
157
139
|
return unescapedPath;
|
|
158
140
|
}
|
|
159
|
-
throw new _errors.CommandError(
|
|
141
|
+
throw new _errors.CommandError("XCODE_BUILD", `Unexpected: Generated app at path "${filePath}" cannot be read, the app cannot be installed. Please report this and build onto a simulator.`);
|
|
160
142
|
}
|
|
161
143
|
function extractEnvVariableFromBuild(buildOutput, variableName) {
|
|
162
144
|
// Xcode can sometimes escape `=` with a backslash or put the value in quotes
|
|
163
|
-
const reg = new RegExp(`export ${variableName}\\\\?=(.*)$`,
|
|
145
|
+
const reg = new RegExp(`export ${variableName}\\\\?=(.*)$`, "mg");
|
|
164
146
|
const matched = [
|
|
165
147
|
...buildOutput.matchAll(reg)
|
|
166
148
|
];
|
|
167
149
|
if (!matched || !matched.length) {
|
|
168
|
-
throw new _errors.CommandError(
|
|
150
|
+
throw new _errors.CommandError("XCODE_BUILD", `Malformed xcodebuild results: "${variableName}" variable was not generated in build output. Please report this issue and run your project with Xcode instead.`);
|
|
169
151
|
}
|
|
170
152
|
return matched.map((value)=>value[1]).filter(Boolean);
|
|
171
153
|
}
|
|
172
|
-
function getProcessOptions({ packager, shouldSkipInitialBundling, terminal, port, eagerBundleOptions
|
|
173
|
-
const SKIP_BUNDLING = shouldSkipInitialBundling ?
|
|
154
|
+
function getProcessOptions({ packager , shouldSkipInitialBundling , terminal , port , eagerBundleOptions }) {
|
|
155
|
+
const SKIP_BUNDLING = shouldSkipInitialBundling ? "1" : undefined;
|
|
174
156
|
if (packager) {
|
|
175
157
|
return {
|
|
176
158
|
env: {
|
|
@@ -191,50 +173,50 @@ function getProcessOptions({ packager, shouldSkipInitialBundling, terminal, port
|
|
|
191
173
|
// Always skip launching the packager from a build script.
|
|
192
174
|
// The script is used for people building their project directly from Xcode.
|
|
193
175
|
// This essentially means "› Running script 'Start Packager'" does nothing.
|
|
194
|
-
RCT_NO_LAUNCH_PACKAGER:
|
|
176
|
+
RCT_NO_LAUNCH_PACKAGER: "true"
|
|
195
177
|
}
|
|
196
178
|
};
|
|
197
179
|
}
|
|
198
180
|
async function getXcodeBuildArgsAsync(props) {
|
|
199
181
|
const args = [
|
|
200
|
-
props.xcodeProject.isWorkspace ?
|
|
182
|
+
props.xcodeProject.isWorkspace ? "-workspace" : "-project",
|
|
201
183
|
props.xcodeProject.name,
|
|
202
|
-
|
|
184
|
+
"-configuration",
|
|
203
185
|
props.configuration,
|
|
204
|
-
|
|
186
|
+
"-scheme",
|
|
205
187
|
props.scheme,
|
|
206
|
-
|
|
207
|
-
`id=${props.device.udid}
|
|
188
|
+
"-destination",
|
|
189
|
+
`id=${props.device.udid}`,
|
|
208
190
|
];
|
|
209
191
|
if (!props.isSimulator || (0, _simulatorCodeSigning.simulatorBuildRequiresCodeSigning)(props.projectRoot)) {
|
|
210
192
|
const developmentTeamId = await (0, _configureCodeSigning.ensureDeviceIsCodeSignedForDeploymentAsync)(props.projectRoot);
|
|
211
193
|
if (developmentTeamId) {
|
|
212
|
-
args.push(`DEVELOPMENT_TEAM=${developmentTeamId}`,
|
|
194
|
+
args.push(`DEVELOPMENT_TEAM=${developmentTeamId}`, "-allowProvisioningUpdates", "-allowProvisioningDeviceRegistration");
|
|
213
195
|
}
|
|
214
196
|
}
|
|
215
197
|
// Add last
|
|
216
198
|
if (props.buildCache === false) {
|
|
217
199
|
args.push(// Will first clean the derived data folder.
|
|
218
|
-
|
|
219
|
-
|
|
200
|
+
"clean", // Then build step must be added otherwise the process will simply clean and exit.
|
|
201
|
+
"build");
|
|
220
202
|
}
|
|
221
203
|
return args;
|
|
222
204
|
}
|
|
223
|
-
function spawnXcodeBuild(args, options, { onData
|
|
224
|
-
const buildProcess = (0,
|
|
225
|
-
let results =
|
|
226
|
-
let error =
|
|
227
|
-
buildProcess.stdout.on(
|
|
205
|
+
function spawnXcodeBuild(args, options, { onData }) {
|
|
206
|
+
const buildProcess = (0, _childProcess().spawn)("xcodebuild", args, options);
|
|
207
|
+
let results = "";
|
|
208
|
+
let error = "";
|
|
209
|
+
buildProcess.stdout.on("data", (data)=>{
|
|
228
210
|
const stringData = data.toString();
|
|
229
211
|
results += stringData;
|
|
230
212
|
onData(stringData);
|
|
231
213
|
});
|
|
232
|
-
buildProcess.stderr.on(
|
|
214
|
+
buildProcess.stderr.on("data", (data)=>{
|
|
233
215
|
const stringData = data instanceof Buffer ? data.toString() : data;
|
|
234
216
|
error += stringData;
|
|
235
217
|
});
|
|
236
218
|
return new Promise(async (resolve, reject)=>{
|
|
237
|
-
buildProcess.on(
|
|
219
|
+
buildProcess.on("close", (code)=>{
|
|
238
220
|
resolve({
|
|
239
221
|
code,
|
|
240
222
|
results,
|
|
@@ -243,8 +225,8 @@ function spawnXcodeBuild(args, options, { onData }) {
|
|
|
243
225
|
});
|
|
244
226
|
});
|
|
245
227
|
}
|
|
246
|
-
async function spawnXcodeBuildWithFlush(args, options, { onFlush
|
|
247
|
-
let currentBuffer =
|
|
228
|
+
async function spawnXcodeBuildWithFlush(args, options, { onFlush }) {
|
|
229
|
+
let currentBuffer = "";
|
|
248
230
|
// Data can be sent in chunks that would have no relevance to our regex
|
|
249
231
|
// this can cause massive slowdowns, so we need to ensure the data is complete before attempting to parse it.
|
|
250
232
|
function flushBuffer() {
|
|
@@ -253,7 +235,7 @@ async function spawnXcodeBuildWithFlush(args, options, { onFlush }) {
|
|
|
253
235
|
}
|
|
254
236
|
const data = currentBuffer;
|
|
255
237
|
// Reset buffer.
|
|
256
|
-
currentBuffer =
|
|
238
|
+
currentBuffer = "";
|
|
257
239
|
// Process data.
|
|
258
240
|
onFlush(data);
|
|
259
241
|
}
|
|
@@ -270,8 +252,8 @@ async function spawnXcodeBuildWithFlush(args, options, { onFlush }) {
|
|
|
270
252
|
flushBuffer();
|
|
271
253
|
return data;
|
|
272
254
|
}
|
|
273
|
-
async function spawnXcodeBuildWithFormat(args, options, { projectRoot, xcodeProject
|
|
274
|
-
_log.debug(` xcodebuild ${args.join(
|
|
255
|
+
async function spawnXcodeBuildWithFormat(args, options, { projectRoot , xcodeProject }) {
|
|
256
|
+
_log.debug(` xcodebuild ${args.join(" ")}`);
|
|
275
257
|
logPrettyItem(_chalk().default.bold`Planning build`);
|
|
276
258
|
const formatter = _xcpretty().ExpoRunFormatter.create(projectRoot, {
|
|
277
259
|
xcodeProject,
|
|
@@ -300,8 +282,8 @@ async function spawnXcodeBuildWithFormat(args, options, { projectRoot, xcodeProj
|
|
|
300
282
|
}
|
|
301
283
|
async function buildAsync(props) {
|
|
302
284
|
const args = await getXcodeBuildArgsAsync(props);
|
|
303
|
-
const { projectRoot, xcodeProject, shouldSkipInitialBundling, port, eagerBundleOptions
|
|
304
|
-
const { code, results, formatter, error
|
|
285
|
+
const { projectRoot , xcodeProject , shouldSkipInitialBundling , port , eagerBundleOptions } = props;
|
|
286
|
+
const { code , results , formatter , error } = await spawnXcodeBuildWithFormat(args, getProcessOptions({
|
|
305
287
|
packager: false,
|
|
306
288
|
terminal: (0, _terminal.getUserTerminal)(),
|
|
307
289
|
shouldSkipInitialBundling,
|
|
@@ -326,18 +308,18 @@ async function buildAsync(props) {
|
|
|
326
308
|
return results;
|
|
327
309
|
}
|
|
328
310
|
function _assertXcodeBuildResults(code, results, error, xcodeProject, logFilePath) {
|
|
329
|
-
var
|
|
311
|
+
var ref;
|
|
330
312
|
const errorTitle = `Failed to build iOS project. "xcodebuild" exited with error code ${code}.`;
|
|
331
313
|
const throwWithMessage = (message)=>{
|
|
332
314
|
throw new _errors.CommandError(`${errorTitle}\nTo view more error logs, try building the app with Xcode directly, by opening ${xcodeProject.name}.\n\n` + message + `Build logs written to ${_chalk().default.underline(logFilePath)}`);
|
|
333
315
|
};
|
|
334
|
-
const localizedError = (
|
|
316
|
+
const localizedError = (ref = error.match(/NSLocalizedFailure = "(.*)"/)) == null ? void 0 : ref[1];
|
|
335
317
|
if (localizedError) {
|
|
336
|
-
throwWithMessage(_chalk().default.bold(localizedError) +
|
|
318
|
+
throwWithMessage(_chalk().default.bold(localizedError) + "\n\n");
|
|
337
319
|
}
|
|
338
320
|
// Show all the log info because often times the error is coming from a shell script,
|
|
339
321
|
// that invoked a node script, that started metro, which threw an error.
|
|
340
|
-
throwWithMessage(results +
|
|
322
|
+
throwWithMessage(results + "\n\n" + error);
|
|
341
323
|
}
|
|
342
324
|
function writeBuildLogs(projectRoot, buildOutput, errorOutput) {
|
|
343
325
|
const [logFilePath, errorFilePath] = getErrorLogFilePath(projectRoot);
|
|
@@ -346,11 +328,11 @@ function writeBuildLogs(projectRoot, buildOutput, errorOutput) {
|
|
|
346
328
|
return logFilePath;
|
|
347
329
|
}
|
|
348
330
|
function getErrorLogFilePath(projectRoot) {
|
|
349
|
-
const folder = _path().default.join(projectRoot,
|
|
331
|
+
const folder = _path().default.join(projectRoot, ".expo");
|
|
350
332
|
(0, _dir.ensureDirectory)(folder);
|
|
351
333
|
return [
|
|
352
|
-
_path().default.join(folder,
|
|
353
|
-
_path().default.join(folder,
|
|
334
|
+
_path().default.join(folder, "xcodebuild.log"),
|
|
335
|
+
_path().default.join(folder, "xcodebuild-error.log")
|
|
354
336
|
];
|
|
355
337
|
}
|
|
356
338
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/run/ios/XcodeBuild.ts"],"sourcesContent":["import { ExpoRunFormatter } from '@expo/xcpretty';\nimport chalk from 'chalk';\nimport { spawn, SpawnOptionsWithoutStdio } from 'child_process';\nimport fs from 'fs';\nimport os from 'os';\nimport path from 'path';\n\nimport { BuildProps, ProjectInfo } from './XcodeBuild.types';\nimport { ensureDeviceIsCodeSignedForDeploymentAsync } from './codeSigning/configureCodeSigning';\nimport { simulatorBuildRequiresCodeSigning } from './codeSigning/simulatorCodeSigning';\nimport * as Log from '../../log';\nimport { ensureDirectory } from '../../utils/dir';\nimport { env } from '../../utils/env';\nimport { AbortCommandError, CommandError } from '../../utils/errors';\nimport { getUserTerminal } from '../../utils/terminal';\nexport function logPrettyItem(message: string) {\n Log.log(chalk`{whiteBright \\u203A} ${message}`);\n}\n\n/**\n *\n * @returns '/Users/evanbacon/Library/Developer/Xcode/DerivedData/myapp-gpgjqjodrxtervaufttwnsgimhrx/Build/Products/Debug-iphonesimulator/myapp.app'\n */\nexport function getAppBinaryPath(buildOutput: string) {\n // Matches what's used in \"Bundle React Native code and images\" script.\n // Requires that `-hideShellScriptEnvironment` is not included in the build command (extra logs).\n\n // Like `\\=/Users/evanbacon/Library/Developer/Xcode/DerivedData/Exponent-anpuosnglkxokahjhfszejloqfvo/Build/Products/Debug-iphonesimulator`\n const CONFIGURATION_BUILD_DIR = extractEnvVariableFromBuild(\n buildOutput,\n 'CONFIGURATION_BUILD_DIR'\n ).sort(\n // Longer name means more suffixes, we want the shortest possible one to be first.\n // Massive projects (like Expo Go) can sometimes print multiple different sets of environment variables.\n // This can become an issue with some\n (a, b) => a.length - b.length\n );\n // Like `Exponent.app`\n const UNLOCALIZED_RESOURCES_FOLDER_PATH = extractEnvVariableFromBuild(\n buildOutput,\n 'UNLOCALIZED_RESOURCES_FOLDER_PATH'\n );\n\n const binaryPath = path.join(\n // Use the shortest defined env variable (usually there's just one).\n CONFIGURATION_BUILD_DIR[0],\n // Use the last defined env variable.\n UNLOCALIZED_RESOURCES_FOLDER_PATH[UNLOCALIZED_RESOURCES_FOLDER_PATH.length - 1]\n );\n\n // If the app has a space in the name it'll fail because it isn't escaped properly by Xcode.\n return getEscapedPath(binaryPath);\n}\n\nexport function getEscapedPath(filePath: string): string {\n if (fs.existsSync(filePath)) {\n return filePath;\n }\n const unescapedPath = filePath.split(/\\\\ /).join(' ');\n if (fs.existsSync(unescapedPath)) {\n return unescapedPath;\n }\n throw new CommandError(\n 'XCODE_BUILD',\n `Unexpected: Generated app at path \"${filePath}\" cannot be read, the app cannot be installed. Please report this and build onto a simulator.`\n );\n}\n\nexport function extractEnvVariableFromBuild(buildOutput: string, variableName: string) {\n // Xcode can sometimes escape `=` with a backslash or put the value in quotes\n const reg = new RegExp(`export ${variableName}\\\\\\\\?=(.*)$`, 'mg');\n const matched = [...buildOutput.matchAll(reg)];\n\n if (!matched || !matched.length) {\n throw new CommandError(\n 'XCODE_BUILD',\n `Malformed xcodebuild results: \"${variableName}\" variable was not generated in build output. Please report this issue and run your project with Xcode instead.`\n );\n }\n return matched.map((value) => value[1]).filter(Boolean) as string[];\n}\n\nexport function getProcessOptions({\n packager,\n shouldSkipInitialBundling,\n terminal,\n port,\n eagerBundleOptions,\n}: {\n packager: boolean;\n shouldSkipInitialBundling?: boolean;\n terminal: string | undefined;\n port: number;\n eagerBundleOptions?: string;\n}): SpawnOptionsWithoutStdio {\n const SKIP_BUNDLING = shouldSkipInitialBundling ? '1' : undefined;\n if (packager) {\n return {\n env: {\n ...process.env,\n RCT_TERMINAL: terminal,\n SKIP_BUNDLING,\n RCT_METRO_PORT: port.toString(),\n __EXPO_EAGER_BUNDLE_OPTIONS: eagerBundleOptions,\n },\n };\n }\n\n return {\n env: {\n ...process.env,\n RCT_TERMINAL: terminal,\n SKIP_BUNDLING,\n __EXPO_EAGER_BUNDLE_OPTIONS: eagerBundleOptions,\n // Always skip launching the packager from a build script.\n // The script is used for people building their project directly from Xcode.\n // This essentially means \"› Running script 'Start Packager'\" does nothing.\n RCT_NO_LAUNCH_PACKAGER: 'true',\n // FORCE_BUNDLING: '0'\n },\n };\n}\n\nexport async function getXcodeBuildArgsAsync(\n props: Pick<\n BuildProps,\n | 'buildCache'\n | 'projectRoot'\n | 'xcodeProject'\n | 'configuration'\n | 'scheme'\n | 'device'\n | 'isSimulator'\n >\n): Promise<string[]> {\n const args = [\n props.xcodeProject.isWorkspace ? '-workspace' : '-project',\n props.xcodeProject.name,\n '-configuration',\n props.configuration,\n '-scheme',\n props.scheme,\n '-destination',\n `id=${props.device.udid}`,\n ];\n\n if (!props.isSimulator || simulatorBuildRequiresCodeSigning(props.projectRoot)) {\n const developmentTeamId = await ensureDeviceIsCodeSignedForDeploymentAsync(props.projectRoot);\n if (developmentTeamId) {\n args.push(\n `DEVELOPMENT_TEAM=${developmentTeamId}`,\n '-allowProvisioningUpdates',\n '-allowProvisioningDeviceRegistration'\n );\n }\n }\n\n // Add last\n if (props.buildCache === false) {\n args.push(\n // Will first clean the derived data folder.\n 'clean',\n // Then build step must be added otherwise the process will simply clean and exit.\n 'build'\n );\n }\n return args;\n}\n\nfunction spawnXcodeBuild(\n args: string[],\n options: SpawnOptionsWithoutStdio,\n { onData }: { onData: (data: string) => void }\n): Promise<{ code: number | null; results: string; error: string }> {\n const buildProcess = spawn('xcodebuild', args, options);\n\n let results = '';\n let error = '';\n\n buildProcess.stdout.on('data', (data: Buffer) => {\n const stringData = data.toString();\n results += stringData;\n onData(stringData);\n });\n\n buildProcess.stderr.on('data', (data: Buffer) => {\n const stringData = data instanceof Buffer ? data.toString() : data;\n error += stringData;\n });\n\n return new Promise(async (resolve, reject) => {\n buildProcess.on('close', (code: number) => {\n resolve({ code, results, error });\n });\n });\n}\n\nasync function spawnXcodeBuildWithFlush(\n args: string[],\n options: SpawnOptionsWithoutStdio,\n { onFlush }: { onFlush: (data: string) => void }\n): Promise<{ code: number | null; results: string; error: string }> {\n let currentBuffer = '';\n\n // Data can be sent in chunks that would have no relevance to our regex\n // this can cause massive slowdowns, so we need to ensure the data is complete before attempting to parse it.\n function flushBuffer() {\n if (!currentBuffer) {\n return;\n }\n\n const data = currentBuffer;\n // Reset buffer.\n currentBuffer = '';\n // Process data.\n onFlush(data);\n }\n\n const data = await spawnXcodeBuild(args, options, {\n onData(stringData) {\n currentBuffer += stringData;\n // Only flush the data if we have a full line.\n if (currentBuffer.endsWith(os.EOL)) {\n flushBuffer();\n }\n },\n });\n\n // Flush log data at the end just in case we missed something.\n flushBuffer();\n return data;\n}\n\nasync function spawnXcodeBuildWithFormat(\n args: string[],\n options: SpawnOptionsWithoutStdio,\n { projectRoot, xcodeProject }: { projectRoot: string; xcodeProject: ProjectInfo }\n): Promise<{ code: number | null; results: string; error: string; formatter: ExpoRunFormatter }> {\n Log.debug(` xcodebuild ${args.join(' ')}`);\n\n logPrettyItem(chalk.bold`Planning build`);\n\n const formatter = ExpoRunFormatter.create(projectRoot, {\n xcodeProject,\n isDebug: env.EXPO_DEBUG,\n });\n\n const results = await spawnXcodeBuildWithFlush(args, options, {\n onFlush(data) {\n // Process data.\n for (const line of formatter.pipe(data)) {\n // Log parsed results.\n Log.log(line);\n }\n },\n });\n\n Log.debug(`Exited with code: ${results.code}`);\n\n if (\n // User cancelled with ctrl-c\n results.code === null ||\n // Build interrupted\n results.code === 75\n ) {\n throw new AbortCommandError();\n }\n\n Log.log(formatter.getBuildSummary());\n\n return { ...results, formatter };\n}\n\nexport async function buildAsync(props: BuildProps): Promise<string> {\n const args = await getXcodeBuildArgsAsync(props);\n\n const { projectRoot, xcodeProject, shouldSkipInitialBundling, port, eagerBundleOptions } = props;\n\n const { code, results, formatter, error } = await spawnXcodeBuildWithFormat(\n args,\n getProcessOptions({\n packager: false,\n terminal: getUserTerminal(),\n shouldSkipInitialBundling,\n port,\n eagerBundleOptions,\n }),\n {\n projectRoot,\n xcodeProject,\n }\n );\n\n const logFilePath = writeBuildLogs(projectRoot, results, error);\n\n if (code !== 0) {\n // Determine if the logger found any errors;\n const wasErrorPresented = !!formatter.errors.length;\n\n if (wasErrorPresented) {\n // This has a flaw, if the user is missing a file, and there is a script error, only the missing file error will be shown.\n // They will only see the script error if they fix the missing file and rerun.\n // The flaw can be fixed by catching script errors in the custom logger.\n throw new CommandError(\n `Failed to build iOS project. \"xcodebuild\" exited with error code ${code}.`\n );\n }\n\n _assertXcodeBuildResults(code, results, error, xcodeProject, logFilePath);\n }\n return results;\n}\n\n// Exposed for testing.\nexport function _assertXcodeBuildResults(\n code: number | null,\n results: string,\n error: string,\n xcodeProject: { name: string },\n logFilePath: string\n): void {\n const errorTitle = `Failed to build iOS project. \"xcodebuild\" exited with error code ${code}.`;\n\n const throwWithMessage = (message: string): never => {\n throw new CommandError(\n `${errorTitle}\\nTo view more error logs, try building the app with Xcode directly, by opening ${xcodeProject.name}.\\n\\n` +\n message +\n `Build logs written to ${chalk.underline(logFilePath)}`\n );\n };\n\n const localizedError = error.match(/NSLocalizedFailure = \"(.*)\"/)?.[1];\n\n if (localizedError) {\n throwWithMessage(chalk.bold(localizedError) + '\\n\\n');\n }\n // Show all the log info because often times the error is coming from a shell script,\n // that invoked a node script, that started metro, which threw an error.\n\n throwWithMessage(results + '\\n\\n' + error);\n}\n\nfunction writeBuildLogs(projectRoot: string, buildOutput: string, errorOutput: string) {\n const [logFilePath, errorFilePath] = getErrorLogFilePath(projectRoot);\n\n fs.writeFileSync(logFilePath, buildOutput);\n fs.writeFileSync(errorFilePath, errorOutput);\n return logFilePath;\n}\n\nfunction getErrorLogFilePath(projectRoot: string): [string, string] {\n const folder = path.join(projectRoot, '.expo');\n ensureDirectory(folder);\n return [path.join(folder, 'xcodebuild.log'), path.join(folder, 'xcodebuild-error.log')];\n}\n"],"names":["_assertXcodeBuildResults","buildAsync","extractEnvVariableFromBuild","getAppBinaryPath","getEscapedPath","getProcessOptions","getXcodeBuildArgsAsync","logPrettyItem","message","Log","log","chalk","buildOutput","CONFIGURATION_BUILD_DIR","sort","a","b","length","UNLOCALIZED_RESOURCES_FOLDER_PATH","binaryPath","path","join","filePath","fs","existsSync","unescapedPath","split","CommandError","variableName","reg","RegExp","matched","matchAll","map","value","filter","Boolean","packager","shouldSkipInitialBundling","terminal","port","eagerBundleOptions","SKIP_BUNDLING","undefined","env","process","RCT_TERMINAL","RCT_METRO_PORT","toString","__EXPO_EAGER_BUNDLE_OPTIONS","RCT_NO_LAUNCH_PACKAGER","props","args","xcodeProject","isWorkspace","name","configuration","scheme","device","udid","isSimulator","simulatorBuildRequiresCodeSigning","projectRoot","developmentTeamId","ensureDeviceIsCodeSignedForDeploymentAsync","push","buildCache","spawnXcodeBuild","options","onData","buildProcess","spawn","results","error","stdout","on","data","stringData","stderr","Buffer","Promise","resolve","reject","code","spawnXcodeBuildWithFlush","onFlush","currentBuffer","flushBuffer","endsWith","os","EOL","spawnXcodeBuildWithFormat","debug","bold","formatter","ExpoRunFormatter","create","isDebug","EXPO_DEBUG","line","pipe","AbortCommandError","getBuildSummary","getUserTerminal","logFilePath","writeBuildLogs","wasErrorPresented","errors","errorTitle","throwWithMessage","underline","localizedError","match","errorOutput","errorFilePath","getErrorLogFilePath","writeFileSync","folder","ensureDirectory"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/run/ios/XcodeBuild.ts"],"sourcesContent":["import { ExpoRunFormatter } from '@expo/xcpretty';\nimport chalk from 'chalk';\nimport { spawn, SpawnOptionsWithoutStdio } from 'child_process';\nimport fs from 'fs';\nimport os from 'os';\nimport path from 'path';\n\nimport { BuildProps, ProjectInfo } from './XcodeBuild.types';\nimport { ensureDeviceIsCodeSignedForDeploymentAsync } from './codeSigning/configureCodeSigning';\nimport { simulatorBuildRequiresCodeSigning } from './codeSigning/simulatorCodeSigning';\nimport * as Log from '../../log';\nimport { ensureDirectory } from '../../utils/dir';\nimport { env } from '../../utils/env';\nimport { AbortCommandError, CommandError } from '../../utils/errors';\nimport { getUserTerminal } from '../../utils/terminal';\nexport function logPrettyItem(message: string) {\n Log.log(chalk`{whiteBright \\u203A} ${message}`);\n}\n\n/**\n *\n * @returns '/Users/evanbacon/Library/Developer/Xcode/DerivedData/myapp-gpgjqjodrxtervaufttwnsgimhrx/Build/Products/Debug-iphonesimulator/myapp.app'\n */\nexport function getAppBinaryPath(buildOutput: string) {\n // Matches what's used in \"Bundle React Native code and images\" script.\n // Requires that `-hideShellScriptEnvironment` is not included in the build command (extra logs).\n\n // Like `\\=/Users/evanbacon/Library/Developer/Xcode/DerivedData/Exponent-anpuosnglkxokahjhfszejloqfvo/Build/Products/Debug-iphonesimulator`\n const CONFIGURATION_BUILD_DIR = extractEnvVariableFromBuild(\n buildOutput,\n 'CONFIGURATION_BUILD_DIR'\n ).sort(\n // Longer name means more suffixes, we want the shortest possible one to be first.\n // Massive projects (like Expo Go) can sometimes print multiple different sets of environment variables.\n // This can become an issue with some\n (a, b) => a.length - b.length\n );\n // Like `Exponent.app`\n const UNLOCALIZED_RESOURCES_FOLDER_PATH = extractEnvVariableFromBuild(\n buildOutput,\n 'UNLOCALIZED_RESOURCES_FOLDER_PATH'\n );\n\n const binaryPath = path.join(\n // Use the shortest defined env variable (usually there's just one).\n CONFIGURATION_BUILD_DIR[0],\n // Use the last defined env variable.\n UNLOCALIZED_RESOURCES_FOLDER_PATH[UNLOCALIZED_RESOURCES_FOLDER_PATH.length - 1]\n );\n\n // If the app has a space in the name it'll fail because it isn't escaped properly by Xcode.\n return getEscapedPath(binaryPath);\n}\n\nexport function getEscapedPath(filePath: string): string {\n if (fs.existsSync(filePath)) {\n return filePath;\n }\n const unescapedPath = filePath.split(/\\\\ /).join(' ');\n if (fs.existsSync(unescapedPath)) {\n return unescapedPath;\n }\n throw new CommandError(\n 'XCODE_BUILD',\n `Unexpected: Generated app at path \"${filePath}\" cannot be read, the app cannot be installed. Please report this and build onto a simulator.`\n );\n}\n\nexport function extractEnvVariableFromBuild(buildOutput: string, variableName: string) {\n // Xcode can sometimes escape `=` with a backslash or put the value in quotes\n const reg = new RegExp(`export ${variableName}\\\\\\\\?=(.*)$`, 'mg');\n const matched = [...buildOutput.matchAll(reg)];\n\n if (!matched || !matched.length) {\n throw new CommandError(\n 'XCODE_BUILD',\n `Malformed xcodebuild results: \"${variableName}\" variable was not generated in build output. Please report this issue and run your project with Xcode instead.`\n );\n }\n return matched.map((value) => value[1]).filter(Boolean) as string[];\n}\n\nexport function getProcessOptions({\n packager,\n shouldSkipInitialBundling,\n terminal,\n port,\n eagerBundleOptions,\n}: {\n packager: boolean;\n shouldSkipInitialBundling?: boolean;\n terminal: string | undefined;\n port: number;\n eagerBundleOptions?: string;\n}): SpawnOptionsWithoutStdio {\n const SKIP_BUNDLING = shouldSkipInitialBundling ? '1' : undefined;\n if (packager) {\n return {\n env: {\n ...process.env,\n RCT_TERMINAL: terminal,\n SKIP_BUNDLING,\n RCT_METRO_PORT: port.toString(),\n __EXPO_EAGER_BUNDLE_OPTIONS: eagerBundleOptions,\n },\n };\n }\n\n return {\n env: {\n ...process.env,\n RCT_TERMINAL: terminal,\n SKIP_BUNDLING,\n __EXPO_EAGER_BUNDLE_OPTIONS: eagerBundleOptions,\n // Always skip launching the packager from a build script.\n // The script is used for people building their project directly from Xcode.\n // This essentially means \"› Running script 'Start Packager'\" does nothing.\n RCT_NO_LAUNCH_PACKAGER: 'true',\n // FORCE_BUNDLING: '0'\n },\n };\n}\n\nexport async function getXcodeBuildArgsAsync(\n props: Pick<\n BuildProps,\n | 'buildCache'\n | 'projectRoot'\n | 'xcodeProject'\n | 'configuration'\n | 'scheme'\n | 'device'\n | 'isSimulator'\n >\n): Promise<string[]> {\n const args = [\n props.xcodeProject.isWorkspace ? '-workspace' : '-project',\n props.xcodeProject.name,\n '-configuration',\n props.configuration,\n '-scheme',\n props.scheme,\n '-destination',\n `id=${props.device.udid}`,\n ];\n\n if (!props.isSimulator || simulatorBuildRequiresCodeSigning(props.projectRoot)) {\n const developmentTeamId = await ensureDeviceIsCodeSignedForDeploymentAsync(props.projectRoot);\n if (developmentTeamId) {\n args.push(\n `DEVELOPMENT_TEAM=${developmentTeamId}`,\n '-allowProvisioningUpdates',\n '-allowProvisioningDeviceRegistration'\n );\n }\n }\n\n // Add last\n if (props.buildCache === false) {\n args.push(\n // Will first clean the derived data folder.\n 'clean',\n // Then build step must be added otherwise the process will simply clean and exit.\n 'build'\n );\n }\n return args;\n}\n\nfunction spawnXcodeBuild(\n args: string[],\n options: SpawnOptionsWithoutStdio,\n { onData }: { onData: (data: string) => void }\n): Promise<{ code: number | null; results: string; error: string }> {\n const buildProcess = spawn('xcodebuild', args, options);\n\n let results = '';\n let error = '';\n\n buildProcess.stdout.on('data', (data: Buffer) => {\n const stringData = data.toString();\n results += stringData;\n onData(stringData);\n });\n\n buildProcess.stderr.on('data', (data: Buffer) => {\n const stringData = data instanceof Buffer ? data.toString() : data;\n error += stringData;\n });\n\n return new Promise(async (resolve, reject) => {\n buildProcess.on('close', (code: number) => {\n resolve({ code, results, error });\n });\n });\n}\n\nasync function spawnXcodeBuildWithFlush(\n args: string[],\n options: SpawnOptionsWithoutStdio,\n { onFlush }: { onFlush: (data: string) => void }\n): Promise<{ code: number | null; results: string; error: string }> {\n let currentBuffer = '';\n\n // Data can be sent in chunks that would have no relevance to our regex\n // this can cause massive slowdowns, so we need to ensure the data is complete before attempting to parse it.\n function flushBuffer() {\n if (!currentBuffer) {\n return;\n }\n\n const data = currentBuffer;\n // Reset buffer.\n currentBuffer = '';\n // Process data.\n onFlush(data);\n }\n\n const data = await spawnXcodeBuild(args, options, {\n onData(stringData) {\n currentBuffer += stringData;\n // Only flush the data if we have a full line.\n if (currentBuffer.endsWith(os.EOL)) {\n flushBuffer();\n }\n },\n });\n\n // Flush log data at the end just in case we missed something.\n flushBuffer();\n return data;\n}\n\nasync function spawnXcodeBuildWithFormat(\n args: string[],\n options: SpawnOptionsWithoutStdio,\n { projectRoot, xcodeProject }: { projectRoot: string; xcodeProject: ProjectInfo }\n): Promise<{ code: number | null; results: string; error: string; formatter: ExpoRunFormatter }> {\n Log.debug(` xcodebuild ${args.join(' ')}`);\n\n logPrettyItem(chalk.bold`Planning build`);\n\n const formatter = ExpoRunFormatter.create(projectRoot, {\n xcodeProject,\n isDebug: env.EXPO_DEBUG,\n });\n\n const results = await spawnXcodeBuildWithFlush(args, options, {\n onFlush(data) {\n // Process data.\n for (const line of formatter.pipe(data)) {\n // Log parsed results.\n Log.log(line);\n }\n },\n });\n\n Log.debug(`Exited with code: ${results.code}`);\n\n if (\n // User cancelled with ctrl-c\n results.code === null ||\n // Build interrupted\n results.code === 75\n ) {\n throw new AbortCommandError();\n }\n\n Log.log(formatter.getBuildSummary());\n\n return { ...results, formatter };\n}\n\nexport async function buildAsync(props: BuildProps): Promise<string> {\n const args = await getXcodeBuildArgsAsync(props);\n\n const { projectRoot, xcodeProject, shouldSkipInitialBundling, port, eagerBundleOptions } = props;\n\n const { code, results, formatter, error } = await spawnXcodeBuildWithFormat(\n args,\n getProcessOptions({\n packager: false,\n terminal: getUserTerminal(),\n shouldSkipInitialBundling,\n port,\n eagerBundleOptions,\n }),\n {\n projectRoot,\n xcodeProject,\n }\n );\n\n const logFilePath = writeBuildLogs(projectRoot, results, error);\n\n if (code !== 0) {\n // Determine if the logger found any errors;\n const wasErrorPresented = !!formatter.errors.length;\n\n if (wasErrorPresented) {\n // This has a flaw, if the user is missing a file, and there is a script error, only the missing file error will be shown.\n // They will only see the script error if they fix the missing file and rerun.\n // The flaw can be fixed by catching script errors in the custom logger.\n throw new CommandError(\n `Failed to build iOS project. \"xcodebuild\" exited with error code ${code}.`\n );\n }\n\n _assertXcodeBuildResults(code, results, error, xcodeProject, logFilePath);\n }\n return results;\n}\n\n// Exposed for testing.\nexport function _assertXcodeBuildResults(\n code: number | null,\n results: string,\n error: string,\n xcodeProject: { name: string },\n logFilePath: string\n): void {\n const errorTitle = `Failed to build iOS project. \"xcodebuild\" exited with error code ${code}.`;\n\n const throwWithMessage = (message: string): never => {\n throw new CommandError(\n `${errorTitle}\\nTo view more error logs, try building the app with Xcode directly, by opening ${xcodeProject.name}.\\n\\n` +\n message +\n `Build logs written to ${chalk.underline(logFilePath)}`\n );\n };\n\n const localizedError = error.match(/NSLocalizedFailure = \"(.*)\"/)?.[1];\n\n if (localizedError) {\n throwWithMessage(chalk.bold(localizedError) + '\\n\\n');\n }\n // Show all the log info because often times the error is coming from a shell script,\n // that invoked a node script, that started metro, which threw an error.\n\n throwWithMessage(results + '\\n\\n' + error);\n}\n\nfunction writeBuildLogs(projectRoot: string, buildOutput: string, errorOutput: string) {\n const [logFilePath, errorFilePath] = getErrorLogFilePath(projectRoot);\n\n fs.writeFileSync(logFilePath, buildOutput);\n fs.writeFileSync(errorFilePath, errorOutput);\n return logFilePath;\n}\n\nfunction getErrorLogFilePath(projectRoot: string): [string, string] {\n const folder = path.join(projectRoot, '.expo');\n ensureDirectory(folder);\n return [path.join(folder, 'xcodebuild.log'), path.join(folder, 'xcodebuild-error.log')];\n}\n"],"names":["logPrettyItem","getAppBinaryPath","getEscapedPath","extractEnvVariableFromBuild","getProcessOptions","getXcodeBuildArgsAsync","buildAsync","_assertXcodeBuildResults","message","Log","log","chalk","buildOutput","CONFIGURATION_BUILD_DIR","sort","a","b","length","UNLOCALIZED_RESOURCES_FOLDER_PATH","binaryPath","path","join","filePath","fs","existsSync","unescapedPath","split","CommandError","variableName","reg","RegExp","matched","matchAll","map","value","filter","Boolean","packager","shouldSkipInitialBundling","terminal","port","eagerBundleOptions","SKIP_BUNDLING","undefined","env","process","RCT_TERMINAL","RCT_METRO_PORT","toString","__EXPO_EAGER_BUNDLE_OPTIONS","RCT_NO_LAUNCH_PACKAGER","props","args","xcodeProject","isWorkspace","name","configuration","scheme","device","udid","isSimulator","simulatorBuildRequiresCodeSigning","projectRoot","developmentTeamId","ensureDeviceIsCodeSignedForDeploymentAsync","push","buildCache","spawnXcodeBuild","options","onData","buildProcess","spawn","results","error","stdout","on","data","stringData","stderr","Buffer","Promise","resolve","reject","code","spawnXcodeBuildWithFlush","onFlush","currentBuffer","flushBuffer","endsWith","os","EOL","spawnXcodeBuildWithFormat","debug","bold","formatter","ExpoRunFormatter","create","isDebug","EXPO_DEBUG","line","pipe","AbortCommandError","getBuildSummary","getUserTerminal","logFilePath","writeBuildLogs","wasErrorPresented","errors","errorTitle","throwWithMessage","underline","localizedError","match","errorOutput","errorFilePath","getErrorLogFilePath","writeFileSync","folder","ensureDirectory"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"sources":["../../../../src/run/ios/XcodeBuild.types.ts"],"sourcesContent":["import { OSType } from '../../start/platforms/ios/simctl';\nimport { BundlerProps } from '../resolveBundlerProps';\n\nexport type XcodeConfiguration = 'Debug' | 'Release';\n\nexport type Options = {\n /** iOS device to target. */\n device?: string | boolean;\n /** Dev server port to use, ignored if `bundler` is `false`. */\n port?: number;\n /** Xcode scheme to build. */\n scheme?: string | boolean;\n /** Xcode configuration to build. Default `Debug` */\n configuration?: XcodeConfiguration;\n /** Should start the bundler dev server. */\n bundler?: boolean;\n /** Should install missing dependencies before building. */\n install?: boolean;\n /** Should use derived data for builds. */\n buildCache?: boolean;\n /** Path to an existing binary to install on the device. */\n binary?: string;\n\n /** Re-bundle JS and assets, then embed in existing app, and install again. */\n rebundle?: boolean;\n};\n\nexport type ProjectInfo = {\n isWorkspace: boolean;\n name: string;\n};\n\nexport type BuildProps = {\n /** Root to the iOS native project. */\n projectRoot: string;\n /** Is the target a simulator. */\n isSimulator: boolean;\n xcodeProject: ProjectInfo;\n device: { name: string; udid: string; osType: OSType };\n configuration: XcodeConfiguration;\n /** Disable the initial bundling from the native script. */\n shouldSkipInitialBundling: boolean;\n /** Should use derived data for builds. */\n buildCache: boolean;\n scheme: string;\n\n /** Options that were used to create the eager bundle in release builds. */\n eagerBundleOptions?: string;\n} & BundlerProps;\n"],"names":[],"mappings":"AAAA"}
|