DEV Community

Cover image for Angular Migration Of Old Projects (Projects with Version <NG9) To Latest Version- Challenges
Abhishek P N
Abhishek P N

Posted on

 

Angular Migration Of Old Projects (Projects with Version <NG9) To Latest Version- Challenges

Background

Angular is a TypeScript-based free and open-source web application framework led by Google. It was a complete rewrite of AngularJS and it is a component-based framework for building scalable web apps. It has a collection of well-integrated libraries and features such as client-server communication, routing, and more.

Since Angular is very much flexible in terms of scalability for enterprise grade applications, many enterprises adopted this framework to develop their web-application when this framework was released

Angular team provides updates to this framework frequently to add features, provide security fixes and resolve bugs. Angular team provides support of 18 months to all major releases including 12 months of LTS

Since the intervals between the updates is relatively small, it is necessary for the enterprises to cope-up with the updates to have the latest security patch available.

But unfortunately many enterprises failed to get updated with the latest release of the framework and they are doing the upgradation for many versions at once
Eg- NG 7-NG14

Problems

  • In subsequent updates of angular from NG2, many changes were introduced. But the major one being the IVY compilation that was introduced in NG9 and made mandatory in NG12.

  • NG12 wont support View Engine compilation as prior versions of Angular did.

  • This change is a major change since the enterprises which adopted Angular and failed to update to subsequent versions that were released frequently, got stuck with version <NG9.

  • When they were mandated to have latest version of the framework available, there were many braking changes since all the dependencies used in the application were also needed to be compiled using IVY (ie Dependencies also needed to be updated to NG>9

  • Strict type and template checking in new versions introduced many errors in the application when tried to upgrade

Conclusion

  • Try to follow the best code practices

  • Update the projects and dependencies with the latest Angular versions available as soon as released

  • Enable Ivy compilation in NG9 while updating and resolve the errors then and there

So be up-to-date with the Angular versions released to get the latest security updates and features released

Top comments (0)

11 Tips That Make You a Better Typescript Programmer

typescript

1 Think in {Set}

Type is an everyday concept to programmers, but it’s surprisingly difficult to define it succinctly. I find it helpful to use Set as a conceptual model instead.

#2 Understand declared type and narrowed type

One extremely powerful typescript feature is automatic type narrowing based on control flow. This means a variable has two types associated with it at any specific point of code location: a declaration type and a narrowed type.

#3 Use discriminated union instead of optional fields

...

Read the whole post now!