Skip to main content

Python 3.11 이상 필요

v1.5의 최소 Python 버전은 3.11입니다. 3.113.14를 필수 CI에서 검증하며, 3.15 프리릴리스는 실패를 허용하는 별도 작업에서 확인합니다. Python 3.83.10을 유지하는 환경에서는 v1.4.x를 사용하세요.

제거된 호환 API

v1.4에서 경고하던 다음 이름은 v1.5에서 제거했습니다. 구식 함수 이름은 더 이상 가져올 수 없고, 구식 키워드는 TypeError를 발생시킵니다. 검색·키보드 옵션은 bool을 받으며 기본값은 False입니다. 명시적인 None이나 정수 대신 True/False를 사용하세요.
hangul_search, hangul_search_all, HangulSearcher의 검색 메서드에도 같은 검색 키워드를 적용하세요. 키보드 키워드는 enko, autofix, convert_qwerty_to_hangul에서 동일합니다. 호환 API의 경고 기간이 끝났으므로 HangulpyDeprecationWarning 클래스도 제거했습니다. 이 클래스를 가져오는 코드와 전용 경고 필터를 삭제하세요.

문자열 구성요소 API 이름 이전

한 음절의 속성은 get_chosung, get_jungsung, get_jongsung으로 조회하고, 문자열 전체는 get_chosung_string, get_jungsung_string, get_jongsung_string으로 처리합니다. extract_chosung, extract_jungsung, extract_jongsung은 현재 1.5 계열에서 기존 결과를 유지하면서 표준 DeprecationWarning을 발생시키며, 다음 minor 버전인 1.6에서 제거합니다. 이 경고는 제거한 과거 전용 경고 클래스와는 별개입니다. Python의 기본 경고 필터에서는 숨겨질 수 있으므로 개발·CI에서는 python -W default::DeprecationWarning ... 또는 pytest의 경고 표시를 활용하세요. 기존 extract_*의 기본 동작은 공백 보존이므로 이전할 때 keep_spaces=True를 지정하세요. 초성 함수에는 keep_non_hangul=False도 명시해야 독립 초성 자모를 보존하고 비한글 문자를 제외하는 기존 결과가 유지됩니다.
기존 get_chosung_string(text, keep_spaces=...) 호출의 결과는 바뀌지 않습니다. 이 함수에서 keep_non_hangul을 생략한 호환 모드와 명시한 구성요소 추출 모드의 차이는 문자열 초성 API를 확인하세요. 문서화되지 않았던 hangulpy.chosung.extract_chosung의 단일 문자 도우미도 경고 후 v1.6에서 제거합니다. 한 음절에는 패키지의 get_chosung을 사용하세요. 기존의 비한글 문자 통과 동작이 필요하면 get_chosung(char) or char로 이전하세요.

달라지는 결과

  • 호환 자모 검색·치환은 실제 조합된 원문 구간을 사용하며, 기본 매치는 원문에서 겹치지 않습니다. 결합 문자가 재정렬되는 경우 결합 문자 묶음을 함께 보존합니다.
  • 꽃잎·솜이불·색연필의 ㄴ 첨가를 처리하고, 금요일의 로마자 표기에서 불필요한 n을 제거했습니다. 임의의 형태소 경계를 모두 분석하는 기능은 아닙니다.
  • jarip_noun의 진열·분열·기념·사례·요령 결과를 바로잡았습니다.
  • 큰 단위 구는 숫자 9와 같은 글자를 사용합니다. 일구는 자동으로 복원하고, 십구의 큰 단위 해석은 large_unit_gu=True로 지정합니다. 큰 수의 중의성을 확인하세요.