皆様、こんにちは。
弊社が開発を推進しているオープンソースの住所正規化ライブラリNormalize Japanese Addresses に対し最近多くの関心と多くの issue やプルリクエストをいただいています。
これらの貴重なフィードバックにより新バージョンをリリースすることができました。
この投稿ではリリースのお知らせと改善されたポイントを紹介します。
丁目の数字に関する正規化ロジックの改善
丁目の正規化のロジックが洗練され、より多くのケースで一貫した住所文字列の正規化が可能になりました。
従来は「東京都文京区小石川1」のような住所では「1」は丁目と認識されていませんでしたが、このようなケースで正しく一丁目が補充されるようになりました。
例:「東京都文京区小石川1」 -> 「東京都文京区小石川一丁目」
旧字体への対応追加 (麩 -> 麸)
Normalize Japanese Addresses では旧字体を新字体にマッピングしたり、異体字を扱うロジックが含まれていますが、新たに「麩」 から「麸」への正規化に対応しました。
今後、古字体や異字体についてはより包括的に扱えるように改善を考えています。
愛知県安城市柿さき町(柿碕町)への対応
「柿さき町」「柿碕町」の表記ゆれが吸収されるようになりました。
コードのタイポ修正 (@sxend さんからのプルリクエスト)
ESモジュールへの対応 (@taisukef さんからのプルリクエスト)
ブラウザーや Deno などの環境で、ES モジュールに対応したエントリポイントのファイルが利用できるようになりました。これにより、より多くの環境で Normalize Japanese Addresses の利用が可能になりました。
Windowsでの開発環境の追加 (@Tps-F さんからのプルリクエスト)
モジュールをビルドするワークフローの改善により Windows でも Normalize Japanese Addresses の開発が可能になりました。これにより、より多くの開発者が参加できるようになります。
ところで Normalize Japanese Addresses はさまざまな住所のサンプルの文字列を使って正規化が成功するかどうかのテストしています。現在のテストケースは 14,516 件です。
テストはコミットやプルリクエストの作成ごとに GitHub Actions の CI 環境で自動で実行され、新しい機能の追加や正規化ロジックの改修によって意図しないバグ(例えば過去に正規化が成功していた住所文字列が、新しいバージョンでは失敗するようになった、など)が発生しないことを確認しています。
このようにコツコツとテストを積み上げていけたのはユーザーやコントリビューターの皆様のおかげです。
今後も皆様と一緒に Normalize Japanese Addresses の改善を続けていきたいと考えています。
「正規化に失敗した住所文字列をテストとして追加する」などの簡単なプルリクエストでも大歓迎ですので、お気軽に issue やプルリクエストを開いてみてください。
ぜひ一緒に議論しながら楽しくプロジェクトを進めていきましょう!
これからも Normalize Japanese Addresses をどうぞよろしくお願いいたします。