我试图使用GitHub的GraphQL接口来查询在特定月份内在GitHub仓库中审核的PR的数量 .
理想情况下,我只想提取在特定时间范围内发生的评论和评论 . 最后,我想按用户分组我的结果 .
userA 10 reviews during month
userB 6 reviews during month
userC 4 reviews during month
这是我到目前为止创建的查询 .
{
repository(owner: "DSpace", name: "DSpace") {
pullRequests(last: 50) {
nodes {
state
resourcePath
comments (last: 100) {
nodes {
author {
login
}
}
}
reviews(last: 100) {
nodes {
state
author {
login
}
}
}
}
}
}
}
我怀疑我需要迭代所有拉取请求,然后过滤掉特定日期范围内的评论/评论 .
当我查看GitHub GraphDB架构时,“评论”和“评论”对象似乎不能按日期过滤 . 我看到可用的过滤器是第一个,最后一个,作者和状态 . 有没有办法在GraphDB查询语言中表达这样的过滤器?
我看到GraphQL提供了一种使用@include和@skip按布尔属性进行过滤的方法 . 有没有办法将表达式传递给这些结构?
1 回答
您可以尝试使用Github GraphQL's search(更多的是v3 REST contruct,但仍然可以在v4 graphQL中使用) . query字符串指定上次更新的拉取请求的所有者,仓库名称,date range(用作创建评论/评论时的近似值),并键入
pr
.新查询, Build 在您目前为止的基础上,并进行了一些修改: