Ionic project upgrade, best practices


#1

Hi all,
I need to upgrade my ionic project to latest version. I removed node_modules and I tried to rebuild but I have any problems. What is the best strategy in order to update my project?

Thanks
Luca


#2

You could use https://update.ionic.zone and follow the instructions there. There is also a nice topic on updating here in the forum somewhere.

What does that mean exactly?


#3

I executed “mvn install” after removed my node_modules folder. I regenerated the package.json but I still have any issues.

{
  "name": "xxx",
  "version": "0.0.1",
  "author": "xxx",
  "homepage": "xxx",
  "private": true,
  "scripts": {
    "clean": "ionic-app-scripts clean",
    "build": "ionic-app-scripts build",
    "lint": "ionic-app-scripts lint",
    "ionic:build": "ionic-app-scripts build",
    "ionic:serve": "ionic-app-scripts serve"
  },
  "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-native/core": "4.5.1",
    "@ionic-native/in-app-browser": "4.5.1",
    "@ionic-native/paypal": "4.5.1",
    "@ionic-native/splash-screen": "4.5.1",
    "@ionic-native/status-bar": "4.5.1",
    "@ionic/storage": "2.1.3",
    "card.io.cordova.mobilesdk": "^2.1.0",
    "com.paypal.cordova.mobilesdk": "^3.5.0",
    "cordova-android": "^6.3.0",
    "cordova-ios": "^4.4.0",
    "cordova-plugin-console": "^1.0.5",
    "cordova-plugin-device": "^1.1.4",
    "cordova-plugin-splashscreen": "^4.0.3",
    "cordova-plugin-statusbar": "^2.2.1",
    "cordova-plugin-whitelist": "^1.3.1",
    "cordova-sqlite-storage": "^2.0.4",
    "ionic-angular": "3.9.2",
    "ionic-plugin-keyboard": "^2.2.1",
    "ionicons": "3.0.0",
    "rxjs": "5.5.2",
    "sw-toolbox": "3.6.0",
    "woocommerce-api": "^1.4.2",
    "zone.js": "0.8.18"
  },
  "devDependencies": {
    "@ionic/app-scripts": "3.1.8",
    "ionic": "3.7.0",
    "typescript": "2.4.2"
  },
  "cordovaPlugins": [
    "cordova-plugin-whitelist",
    "cordova-plugin-console",
    "cordova-plugin-statusbar",
    "cordova-plugin-splashscreen",
    "cordova-plugin-device",
    "ionic-plugin-keyboard"
  ],
  "cordovaPlatforms": [
    "ios",
    {
      "platform": "ios",
      "version": "1.0",
      "locator": "ios"
    }
  ],
  "description": "nicecommerce: is a Premium Ionic2 Ecommerce, mCommerce Themes, Categories, Products, Products/Ads, Cart, Filters, Profile, Register, Login, Search",
  "cordova": {
    "plugins": {
      "cordova-plugin-console": {},
      "cordova-plugin-device": {},
      "cordova-plugin-splashscreen": {},
      "cordova-plugin-statusbar": {},
      "cordova-plugin-whitelist": {},
      "cordova-sqlite-storage": {},
      "ionic-plugin-keyboard": {},
      "com.paypal.cordova.mobilesdk": {}
    },
    "platforms": [
      "android",
      "ios"
    ]
  }
}

My log:

> node-sass@4.5.0 install C:\projects\ionic\cartograph\node_modules\node-sass
> node scripts/install.js

Downloading binary from https://github.com/sass/node-sass/releases/download/v4.5.0/win32-x64-57_binding.node

> node-sass@4.5.0 postinstall C:\projects\ionic\cartograph\node_modules\node-sass
> node scripts/build.js

Building: C:\Program Files\nodejs\node.exe C:\projects\ionic\cartograph\node_modules\node-gyp\bin\node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldflags= --libsass_library=
Compilazione dei progetti nella soluzione uno alla volta. Per abilitare la compilazione parallela, aggiungere l'opzione "/m".
Compilazione avviata 27/03/2018 22:17:15.
Progetto "C:\projects\ionic\cartograph\node_modules\node-sass\build\binding.sln" sul nodo 1 (destinazioni predefinite).
ValidateSolutionConfiguration:
  Compilazione della configurazione di soluzione "Release|x64" in corso
MSBUILD : error MSB3428: impossibile caricare il componente di Visual C++ "VCBuild.exe". Per risolvere il problema, 1) installare .NET Framework 2.0 SDK, 2) Microsoft Visual Studio 2005 oppure 3) aggiungere al percorso di sistema il percorso del componente se questo Š installato altrove.  [C:\projects\ionic\cartograph\node_modules\node-sass\build\binding.sln]
Compilazione progetto "C:\projects\ionic\cartograph\node_modules\node-sass\build\binding.sln" (destinazioni predefinite) NON COMPLETATA.

Compilazione NON RIUSCITA.

"C:\projects\ionic\cartograph\node_modules\node-sass\build\binding.sln" (destinazione predefinita) (1) ->
(destinazione: _src_\libsass) -> 
  MSBUILD : error MSB3428: impossibile caricare il componente di Visual C++ "VCBuild.exe". Per risolvere il problema, 1) installare .NET Framework 2.0 SDK, 2) Microsoft Visual Studio 2005 oppure 3) aggiungere al percorso di sistema il percorso del componente se questo Š installato altrove.  [C:\projects\ionic\cartograph\node_modules\node-sass\build\binding.sln]

    Avvisi: 0
    Errori: 1

Help me please


#4

I don’t speak Italian unfortunately - what does the error message say about Node-sass and VCBuild.exe?


#5

Visual C++ Component Not Found “VCBuild.exe”

:frowning:


#6

Hi. You’re having trouble with the Sass package. Everytime it has to be downloaded it tries to find a suitable binary version for the host operating system. if it doesn’t find a good version it tries to compile a local one, and for that it requires the .Net SDK
Refer to the node-sass documentation on https://github.com/sass/node-sass (see the “Compiling on Windows machines requires the node-gyp prerequisites.” section)

Good luck and best regards.
José Ignacio