Skip to content

Fix Capture::Tiny trailing newline issue in subprocess output#756

Merged
fglock merged 1 commit into
masterfrom
fix/capture-tiny-trailing-newline
May 18, 2026
Merged

Fix Capture::Tiny trailing newline issue in subprocess output#756
fglock merged 1 commit into
masterfrom
fix/capture-tiny-trailing-newline

Conversation

@fglock
Copy link
Copy Markdown
Owner

@fglock fglock commented May 18, 2026

Changed stream routing from line-based to byte-based to preserve exact output including or excluding trailing newlines. Test failures reduced from 50 to 36 out of 331 tests. Remaining failures are unicode encoding issues (separate problem).

Changed stream routing from line-based to byte-based to preserve exact
output including or excluding trailing newlines. The previous implementation
used BufferedReader.readLine() which strips newlines, then added them back,
causing incorrect behavior when subprocess output didn't have trailing newlines.

- Modified createStreamRouterThread to read raw bytes
- Created writeToPerlStdoutBytes and writeToPerlStderrBytes methods
- Removed unused string-based methods (writeToPerlStdout, writeToPerlStderr)

Test results: Reduced test failures from 50 to 36 out of 331 tests.
Remaining failures are unicode encoding issues (separate problem).
@fglock fglock merged commit eb545c4 into master May 18, 2026
2 checks passed
@fglock fglock deleted the fix/capture-tiny-trailing-newline branch May 18, 2026 13:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant