Angular Three v3
Angular Three v3 is here with Angular 19 support! 🎉
What’s in Angular Three v3
- Angular 19 support 🚀
- Stable Testing API 🧪
- Routed scenes support is back 🧭
- Deprecation removals 🗑️
Angular 19 support
Angular Three v3 drops support for Angular 18 and below. This is because Angular 19 comes with a huge change
to the Effect API (Learn more here). While nothing really changes much to consumers,
the way Angular Three utilizes the Effect API changes. From the library perspective, this update also allows for Angular Three components to go standalone
by default.
That said, there are several benefits of Angular 19 to Angular Three, and its consumers:
- Lighter effects with less microtasks; One of the changes to the new Effect API is that a certain type of effects is scheduled in a smarter way instead of microtask-ing everything.
- Faster execution in some areas; Another change to the new Effect API is that setting signals inside of effects is now allowed. Hence,
untracked
trick orallowSignalWrites
is no longer needed. - Decreased library size; With default
standalone: true
and static analysis onimports
array, Angular Three v3 is able to shed some of its bundle size.
Stable Testing API
Angular Three Testing API (angular-three/testing
) has been graduated from Developer Preview. Nothing changes to the API itself. The Testing API
has been used to test a lot of Angular Three usages since its experimental phase and we are happy to announce that it is now stable.
Routed scenes support
Due to a fix in Angular Router, Angular Three has been soft deprecating the Routed Scene use-case. However, the support is back in v3 with a solution.
Angular Three implements a custom RouterOutlet
, NgtRouterOutlet
, for routed scenes. All it does is to make sure the outlet can provide
the NgtRendererFactory
when it activates the routed components. This might seem like a workaround to some folks but we believe that it should work correctly
for most use-cases. If you run into any problem at all, please file an issue on Github.
Check out the Routed Scene documentation for more information.
Deprecation removals
NgtObjectEventsHostDirective
Short-hand host directive for NgtObjectEvents
has been removed.
NgtsPivotControls
from angular-three-soba/controls
The export NgtsPivotControls
has been removed from angular-three-soba/controls
. Update your import to angular-three-soba/gizmos
erp
input in NgtrPhysics
erp
input in NgtrPhysics
has been removed as it’s been a no-op for a while.
Conclusion
This is a small major release to make sure Angular Three is not holding you back from Angular 19. Thank you. Happy coding!