-
Notifications
You must be signed in to change notification settings - Fork 86
feat: implement -j raw-errors flag for ODBC sqlcmd compatibility #759
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
Merged
dlevy-msft-sql
merged 12 commits into
microsoft:main
from
dlevy-msft-sql:feat/raw-errors-flag
May 27, 2026
Merged
Changes from all commits
Commits
Show all changes
12 commits
Select commit
Hold shift + click to select a range
7d15adf
feat: implement -j raw-errors flag for ODBC sqlcmd compatibility
dlevy-msft-sql f6ac972
refactor: skip nil FormatterOption to harden variadic API
dlevy-msft-sql 7ec4ee6
docs: clarify -j wording to name the go-mssqldb prefix explicitly
dlevy-msft-sql af71e7c
refactor: trim -j docs and split test for DAMP readability
dlevy-msft-sql 92b373f
docs: drop driver name from -j help text
dlevy-msft-sql 1b703f6
refactor: unexport formatterOption for closed-set options
dlevy-msft-sql d488f5f
refactor: re-export FormatterOption for public SDK consumers
dlevy-msft-sql 3bcbf4b
test: tighten default-mode assertion to forbid any mssql: occurrence
dlevy-msft-sql 23595cd
docs: decouple WithRawErrors doc from CLI flag name
dlevy-msft-sql 3b47c97
docs: document FormatterOption and opts param; test: add --raw-errors…
dlevy-msft-sql ac96fce
fix: apply FormatterOption values on the ascii result-format path
dlevy-msft-sql 6e965e7
docs: trim public formatter godoc to drop restated behavior
dlevy-msft-sql File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
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
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
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Going to push back on this one, similar to the test-coupling thread above.
The whole point of CLI flag help is to let a user predict the concrete diff they'll see in their output. With
-jset, every error line will literally containmssql:where it wouldn't otherwise; that's user-observable text, not implementation. Replacing the concrete string with abstract phrasing like "preserve raw driver error text" makes the help less actionable — a user reading it can't tell what-jwill actually change in their terminal.format.gohardcodesstrings.TrimPrefix(msg, "mssql: ")against that exact literal. If go-mssqldb ever changes its prefix format, the gate, the help text, and the tests all need to update together — that coupling is intentional and consistent with how the rest of the flag help in this file describes concrete behavior (see-b,-h, etc.).