Keep every --json ASCII, quote pasted names, and treat a closed console as the first Ctrl+C - #46
Merged
Merged
Conversation
…closed console as the first Ctrl+C Stability report package H, the command line in front of a console, a pipe and a shell. - Every JSON document the command line prints goes through one place (AsciiJson) and carries nothing above U+007E. A console in code page 852 used to turn letters outside ASCII into bytes no UTF-8 reader accepts on the way into a file. A guard holds the single place. - A control character or a direction override inside a name, a path, a description or a value from a snapshot file is shown as <U+XXXX> in text output (Printable, through Texts.Of and the listing cells). - The command lines handed out for pasting quote a service name for PowerShell: double quotes where cmd agrees, single quotes for a name it would expand. A name that begins with a dash comes after "--", which the command line now accepts as the end of the switches. - "bws snapshot --help" shows the help, and the verb after "snapshot" is the first word that is not a switch. - Asking who depends on each entry has its own --timing line instead of being counted as filtering. - "show" with an unknown name and a refused plan still report what the reading has to admit, including running without administrator rights. - Closing the console window during a plan interrupts it like the first Ctrl+C and puts back what the run took down, in the time Windows gives. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Measured on the owner's machine: a description holding typographic quote marks was written by the console as a plain double quote, which ended the JSON string early, so 'bws list --json | ConvertFrom-Json' failed outright on code page 852. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configuration
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
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.
Stability report package H: the command line in front of a console, a pipe and a shell.
What changes for a person
--jsonis plain ASCII. A letter outside ASCII is a JSON escape, decoded back by every reader. On a console in code page 852,bws list --json > file.jsonused to hold bytes no UTF-8 reader accepts, andbws list --json | ConvertFrom-Jsonfailed outright on a real machine: a description with typographic quote marks was written by the console as a plain", ending the JSON string early. Values are unchanged once decoded (field-by-field comparison against the previous build: 801 entries, identical). The snapshot file is unchanged.<U+XXXX>- C0, DEL, C1 and the direction marks, overrides and isolates - in the listing,show,snapshot diffand plan text, so a snapshot from another machine cannot drive the terminal.MSSQL$SQLEXPRESS. A name beginning with a dash comes after--.--ends the switches, and the verb aftersnapshotis the first word that is not a switch, sobws snapshot --helpshows the help.--timingreports asking who depends on each entry on its own line instead of under "filtered in".showwith an unknown name and a refused plan still report what the reading admits, including running without administrator rights.Contract
No field, switch or exit code changes meaning. The JSON bytes change (escapes), the decoded values do not.
--is a new accepted token.[contract]no.Checked
EquivalentCommandTests22, architecture 183, window (classes rendering a command) 31, integration (five classes, on a real machine) 77, site 26.Not checked
Windows Terminal closing a tab rather than a window, a dropped SSH or WinRM session, and Windows PowerShell 5.1 argument passing. A put-back longer than about five seconds after a close is cut short by Windows.
🤖 Generated with Claude Code