Skip to content

Fix typed projection subprocess decoding on non-UTF-8 Windows locales#138

Merged
justinjoy merged 1 commit into
semantic-reasoning:mainfrom
SakJaeLim:fix/typed-projection-subprocess-utf8
Jun 22, 2026
Merged

Fix typed projection subprocess decoding on non-UTF-8 Windows locales#138
justinjoy merged 1 commit into
semantic-reasoning:mainfrom
SakJaeLim:fix/typed-projection-subprocess-utf8

Conversation

@SakJaeLim

Copy link
Copy Markdown
Contributor

Summary

  • Adds a small test helper that captures typed-projection subprocess output with encoding="utf-8".
  • Routes the typed projection child-process checks through that helper so the tests do not depend on the host OS default text encoding.

Why

On Windows locales where Python defaults to a non-UTF-8 encoding such as CP949, subprocess.run(..., text=True) can fail to decode child process output that contains Korean/Unicode text. This caused three typed projection unit tests to fail even though the underlying behavior was correct.

Validation

  • ruff check .
  • pytest tests/unit/test_typed_projection.py -q with default Windows locale
  • pytest -q with default Windows locale

@SakJaeLim SakJaeLim marked this pull request as ready for review June 22, 2026 07:40
@justinjoy justinjoy merged commit 88bfc32 into semantic-reasoning:main Jun 22, 2026
3 checks passed
justinjoy added a commit that referenced this pull request Jun 22, 2026
Patch release with two correctness fixes since 0.4.0:
- fix(merge): candidate dedup is now anchor-insensitive, aligning the
  dedup keys with the status-preservation keys (9624b5c).
- fix(test): typed-projection subprocess tests decode child output as
  UTF-8, so they pass on non-UTF-8 host locales such as Windows CP949 (#138).
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.

2 participants