Angular is absolutely not a sane framework. I'd argue it used to be, but you can't build trust in anything after being rugpulled with 4+ major breaking refactors over the years. If you get it that wrong that many times, I start to wonder what the actual purpose of the framework is.

Angular isn't doing bad on the backwards compatibility front. Case in point: ParamMap was introduced at some point as a successor to Params, but the people revolted, so both are available without favouring one or the other:

https://github.com/angular/angular/pull/43529#issuecomment-9...

It's kind of funny in hindsight, but at least we didn't have to modify every project just to update such a minor thing which was working already anyway.

In this regard the thing that absolutely sucks is the migration tool. Your best course of action is to update the versions manually in package.json, read the documentation on breaking changes and act accordingly.

In my view Angular was always insane, but it's becoming saner with each subsequent version. We now have typed forms (that took a while), standalone components and, most importantly, signals, which do most of the stuff RxJS is doing, but without the junior-killing hidden state and memory leaks.

In consulting we don't do upgrades, we come, we deliver, and we leave, with maintenance contracts for existing deployed versions.

For an upgrade someone has to pay for it anyway, so whatever pains there are, they are reflected on project budget anyway.

More devs should do the math of work hours to money.

This really highlights one of the main differences between "product" and "project" centric work. With a project, it's the client's problem ($$$.) Usually they'll balk at the dollars and effort required and accept the risks. Even with an outdated, obsolete framework, the actual risks are often minimal. "It's still working, right?"

Really just one major breaking refactor in 13 years, and that is partly because not only have we learned a ton, but browsers themselves have changed dramatically. I'm not going to say it was perfectly handled, but they also didn't have nearly as much support from Google back then.

I kinda get what you are talking about (did those refactors too...), but which of major changes had such a high impact in your case?

> Angular is absolutely not a sane framework

I have not worked with older versions, but with V20 & signals, it has been pretty good.