-
Notifications
You must be signed in to change notification settings - Fork 245
Open
Labels
状態:設計設計をおこなっている状態設計をおこなっている状態
Description
内容
現在、バージョン情報が2箇所に定義されており、混乱や誤用の原因となる問題があります:
pyproject.toml:3→version = "0.24.0" # TODO: できればversionを自動管理するvoicevox_engine/__init__.py:3→__version__ = "latest"
ビルドワークフロー(.github/workflows/build-engine.yml:401)では__init__.pyの__version__が実際のバージョンに置き換えられ、真のバージョン管理は__init__.pyで行われています。
問題点:
pyproject.tomlに固定のバージョン値(現在0.24.0)が存在するため、誤ってこちらを参照するコードを書いてしまう危険性があります。
Pros 良くなる点
- バージョン管理の混乱解消
- 誤用による予期しないバグの防止
- 開発者の認識統一
Cons 悪くなる点
- 良い解決策が見つからない
- PEP 621の制約により理想的な実装が困難
実現方法
- 調べる: より良い解決策を調査・検討する
- 暫定対応: pyproject.tomlのversionを
0.0.0などのダミー値に変更し、コメントで意図を明記する(誤用した場合に問題が明確になる)
VOICEVOXのバージョン
engine 0.24.0
その他
この問題は過去のPR #1658 でも議論されていました。
いくつかの解決策を試してみましたが、いずれも問題がありました:
- versionのコメントアウト → PEP 621の仕様によりエラー(
[project]テーブル使用時はversion必須) - uvの非パッケージモード → 設定の複雑化と既存システムへの影響
PEP 621の制約により根本的な解決は困難ですが、現状の混乱を放置するわけにもいかないため、何らかの対策が必要です。
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
状態:設計設計をおこなっている状態設計をおこなっている状態