ionic-team / ionic-app-scripts

App Build Scripts for Ionic Projects
http://ionicframework.com/
MIT License
608 stars 304 forks source link

Cannot read property 'flags' of undefined in 3.1.5. #1347

Closed kleeb closed 6 years ago

kleeb commented 6 years ago

After updating from 3.1.4 to 3.1.5:

TypeError: Cannot read property 'flags' of undefined
    at checkUnreachable (/Users/kleeb/workspace/ionic/node_modules/typescript/lib/typescript.js:24905:31)
    at bindChildrenWorker (/Users/kleeb/workspace/ionic/node_modules/typescript/lib/typescript.js:23111:17)
    at bindChildren (/Users/kleeb/workspace/ionic/node_modules/typescript/lib/typescript.js:23055:17)
    at bind (/Users/kleeb/workspace/ionic/node_modules/typescript/lib/typescript.js:24319:21)
    at bindSourceFile (/Users/kleeb/workspace/ionic/node_modules/typescript/lib/typescript.js:22689:17)
    at Object.bindSourceFile (/Users/kleeb/workspace/ionic/node_modules/typescript/lib/typescript.js:22640:9)
    at initializeTypeChecker (/Users/kleeb/workspace/ionic/node_modules/typescript/lib/typescript.js:47988:20)
    at Object.createTypeChecker (/Users/kleeb/workspace/ionic/node_modules/typescript/lib/typescript.js:27142:9)
    at getDiagnosticsProducingTypeChecker (/Users/kleeb/workspace/ionic/node_modules/typescript/lib/typescript.js:69678:93)
    at emitWorker (/Users/kleeb/workspace/ionic/node_modules/typescript/lib/typescript.js:69722:32)

any kind of build

looks like a tslint bug

mhartington commented 6 years ago

Hi there! This appears to be an issue, but there's no information on how to recreate or how to debug this. Could you please provide some more information or a demo in the form of a github repo? Thanks!

kleeb commented 6 years ago

Sure. Its reproducible on any project, even starters: ionic start myApp tabs

package.json:

{
  "name": "ionic-hello-world",
  "author": "Ionic Framework",
  "homepage": "http://ionicframework.com",
  "private": true,
  "scripts": {
    "ionic:build": "ionic-app-scripts build",
    "ionic:serve": "ionic-app-scripts serve",
    "test": "ng test --watch=false",
    "test:coverage": "ng test --watch=false --code-coverage=true",
    "test:watch": "ng test --watch=true"
  },
  "dependencies": {
    "@angular/common": "5.0.0",
    "@angular/compiler": "5.0.0",
    "@angular/compiler-cli": "5.0.0",
    "@angular/core": "5.0.0",
    "@angular/forms": "5.0.0",
    "@angular/http": "5.0.0",
    "@angular/platform-browser": "5.0.0",
    "@angular/platform-browser-dynamic": "5.0.0",
    "@ionic/storage": "2.1.3",
    "angular2-uuid": "1.1.0",
    "angularfire2": "5.0.0-rc.3",
    "firebase": "4.5.0",
    "ionic-angular": "3.9.2",
    "ionicons": "3.0.0",
    "lodash": "4.17.4",
    "ng2-img-cropper": "0.9.0",
    "ng2-translate": "5.0.0",
    "ngx-facebook": "2.4.0",
    "promise-polyfill": "6.0.2",
    "raven-js": "3.19.1",
    "rxjs": "5.5.2",
    "ts-md5": "1.2.0",
    "zone.js": "0.8.18"
  },
  "devDependencies": {
    "@angular/cli": "1.5.3",
    "@ionic/app-scripts": "3.1.5",
    "@types/autolinker": "0.24.28",
    "@types/google.analytics": "0.0.35",
    "@types/googlemaps": "3.26.11",
    "@types/jasmine": "2.5.38",
    "@types/lodash": "ts2.4",
    "@types/request": "0.0.36",
    "ionic": "3.18.0",
    "@types/sinon": "^4.0.0",
    "gulp": "^3.9.1",
    "jasmine-core": "2.8.0",
    "karma": "1.7.0",
    "karma-chrome-launcher": "2.1.1",
    "karma-cli": "1.0.1",
    "karma-coverage-istanbul-reporter": "1.3.0",
    "karma-jasmine": "1.1.0",
    "karma-jasmine-html-reporter": "0.2.2",
    "ng2-facebook-sdk": "1.0.0",
    "sinon": "^4.1.2",
    "sw-precache": "^5.2.0",
    "typescript": "2.4.2"
  },
  "description": "myApp: An Ionic project"
}

and run prod build

npm run ionic:build --prod

on our project it fails even on the dev one. Hope that helps

mugavri commented 6 years ago

It happens to me as well, I went back to version 3.1.0 And it works for me

kleeb commented 6 years ago

For my project 3.1.4 is stable. On 3.1.5 and 3.1.6 it occurs.

Khalid-Nowaf commented 6 years ago

I have the same problem here, I just update to 3.1.6, so I can fix the bug with WebSockets. so now I have to choose "Live reload" vs "build --prod" ^^;

mhartington commented 6 years ago

Not able to reproduce this at all. What version of node are you using?

Khalid-Nowaf commented 6 years ago

node: v6.11.4 typescript: 2.4.2 ionic/app-scripts: 3.1.4 ionic-angular: 3.9.2, ionic-native/core: 4.4.0

kleeb commented 6 years ago

Node v8.9.1 npm 5.5.1

jwelmac commented 6 years ago

Having the same problem on my end ionic/app-scripts: 3.1.4 works well anything after throws the above error.

Node v8.9.3 npm 5.5.1

tgensol commented 6 years ago

Having the error too with app-script@3.1.7. Going back to 3.1.4 is solving the issue

mhartington commented 6 years ago

Hi folks! I have not been able to replicate this using the latest version of app-scripts, the cli, and LTS of node. Im Going to close this for now. If anyone can please provide a sample project that has this error, I will take a look.

geo242 commented 6 years ago

I am having the same issue with 3.1.7. Going back to 3.1.6 works for me.

kensodemann commented 6 years ago

Can someone post a GitHub repo for a project that exhibits this? I have several test projects, a couple of personal projects, and a training lab project, all using 3.1.7 and none of them exhibit this issue, so having a test project to dig into would be helpful.

kleeb commented 6 years ago

Here you go https://github.com/kleeb/issue-1347

after cloning npm install && npm run ionic:build --prod

    @ionic/cli-utils  : 1.18.0
    ionic (Ionic CLI) : 3.18.0

local packages:

    @ionic/app-scripts : 3.1.7
    Ionic Framework    : ionic-angular 3.9.2

System:

    Node : v8.9.1
    npm  : 5.5.1 
    OS   : macOS Sierra

Misc:

    backend : legacy
kensodemann commented 6 years ago

Thank-you. I was able to duplicate the issue using that repo. Reopening so we can have a look. cc @mhartington

jwelmac commented 6 years ago

I believe the issue may have to do with the upgrade of the @angular-devkit/build-optimizer from 0.0.33 to 0.0.35 and/or its dependencies

That's the only major change I was able to pick out of the commit changes since 3.1.4

mhartington commented 6 years ago

The main issue here seems to be the version of the ng-cli you have installed for the tests. Please run

npm install @angular/cli@latest --save-dev
kleeb commented 6 years ago

@mhartington updating @angular/cli hasn't solved this issue for me

tgensol commented 6 years ago

Same for me, updating the angular/cli is not working

cli packages: (/usr/local/lib/node_modules)

@ionic/cli-utils  : 1.19.0
ionic (Ionic CLI) : 3.19.0

global packages:

cordova (Cordova CLI) : 8.0.0 

local packages:

@ionic/app-scripts : 3.1.7
Cordova Platforms  : android 6.4.0 ios 4.5.4
Ionic Framework    : ionic-angular 3.9.2

System:

Android SDK Tools : 26.1.1
ios-deploy        : 1.9.2 
ios-sim           : 6.1.2 
Node              : v8.9.3
npm               : 5.5.1 
OS                : macOS High Sierra
Xcode             : Xcode 9.2 Build version 9C40b 

Environment Variables:

ANDROID_HOME : /usr/local/opt/Android

Misc:

backend : legacy
jwelmac commented 6 years ago

Same here.

What I did realize though is that the @angular-devkit/build-optimizer@>0.0.35 lists typescript@~2.6.1 as a dependency. When this was installed as a direct dependency that error message was gone for me and ngc was able to complete.

Though I did throw another error later in the build process but that may be due to my code.

mhartington commented 6 years ago

Ok, looks like I was too quick. Digging into this

geo242 commented 6 years ago

I had a strange experience... I downgraded to 3.1.6 and then installed 3.1.7 and it started working. Very strange.

mhartington commented 6 years ago

For those having this issue, do you have ionic listed in your package.json?

kleeb commented 6 years ago

In devDependencies - yes I posted package.json in this thread

mhartington commented 6 years ago

@kleeb can your uninstall that and try to build

npm uninstall ionic --save
tgensol commented 6 years ago

I only have ionic-angular, not ionic on my side

kleeb commented 6 years ago

@mhartington removed ionic, cleaned & rebuilt the project the result is the same: Cannot read property 'flags' of undefined

kensodemann commented 6 years ago

Based on experimentation by me, @mhartington, and @danbucholtz, I did the following and it worked for me:

  1. cloned the sample repo https://github.com/kleeb/issue-1347
  2. make the following changes to the package.json file before doing an npm i
diff --git a/package.json b/package.json
index cb37f0f..2d19303 100644
--- a/package.json
+++ b/package.json
@@ -39,7 +39,6 @@
     "zone.js": "0.8.18"
   },
   "devDependencies": {
-    "@angular/cli": "1.5.3",
     "@ionic/app-scripts": "3.1.7",
     "@types/autolinker": "0.24.28",
     "@types/google.analytics": "0.0.35",
@@ -47,9 +46,8 @@
     "@types/jasmine": "2.5.38",
     "@types/lodash": "ts2.4",
     "@types/request": "0.0.36",
-    "ionic": "3.18.0",
+    "ionic": "3.19.0",
     "@types/sinon": "^4.0.0",
-    "gulp": "^3.9.1",
     "jasmine-core": "2.8.0",
     "karma": "1.7.0",
     "karma-chrome-launcher": "2.1.1",

The key to this seems to have been the removal of the @angular/cli package. I only removed gulp because there was no gulpfile.

kleeb commented 6 years ago

I do confirm! Removing @angular/cli is doing its job.

Thanks @kensodemann @mhartington @danbucholtz

tgensol commented 6 years ago

I removed the @angular/cli, and I still have the issue on my side

kleeb commented 6 years ago

@tgensol post your package.json

tgensol commented 6 years ago
{
    "name": "choose",
    "version": "1.0.0",
    "author": "Choose team",
    "homepage": "http://appchoose.io/",
    "private": true,
    "scripts": {
        "clean": "ionic-app-scripts clean",
        "build": "ionic-app-scripts build",
        "lint": "ionic-app-scripts lint",
        "android": "NODE_ENV=android NODE_PLT=prod node ./scripts/replace.config;",
        "ios": "NODE_ENV=ios NODE_PLT=prod node ./scripts/replace.config;",
        "ionic:build": "ionic-app-scripts build",
        "ionic:serve": "ionic-app-scripts serve",
        "bundle-report": "webpack-bundle-analyzer stats.json"
    },
    "config": {
        "ionic_copy": "./config/copy.config.js",
        "ionic_webpack": "./config/webpack.config.js",
        "ionic_source_map_type": "source-map"
    },
    "dependencies": {
        "@angular/animations": "^5.1.3",
        "@angular/common": "^5.1.3",
        "@angular/compiler": "^5.1.3",
        "@angular/compiler-cli": "^5.1.3",
        "@angular/core": "^5.1.3",
        "@angular/forms": "^5.1.3",
        "@angular/http": "^5.1.3",
        "@angular/platform-browser": "^5.1.3",
        "@angular/platform-browser-dynamic": "^5.1.3",
        "@ionic-native/app-availability": "^4.5.2",
        "@ionic-native/app-version": "^4.5.2",
        "@ionic-native/camera": "^4.5.2",
        "@ionic-native/clipboard": "^4.5.2",
        "@ionic-native/contacts": "^4.5.2",
        "@ionic-native/core": "^4.5.2",
        "@ionic-native/deeplinks": "^4.5.2",
        "@ionic-native/device": "^4.5.2",
        "@ionic-native/facebook": "^4.5.2",
        "@ionic-native/file": "^4.5.2",
        "@ionic-native/firebase": "^4.5.2",
        "@ionic-native/google-analytics": "^4.5.2",
        "@ionic-native/in-app-browser": "^4.5.2",
        "@ionic-native/native-storage": "^4.5.2",
        "@ionic-native/network": "^4.5.2",
        "@ionic-native/safari-view-controller": "^4.5.2",
        "@ionic-native/social-sharing": "^4.5.2",
        "@ionic-native/splash-screen": "^4.5.2",
        "@ionic-native/status-bar": "^4.5.2",
        "@ionic/storage": "^2.1.3",
        "@ngx-translate/core": "^9.0.2",
        "@ngx-translate/http-loader": "^2.0.1",
        "@types/algoliasearch": "^3.24.6",
        "algoliasearch": "^3.24.9",
        "amazon-cognito-identity-js": "^1.29.0",
        "amplitude-js": "^4.0.0",
        "angular2-uuid": "^1.1.1",
        "angularfire2": "^5.0.0-rc.5-next",
        "aws-sdk": "^2.176.0",
        "cordova": "^8.0.0",
        "cordova-android": "~6.4.0",
        "cordova-clipboard": "git+https://github.com/ibnclaudius/CordovaClipboard.git",
        "cordova-fabric-plugin": "^1.1.10",
        "cordova-ios": "^4.5.4",
        "cordova-launch-review": "^3.1.0",
        "cordova-plugin-app-version": "^0.1.9",
        "cordova-plugin-appavailability": "^0.4.2",
        "cordova-plugin-camera": "^4.0.1",
        "cordova-plugin-changeicon": "file:../cordova-plugin-change-icon",
        "cordova-plugin-contacts": "^3.0.1",
        "cordova-plugin-detect-screenshot": "^1.0.7",
        "cordova-plugin-device": "^2.0.1",
        "cordova-plugin-facebook4": "file:../cordova-plugin-facebook4",
        "cordova-plugin-file": "^6.0.1",
        "cordova-plugin-firebase": "file:../cordova-plugin-firebase",
        "cordova-plugin-google-analytics": "file:../google-analytics-plugin",
        "cordova-plugin-inappbrowser": "^2.0.1",
        "cordova-plugin-ionic-keyboard": "file:../cordova-plugin-ionic-keyboard",
        "cordova-plugin-ionic-webview": "^1.1.16",
        "cordova-plugin-nativestorage": "^2.2.2",
        "cordova-plugin-network-information": "^2.0.1",
        "cordova-plugin-proguard": "file:../cordova-plugin-proguard",
        "cordova-plugin-safariviewcontroller": "^1.5.2",
        "cordova-plugin-splashscreen": "^5.0.1",
        "cordova-plugin-statusbar": "^2.4.1",
        "cordova-plugin-whitelist": "^1.3.3",
        "cordova-plugin-x-socialsharing": "^5.2.1",
        "cordova-sqlite-storage": "^2.2.0",
        "cordova-universal-clipboard": "file:../CordovaClipboard",
        "es6-promise-plugin": "^4.2.2",
        "eslint": "^4.14.0",
        "firebase": "^4.8.0",
        "hammerjs": "^2.0.8",
        "immutable": "^3.8.2",
        "install": "^0.9.6",
        "ionic-angular": "^3.9.2",
        "ionic-plugin-deeplinks": "^1.0.15",
        "ionic2-super-tabs": "^4.1.5",
        "ionicons": "^3.0.0",
        "moment": "2.18.1",
        "moment-timezone": "^0.5.13",
        "my-custom-bis-plugin": "file:my-custom",
        "ngeohash": "^0.6.0",
        "node-geo-distance": "^1.2.0",
        "phaser": "^2.6.2",
        "progressbar.js": "^1.0.1",
        "promise-polyfill": "^6.1.0",
        "raven-js": "^3.21.0",
        "rxjs": "5.5.2",
        "sw-toolbox": "^3.6.0",
        "zone.js": "0.8.18"
    },
    "devDependencies": {
        "@ionic/app-scripts": "^3.1.7",
        "@types/hammerjs": "^2.0.35",
        "@types/jasmine": "^2.8.3",
        "@types/moment-timezone": "^0.5.3",
        "@types/ngeohash": "^0.6.1",
        "@types/node": "^7.0.52",
        "clean-css": "^4.1.9",
        "connect": "^3.6.5",
        "expose-loader": "^0.7.4",
        "html-minifier": "^2.1.x",
        "imagemin": "^5.0.0",
        "imagemin-gifsicle": "^5.2.0",
        "imagemin-guetzli": "^1.0.0",
        "imagemin-jpegtran": "^5.0.x",
        "imagemin-optipng": "^5.1.x",
        "imagemin-pngquant": "^5.0.0",
        "imagemin-svgo": "^5.2.4",
        "jasmine": "^2.6.0",
        "jasmine-spec-reporter": "^4.2.0",
        "phaser-ce": "^2.9.4",
        "protractor": "^5.2.2",
        "ts-node": "^3.3.0",
        "typescript": "2.4.2",
        "typescript-eslint-parser": "^4.0.0",
        "uglify-js": "^3.3.4",
        "webpack-bundle-analyzer": "^2.9.1",
        "webpack-merge": "^4.1.1"
    },
    "description": "choose: An Ionic project",
    "cordova": {
        "plugins": {
            "cordova-plugin-app-version": {},
            "cordova-plugin-changeicon": {},
            "cordova-plugin-ionic-webview": {},
            "cordova-plugin-ionic-keyboard": {},
            "es6-promise-plugin": {},
            "com.lukemiles.screenshot": {},
            "cordova-plugin-google-analytics": {},
            "cordova-plugin-nativestorage": {},
            "cordova-plugin-whitelist": {},
            "cordova-plugin-appavailability": {},
            "cordova-plugin-safariviewcontroller": {},
            "cordova-launch-review": {},
            "cordova-plugin-proguard": {},
            "cordova-universal-clipboard": {},
            "ionic-plugin-deeplinks": {
                "ANDROID_PATH_PREFIX": "/",
                "ANDROID_2_PATH_PREFIX": "/",
                "ANDROID_3_PATH_PREFIX": "/",
                "ANDROID_4_PATH_PREFIX": "/",
                "ANDROID_5_PATH_PREFIX": "/",
                "DEEPLINK_2_SCHEME": " ",
                "DEEPLINK_2_HOST": " ",
                "DEEPLINK_3_SCHEME": " ",
                "DEEPLINK_3_HOST": " ",
                "DEEPLINK_4_SCHEME": " ",
                "DEEPLINK_4_HOST": " ",
                "DEEPLINK_5_SCHEME": " ",
                "DEEPLINK_5_HOST": " "
            },
            "cordova-plugin-firebase": {},
            "my-custom-bis-plugin": {},
            "cordova-plugin-contacts": {},
            "cordova-plugin-x-socialsharing": {},
            "cordova-sqlite-storage": {},
            "cordova-plugin-network-information": {},
            "cordova-plugin-statusbar": {},
            "cordova-plugin-inappbrowser": {},
            "cordova-plugin-file": {},
            "cordova-plugin-device": {},
            "cordova-plugin-splashscreen": {},
            "cordova-plugin-camera": {}
        },
        "platforms": [
            "ios",
            "android"
        ]
    }
}
kleeb commented 6 years ago

you are missing "ionic": "3.19.0" in devDependencies

tgensol commented 6 years ago

Still got the issue even with the "ionic": "3.19.0" in devDependencies

kleeb commented 6 years ago

I would downgrade all @angular/* deps to 5.0.0

tgensol commented 6 years ago

It doesn't work either. I will downgrade app-scripts to 3.1.4

kensodemann commented 6 years ago

@tgensol - after removing @angular/cli did you remove your node_modules directory and then do a complete reinstall of the NPM packages? Sometimes that is necessary. I often do that just to be safe.

FWIW, in my tests, I had used both Angular 5.0.0 and 5.1.3, and it worked in each case. My diff posted above is just what the minimal changes I made to @kleeb's package.json and really the @angular/cli was the key in that case.

In your cases, there are so many deps and plug-ins that I don't even what to guess at what could be triggering the issue, but you could try something like:

  1. ionic start tabs test-1347
  2. npm i
  3. ionic build --prod
  4. add your deps one dep at a time until stuff breaks
JustinPierce commented 6 years ago

I've found that @ionic/app-scripts and @angular/cli can still coexist, but the order in which you install them matters. I've only had success by installing @angular/app-scripts first. Depending on the state of your package-lock.json, you may need to try the nuclear option:

  1. Delete package-lock.json and node_modules.
  2. Remove @angular/cli from package.json. Leave @ionic/app-scripts@3.1.7 in place.
  3. npm install
  4. npm install @angular/cli@latest --save-dev
  5. ionic build --prod
  6. Hopefully do a happy dance.
tgensol commented 6 years ago

@kensodemann Thanks, I forget to remove the folder yes ! It is working now,

Best

jwelmac commented 6 years ago

Thanks @kensodemann and @JustinPierce

Confirmed working now!

jwelmac commented 6 years ago

Hey Guys, Is there any way to fix this issue internally and resolve this discrepancy? Currently, I cant just put all my dependencies in my package.json and know that I will have a successful build when it goes to CI/CD. Also by trying to install @angular/cli in the postinstall script Ionic Pro throws an error saying sh: 1: ionic-app-scripts: not found

Reverting to 3.1.4

EugeneSnihovsky commented 6 years ago

Does anyone has workaround?

After updating my private app to ionic 3.9.2 / angular 5.0.0 / @ionic/app-scripts 3.1.7 it throws an error on ngc command when I build app with --prod or --aot flag. I am not using angular cli in this project but it installed globaly (v.1.6.4).

[10:39:21]  ngc started ... 
TypeError: Cannot read property 'flags' of undefined
    at checkUnreachable (/Volumes/WORKSPACE/projects/checkin-guest-mobile-application/node_modules/typescript/lib/typescript.js:24905:30)
    at bindChildrenWorker (/Volumes/WORKSPACE/projects/checkin-guest-mobile-application/node_modules/typescript/lib/typescript.js:23111:17)
    at bindChildren (/Volumes/WORKSPACE/projects/checkin-guest-mobile-application/node_modules/typescript/lib/typescript.js:23055:17)
    at bind (/Volumes/WORKSPACE/projects/checkin-guest-mobile-application/node_modules/typescript/lib/typescript.js:24319:21)
    at bindSourceFile (/Volumes/WORKSPACE/projects/checkin-guest-mobile-application/node_modules/typescript/lib/typescript.js:22689:17)
    at Object.bindSourceFile (/Volumes/WORKSPACE/projects/checkin-guest-mobile-application/node_modules/typescript/lib/typescript.js:22640:9)
    at initializeTypeChecker (/Volumes/WORKSPACE/projects/checkin-guest-mobile-application/node_modules/typescript/lib/typescript.js:47988:20)
    at Object.createTypeChecker (/Volumes/WORKSPACE/projects/checkin-guest-mobile-application/node_modules/typescript/lib/typescript.js:27142:9)
    at getDiagnosticsProducingTypeChecker (/Volumes/WORKSPACE/projects/checkin-guest-mobile-application/node_modules/typescript/lib/typescript.js:69678:93)
    at emitWorker (/Volumes/WORKSPACE/projects/checkin-guest-mobile-application/node_modules/typescript/lib/typescript.js:69722:32)

Dev livereload server and dev build works fine.

If I downgrade @ionic/app-scripts to 3.1.4 - prod version builds fine, but dev livereload server throws an error

[ERROR] Error in DevApp service: Error: send EHOSTUNREACH 169.254.255.255:41234

             at Object._errnoException (util.js:1019:11)
             at _exceptionWithHostPort (util.js:1041:20)
             at SendWrap.afterSend [as oncomplete] (dgram.js:475:11)

[ERROR] Error in DevApp service: Error: send EHOSTDOWN 169.254.255.255:41234

             at Object._errnoException (util.js:1019:11)
             at _exceptionWithHostPort (util.js:1041:20)
             at SendWrap.afterSend [as oncomplete] (dgram.js:475:11)
kleeb commented 6 years ago

post your package.json

EugeneSnihovsky commented 6 years ago

@kleeb

  "scripts": {
    "start": "bnr dev",
    "build:ios": "bnr build:ios"
  },
  "betterScripts": {
    "dev": {
      "command": "ionic-app-scripts serve --port 5555",
      "env": {
        "CURR_ENV": "staging"
      }
    },
    "build:ios": {
      "command": "ionic cordova build ios --prod --aot",
      "env": {
        "CURR_ENV": "production"
      }
    }
  },
  "dependencies": {
    "@agm/core": "~1.0.0-beta.2",
    "@angular-devkit/build-optimizer": "0.0.36",
    "@angular/animations": "5.0.0",
    "@angular/common": "5.0.0",
    "@angular/compiler": "5.0.0",
    "@angular/compiler-cli": "5.0.0",
    "@angular/core": "5.0.0",
    "@angular/forms": "5.0.0",
    "@angular/http": "5.0.0",
    "@angular/language-service": "5.0.0",
    "@angular/platform-browser": "5.0.0",
    "@angular/platform-browser-dynamic": "5.0.0",
    "@ionic-native/background-mode": "~4.5.2",
    "@ionic-native/camera": "~4.5.2",
    "@ionic-native/core": "~4.5.2",
    "@ionic-native/file": "~4.5.2",
    "@ionic-native/file-transfer": "~4.5.2",
    "@ionic-native/splash-screen": "~4.5.2",
    "@ionic/storage": "~2.1.3",
    "@ngx-translate/core": "~9.0.2",
    "@ngx-translate/http-loader": "~2.0.1",
    "@types/actioncable": "~0.0.2",
    "actioncable": "~5.1.4",
    "android-versions": "~1.2.1",
    "cordova-android": "~6.2.3",
    "cordova-custom-config": "~4.0.2",
    "cordova-ios": "~4.3.1",
    "cordova-plugin-android-permissions": "~1.0.0",
    "cordova-plugin-cocoapod-support": "~1.3.0",
    "cordova-plugin-console": "~1.0.7",
    "cordova-plugin-crosswalk-webview": "~2.3.0",
    "cordova-plugin-splashscreen": "~4.0.3",
    "cordova-plugin-statusbar": "~2.2.3",
    "cordova-plugin-websocket": "~0.12.2",
    "cordova-plugin-whitelist": "~1.3.2",
    "cordova-sqlite-storage": "~2.0.4",
    "ionic-angular": "3.9.2",
    "ionic-img-viewer": "~2.9.0",
    "ionic-plugin-keyboard": "~2.2.1",
    "ionicons": "3.0.0",
    "lodash-es": "~4.17.4",
    "rxjs": "5.5.2",
    "sw-toolbox": "3.6.0",
    "twilio-video": "~1.6.0",
    "web-animations-js": "~2.3.1",
    "xcode": "~0.9.3",
    "zone.js": "0.8.18"
  },
  "devDependencies": {
    "@ionic/app-scripts": "3.1.7",
    "@types/debug": "ts2.3",
    "@types/del": "~3.0.0",
    "@types/gulp": "~4.0.4",
    "@types/gulp-tslint": "~3.6.31",
    "@types/gulp-watch": "~4.1.33",
    "@types/jasmine": "ts2.3",
    "@types/lodash-es": "ts2.3",
    "@types/node": "ts2.3",
    "ajv": "~5.2.2",
    "angular2-template-loader": "~0.6.2",
    "awesome-typescript-loader": "~3.2.2",
    "better-npm-run": "0.1.0",
    "codelyzer": "~4.0.2",
    "commitizen": "~2.9.6",
    "copy": "~0.3.0",
    "cz-conventional-changelog": "~2.0.0",
    "del": "~3.0.0",
    "es6-actioncable": "~0.5.5",
    "finalhandler": "~1.0.3",
    "gulp": "~3.9.1",
    "gulp-merge-json": "~1.1.0",
    "gulp-tslint": "~8.1.2",
    "gulp-watch": "~4.3.11",
    "gulpclass": "~0.1.2",
    "husky": "~0.14.3",
    "istanbul-instrumenter-loader": "3.0.0",
    "jasmine-core": "~2.7.0",
    "jasmine-spec-reporter": "~4.1.1",
    "karma": "~1.7.0",
    "karma-chrome-launcher": "~2.2.0",
    "karma-coverage": "~1.1.1",
    "karma-istanbul-threshold": "~1.2.2",
    "karma-jasmine": "~1.1.0",
    "karma-mocha-reporter": "~2.2.3",
    "karma-remap-coverage": "0.1.4",
    "karma-sourcemap-loader": "~0.3.7",
    "karma-webpack": "2.0.4",
    "minimist": "~1.2.0",
    "mkdirp": "~0.5.1",
    "protractor": "~5.2.0",
    "protractor-jasmine2-screenshot-reporter": "~0.4.0",
    "raw-loader": "0.5.1",
    "request-promise": "~4.2.2",
    "serve-static": "~1.12.3",
    "source-map-loader": "~0.2.1",
    "standard-version": "~4.2.0",
    "ts-helpers": "~1.1.1",
    "ts-node": "~3.3.0",
    "tslint": "~5.8.0",
    "tslint-microsoft-contrib": "~5.0.1",
    "typedoc": "~0.8.0",
    "typescript": "~2.4.2",
    "validate-commit-msg": "~2.14.0",
    "webpack": "~3.4.1",
    "websocket": "~1.0.24",
    "xml2js": "~0.4.17"
  },
  "config": {
    "ionic_sass": "./config/sass.config.js",
    "commitizen": {
      "path": "./node_modules/cz-conventional-changelog"
    },
    "ionic_webpack": "./config/webpack.config.js"
  }

command npm run build:ios fails on ionic-app-scripts 3.1.7

command npm start fails on ionic-app-scripts 3.1.4 on each livereload

kleeb commented 6 years ago

try to fix typescript version to the exact "2.4.2"

EugeneSnihovsky commented 6 years ago

@kleeb didn't help. Same error Cannot read property 'flags' of undefined

Update: got workaround with ionic-app-scripts 3.1.4 and npm i -D -E ws@3.3.2. Now build with prod and aot works and livereload server don't crash on each reload.

kleeb commented 6 years ago

but have you removed node_modules are rerun npm i ?

EugeneSnihovsky commented 6 years ago

Yes. Every time I do fresh install without node_modules folder in project