Con la llegada de Angular 1.5 se propuso un puente entre las applicaciones 1.x y 2.x, esta propuesta presentaba el concepto de migrar las aplicaciones existentes hacia 1.5 transformando todo a componentes. Es posible en una aplicación tener partes 1.x y 2.x, siendo una ventaja tener nuestra aplicacion con una arquitectura de componentes, asi al momento de pasar a la version 2.x será mas sensillo y natural.

El primer problema - Rutas

La arquitectura de componentes representa muchisimas ventajas para el mantenimiento de cualquier aplicacion. Tener un componente donde encapsular comportamiento, templates, css, etc. provee facilidad para cambiar cosas, detectar/arreglar problemas, etc.

Pero se olvidaron de algo. No hay un router que funcione con angular 1.5 y componentes.

El equipo de AngularJS no puse el trabajo necesario para tener una app 1.5 con componentes y dejar de usar la vieja arquitectura.

Entonces vale la pena cambiar a 1.5?

Si no podemos usar la ventaja de los nuevos componentes en la definicion de rutas, vale la pena migrar nuestra applicacion de 1.x a 1.5 y despues invertir tiempo en convertirla a 2.0?

Se perdió un eslavon importante. Seria una perdida de tiempo enumerar las ventajas que representa migrar a 2.0. Pero se dejo en el camino a quienes no pueden permitirse reescribir una aplicacion desde cero solo por un cambio tan grande como el que se plantea.

Si vemos en la documentacion oficial podemos ver que el router que estaban armando esta deprecado.

La velocidad de los cambios

No dejo de pensar que este error ha sido el presio a pagar por tantos cambios en poco timepo y la competencia por mantenerse en los primeros puestos.

La pregunta que me queda dando vueltas es: cual es la mejor opción para estos casos, quedarse en 1.x? pasar a 1.5 y reescribir en 2.0?

Es natural convertir una aplicacion a componentes, la desventaja es no poder organizarla a nivel de las rutas y request, solo convertir una app en componentes representa la mitad del trabajo que Angular 2.0 necesita.