hiSandog opened a new pull request, #11894:
URL: https://github.com/apache/seatunnel/pull/11894

   ### Purpose of this pull request
   
   `JobStatus.fromString` currently uppercases status values with the JVM 
default locale. Under a Turkish default locale, `finished` becomes `FİNİSHED`, 
so `JobStatus.valueOf` throws an `IllegalArgumentException`.
   
   This patch uses `Locale.ROOT` for locale-independent enum parsing and adds a 
regression test that exercises the Turkish-locale case.
   
   ### Does this PR introduce _any_ user-facing change?
   
   Yes. Lowercase job status values are now parsed consistently regardless of 
the JVM default locale. Behavior in locales unaffected by special case mappings 
remains unchanged.
   
   ### How was this patch tested?
   
   A regression test was added in `JobStatusTest` and was verified to fail 
before the fix with `No enum constant ... JobStatus.FİNİSHED`.
   
   The following checks pass:
   
   ```shell
   ./mvnw -q -pl seatunnel-engine/seatunnel-engine-common -am 
-Dtest=JobStatusTest -Dsurefire.failIfNoSpecifiedTests=false 
-Dskip.spotless=true test
   ./mvnw -q spotless:apply
   CYPRESS_INSTALL_BINARY=0 ./mvnw -q -DskipTests verify
   ```
   
   `CYPRESS_INSTALL_BINARY=0` only skips downloading the Cypress browser 
binary, which is not used by the `-DskipTests` verification.
   
   ### Check list
   
   * [x] No new Jar binary package is added.
   * [x] Documentation changes are not necessary for this internal parsing 
correction.
   * [x] This change is backward compatible and does not require an 
`incompatible-changes.md` entry.
   * [x] This is not connector code.
   


-- 
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]

Reply via email to