You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
If manual configurations like ignore_type_checking_imports = true or forbid_circular_dependencies = true is added to tach.toml, any subsequent execution of tach sync will clobber any of those configuration items and remove them.
This can be surprising to someone new to tach, and lead to questions like "what's the right workflow for this tool?"
A better experience would be for the commands that produce configuration changes to isolate their rewrites to only the sections or config keys they are responsible for, and leave others alone.
This is the same for any hand-written comments to the configuration file, so either there needs to be clearer documentation on when to run tach sync, or to preserve/exclude certain keys from being removed when the config is written, or some other solution
The text was updated successfully, but these errors were encountered:
The behavior you're seeing with top-level configuration being removed is actually due to tach sync removing default values. The edits are probably still surprising, but it will at least preserve behavior.
I agree with your point though, we do want to preserve other information like comments and we should avoid edits which aren't related to dependencies during tach sync. It probably means a bit of custom parsing logic from what I can tell.
It's not as simple as our current flow, which is just to re-dump the config into TOML after making the changes, but it would definitely improve the experience.
If manual configurations like
ignore_type_checking_imports = true
orforbid_circular_dependencies = true
is added totach.toml
, any subsequent execution oftach sync
will clobber any of those configuration items and remove them.This can be surprising to someone new to tach, and lead to questions like "what's the right workflow for this tool?"
A better experience would be for the commands that produce configuration changes to isolate their rewrites to only the sections or config keys they are responsible for, and leave others alone.
This is the same for any hand-written comments to the configuration file, so either there needs to be clearer documentation on when to run
tach sync
, or to preserve/exclude certain keys from being removed when the config is written, or some other solutionThe text was updated successfully, but these errors were encountered: