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

remove: GitHub Label OS #1097

Closed
3 tasks done
tarepan opened this issue Mar 1, 2024 · 14 comments · Fixed by #1111
Closed
3 tasks done

remove: GitHub Label OS #1097

tarepan opened this issue Mar 1, 2024 · 14 comments · Fixed by #1111
Assignees

Comments

@tarepan
Copy link
Contributor

tarepan commented Mar 1, 2024

内容

要望: GitHub Label OS を廃止する

現在の VOICEVOX ENGINE は GitHub Label として以下の3つを運用している:

  • OS:linux
  • OS:mac
  • OS:win

この Label は issue 冒頭内の OSの種類 を labeler Actions で自動検知して付与されている。
この Label は各 OS 特有の issues を見分けられるように設計されていると思われる。

しかし現在のところ、issue のほとんどが「OS : label 無し」あるいは「全 OS : label 付き」となっている。
すなわち、現在の ENGINE は OS 固有の問題がほぼ無く、有効な label として機能していない。

過度の label は真に必要な label を埋もらせ、また、actions 等の管理コストを一定量発生させ続ける(例: PR #831)。

このような背景から、歴史的役割を終えた OS : label の廃止を提案します。

Pros 良くなる点

  • label 単純化、可読性向上
  • actions 単純化、管理コスト 0 に

Cons 悪くなる点

  • OS 固有 issues は label ベースでなく検索ベースで絞り込み

実現方法

  • actions 廃止
  • label 廃止

VOICEVOXのバージョン

0.16.0

OSの種類/ディストリ/バージョン

  • Windows
  • macOS
  • Linux
@github-actions github-actions bot added OS 依存:linux Linux に依存した現象 OS 依存:mac macOS に依存した現象 OS 依存:win Windows に依存した現象 labels Mar 1, 2024
@tarepan tarepan added the 要議論 実行する前に議論が必要そうなもの label Mar 5, 2024
@tarepan
Copy link
Contributor Author

tarepan commented Mar 6, 2024

現在のラベル状況を集約しました。
影響範囲の小ささも確認できたため、反対意見が無ければ数日中に GitHub Label OS を廃止します。

現在のラベル状況

  • 2: OS:linux
  • 0: OS:mac
  • 0: OS:win
  • 0: OS:linux + OS:mac
  • 0: OS:mac + OS:win
  • 1: OS:win + OS:linux
  • 11: OS:linux + OS:mac + OS:win

特定OSタグのみがついているissues:

@tarepan tarepan self-assigned this Mar 6, 2024
@tarepan tarepan added 状態:実装 実装をおこなっている状態 and removed OS 依存:mac macOS に依存した現象 OS 依存:linux Linux に依存した現象 OS 依存:win Windows に依存した現象 要議論 実行する前に議論が必要そうなもの labels Mar 8, 2024
@tarepan
Copy link
Contributor Author

tarepan commented Mar 8, 2024

open issue に付与された GitHub Label OS を外し、labeler 廃止 PR を提出しました。本 PR merge 後、以下の最終段階をもって label 廃止は完了します。

最終段階として Label そのものの削除をおこなう予定です。過去 issue に付与された label も削除されますが、上記の pros/cons に照らし、削除が妥当と考えます。

@tarepan tarepan added the 要議論 実行する前に議論が必要そうなもの label Mar 8, 2024
@Hiroshiba
Copy link
Member

Hiroshiba commented Mar 17, 2024

返信遅くなりすみません!!
ラベルを消す判断は過去の遺産を全て消すということなので、ちょっと慎重に進めた方が良いかもですね!
…と思ったけど特別にラベル付けされてるのは少ないから大丈夫そう!

僕もOSラベルは意味をなしてないなと感じてました。
影響するの全部につけるのか、OS固有な時につけるのかを判別できず、かつそれがラベリングする時とラベルを使ってフィルタする時どちらにも起こるからだと思います。
あと今の自動ラベリング案内文だと、自分が使うPCのOSをつける人もいるのでごちゃごちゃだと思います。

他のossの運用とかも参考に調べてみました。
どれだったかわからないですが、「OS:全部」というラベルが用意されてたり、「OS:mac only」というのがかったりするのもあった気がします。

提案ですが、自動ラベルを消すかはさておき、ラベルを「OS:mac特有」「windows特有」などとするのはどうでしょうか。
これでラベルをつける側・フィルタに使う側双方が意味を正しく理解できるかなぁと。
「特有」意外に良い名前があると良いのですが…。


おそらく全リポジトリの運用も追従するのでメンテナ意見あれば🙏 @qryxip @y-chan

@tarepan tarepan removed the 状態:実装 実装をおこなっている状態 label Mar 17, 2024
@tarepan
Copy link
Contributor Author

tarepan commented Mar 18, 2024

影響するの全部につけるのか、OS固有な時につけるのかを判別できず ... 自分が使うPCのOS

👍
同意です。過去 issue にはこれらのパターンが混在しているように見受けられます。

ラベルを「OS:mac特有」「windows特有」などとする

👍
方向性として同意です。

実務面で気になる点があります。
「特有」は、誰が判断して、いつ付与する形でしょうか?
特有 label が大きな意味をもつのはバグ関係かと思います(特定OS向け機能はビルドくらい?)。
バグ報告をくださるユーザーは自分のPCでのバグを報告するため、1つのOSで発生したバグになるかと思います。
となると、ユーザーは特有 label をつけられません。
開発者も Win/Mac/Linux の全環境を揃えているのは稀と思われます(私は Win マシンとクラウド Linux サーバしかない)。
となると、多くのコントリビュータも特有 label をつけられません。
この点、実務的な課題がありそうにみえます。

「特有」意外に良い名前

OS: mac固有 とかどうでしょうか?

@Hiroshiba
Copy link
Member

特有かどうかを判断できないのは、経験とカンで付ければ大体うまくいく気がします。
その後で間違ってることがわかれば変更すれば良いかもです。
明らかに全OSに影響あるissueに、間違えてこのラベルを付けちゃうのを防止すれば大丈夫かなと。

固有

なるほどです!
特有よりはわかりやすい…のかなぁ。もっと良いのがあると嬉しいかも…

ここまでの議論をChatGPT君に投げてみました。「OS依存:mac」とかなかなか良いかも?
https://chat.openai.com/share/aa0e54ac-d648-450b-b90f-753c6c78225f

@tarepan
Copy link
Contributor Author

tarepan commented Mar 20, 2024

経験とカンで付ければ大体うまくいく ... 間違ってることがわかれば変更

👍
label が大事故を起こすことはほぼ無いので、バランスの取れたやり方だと感じます。
経験あるレビュアが判断するということで、自動 labeler は廃止の方向性になる気がします(PR: #1111

OS依存:mac

👍
依存 は良い言葉選びですね。「どの OS でも起きる = OS 依存性がない」となるので、誤解がかなり減りそうです。


現状は以下に集約できそうです:

  • OS 系 label は意味明確化のうえ維持
    • OS:macOS 依存:mac
    • OS:linuxOS 依存:linux
    • OS:winOS 依存:win
  • label は経験あるレビュアがある程度えいやで付与
    • 自動 labeler は廃止

@Hiroshiba
この方向でどうでしょうか?
もし合意であれば私の方で label 改名を実行します、PR review の方はよろしくお願いします。

@Hiroshiba
Copy link
Member

Hiroshiba commented Mar 26, 2024

@tarepan 名称変更は良いと思います!
それらのラベルはもしかしたらorganization共通のやつかもなので、変更ができないかもしれません。
なんか無理そうだったらまたコメントいただけると!

自動ラベラーに関しては導入したのは実は僕ではなく @y-chan さんなので意見お待ちしたいです。
Discordでメンション飛ばしました! https://discord.com/channels/879570910208733277/880100454292422766/1221982766384807938

@tarepan tarepan added the 状態:実装 実装をおこなっている状態 label Mar 26, 2024
@y-chan
Copy link
Member

y-chan commented Mar 26, 2024

すみません...!大変遅くなりました 🙇

ラベルの改名については特に問題はないと判断しました。このまま進めて良いと思います!

自動ラベラーについてですが、実際に自動ラベラーを導入してみると、OS依存の問題が起きることはあまりなく、コントリビュートする際にチェックボックスの使い方に迷うことが増えてしまったと私も感じています。
なので、ラベラーを廃止し、レビュワー・メンテナが気づいたタイミングでOS依存ラベルを振ることで問題ないのかなと思いました!

@tarepan tarepan removed the 要議論 実行する前に議論が必要そうなもの label Mar 26, 2024
@qryxip
Copy link
Member

qryxip commented Mar 26, 2024

CORE側として、OS依存に賛成します。

@qryxip

This comment was marked as resolved.

@tarepan

This comment was marked as resolved.

@qryxip
Copy link
Member

qryxip commented Mar 26, 2024

コケたのはコアですが、そうですね、ラベルのリネームによってというのは私の勘違いでした。

コケたのはWindows, macOS, Linuxのどれのチェックボックスにもチェックを入れていないやつでした。labelerって元々そういうものなんですね…

https://github.com/VOICEVOX/voicevox_core/actions/workflows/labeler.yml

@Hiroshiba
Copy link
Member

Hiroshiba commented Mar 29, 2024

ラベル、よくわからないのですが、org共通じゃないかもですね…!🙇
初期値だけorgのものになるのかも…?

自動ラベラーに関して意見言ってなかったかもですが、こちら失くすのに賛成よりです。

ラベル名変更と自動ラベラーなくしはエディタ側でも進めようかなと思ってます。
(そちらはそちらでissue立てて進めるのが良さそうですが)

@Hiroshiba
Copy link
Member

issueタイトルと結論がずれてるのでまとめときます。(こういうときタイトル変えたほうが良いのか迷いますね・・・)

#1097 (comment) より

  • OS 系 label は意味明確化のうえ維持
    • OS:macOS 依存:mac
    • OS:linuxOS 依存:linux
    • OS:winOS 依存:win
  • label は経験あるレビュアがある程度えいやで付与
    • 自動 labeler は廃止

エディタとコアでも同様の課題がありますが、それぞれどうするかはそれぞれにissue作って進めていきましょう!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants