keon94 commented on issue #1022: URL: https://github.com/apache/incubator-devlake/issues/1022#issuecomment-1159344817
@Startrekzky @klesh There are two approaches to this. 1. The "issues" API of Github accepts a "milestone" query parameter which is going to return a full Milestone object per issue in the returned payload, so we could simply add that to the issue_collector and use the issue_extractor to write the milestone data to a new tools table for milestones followed by a converter for milestones. The disadvantage with this method is that we won't be getting back milestones that have no issues mapped to them (do we care?). 2. We could have a new milestones collector that calls the "milestones" API. This API returns the same milestone objects that we would get back as part of the issues API. The problem here is that the response does not tell us the associated issue IDs per milestone, so we're still forced to make the same query mentioned in (1). This ends up adding extra overhead and a lot of duplicated data coming back (although with GraphQL calls we could resolve this but we don't support that). See [this discussion] (https://stackoverflow.com/questions/16950657/getting-the-issues-from-a-certain-milestone-in-github). On the other hand, we could support tracking "empty" milestones with this method which is its advantage. It's also similar to how the Jira plugin handles sprints. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
