-
Notifications
You must be signed in to change notification settings - Fork 200
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
整理: エンジンが見つからない例外を追加 #1309
base: master
Are you sure you want to change the base?
整理: エンジンが見つからない例外を追加 #1309
Conversation
@Hiroshiba |
test/e2e/__snapshots__/test_missing_engine/test_missing_engine_422.json
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ほぼLGTMです!
ちょっと案内のとこだけ。。 🙇
「VOICEVOX "ENGINE"」と「TTS "Engine"」の混同が根本原因だとわかりました。 現在の 本 PR を大幅に変更します。以下が変更の方針です:
|
@Hiroshiba |
@Hiroshiba |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!!
あっ コンフリクト解消しようとしたのですが、 ちょっとすみません、おまかせできると助かります 🙇 🙇 🙇 |
@Hiroshiba |
内容
概要: ドメイン内
HTTPException
を新規の「エンジンが見つからない」例外に置き換えてリファクタリング#1234 でエンジン取得がドメインへ移され、その際に
HTTPException
も変更されず移動された。これはサーバーとドメインのミスマッチであり修正すべきである。新規例外を作成した場合、この例外をサーバー側のどこでキャッチするか(
application.py
か routers か)設計する必要がある。エンジンは複数の router で利用されているため、router でキャッチしようとすると各 router にキャッチ実装が必要で煩雑である。一方、application.py
であれば FastAPI の global exception handler 機能を利用できる。よって後者が妥当である。このような背景から、エンジン系
HTTPException
を新規EngineNotFound
例外に置き換えグローバルハンドラでキャッチするリファクタリングを提案します。関連 Issue
ref #1234