Yicong-Huang opened a new pull request, #5994:
URL: https://github.com/apache/texera/pull/5994

   ### What changes were proposed in this PR?
   
   `bin/local-dev/` already housed the docker-compose overlay + the two test 
suites, but the engine files that drive everything sat one level up next to a 
dozen unrelated `bin/*.sh`. Move them in:
   
   ```
   bin/local-dev.sh       → bin/local-dev/main.sh       (engine)
   bin/local-dev-tui.py   → bin/local-dev/tui.py        (Textual dashboard)
   ```
   
   A 3-line wrapper stays at `bin/local-dev.sh`, so muscle memory + every 
`bin/local-dev.sh ...` invocation (docs, contributor habit, scripts) keeps 
working unchanged. The wrapper is the **only** path users ever see — `--help`, 
error hints, status-screen tip block, and the new `bin/local-dev/README.md` all 
reference `bin/local-dev.sh`; the engine path isn't surfaced anywhere a user 
runs into.
   
   After:
   
   ```
   bin/
   ├── local-dev.sh                  ← thin wrapper: exec local-dev/main.sh "$@"
   └── local-dev/
       ├── main.sh                   ← engine (was bin/local-dev.sh)
       ├── tui.py                    ← Textual TUI (was bin/local-dev-tui.py)
       ├── docker-compose.override.yml
       ├── README.md                 ← new (folder layout + how to run tests + 
how to add a service)
       └── tests/
   ```
   
   Path updates that follow from the move:
   
   * `main.sh`: `REPO_ROOT` climbs `../..` instead of `..`; TUI exec path 
points at `bin/local-dev/tui.py`.
   * `tui.py`: `REPO_ROOT = Path(__file__).resolve().parents[2]`.
   * `tests/conftest.py`: `TUI_PATH` updated.
   * `tests/test_local_dev_sh.sh`: the `bash -n` check discovers every `*.sh` 
under `bin/local-dev/` via `find -print0` (macOS bash 3.2 has no `globstar`), 
so the wrapper's syntax check now covers the engine too.
   
   `bin/**`-anchored labeler + CI globs (`infra:` label, `find bin -name 
'test_*.sh'`, `pytest bin/`) keep matching without edit.
   
   ### Any related issues, documentation, discussions?
   
   Closes #5993.
   
   ### How was this PR tested?
   
   * `bash bin/local-dev/tests/test_local_dev_sh.sh` → `9 passed, 0 failed`.
   * `python -m pytest bin/local-dev/tests/ -q` → `38 passed in 0.13s`.
   * `bin/local-dev.sh version` returns the expected 
`1.3.0-incubating-SNAPSHOT`.
   * `bin/local-dev.sh --help` and `bin/local-dev.sh status` (no-arg) render 
the same dashboard + tip block as before, all referencing `bin/local-dev.sh` 
(no `main.sh` leakage).
   * `bin/local-dev.sh -i` was sanity-checked manually: the TUI loads and the 
dashboard binds to the same state directory.
   
   Both test suites also run in the `infra` GitHub Actions job; no workflow 
changes are needed.
   
   ### Was this PR authored or co-authored using generative AI tooling?
   
   Generated-by: Claude Code (Anthropic, Claude Opus 4.7).


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