feat: Upgrade Kiwi to v0.23.2 with new API bindings - #43
Merged
Conversation
- Update KIWI_VERSION from v0.23.0 to v0.23.2 - Add new MatchOption flags (OOV detection, SERIAL, EMOJI, etc.) - Add new BuildOption flags (CONG model types, typo/multi dict) - Implement Config struct and GetGlobalConfig/SetGlobalConfig - Implement GetOptionF/SetOptionF/GetOption/SetOption - Add Morphset type for blocklist support - Update AnalyzeOptions with Blocklist, OpenEnding, AllowedDialects - Add tests for new features
kkweon
approved these changes
Aug 6, 2026
kkweon
left a comment
Member
There was a problem hiding this comment.
키위 라이브러리 너무 많이 바뀌어서 따라가기 힘드네요 흙흙.
kkweon
enabled auto-merge (rebase)
August 6, 2026 19:04
kkweon
marked this pull request as draft
August 7, 2026 04:54
auto-merge was automatically disabled
August 7, 2026 04:54
Pull request was converted to draft
kkweon
marked this pull request as ready for review
August 7, 2026 04:54
kkweon
requested changes
Aug 7, 2026
kkweon
left a comment
Member
There was a problem hiding this comment.
🤖 이 리뷰는 Claude Code로 작성했습니다. 변경된 코드를 Kiwi v0.23.2의
capi.h와 대조해 확인했고, 빌드 실패는 실제 CI 실행(run 31150063068)으로 검증했습니다. 나머지 지적 사항은 리뷰어(@kkweon)가 확인 후 함께 올립니다.
0.23.2 API를 폭넓게 반영해 주셔서 감사합니다. Config와 match option 커버리지가 꼼꼼합니다. 다만 approve 당시 CI가 돌지 않고 있었는데, 실행해 보니 빌드가 실패합니다. 머지 전에 이 부분과 API 설계 관련 몇 가지를 함께 봐주시면 좋겠습니다.
블로킹 이슈는 두 가지입니다: kiwi.go:585의 빌드 에러, 그리고 Morphset에 형태소를 추가할 방법이 없는 점입니다.
- Fix boolToCInt return type to C.uint8_t for integrate_allomorph - Add Morphset.Add method with kiwi_morphset_add binding - Add comments for OOV MatchOption (mutually exclusive 2-bit field) - Add comments for Model Type BuildOption (single-select field) - Fix dialect default to use instance setting when not specified - Add comments for GetOptionF/SetOptionF (future compatibility) - Improve tests: SetOption, OOV mode comparison, Morphset blocking - Apply gofumpt formatting
- Update TestKiwiVersion expected value to 0.23.2 - Simplify TestGetSetOption to read-only (KIWI_NUM_THREADS may be read-only)
Member
Author
|
리뷰 감사합니다. 모든 코멘트를 반영했습니다: 블로킹 이슈 수정
API 설계 개선
테스트 개선
코드 스타일
|
mrchypark
enabled auto-merge
August 11, 2026 12:20
mrchypark
requested review from
cypark-conalog and
kkweon
and removed request for
cypark-conalog
August 11, 2026 12:21
mrchypark
dismissed
cypark-conalog’s stale review
August 11, 2026 12:38
Self-dismissed to allow fresh review
- Fix CString memory leaks in New, NewBuilder, AddWord, LoadDict - Add error returns to New and NewBuilder (breaking API change) - Add thread safety documentation to Kiwi type - Add test coverage: New failure, WithOpenEnding, WithAllowedDialects - Fix error handling in all tests (assert.NoError) - Apply gofumpt formatting
Member
Author
|
오라클 코드 리뷰 결과를 반영했습니다: 수정 사항메모리 누수 수정
에러 처리 추가
스레드 안전성 문서화
테스트 커버리지 보강
테스트 모두 통과 확인: ok github.com/codingpot/kiwigo 72.277s |
kkweon
approved these changes
Aug 11, 2026
kkweon
left a comment
Member
There was a problem hiding this comment.
리뷰 반영 감사합니다! 빌드/테스트 통과 확인했습니다. 🙏
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Changes
Version Upgrade
New Features
MatchOption Flags (26 new)
BuildOption Flags
Config API
Morphset (Blocklist)
AnalyzeOptions Extensions
Tests
Notes