Pythonエコシステムにおけるバージョン上限の継続的更新の提案
卒業論文, 大阪大学
概要: ソフトウェア開発において依存関係の宣言とその解決は必須のプロセスである.しかしながら,宣言された依存関係は潜在的な互換性破壊の可能性を内包している.例えば,ある時点で宣言された依存は未来のある時点で互換性破壊の要因となり得る.この破壊は依存先パッケージの更新に起因しており,宣言時点では予見することは不可能である.本研究の目的は,依存関係の解決における潜在的な互換性破壊の低減と互換性を満たす解発見に要する計算コストの削減である.そのためにバージョン上限の宣言,及びその継続的な更新という手法を提案する.互換性破壊を引き起こす本質的要因は上限の未指定であり,互換性を満たすバージョン上限を明記することでその問題を解決する.バージョン上限は時間的な推移に伴って変化する情報であるため,継続的な更新が必須である.本研究では提案手法の有効性を確かめるために,Pythonエコシステムのシミュレーションを行った.評価実験の結果,従来手法では検出できない互換性破壊の発生を完全に防止し,先行研究の手法と比較して互換性を満たす解発見に要する計算コストを約45\%削減したことを確認できた.また,多くのパッケージに利用される主要なパッケージが優先的に提案手法を採用することで,全体の採用率が低い過渡期においても有効であることも確認できた.
@mastersthesis{三倉孝太2026,
author = {三倉 孝太},
title = {Pythonエコシステムにおけるバージョン上限の継続的更新の提案},
school = {大阪大学},
type = {Bachelor's Thesis},
year = {2026},
month = {feb}
}