fix: preserve trailing blank lines when adding SSH config fields#66
Merged
fix: preserve trailing blank lines when adding SSH config fields#66
Conversation
1 task
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 join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
This PR fixes an edge case where newly added fields could end up outside of their intended
Hostblock when the block was followed by blank lines or comments.Problem
Previously, if two host entries were separated by a blank line, adding a new key-value entry to the first host would place it after the blank line, shifting the formatting and making it appear detached from the correct host.
Example:
Fix
The insertion logic now ensures that:
New keys are always inserted inside the host block, directly after the last existing key-value node.
Any trailing blank lines or comments remain outside the host block, preserving the original formatting between host definitions.
Hosts with no existing key-value pairs will still correctly receive the new field at the top of their block.
Correct behavior after this fix: