Когда был создан Angular v1, сообщество разработчиков решило различные проблемы, возникающие при использовании фреймворка, и выпустило их в виде пакетов npm.
С серьезными изменениями в том, как Angular работал в версиях от v1 до v2, а затем и v4, тем, кто поддерживает пакеты npm, придется переписать свои решения, чтобы не отставать.
Есть хороший аргумент в пользу того, что Angular v1 является наиболее успешной версией Angular и имеет лучший набор поддерживаемых пакетов npm.
Обновление приложения, изначально созданного в Angular версии 1, до версии 2 будет сопровождаться критическими изменениями и потребует значительного объема работы для исправления.
Серьезные критические изменения подразумевают, что то, что раньше работало определенным образом, больше не работает. Это влияет не только на то, как Angular используется в приложении, но и на другие библиотеки, работа которых зависит от модифицированных API.
Ни один пакет npm не может поддерживать обратную совместимость со всеми другими пакетами npm, с которыми он может взаимодействовать.
Да, представьте, что вы работаете с Angular v6 и вскоре после того, как Angular вносит серьезные изменения в основные API в новой версии 10.
Это головная боль, которую моя команда предпочла бы избежать.