Quantcast
Channel: Ionic Framework - Ionic Forum
Viewing all articles
Browse latest Browse all 49083

How to solve technical debt? (angular 5, 2018)

$
0
0

Hi everyone!

I currently have an app where the ionic and angular version stayed behind over the last 2 years.
(Started in 2018, check bellow to see the packages used) (I tried to fix it once before but wasn’t easy :sweat_smile: )

There are 3 possible pathways to solve the current technical debt:

  1. Do nothing. Keep the angular/ionic version behind, and carry this debt on. (seems I can still keep the plugins updated, already updated most of them)
  2. Spend 1 maybe 2 weeks trying to upgrade version by version… (already spent yesterday afternoon trying to go from angular 5 to 6 and didn’t finish :scream:)(probably will spend today too!)(routes weren’t a thing before! etc)
  3. Re-start the ionic project as a new one and re-implement all screens (by copying and pasting of course) and fixing what is no longer compatible with the latest. Not sure how long this will take. :thinking_face:

What do you guys think is the best course of action?
P.S. I want/need to solve this technical debt problem because the client wants to make a similar app based on the current one. That means then I will have 2 apps with old dependencies… :grimacing:

package.json:

"scripts": {
	"start": "ionic-app-scripts serve",
	"clean": "ionic-app-scripts clean",
	"build": "ionic-app-scripts build",
	"lint": "ionic-app-scripts lint"
},
"dependencies": {
	"@angular/animations": "5.2.11",
	"@angular/common": "5.2.11",
	"@angular/compiler": "5.2.11",
	"@angular/compiler-cli": "^8.2.13",
	"@angular/core": "5.2.11",
	"@angular/forms": "5.2.11",
	"@angular/http": "5.2.11",
	"@angular/platform-browser": "5.2.11",
	"@angular/platform-browser-dynamic": "5.2.11",
	"@ionic-native/core": "^5.16.0",
	"@ionic-native/in-app-purchase-2": "^5.16.0",
	"@ionic-native/keyboard": "^5.16.0",
	"@ionic-native/market": "^5.16.0",
	"@ionic-native/native-audio": "^5.16.0",
	"@ionic-native/splash-screen": "^5.16.0",
	"@ionic-native/status-bar": "^5.16.0",
	"@ionic-native/vibration": "^5.16.0",
	"@ionic/storage": "^2.2.0",
	"@ngx-translate/core": "^9.1.1",
	"@ngx-translate/http-loader": "^2.0.1",
	"cc.fovea.cordova.purchase": "^8.1.1",
	"cordova-browser": "5.0.4",
	"cordova-ios": "5.0.1",
	"cordova-plugin-device": "^2.0.2",
	"cordova-plugin-ionic-keyboard": "^2.1.3",
	"cordova-plugin-ionic-webview": "^4.0.1",
	"cordova-plugin-market": "^1.2.0",
	"cordova-plugin-nativeaudio": "^3.0.9",
	"cordova-plugin-splashscreen": "^5.0.2",
	"cordova-plugin-vibration": "^3.1.0",
	"cordova-plugin-whitelist": "^1.3.3",
	"cordova-sqlite-storage": "^3.4.0",
	"core-js": "^2.6.5",
	"ionic-angular": "3.9.2",
	"ionicons": "3.0.0",
	"rxjs": "5.5.11",
	"sw-toolbox": "3.6.0",
	"xls-to-json": "^2.1.0",
	"zone.js": "0.8.26"
},
"devDependencies": {
	"@ionic/app-scripts": "^3.2.4",
	"cordova-android": "^9.0.0",
	"typescript": "~4.0.3"
},

6 posts - 3 participants

Read full topic


Viewing all articles
Browse latest Browse all 49083

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>