Skip to content
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

GeneratorDriverState should replace TrackIncrementalSteps/DisabledOutputs fields with properties #72129

Open
RikkiGibson opened this issue Feb 15, 2024 · 4 comments
Assignees
Milestone

Comments

@RikkiGibson
Copy link
Contributor

RikkiGibson commented Feb 15, 2024

In #71879 (comment) we found that removing the fields TrackIncrementalSteps and DisabledOutputs and replacing with properties was causing a breaking change in Razor EA when an older Razor compiler is in use.

I think that eventually, all Razor compilers which use this EA DLL will fall out of support. Until then we have to keep these around as fields.

This issue is referenced in source

@dotnet-issue-labeler dotnet-issue-labeler bot added Area-Compilers untriaged Issues and PRs which have not yet been triaged by a lead labels Feb 15, 2024
@jaredpar jaredpar added this to the 17.11 milestone Feb 27, 2024
@jaredpar jaredpar added Bug and removed untriaged Issues and PRs which have not yet been triaged by a lead labels Feb 27, 2024
@RikkiGibson
Copy link
Contributor Author

@jaredpar @chsienki do you have a sense of when we will be able to make this change? Did we already adjust the way the EA DLL ships so that it will actually always be in sync with the compiler?

@jaredpar
Copy link
Member

jaredpar commented May 1, 2024

We removed the Razor Compiler EA DLL entirely because it's extremely hard to get right. Requires every singcle host of the compiler (VS, VS Code, Workspaces, any tool that hosts the compiler, etc ...) to also correctly deploy the DLL.

In the future we'd prefer putting experimental APIs in the main DLLs or using reflection to experiment.

@RikkiGibson
Copy link
Contributor Author

Got it, it sounds like nothing is blocking us from making the change proposed in this issue right now.

@jjonescz
Copy link
Member

jjonescz commented May 2, 2024

If we want to keep supporting scenarios where new Roslyn-based tools can analyze older Razor projects (e.g., via MSBuildWorkspace, see #72015), we should keep these APIs around, if only as stubs, no matter if the EA DLL is currently shipped or not.

@jaredpar jaredpar modified the milestones: 17.11, 17.13 Jul 9, 2024
@arunchndr arunchndr modified the milestones: 17.13, 17.13 P2 Nov 13, 2024
@jaredpar jaredpar modified the milestones: 17.13 P2, 17.13 Dec 2, 2024
@RikkiGibson RikkiGibson modified the milestones: 17.13, 17.14 Jan 8, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants