The GitHub Actions job "Required Checks" on texera.git/backport/6245-log-betterproto-stderr-as-info-to-avoid-v1.2 has succeeded. Run started by GitHub user Yicong-Huang (triggered by Yicong-Huang).
Head commit for run: 781b1221f770f7e47278349d626e0aa28f959347 / Eugene Gu <[email protected]> fix(amber): log betterproto stderr as info to avoid false IDE build failures (#6245) ### What changes were proposed in this PR? Log the `genPythonProto` subprocess's stderr at `info` instead of `error` (`amber/build.sbt`). `genPythonProto` runs `bin/python-proto-gen.sh`, which invokes betterproto as a `protoc` plugin. A `protoc` plugin's stdout is reserved for the binary `CodeGeneratorResponse` sent back to `protoc`, so betterproto writes its normal progress (`Writing __init__.py`, `Writing org/…/__init__.py`, …) to stderr. The task routed that stderr to sbt's `error` level, so a fully successful generation printed a wall of `[error]` lines and still ended in `[success]`. A command-line `sbt compile` is unaffected, but IDEs that delegate the build to sbt (e.g. IntelliJ IDEA with "Build and run using: sbt") parse those `[error]` lines as a build failure. This fails the "Build" before-launch step of the amber-based run configurations — `TexeraWebApplication`, `ComputingUnitMaster`, `ComputingUnitWorker` — so those services never launch, while non-amber services (which do not depend on `genPythonProto`) start normally. **The change.** `ProcessLogger` takes two callbacks, one for the subprocess's stdout and one for its stderr; only the stderr callback is changed, from `log.error` to `log.info`, in the `genPythonProto` task in `amber/build.sbt`: ```diff - val procLogger = scala.sys.process.ProcessLogger(line => log.info(line), line => log.error(line)) + val procLogger = scala.sys.process.ProcessLogger(line => log.info(line), line => log.info(line)) ``` Nothing else changes. Real failures are still detected via the script's exit code on the next line (`if (exit != 0) sys.error(...)`), which is untouched, so this only stops benign stderr from being labeled as an error. ### Any related issues, documentation, or discussions? Follow-up to #5358 Closes: https://github.com/apache/texera/issues/6243 ### How was this PR tested? - Ran `sbt "WorkflowExecutionService/genPythonProto"` with `protoc` and `protoc-gen-python_betterproto` on `PATH`: the betterproto progress lines now appear as `[info] Writing …` (previously `[error] Writing …`), and the task still ends in `[success]`. - Confirmed failure detection is unchanged: the exit-code check on the following line still fails the build when the script exits non-zero, so real failures are still surfaced. - Confirmed the diff is limited to a single line in `amber/build.sbt`. - `sbt scalafmtCheckAll` passed. - `sbt "scalafixAll --check"` passed. - `sbt test` (backend): all tests unrelated to external infrastructure passed. ### Was this PR authored or co-authored using generative AI tooling? Co-authored by Claude Fable 5. (backported from commit a6c85b3b193de317f73f9b567aa9ceb687bc022b) Report URL: https://github.com/apache/texera/actions/runs/30512237083 With regards, GitHub Actions via GitBox
