Do not forget, @angular got you covered by running ng update, having a complete set of migration scripts run to update your project ot match the latest standards!
Ran on RealWorld Angular open-source project: https://t.co/wK8DBCMgDH
#angular#github
🚀 @angular v22 is out!
🎯 Signal Forms & resources are stable
⚡ OnPush by default
Plus @Service(), debounced(), WebMCP, and a lot more!
👉 https://t.co/D8YAsdzndH
I really believed a whole generation of developers, who only know open source from npm and pypi, miss how open source actually used to work.
When Debian or a Linux distribution ships a dependency they take responsibility of it. If there is a security issue and it’s not fixed by the developer upstream, they fix it for their users.
Debian and others basically vendor every thing they distribute. They honor the license and they maintain patches. Most of the stuff that you get from your Linux distribution is basically a (small) fork.
The same is true for Apple, Microsoft and others. The open source software they ship, they carry that responsibility.
That doesn’t mean that security fixes are not upstreamed, but Apple or Debian or anyone else won’t jump in Twitter to shame a developer into compliance with their ways. They are not dependent on the health of a packaging infrastructure. They own their software including all the things it depends on.
I want that thinking back. Because it fundamentally makes people feel more responsibility and it shares the burden of issues. It also does not put so much focus and attention on the one overworked developer who just happened to have too much of the world depend on their library. Remember: they carry a responsibility they never signed up to and they never got compensated for.
🔥 OnPush is now the DEFAULT change detection strategy
Components with no changeDetection set are now OnPush automatically.
Want the old behavior? Set ChangeDetectionStrategy.Eager (there's a migration for it).
✍️ Signal Forms graduated to the public API!
No longer experimental 🎉
You also get:
- reloadValidation()
- debounce on validateAsync/validateHttp
- FieldState.getError()
- template + reactive FVC support
🌐 FetchBackend is now the default for HttpClient
withFetch is deprecated → just remove it.
⚠️ Need upload progress? Use provideHttpClient(withXhr).
Also: reportProgress → split into reportUploadProgress & reportDownloadProgress
💧 Incremental hydration is now the default behavior. No extra config needed.
🤖 Angular is going all-in on AI/MCP tooling:
- provideWebMcpTools
- declareWebMcpTool (experimental)
- AI runtime debugging tools
- an in-page Angular DI graph AI tool
✨ New core goodies:
- @Service decorator (stable)
- injectAsync() helper
- debouncing signals
- resource caching for SSR
- bootstrap apps under shadow roots
- TestBed.getLastFixture()
🧹 Big cleanup (breaking):
- ComponentFactory / ComponentFactoryResolver → gone
- createNgModuleRef → createNgModule
- checkNoChanges → removed
- provideRoutes → provideRouter
- Hammer.js integration → removed
⚙️ Version requirements:
- Node.js 26 supported
- TypeScript 5.9 dropped
- Minimum TS is now 6.0
🧭 Router changes:
- paramsInheritanceStrategy now defaults to 'always'
currentSnapshot in CanMatchFn is now required
- new browserUrl input on router links
That's Angular v22 in a nutshell 🎯
Super excited to partner with LangChain on rich frontends for managed Deep Agents!
You can now bring deepagents to any frontend (web, mobile, slack, teams, …) with interactions that go beyond text to fully custom generative UI with your own components and design system.
We believe soon all UI will be AI — every interaction between humans and technology will have an agent in the middle. Managed deepagents makes this vision so much easier to build and closer to reality.
Angular v22 is right around the corner!
The Release Candidate (RC) is live, and we need your help to cross the finish line. Take the new features for a spin, test them on your projects, and share any last-minute feedback with us!
Try the RC today: https://t.co/0QqzRpPiLa
Folks: when you write skills, ask your agent to be token efficient, relax grammer. I see too many skills that write books in the skill description, and all that crap is loaded into every context.
I wrote a skill that finds the worst offenders. https://t.co/kfaaJpxMXE
NG Belgrade Conf 2026 was unforgettable! ❤️
Huge thanks to everyone who made it special: attendees, speakers, sponsors, volunteers, and our amazing team. 🎬 Relive the best moments in our official aftermovie: https://t.co/ibNTYWVoy3
#NGBelgradeConf#AngularBelgrade#Angular
introducing pipi, the shitty robot.
brain lives on my laptop, sensors/UI live on the mounted phone. time to completion: 24h (minus sleep, knight festival, lunch, dinner, and play)
built with https://t.co/oUoqqL9hAp
Read this great in-depth postmortem from the @tan_stack team, then tell your agent to read the post, and check your repo for the attack vectors.
https://t.co/RgZUGWMNOQ
After the security mayhem of the past month we built a CI/CD venerability scanner. We applied it to many popular open-source repos and *all* but one (@nodejs) had major issues.
We submitted PR fixes and open-sourced the scanner. Is that the best approach? I hope but not obvious. What’s clear is security through obscurity is a dead-end in the agentic age.
@github We built a tool that finds CI vulnerabilities before attackers do.
It does deterministic pattern matching against 32 security dimensions and covers everything your workflows need auditing for.
Then makes fixes via Claude when you want them. https://t.co/Yhk0clxMVF
Given the recent benchmark results for local LLMs handling Google’s #A2UI, one could guess that models from the Qwen and Gemma families will perform similarly for real-world application development.
We will see... 👀
https://t.co/vUQQJev52u
I was thinking about this API and realized that it can be used not only for two-way binding, but also for other interesting things:
* update from source only once, or other conditions (e. g: "while not in edit mode");
* update with debounce;
* update source only it has some value