SEZ9 commented on issue #12620: URL: https://github.com/apache/seatunnel/issues/12620#issuecomment-6432252360
Thanks @SEPURI-SAI-KRISHNA, this is exactly what was asked for. The baseline is established: `#12495` merged as `a89de9b70`, and your scan of `seatunnel-transforms-v2/src/main` on `7b686d838` (identical to `cb3351ed1`) shows 0 bare `toLowerCase()`/`toUpperCase()` across 233 files, 33 `Locale.ROOT` sites, and 1 `Locale.getDefault()`. The 11 from `#12618` plus the 13 `sql/` sites from `#12495` account for the original 24, so the earlier snapshot is superseded. The method note is appreciated. Confirming the multiline-aware pattern finds the 33 compliant sites on the same corpus is the right control for a zero result. On `SeaTunnelDataContext.java:45`: agreed, the `Locale.getDefault()` passed into the Calcite `DataContext` contract is not a case conversion of our own and sits outside the contract as scoped. It should be named explicitly at the call site and in the test rather than left implicit. On `StringFunction.java:264` / `:272`: good catch. SQL `LOWER`/`UPPER` returning row values is the one place the "preserve user-data casing" argument could have landed, and `#12495` settled it with `Locale.ROOT`. Stating the carve-out as empty by decision rather than by absence is the stronger framing, so please capture that in the guard test's documentation. Scope confirmed: case conversion only. `DateTimeFormatter.ofPattern` sites remain with `#12975`/`#12976`, the shared formatter path with `#12703`, and `ZetaDateTimeFormat` stays out. Please go ahead and send the focused test. Concretely: 1. Pin the zero baseline for bare `toLowerCase()`/`toUpperCase()` in `seatunnel-transforms-v2/src/main`, using the same multiline-aware matching so a newline inside the parentheses cannot slip through. 2. Name the `SeaTunnelDataContext` `Locale.getDefault()` exception explicitly in the test, and add a short comment at the call site explaining it is a value Calcite asks for. 3. Include the `StringFunction` `LOWER`/`UPPER` decision in the test's rationale so the empty carve-out is documented as deliberate. 4. Use the existing test setup; no new style-check dependency or broad CI regex rule is needed for this. Once that PR is open, link it here and I'll review it. <!-- streview-comment:2066 --> -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
