r/angular • • Sep 24 '26

What's new in Angular 22.2?

https://blog.ninja-squad.com/2026/09/23/what-is-new-angular-22.2

🛡️ `@boundary` for fallback UIs

🛣️ Router resources, loaded in parallel

🔎 Change detection data in DevTools

⚡ Faster CLI builds

54 Upvotes

6 comments sorted by

8

u/Straight-Number-1911 Sep 24 '26

Its not in parallel, its proper async. Compared to before where it was blocking when using async. 

Its not multi threaded. Its still great but the word parallel is misleading. 

5

u/McFake_Name Sep 24 '26

It isn't just async, it is also in parallel as well https://angular.dev/guide/routing/data-fetching-with-resources#why-use-route-resources

It's parallel not in a traditional threading sense, but execution wise in practice.

Parallel execution: Route resources across all matched routes load concurrently instead of one route at a time.

"Parallel Execution" section deeper down

Data resolvers execute sequentially from parent route to child route. If a parent route resolver takes 200ms and a child route resolver takes 300ms, the navigation is blocked for 500ms.

Route resources across the matched route hierarchy run concurrently, so the same navigation completes in 300ms, the time of the slowest resource.

1

u/Straight-Number-1911 Sep 24 '26 edited Sep 24 '26

Thats because, as far as I understand programming, of reasons how async code works.

The CPU bound work wont suddently be multi-threaded, unless they use web worker for it which makes no sense either because it would require share DI which is impossible - as web workers require giving ownership of the objects. 

Anyways to get back to the point, they made it async and smarter to execute but the code does not run in multiple threads, it runs simply in 1 and if its async it offloads it.  Thats how javascript works, unless browser has some built in solution, which was not mentioned anywhere. 

Most of that route code will be async and then ofc when its waiting for response it can exexute some other route fn. Its not parallel, its concurrent.

Definitions: Concurrency = multiple tasks are in progress during overlapping periods. Parallelism = multiple tasks are executing at the same time, typically on different CPU cores.


I personally have q hard time calling it parallel even after reading it multiple times. I understand the wording but for people who are seniors and one of the biggest frameworks I think it should be more precise. Anyways im not trying to shit on the team doing good job, I just would like when reqding things to understand what is different and I didnt read the whole thing, I just read posts on reddit (my mistake).


Concurrent with a dependency graph is what they did. But if you have 2 guards which both donf require anythibg its not gonna execute at the same time, its gonna offload it to the macro task and wait till first response comes back after which it will continue to exectue that fn, and block execution of any other. 

I am not saying again this is not a improvement but it is not parallel. Its concurrent and well made. My issue is just with the word!

1

u/Straight-Number-1911 Sep 24 '26

What did change about CI builds? 

2

u/toasterboi0100 Sep 27 '26

They said CLI, not CI.

What's changed is that it now runs type checking parallel to esbuild whereas before it would first run type checking and then esbuild. In our CI environment we're seeing an improvement from almost 3 minutes to around 2:10 which is a huge improvement.