single-spa-angular
single-spa-angular copied to clipboard
Support Angular v20
Following the issue ticket that request support for Angular v19, it is still single-spa-angular v10 not released. Link https://github.com/single-spa/single-spa/issues/1306 NPM https://www.npmjs.com/package/single-spa-angular/v/10.0.0-beta.8
Did you started works on Angular 20.0.0-rc.3, the release Angular 20 is question of days (Week of 2025-05-26). The Angular releases are predictable and happen each 6 months.
My current priority is rewriting single-spa-vue. With sponsorship, I would be able to prioritize working on this in the next week or so. My guess is that single-spa-angular@10 (which is in beta) is compatible with Angular 20, but it is not yet complete. Without sponsorship, hopefully by July single-spa-angular@10 can be released
@jolyndenning so will v10 support Angular 19 or 20? Currently we are waiting for the Angular 19 version
I plan to work on this, but have to prioritize work that is funded. If your organization is able to fund the work, the timeline can be accelerated.
Is there anything I can help with?
@jolyndenning How is the progress going? Can't speak about sponsorship but I'd pitch in a bit if there was a way for a quick donation. Do you use any platforms for donations?
I recently released [email protected] and @node-loader/[email protected], now am working on refactoring single-spa-layout to typescript and updating it to use a new lifecycle method for server-side rendering, and then update the isomorphic-microfrontends example to use it.
A donation to fund work on Angular 20 support would help me prioritize working on it once that work is completed. Funding for Angular 20 support can be sent via Github Sponsors, Open Collective, or Patreon
Hey @internettrans how's it going with angular 20? Do you have by any chance a timeline for this? Love your work, btw!
I actually migrated an application from Angular 18 to Angular 20, and the lib still works. You only need to continue to use the browser builder.
@alaindeurveilher thank you for your answer! It made me reconsider the issue that I've encountered.
I got an error application died in status SKIP_BECAUSE_BROKEN: JIT compiler unavailable.
Thought it was due to single-spa-angular not being compatible with Angular 20 but actually it was due to replacing playformBrowserDynamic() with platformBrowser() in my angular app which prevented JIIT compiler to be loaded.
JIIT compiler is needed to run microfrontends via single-spa-angular. (At least in my case)
If the single-spa open collective or my GitHub sponsors receive at least a few hundred dollars, I will prioritize this work. Otherwise, my priorities will remain in work that could result in getting paid, which right now is single-spa prebuilts.
I updated to Angular 20 but got "ɵNotFound: application '@amp/common' died in status SKIP_BECAUSE_BROKEN: NG0201: No provider found for XhrFactory". Does anyone have an idea how to fix it?
I updated to Angular 20 but got "ɵNotFound: application '@amp/common' died in status SKIP_BECAUSE_BROKEN: NG0201: No provider found for
XhrFactory". Does anyone have an idea how to fix it?
Your error might not be related to single-spa, but more due to your update to Angular 20 only, so it could be out of scope of this discussion. I would advise not to continue here on that subject not to pollute this thread, after reading the following clues:
"@amp" seems to be a private module or library of yours, so check if it's properly migrated as well. The xhrFactory error suggests that you probably didn't provide properly the HttpClient in your app: provideHttpClient().
Thank you.
I updated to Angular 20 but got "ɵNotFound: application '@amp/common' died in status SKIP_BECAUSE_BROKEN: NG0201: No provider found for
XhrFactory". Does anyone have an idea how to fix it?Your error might not be related to single-spa, but more due to your update to Angular 20 only, so it could be out of scope of this discussion. I would advise not to continue here on that subject not to pollute this thread, after reading the following clues:
"@amp" seems to be a private module or library of yours, so check if it's properly migrated as well. The xhrFactory error suggests that you probably didn't provide properly the HttpClient in your app:
provideHttpClient().Thank you.
No, that has a direct connection to the single spa because a separate application works properly