cdcailf/cjkfold は、PDF から抽出したテキストに混ざった、実際の漢字とほぼ同じ姿をしたグリフ(康熙部首、CJK 部首追加文字)を折り畳み(fold)正規化し、テキストが再び一致するようにする Python ライブラリである。v0.4.0 は 2026-10-15 のコミット 671ab91 で公開され、新機能を含まず名前の整理だけを収録している。折り畳み系の関数は cjkfold.normalize モジュールから cjkfold.folding へ、書き込み系の 2 つの関数は cjkfold.rewrite へ移された。
原因は名前衝突だった。Python では import a.b as c はモジュール a.b を c に入れる。normalize モジュールと normalize 関数が同じ名前を使っていたため、どちらか一方が居場所を失い、実際には import cjkfold.normalize as m はモジュールではなく関数を渡してきた。そのため m.fold を呼ぶと AttributeError になっていた。 이제 cjkfold.normalize は関数、cjkfold.folding はモジュールとなり、名前が分かれた。
関数の挙動はそのままだ。文書化された from cjkfold import fold, normalize, strip_invisible は以前とまったく同じように動作し、変更履歴は tests/ のテストが契約であり、等価表(equivalence table)は手で編集せず生成すると明かしている。scripts/acceptance.py には import 経路の検査が追加された。
その代わりに、from cjkfold.normalize import fold のようにモジュールから直接関数を取り出していた経路は切られた。その経路は文書に存在したものではなく、従来の AttributeError の代わりに ModuleNotFoundError が出るように変わった。このコミットは CHANGELOG.md に 26 行を加えただけで、実際のコード移動は変更履歴が参照するコミット af57ad7 にある。新機能も折り畳みの精度を示す数値もなく、このバージョンは名を正す構造的修正に近い。文書化された import だけを使うコードには影響がなく、モジュールパスを直接指定していたコードだけを確認すればよい。