I have the same app that i built with both --prod and without. Non-prod app will fire up successfully in phone. But --prod app, the component never fires up. This doesn’t happen to tutorial app though. But if it is my app’s syntax error, why does the non-prod app works perfectly? Both build process did not throw any error. Anyone has experienced this problem?
I went to platform/build and open up the www folder in the browser. I saw the error. The path of one of my pipes has a capital letter in the file name. But when i import that in ngmodule, i import the file without capital letter in the name. The whole build process did not catch that error and non-minified build works also. Browser version also works. only when --prod minify the file then the error came up. But then this error is not thrown again in the emulator console for some reason.
I suppose it’s not the build system’s fault. It’s probably something like the minifying process changes the variable names. Hence “CapFirst.pipe.ts” isn’t the same a “capFirst.pipe.ts”. If the names are never changed, the system ignores case difference when reading the file path. But if the build system rename it, it would rename these 2 to totally different things. Hence the app breaks. But that’s just my guess. I don’t really know how ionic minifies and compiles app under the hood.
$ cd /path/to/project
$ echo 'gotcha' > afo
$ cat Afo
If the last command prints “gotcha”, your filesystem is case-insensitive and there’s nothing that the build system could have done. You can clean up from the test with rm afo.
Yes, but at volume creation time, so you would have to copy all your data to an external disk somewhere, repartition and choose “case sensitive journaled FS” or something when reformatting. I’m sure there are official Apple docs on this.