electrode-io / electrode-native

A platform to ease integration&delivery of React Native apps in existing mobile applications
https://native.electrode.io
Other
727 stars 113 forks source link

Fail gracefully during Electrode Native installation if git is missing #554

Closed belemaire closed 6 years ago

belemaire commented 6 years ago

git is being used inside Electrode Native (to access master and override manifest, as well as for Container publication).

Unfortunately if git cli is not installed on the machine (or not accessible from the PATH), then Electrode Native will fail at some point way later after installation (for example it will just stall when trying to create a MiniApp. See https://github.com/electrode-io/electrode-native/issues/552). Electrode Native should fail fast if git is not installed (or not in PATH) with a clear informative message.

During platform installation if git cli is not in PATH then installation should fail and a proper error message logged to the user.

kamleshgit commented 6 years ago

Hi Benoit,

Thanks for your help. I installed git and re ran the app create command it worked which is good but then I ran "ern run-android" and it gave me following errors. I tried deleting the files from Temp location but still it says the same thing. Can you please help em to understand what could be the issue now?

s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: Asserts Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ Asserts.js collides with C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms16 5us0q\node_modules\react-native\ReactAndroid\src\androidTest\js\Asserts.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: DocumentSelectionState Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\Libraries\vendor\document\select ion\DocumentSelectionState.js collides with C:\Users\KPRAJA~1\AppData\Local\Temp \2\tmp-11748OGUms165us0q\node_modules\react-native\Libraries\vendor\document\sel ection\DocumentSelectionState.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: CatalystRootViewTestModule Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ CatalystRootViewTestModule.js collides with C:\Users\KPRAJA~1\AppData\Local\Temp \2\tmp-11748OGUms165us0q\node_modules\react-native\ReactAndroid\src\androidTest\ js\CatalystRootViewTestModule.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: DatePickerDialogTestModule Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ DatePickerDialogTestModule.js collides with C:\Users\KPRAJA~1\AppData\Local\Temp \2\tmp-11748OGUms165us0q\node_modules\react-native\ReactAndroid\src\androidTest\ js\DatePickerDialogTestModule.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: InitialPropsTestApp Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ InitialPropsTestApp.js collides with C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp- 11748OGUms165us0q\node_modules\react-native\ReactAndroid\src\androidTest\js\Init ialPropsTestApp.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: JSResponderTestApp Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ JSResponderTestApp.js collides with C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-1 1748OGUms165us0q\node_modules\react-native\ReactAndroid\src\androidTest\js\JSRes ponderTestApp.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: LayoutEventsTestApp Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ LayoutEventsTestApp.js collides with C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp- 11748OGUms165us0q\node_modules\react-native\ReactAndroid\src\androidTest\js\Layo utEventsTestApp.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: MeasureLayoutTestModule Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ MeasureLayoutTestModule.js collides with C:\Users\KPRAJA~1\AppData\Local\Temp\2\ tmp-11748OGUms165us0q\node_modules\react-native\ReactAndroid\src\androidTest\js\ MeasureLayoutTestModule.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: MultitouchHandlingTestAppModule Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ MultitouchHandlingTestAppModule.js collides with C:\Users\KPRAJA~1\AppData\Local \Temp\2\tmp-11748OGUms165us0q\node_modules\react-native\ReactAndroid\src\android Test\js\MultitouchHandlingTestAppModule.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: NativeIdTestModule Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ NativeIdTestModule.js collides with C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-1 1748OGUms165us0q\node_modules\react-native\ReactAndroid\src\androidTest\js\Nativ eIdTestModule.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: PickerAndroidTestModule Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ PickerAndroidTestModule.js collides with C:\Users\KPRAJA~1\AppData\Local\Temp\2\ tmp-11748OGUms165us0q\node_modules\react-native\ReactAndroid\src\androidTest\js\ PickerAndroidTestModule.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: ProgressBarTestModule Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ ProgressBarTestModule.js collides with C:\Users\KPRAJA~1\AppData\Local\Temp\2\tm p-11748OGUms165us0q\node_modules\react-native\ReactAndroid\src\androidTest\js\Pr ogressBarTestModule.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: ScrollViewTestModule Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ ScrollViewTestModule.js collides with C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp -11748OGUms165us0q\node_modules\react-native\ReactAndroid\src\androidTest\js\Scr ollViewTestModule.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: ShareTestModule Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ ShareTestModule.js collides with C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-1174 8OGUms165us0q\node_modules\react-native\ReactAndroid\src\androidTest\js\ShareTes tModule.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: SwipeRefreshLayoutTestModule Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ SwipeRefreshLayoutTestModule.js collides with C:\Users\KPRAJA~1\AppData\Local\Te mp\2\tmp-11748OGUms165us0q\node_modules\react-native\ReactAndroid\src\androidTes t\js\SwipeRefreshLayoutTestModule.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: SubviewsClippingTestModule Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ SubviewsClippingTestModule.js collides with C:\Users\KPRAJA~1\AppData\Local\Temp \2\tmp-11748OGUms165us0q\node_modules\react-native\ReactAndroid\src\androidTest\ js\SubviewsClippingTestModule.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: TestBundle Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ TestBundle.js collides with C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUm s165us0q\node_modules\react-native\ReactAndroid\src\androidTest\js\TestBundle.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: TestIdTestModule Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ TestIdTestModule.js collides with C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-117 48OGUms165us0q\node_modules\react-native\ReactAndroid\src\androidTest\js\TestIdT estModule.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: TestJSLocaleModule Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ TestJSLocaleModule.js collides with C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-1 1748OGUms165us0q\node_modules\react-native\ReactAndroid\src\androidTest\js\TestJ SLocaleModule.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: TestJSToJavaParametersModule Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ TestJSToJavaParametersModule.js collides with C:\Users\KPRAJA~1\AppData\Local\Te mp\2\tmp-11748OGUms165us0q\node_modules\react-native\ReactAndroid\src\androidTes t\js\TestJSToJavaParametersModule.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: TestJavaToJSArgumentsModule Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ TestJavaToJSArgumentsModule.js collides with C:\Users\KPRAJA~1\AppData\Local\Tem p\2\tmp-11748OGUms165us0q\node_modules\react-native\ReactAndroid\src\androidTest \js\TestJavaToJSArgumentsModule.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: TestJavaToJSReturnValuesModule Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ TestJavaToJSReturnValuesModule.js collides with C:\Users\KPRAJA~1\AppData\Local\ Temp\2\tmp-11748OGUms165us0q\node_modules\react-native\ReactAndroid\src\androidT est\js\TestJavaToJSReturnValuesModule.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: TextInputTestModule Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ TextInputTestModule.js collides with C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp- 11748OGUms165us0q\node_modules\react-native\ReactAndroid\src\androidTest\js\Text InputTestModule.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: TimePickerDialogTestModule Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ TimePickerDialogTestModule.js collides with C:\Users\KPRAJA~1\AppData\Local\Temp \2\tmp-11748OGUms165us0q\node_modules\react-native\ReactAndroid\src\androidTest\ js\TimePickerDialogTestModule.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: TouchBubblingTestAppModule Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ TouchBubblingTestAppModule.js collides with C:\Users\KPRAJA~1\AppData\Local\Temp \2\tmp-11748OGUms165us0q\node_modules\react-native\ReactAndroid\src\androidTest\ js\TouchBubblingTestAppModule.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: UIManagerTestModule Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ UIManagerTestModule.js collides with C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp- 11748OGUms165us0q\node_modules\react-native\ReactAndroid\src\androidTest\js\UIMa nagerTestModule.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: ViewRenderingTestModule Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\ReactAndroid\src\androidTest\js\ ViewRenderingTestModule.js collides with C:\Users\KPRAJA~1\AppData\Local\Temp\2\ tmp-11748OGUms165us0q\node_modules\react-native\ReactAndroid\src\androidTest\js\ ViewRenderingTestModule.js

This warning is caused by a @providesModule declaration with the same name acros s two different files. jest-haste-map: @providesModule naming collision: Duplicate module name: react-native-vector-icons Paths: C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGUms165us0q\node_modul es\movie-list-miniapp\node_modules\react-native\local-cli\core__fixtures__\file s\package.json collides with C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-11748OGU ms165us0q\node_modules\react-native\local-cli\core__fixtures__\files\package.js on

This warning is caused by a @providesModule declaration with the same name acros s two different files.

Ambiguous module resolution from C:\Users\KPRAJA~1\AppData\Local\Temp\2\tmp-117 48OGUms165us0q\node_modules\movie-list-miniapp\node_modules\react-native\Librari es\react-native\react-native-implementation.js: The name AccessibilityInfo wa s looked up in the Haste module map. It cannot be resolved, because there exists several different files, or packages, that provide a module for that particular name and platform. The platform extension is android. You must delete or blac klist files until there remains only one of these:

C:\sites\Electrode\ElectrodeNativeTutorial\MovieListMiniApp>

jomnius commented 6 years ago

Hi @kamleshgit

Your FIRST bug seems to be identified and possibly going to be fixed. That usually means this ticket could be closed and your follow-up bug report totally ignored.

I suggest you always create one ticket per one problem. New problem, new ticket.

However... your SECOND problem could be related to having "node_modules" folder inside "node_modules" folder. At least in some cases it has confused React Native. You might check their issues in their GitHub repository. Good luck.

belemaire commented 6 years ago

@kamleshgit The bug you are now facing has been identified and fixed ( https://github.com/electrode-io/electrode-native/issues/531). Fix will be shipped in 0.12.2 release of Electrode Native, later on today. A temporary work-around has been proposed in the comments of the issue, if you can't wait for 0.12.2.