From 086f64952b67d627257160b4985b0ac16dd51936 Mon Sep 17 00:00:00 2001 From: Austin Bergstrom Date: Wed, 15 Jul 2026 12:19:51 -0400 Subject: [PATCH 1/2] Update CHANGELOG.md for v0.2.4 Co-Authored-By: Claude Sonnet 5 --- CHANGELOG.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4a92233..e6db5da 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## v0.2.4 + +### Bug Fixes + +- **Don't treat backslash as a string escape in SQL Server and Oracle** ([#103](https://github.com/DataDog/go-sqllexer/pull/103)) + SQL Server (T-SQL) and Oracle follow ANSI-SQL string semantics, where backslash is an ordinary character and a quote inside a literal is escaped by doubling it (`''`). The lexer previously treated `\` as an escape character for all dialects, so a literal like `ESCAPE '\'` had its closing quote misread as escaped, causing the scan to swallow the rest of the batch up to the next quote and truncate the obfuscated query. Backslash-escaping is now disabled for SQL Server and Oracle; MySQL and Snowflake, which genuinely use C-style backslash escaping, are unchanged. + ## v0.2.3 ### Bug Fixes From 825e688f0a06c3a183356cf73553a7b301d460d6 Mon Sep 17 00:00:00 2001 From: Austin Bergstrom Date: Wed, 15 Jul 2026 12:22:35 -0400 Subject: [PATCH 2/2] Update CHANGELOG.md --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e6db5da..dfa8ff0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,7 @@ ### Bug Fixes - **Don't treat backslash as a string escape in SQL Server and Oracle** ([#103](https://github.com/DataDog/go-sqllexer/pull/103)) - SQL Server (T-SQL) and Oracle follow ANSI-SQL string semantics, where backslash is an ordinary character and a quote inside a literal is escaped by doubling it (`''`). The lexer previously treated `\` as an escape character for all dialects, so a literal like `ESCAPE '\'` had its closing quote misread as escaped, causing the scan to swallow the rest of the batch up to the next quote and truncate the obfuscated query. Backslash-escaping is now disabled for SQL Server and Oracle; MySQL and Snowflake, which genuinely use C-style backslash escaping, are unchanged. + SQL Server (T-SQL) and Oracle follow ANSI-SQL string semantics, where backslash is an ordinary character and a quote inside a literal is escaped by doubling it (`''`). The lexer previously treated `\` as an escape character for all dialects, so a literal like `ESCAPE '\'` had its closing quote misread as escaped, causing the scan to swallow the rest of the batch up to the next quote and truncate the obfuscated query. ## v0.2.3