refactor(compiler): rework defer block analysis#54700
Closed
crisbeto wants to merge 0 commit intoangular:mainfrom
Closed
refactor(compiler): rework defer block analysis#54700crisbeto wants to merge 0 commit intoangular:mainfrom
crisbeto wants to merge 0 commit intoangular:mainfrom
Conversation
crisbeto
commented
Mar 5, 2024
AndrewKushnir
approved these changes
Mar 5, 2024
Contributor
AndrewKushnir
left a comment
There was a problem hiding this comment.
@crisbeto great refactoring, thank you 👍 Just left a few minor comments.
packages/compiler-cli/src/ngtsc/annotations/component/src/handler.ts
Outdated
Show resolved
Hide resolved
packages/compiler/src/template/pipeline/src/phases/resolve_defer_deps_fns.ts
Outdated
Show resolved
Hide resolved
b5a9e6e to
cca1730
Compare
Member
Author
|
Feedback has been addressed. Will mark this for merge once the RC goes out. |
Contributor
|
This PR was merged into the repository by commit eee620a. |
atscott
added a commit
to atscott/angular
that referenced
this pull request
Mar 8, 2024
This reverts commit eee620a.
atscott
added a commit
that referenced
this pull request
Mar 8, 2024
cca1730 to
fb189c6
Compare
|
This issue has been automatically locked due to inactivity. Read more about our automatic conversation locking policy. This action has been performed automatically by a bot. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Currently we have the
deferrableDeclToImportDecl,deferBlocks,deferrableTypesanddeferBlockDepsEmitModefields on theR3ComponentMetadatawhich is incorrect, because the interface is used both for JIT and AOT mode even though the information for those fields is AOT-specific. It will be problematic for partial compilation since the runtime will have a reference to the dependency loading function, but will not be able to provide any of the other information.These changes make the following refactors:
R3ComponentMetadatato include only references to dependency functions which can be provided both in JIT and AOT.ComponentResolutionData.ComponentDecoratorHandler.TemplateDefinitionBuilder. This allows us to clean up some TDB-specific code and shouldn't have an effect on users since the TDB isn't used anymore.