Skip to content

Remove "experimental" from zoneless and add prompt for new apps #30034

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Apr 29, 2025

Conversation

atscott
Copy link
Contributor

@atscott atscott commented Apr 4, 2025

See individual commits.

@alfaproject
Copy link

OOC is there a world where we can have both zones and zoneless in the same project? Asking for the sake of incremental migrations

@atscott
Copy link
Contributor Author

atscott commented Apr 5, 2025

OOC is there a world where we can have both zones and zoneless in the same project? Asking for the sake of incremental migrations

No, not for that definition of “incremental”. But you can still incrementally migrate components to be Zoneless compatible. Everything Zoneless also works with zones. Everything in the angular components repo was migrated incrementally to be Zoneless compatible prior to the experimental release in v18.

@alfaproject
Copy link

Alright, so having only OnPush components, and signals, basically, right? I suppose you'll publish some tips/guides

@atscott
Copy link
Contributor Author

atscott commented Apr 6, 2025

https://angular.dev/guide/experimental/zoneless#requirements-for-zoneless-compatibility

OnPush, no NgZone.on[Stable/MicrotaskEmpty]. Test with the exhaustive checkNoChanges. It’s surprisingly straightforward. There should be minimal toil for apps written with OnPush. For those that aren’t, that step alone is 90% of the work and 99% of the difficulty.

@alfaproject
Copy link

Yup, awesome, thanks!

@atscott atscott marked this pull request as ready for review April 25, 2025 17:31
@atscott atscott requested a review from clydin April 25, 2025 17:36
@atscott atscott added this to the v20 Candidates milestone Apr 25, 2025
@atscott atscott added target: major This PR is targeted for the next major release action: merge The PR is ready for merge by the caretaker labels Apr 28, 2025
@atscott atscott force-pushed the zoneless branch 2 times, most recently from f677e62 to 08ba711 Compare April 28, 2025 18:21
@jkrems
Copy link
Contributor

jkrems commented Apr 29, 2025

Sorry for that, I should've landed this before the other lockfile update. Can you back out the pnpm-lock.yaml change and/or regenerate?

atscott added 2 commits April 29, 2025 11:19
This commit removes experimental from the option and provider names
This commit adds a prompt to ask if the user wants to generate the app
as zoneless.
@atscott
Copy link
Contributor Author

atscott commented Apr 29, 2025

@jkrems Done

@jkrems jkrems merged commit 5876577 into angular:main Apr 29, 2025
30 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
action: merge The PR is ready for merge by the caretaker area: @schematics/angular detected: feature PR contains a feature commit target: major This PR is targeted for the next major release
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants