Skip to content
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

ダウンローダーにリポジトリ指定機能をつける #620

Closed
Hiroshiba opened this issue Sep 19, 2023 · 1 comment · Fixed by #641
Closed

ダウンローダーにリポジトリ指定機能をつける #620

Hiroshiba opened this issue Sep 19, 2023 · 1 comment · Fixed by #641
Labels
初心者歓迎タスク 初心者にも優しい簡単めなタスク 機能向上

Comments

@Hiroshiba
Copy link
Member

内容

コアの同梱物などをダウンロードするダウンローダーがあります。
現状はVOICEVOX/voicevox_coreのリポジトリからダウンロードするので固定になっていますが、これを指定可能にしておくとテストなどに便利です。

同梱物をダウンロードする対象リポジトリを規制で指定できるようになればこのタスクは完了だと思います。

Pros 良くなる点

テストに便利

Cons 悪くなる点

指定方法が自明ではない

実現方法

同梱物のダウンロードは2つあるので、それぞれを指定可能にすればOKなはず。
Rustの勉強にちょうどよいかも。

その他

@Hiroshiba Hiroshiba added 機能向上 初心者歓迎タスク 初心者にも優しい簡単めなタスク labels Sep 19, 2023
@qryxip
Copy link
Member

qryxip commented Sep 19, 2023

メモです。

{owner}/{repository}の指定方法ですが、clapでCLI引数をパースする段階で(String, String)まで分解するのがよいかと思います。そうすれば不正な引数に対してclapの文脈でエラーを表示できます。

実際は(String, String)相当のstructを定義してFromStrをimplすることになると思います。FromStrは手で書いてもいいのですが、ついさっきparse-displayというちょうど良いライブラリを発見しました。これがちょうどはまるかと思います。(なんか(?<owner>[…]+)/(?<repository>[…]+)みたいな正規表現一つからFromStrの実装生やせるやつないかな?と思ったら発見できた上に結構ポピュラーでした)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
初心者歓迎タスク 初心者にも優しい簡単めなタスク 機能向上
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants