Settings file being reformatted when settings are changed by the program #3389

Closed
opened 2026-01-30 23:20:09 +00:00 by claunia · 5 comments
Owner

Originally created by @giggio on GitHub (Aug 12, 2019).

Originally assigned to: @zadjii-msft on GitHub.

Environment

Windows build number: Microsoft Windows NT 10.0.18362.0                                                                                                                                                                                     

Windows Terminal version: latest from the master branch

Any other software?
N/A

Steps to reproduce

With the terminal closed, do anything that trigger a json settings file rewrite, for example, add any setting to the settings json file that is not on the schema (or is invalid), for example:

{
    "Foo": 1,
    "globals" :
    {

Then, open the terminal

Expected behavior

Terminal warns me somehow, or comments out the invalid setting. But does not, ever, reformat the file.

Actual behavior

The settings file is rewritten and reformatted, and, worse of all, an annoying trailing space is added to the end of every json key. See image bellow:

CodeSettingsFile

Originally created by @giggio on GitHub (Aug 12, 2019). Originally assigned to: @zadjii-msft on GitHub. # Environment ```none Windows build number: Microsoft Windows NT 10.0.18362.0 Windows Terminal version: latest from the master branch Any other software? N/A ``` # Steps to reproduce With the terminal closed, do anything that trigger a json settings file rewrite, for example, add any setting to the settings json file that is not on the schema (or is invalid), for example: ````json { "Foo": 1, "globals" : { ```` Then, open the terminal # Expected behavior Terminal warns me somehow, or comments out the invalid setting. But does not, ever, reformat the file. # Actual behavior The settings file is rewritten and reformatted, and, worse of all, an annoying trailing space is added to the end of every json key. See image bellow: ![CodeSettingsFile](https://user-images.githubusercontent.com/334958/62889785-6dc4f580-bd18-11e9-8b9a-dceb89684bfe.gif)
claunia added the Resolution-Fix-CommittedArea-SettingsIssue-BugProduct-Terminal labels 2026-01-30 23:20:09 +00:00
Author
Owner

@DHowett-MSFT commented on GitHub (Aug 12, 2019):

Getting rid of this behavior is a critical (and already called out!) part of the work specified in #1258. 😄

@DHowett-MSFT commented on GitHub (Aug 12, 2019): Getting rid of this behavior is a critical (and already called out!) part of the work specified in #1258. :smile:
Author
Owner

@egmontkob commented on GitHub (Aug 12, 2019):

The Actual vs. Expected behavior sections are swapped, aren't they?

@egmontkob commented on GitHub (Aug 12, 2019): The Actual vs. Expected behavior sections are swapped, aren't they?
Author
Owner

@giggio commented on GitHub (Aug 13, 2019):

Yes, fixed, thanks.

@giggio commented on GitHub (Aug 13, 2019): Yes, fixed, thanks.
Author
Owner

@DHowett-MSFT commented on GitHub (Aug 23, 2019):

@zadjii-msft got rid of settings reserialization recently. 😄

@DHowett-MSFT commented on GitHub (Aug 23, 2019): @zadjii-msft got rid of settings reserialization recently. :smile:
Author
Owner

@giggio commented on GitHub (Aug 27, 2019):

Awesome, I just confirmed it with my latest private build. Tks!

@giggio commented on GitHub (Aug 27, 2019): Awesome, I just confirmed it with my latest private build. Tks!
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#3389