go x/build/maintner: 支持额外的标签详细信息

3lxsmp7m  于 4个月前  发布在  Go
关注(0)|答案(3)|浏览(40)

目前,maintner.GitHubLabel 只包含关于标签的最基本的信息:其 ID 和名称。GitHub 上的标签有 additional useful information,包括:

  • 颜色
  • 描述

maintner.Corpus 是否应该支持跟踪这些额外的信息?
如果选择这样做,与获取所有问题相比,它应该只会增加文件大小和内存需求的很小一部分。标签的变化非常少。这是假设它被高效地实现,其中每个问题只包含标签 ID,但标签详细信息存储在单独的Map中。也就是说,你可能不希望将 "Used by googlebot to label PRs as having a valid CLA. The text of this label should not change." 标签描述文本与具有 cla: yes 标签的应用的每个问题一起存储。
我还不熟悉数据是如何存储的,所以我不知道在修改 maintner.GitHubLabel 以包含额外字段时是否可以实现高效的实现(如果是这样,API 将更加友好),或者它们是否必须存储在单独的Map中,并由用户通过 ID 查找。但无论如何都可以。
(/cc @bradfitz@andybons 这是 maintner 相关的。)

7z5jn7bk

7z5jn7bk1#

我从不需要颜色,描述是全新的,但如果你能使用它们,当然可以。请随意添加。

ars1skjm

ars1skjm2#

我主要想让这个在goissues.org上显示标签颜色(以及悬停时的描述)。如果被拒绝,我可以在特定项目中实现它。但我认为这通常是有用的。
它也可以在maintserve中用于显示问题标签。
如果以一种保留历史数据和所有标签更改的方式实现此功能,这可能对#24023有帮助,因为它会使其更容易跟踪标签描述的更改(并在需要时还原它们等)。(**编辑:**现在我更了解maintner是如何工作的,我知道保留历史数据是很自然的。每次标签更改时都会有一个变异事件,而maintner保留了所有变异的历史记录。)
一些可能对实施有用的额外注意事项:
当创建、编辑或删除标签时,会有标签事件。请参阅https://developer.github.com/v3/activity/events/types/#labelevent(以及github.LabelEvent)。
要通过go-github获取标签描述信息,我们需要解决google/go-github#856。已经有a PR实现了它,我可以帮忙让它更进一步。

hrysbysz

hrysbysz3#

我认为这对于我正在尝试的bug优先级 Jmeter 板是有用的。

相关问题