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

Adding AppContext Switch for disabling special character ligatures #8990

Merged
merged 1 commit into from May 23, 2024

Conversation

Kuldeep-MS
Copy link
Contributor

@Kuldeep-MS Kuldeep-MS commented Apr 4, 2024

Contributes to #109

Description

Special character ligatures will be included in .NET 9 preview 4. This PR is introducing an AppContext switch to disable the feature.

Customer Impact

Without this changes customer won't be able to disable the special character ligature.

Regression

NO

Testing

DRT + Microsuites + Feature Tests

Risk

Low. After upgrading to .NET 9 preview 4, WPF applications which have editing features that use special character ligatures may notice some unforeseen issues. For such cases, an AppContext switch (Switch.System.Windows.DisableSpecialCharacterLigature) can be set to true which will disable the feature.

@Kuldeep-MS Kuldeep-MS requested a review from a team as a code owner April 4, 2024 15:25
@dotnet-policy-service dotnet-policy-service bot added the PR metadata: Label to tag PRs, to facilitate with triage label Apr 4, 2024
@miloush
Copy link
Contributor

miloush commented May 21, 2024

I will just note as I already stated elsewhere that it is not sustainable long-term to gate every change to WPF by an AppContext switch. Other avenues need to be considered, or a plan for removing them in the future should be in place (e.g. every other LTS release).

The risk associated with the changes should play a role. Compared to .NET Framework, there is an abundance of releases and if a change breaks someone, they can easily stay on a previous release and raise the issue, and switch can be added as a part of maintenance update if justified.

For this one, like in the case of hardware acceleration for RDP, the cost of the introduced complexity, maintaining and documenting the switch is not justified by the low risk of the change in my opinion.

@Kuldeep-MS
Copy link
Contributor Author

I will just note as I already stated elsewhere that it is not sustainable long-term to gate every change to WPF by an AppContext switch. Other avenues need to be considered, or a plan for removing them in the future should be in place (e.g. every other LTS release).

The risk associated with the changes should play a role. Compared to .NET Framework, there is an abundance of releases and if a change breaks someone, they can easily stay on a previous release and raise the issue, and switch can be added as a part of maintenance update if justified.

For this one, like in the case of hardware acceleration for RDP, the cost of the introduced complexity, maintaining and documenting the switch is not justified by the low risk of the change in my opinion.

I completely understand and appreciate your suggestion. However, for this particular change, which is a low level change, we have planned initially, we would like to incorporate an AppContext switch to mitigate any unforeseen issues. As we have faced similar situations in the past, we want to take extra precautions by implementing this switch.

We will discuss more on this internally and if there is a need to revisit to remove switches, we will definitely do it.

@Kuldeep-MS Kuldeep-MS merged commit ee0492e into dotnet:main May 23, 2024
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
PR metadata: Label to tag PRs, to facilitate with triage
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants