Skip to content

Conversation

@sabonerune
Copy link
Contributor

内容

PyInstallerのバージョンに上限が付いていなかったので念のため修正します。

その他

setuptoolsが特にコメントもなく依存関係に含まれていたのでコメントを追加しておきました。
05b476f に詳しいコメントがない状態で追加されていました。
@nanae772 このような理由で正しいでしょうか?


メモ: Windowsだとsetuptoolsを外しても多分問題は起こらない。
原因はpyworldのwheel内のコードとsdistの内容が異なりpkg_resourcesを使用していないから。

@sabonerune sabonerune requested a review from a team as a code owner April 29, 2025 07:46
@sabonerune sabonerune requested review from Hiroshiba and removed request for a team April 29, 2025 07:46
@Hiroshiba Hiroshiba requested a review from tarepan April 29, 2025 08:08
@nanae772
Copy link
Contributor

@sabonerune さん

setuptoolsについて、確認とコメントの追加ありがとうございます!
何か一言書いておいたほうがよかったですね🙇‍♂️

まず最初にsetuptoolsを追加した理由ですが、移行当時はVOICEVOX/pyopenjtalkのほうでimport pkg_resourcesを使っていたようで、それを解消するためにsetuptoolsを追加した記憶があります。作業メモに以下のログが残っていました。

$ uv run run.py --help
Traceback (most recent call last):
  File "/home/nanae/oss/vv_engine_migrate_uv/run.py", line 16, in <module>
    from voicevox_engine.app.application import generate_app
  File "/home/nanae/oss/vv_engine_migrate_uv/voicevox_engine/app/application.py", line 9, in <module>
    from voicevox_engine.app.global_exceptions import configure_global_exception_handlers
  File "/home/nanae/oss/vv_engine_migrate_uv/voicevox_engine/app/global_exceptions.py", line 7, in <module>
    from voicevox_engine.tts_pipeline.tts_engine import (
  File "/home/nanae/oss/vv_engine_migrate_uv/voicevox_engine/tts_pipeline/tts_engine.py", line 30, in <module>
    from .text_analyzer import text_to_accent_phrases
  File "/home/nanae/oss/vv_engine_migrate_uv/voicevox_engine/tts_pipeline/text_analyzer.py", line 9, in <module>
    import pyopenjtalk
  File "/home/nanae/oss/vv_engine_migrate_uv/.venv/lib/python3.11/site-packages/pyopenjtalk/__init__.py", line 4, in <module>
    import pkg_resources
ModuleNotFoundError: No module named 'pkg_resources'

ですが、今は #1640 でpyopenjtalkの最新化の対応をしていただいたおかげで解消しているようですね。
そして、今setuptools無しでやろうとすると今度はpyworldのほうでエラーが出るようになっていることを確認しました。

$ uv run run.py --enable_mock
Traceback (most recent call last):
  File "/home/nanae/oss/vv_engine_migrate_uv/run.py", line 16, in <module>
    from voicevox_engine.app.application import generate_app
  File "/home/nanae/oss/vv_engine_migrate_uv/voicevox_engine/app/application.py", line 18, in <module>
    from voicevox_engine.app.routers.morphing import generate_morphing_router
  File "/home/nanae/oss/vv_engine_migrate_uv/voicevox_engine/app/routers/morphing.py", line 17, in <module>
    from voicevox_engine.morphing.morphing import (
  File "/home/nanae/oss/vv_engine_migrate_uv/voicevox_engine/morphing/morphing.py", line 12, in <module>
    import pyworld as pw
  File "/home/nanae/oss/vv_engine_migrate_uv/.venv/lib/python3.11/site-packages/pyworld/__init__.py", line 13, in <module>
    import pkg_resources
ModuleNotFoundError: No module named 'pkg_resources'

なので、そちらのコメントで正しいと思います!

Copy link
Member

@Hiroshiba Hiroshiba left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!!

ちょっと時間あったのでレビューさせていただきました!


[dependency-groups]
build = ["pyinstaller>=5.13"]
build = ["pyinstaller<6"] # NOTE: PyInstaller6ではmacOSのエディタにバンドルすると動作しなくなる (c.f. #1022)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(ちょっとこのプルリクエストには関係ないですが)

#1022 のワークアラウンドっていつか解決しないといけない感じなんでしたっけ!
だとすると issue 化しておくと良さそうなんですが、もしかしたらissueになってない感じだったりしますかね・・・?

ちょっともしよかったら(いつもお願いしてしまって申し訳ないのですが) @sabonerune さん側で知ってる情報と現状出ている方針の案をまとめてissue化していただきでもよろしいでしょうか 🙇 🙇 🙇

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

v5がサポートしているのはPython3.12までなので3.13以降に更新できないくらいでしょうか?

いつか更新しなければならないけれど急ぐ理由も特にないくらいでしょうか?

Copy link
Member

@Hiroshiba Hiroshiba Apr 29, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

たしかに急ぐ理由はないかもです・・・!
いつか直さないといけない気がするので、覚えているうちにissueにしておいて、時間に余裕があれば解決を試みるのもありかなーという温度感です!

まあでもpython3.12まで使えるなら結構後回しにしても良いかもですね。
とはいえ解決のために動き始めるのも悪くなさそう・・・かも・・・!

とりあえず覚えているうちにissueを建てて置いて、あとからサッと追えるようにしておきたいな~という気持ちです!

@Hiroshiba Hiroshiba changed the title FIX: 依存パッケージコメント追加と修正 chore: 依存パッケージコメント追加と修正 Apr 29, 2025
@Hiroshiba
Copy link
Member

多分問題ないと思うのでマージさせていただきます!

@Hiroshiba Hiroshiba enabled auto-merge April 29, 2025 14:57
@Hiroshiba Hiroshiba added this pull request to the merge queue Apr 29, 2025
Merged via the queue into VOICEVOX:master with commit e744116 Apr 29, 2025
5 checks passed
@sabonerune sabonerune deleted the fix/dependencies branch April 29, 2025 16:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants