Skip to content

feat(core): add ExternalProcessHandle for RAII process management - #3

Merged
Dev-Sams1012 merged 1 commit into
mainfrom
feat/core/ExternalProcessHandle
Jul 28, 2026
Merged

Dev-Sams1012 merged 1 commit into
mainfrom
feat/core/ExternalProcessHandle

Conversation

@Dev-Sams1012

Copy link
Copy Markdown
Owner
  • Add ExternalProcessHandle wrapper around popen() using RAII semantics.
  • Manage process lifetime through std::unique_ptr with a custom pclose() deleter.
  • Throw std::runtime_error when process creation fails.
  • Implement read_line() to safely stream process output line by line.
  • Encapsulate low-level FILE* handling behind a simple C++ interface.

- Add `ExternalProcessHandle` wrapper around `popen()` using RAII semantics.
- Manage process lifetime through `std::unique_ptr` with a custom `pclose()` deleter.
- Throw `std::runtime_error` when process creation fails.
- Implement `read_line()` to safely stream process output line by line.
- Encapsulate low-level `FILE*` handling behind a simple C++ interface.
@Dev-Sams1012 Dev-Sams1012 self-assigned this Jul 28, 2026
@Dev-Sams1012
Dev-Sams1012 merged commit c6081d8 into main Jul 28, 2026
1 check passed
@Dev-Sams1012
Dev-Sams1012 deleted the feat/core/ExternalProcessHandle branch July 28, 2026 19:56
@Dev-Sams1012 Dev-Sams1012 added the enhancement New feature or request label Jul 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant