-
-
Notifications
You must be signed in to change notification settings - Fork 277
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
Add Issue Timeline API #389
Conversation
The timeline API added in the next commits uses the issue event types. These were incomplete. Also adding documentation to the event types based on: https://docs.github.com/en/webhooks-and-events/events/issue-event-types However, this also includes some event types that aren't documented: - "line-comment" - "cross-referenced" - "comment_deleted" - "base_ref_force_pushed"
May have to run |
This would result in failing deserialization
Thank you for your PR! |
#[serde(skip_serializing_if = "Option::is_none")] | ||
pub pull_request_url: Option<Url>, | ||
#[serde(skip_serializing_if = "Option::is_none")] | ||
pub requested_reviewers: Option<Vec<Author>>, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should have been pub requested_reviewers: Option<Author>
. It's only a single reviewer that's requested per event and not multiple.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fixed with #390
This adds the Timeline Events API for issues along with previously missing Issue Event Types. A
ListTimelineEventsBuilder
is implemented forIssue
(though as "each pull is also an issue" this works for requesting a Pull-Request timeline too).I've extensively tested this against the issues and pulls in the bitcoin/bitcoin repo. This resulted in nearly every
TimelineEvent
field besides the actualevent
needing to beOption<>
s as the API sometimes returns null values for fields it normally sets. Also, some of the added event types aren't listed in the API documentation. I hope I got all of them, but there might be some that don't appear in bitcoin/bitcoin.