github 0.26 → 0.27
raw patch · 18 files changed
+606/−43 lines, 18 filesdep ~aesondep ~basedep ~base-compatPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: aeson, base, base-compat, base16-bytestring, bytestring, hashable, hspec, http-link-header, transformers-compat
API changes (from Hackage documentation)
- GitHub.Data.Webhooks: WebhookForkApplyEvent :: RepoWebhookEvent
- GitHub.Request: instance (GitHub.Request.ParseResponse mt req, res Data.Type.Equality.~ Data.Either.Either GitHub.Data.Definitions.Error req) => GitHub.Request.GitHubRW (GitHub.Data.Request.GenRequest mt rw req) (GHC.Types.IO res)
- GitHub.Request: instance (GitHub.Request.ParseResponse mt req, res Data.Type.Equality.~ Data.Either.Either GitHub.Data.Definitions.Error req, rw Data.Type.Equality.~ 'GitHub.Data.Request.RO) => GitHub.Request.GitHubRO (GitHub.Data.Request.GenRequest mt rw req) (GHC.Types.IO res)
- GitHub.Request: instance (a Data.Type.Equality.~ ()) => GitHub.Request.ParseResponse 'GitHub.Data.Request.MtUnit a
- GitHub.Request: instance (a Data.Type.Equality.~ Data.ByteString.Lazy.Internal.ByteString) => GitHub.Request.ParseResponse 'GitHub.Data.Request.MtDiff a
- GitHub.Request: instance (a Data.Type.Equality.~ Data.ByteString.Lazy.Internal.ByteString) => GitHub.Request.ParseResponse 'GitHub.Data.Request.MtPatch a
- GitHub.Request: instance (a Data.Type.Equality.~ Data.ByteString.Lazy.Internal.ByteString) => GitHub.Request.ParseResponse 'GitHub.Data.Request.MtRaw a
- GitHub.Request: instance (a Data.Type.Equality.~ Data.ByteString.Lazy.Internal.ByteString) => GitHub.Request.ParseResponse 'GitHub.Data.Request.MtSha a
- GitHub.Request: instance (b Data.Type.Equality.~ Network.URI.URI) => GitHub.Request.ParseResponse 'GitHub.Data.Request.MtRedirect b
+ GitHub: createGistR :: NewGist -> Request 'RW Gist
+ GitHub.Data.Gists: NewGist :: !Maybe Text -> !HashMap Text NewGistFile -> !Maybe Bool -> NewGist
+ GitHub.Data.Gists: NewGistFile :: !Text -> NewGistFile
+ GitHub.Data.Gists: [newGistDescription] :: NewGist -> !Maybe Text
+ GitHub.Data.Gists: [newGistFileContent] :: NewGistFile -> !Text
+ GitHub.Data.Gists: [newGistFiles] :: NewGist -> !HashMap Text NewGistFile
+ GitHub.Data.Gists: [newGistPublic] :: NewGist -> !Maybe Bool
+ GitHub.Data.Gists: data NewGist
+ GitHub.Data.Gists: data NewGistFile
+ GitHub.Data.Gists: instance Control.DeepSeq.NFData GitHub.Data.Gists.NewGist
+ GitHub.Data.Gists: instance Control.DeepSeq.NFData GitHub.Data.Gists.NewGistFile
+ GitHub.Data.Gists: instance Data.Aeson.Types.ToJSON.ToJSON GitHub.Data.Gists.NewGist
+ GitHub.Data.Gists: instance Data.Aeson.Types.ToJSON.ToJSON GitHub.Data.Gists.NewGistFile
+ GitHub.Data.Gists: instance Data.Binary.Class.Binary GitHub.Data.Gists.NewGist
+ GitHub.Data.Gists: instance Data.Binary.Class.Binary GitHub.Data.Gists.NewGistFile
+ GitHub.Data.Gists: instance Data.Data.Data GitHub.Data.Gists.NewGist
+ GitHub.Data.Gists: instance Data.Data.Data GitHub.Data.Gists.NewGistFile
+ GitHub.Data.Gists: instance GHC.Classes.Eq GitHub.Data.Gists.NewGist
+ GitHub.Data.Gists: instance GHC.Classes.Eq GitHub.Data.Gists.NewGistFile
+ GitHub.Data.Gists: instance GHC.Generics.Generic GitHub.Data.Gists.NewGist
+ GitHub.Data.Gists: instance GHC.Generics.Generic GitHub.Data.Gists.NewGistFile
+ GitHub.Data.Gists: instance GHC.Show.Show GitHub.Data.Gists.NewGist
+ GitHub.Data.Gists: instance GHC.Show.Show GitHub.Data.Gists.NewGistFile
+ GitHub.Data.PullRequests: [pullRequestRequestedTeamReviewers] :: PullRequest -> Vector SimpleTeam
+ GitHub.Data.PullRequests: [simplePullRequestRequestedTeamReviewers] :: SimplePullRequest -> Vector SimpleTeam
+ GitHub.Data.Webhooks: WebhookCodeScanningAlert :: RepoWebhookEvent
+ GitHub.Data.Webhooks: WebhookDiscussion :: RepoWebhookEvent
+ GitHub.Data.Webhooks: WebhookDiscussionComment :: RepoWebhookEvent
+ GitHub.Data.Webhooks: WebhookPackage :: RepoWebhookEvent
+ GitHub.Data.Webhooks: WebhookRepositoryDispatch :: RepoWebhookEvent
+ GitHub.Data.Webhooks: WebhookSecretScanningAlert :: RepoWebhookEvent
+ GitHub.Data.Webhooks: WebhookSponsorship :: RepoWebhookEvent
+ GitHub.Data.Webhooks: WebhookWorkflowDispatch :: RepoWebhookEvent
+ GitHub.Data.Webhooks: WebhookWorkflowRun :: RepoWebhookEvent
+ GitHub.Endpoints.Gists: createGistR :: NewGist -> Request 'RW Gist
+ GitHub.Request: instance (GitHub.Request.ParseResponse mt req, res GHC.Types.~ Data.Either.Either GitHub.Data.Definitions.Error req) => GitHub.Request.GitHubRW (GitHub.Data.Request.GenRequest mt rw req) (GHC.Types.IO res)
+ GitHub.Request: instance (GitHub.Request.ParseResponse mt req, res GHC.Types.~ Data.Either.Either GitHub.Data.Definitions.Error req, rw GHC.Types.~ 'GitHub.Data.Request.RO) => GitHub.Request.GitHubRO (GitHub.Data.Request.GenRequest mt rw req) (GHC.Types.IO res)
+ GitHub.Request: instance (a GHC.Types.~ ()) => GitHub.Request.ParseResponse 'GitHub.Data.Request.MtUnit a
+ GitHub.Request: instance (a GHC.Types.~ Data.ByteString.Lazy.Internal.ByteString) => GitHub.Request.ParseResponse 'GitHub.Data.Request.MtDiff a
+ GitHub.Request: instance (a GHC.Types.~ Data.ByteString.Lazy.Internal.ByteString) => GitHub.Request.ParseResponse 'GitHub.Data.Request.MtPatch a
+ GitHub.Request: instance (a GHC.Types.~ Data.ByteString.Lazy.Internal.ByteString) => GitHub.Request.ParseResponse 'GitHub.Data.Request.MtRaw a
+ GitHub.Request: instance (a GHC.Types.~ Data.ByteString.Lazy.Internal.ByteString) => GitHub.Request.ParseResponse 'GitHub.Data.Request.MtSha a
+ GitHub.Request: instance (b GHC.Types.~ Network.URI.URI) => GitHub.Request.ParseResponse 'GitHub.Data.Request.MtRedirect b
- GitHub: acceptInvitationFromR :: Id RepoInvitation -> GenRequest 'MtUnit 'RW ()
+ GitHub: acceptInvitationFromR :: Id RepoInvitation -> GenRequest 'MtUnit 'RW ()
- GitHub: addCollaboratorR :: Name Owner -> Name Repo -> Name User -> GenRequest 'MtJSON 'RW (Maybe RepoInvitation)
+ GitHub: addCollaboratorR :: Name Owner -> Name Repo -> Name User -> GenRequest 'MtJSON 'RW (Maybe RepoInvitation)
- GitHub: addLabelsToIssueR :: Foldable f => Name Owner -> Name Repo -> Id Issue -> f (Name IssueLabel) -> Request 'RW (Vector IssueLabel)
+ GitHub: addLabelsToIssueR :: Foldable f => Name Owner -> Name Repo -> Id Issue -> f (Name IssueLabel) -> Request 'RW (Vector IssueLabel)
- GitHub: addTeamMembershipForR :: Id Team -> Name Owner -> Role -> Request 'RW TeamMembership
+ GitHub: addTeamMembershipForR :: Id Team -> Name Owner -> Role -> Request 'RW TeamMembership
- GitHub: archiveForR :: Name Owner -> Name Repo -> ArchiveFormat -> Maybe Text -> GenRequest 'MtRedirect rw URI
+ GitHub: archiveForR :: Name Owner -> Name Repo -> ArchiveFormat -> Maybe Text -> GenRequest 'MtRedirect rw URI
- GitHub: collaboratorPermissionOnR :: Name Owner -> Name Repo -> Name User -> GenRequest 'MtJSON rw CollaboratorWithPermission
+ GitHub: collaboratorPermissionOnR :: Name Owner -> Name Repo -> Name User -> GenRequest 'MtJSON rw CollaboratorWithPermission
- GitHub: createCommentR :: Name Owner -> Name Repo -> IssueNumber -> Text -> Request 'RW Comment
+ GitHub: createCommentR :: Name Owner -> Name Repo -> IssueNumber -> Text -> Request 'RW Comment
- GitHub: createDeploymentR :: (ToJSON a, FromJSON a) => Name Owner -> Name Repo -> CreateDeployment a -> Request 'RW (Deployment a)
+ GitHub: createDeploymentR :: (ToJSON a, FromJSON a) => Name Owner -> Name Repo -> CreateDeployment a -> Request 'RW (Deployment a)
- GitHub: createDeploymentStatusR :: Name Owner -> Name Repo -> Id (Deployment a) -> CreateDeploymentStatus -> Request 'RW DeploymentStatus
+ GitHub: createDeploymentStatusR :: Name Owner -> Name Repo -> Id (Deployment a) -> CreateDeploymentStatus -> Request 'RW DeploymentStatus
- GitHub: createFileR :: Name Owner -> Name Repo -> CreateFile -> Request 'RW ContentResult
+ GitHub: createFileR :: Name Owner -> Name Repo -> CreateFile -> Request 'RW ContentResult
- GitHub: createIssueR :: Name Owner -> Name Repo -> NewIssue -> Request 'RW Issue
+ GitHub: createIssueR :: Name Owner -> Name Repo -> NewIssue -> Request 'RW Issue
- GitHub: createLabelR :: Name Owner -> Name Repo -> NewIssueLabel -> Request 'RW IssueLabel
+ GitHub: createLabelR :: Name Owner -> Name Repo -> NewIssueLabel -> Request 'RW IssueLabel
- GitHub: createMilestoneR :: Name Owner -> Name Repo -> NewMilestone -> Request 'RW Milestone
+ GitHub: createMilestoneR :: Name Owner -> Name Repo -> NewMilestone -> Request 'RW Milestone
- GitHub: createPullCommentR :: Name Owner -> Name Repo -> IssueNumber -> Text -> Text -> Int -> Text -> Request 'RW Comment
+ GitHub: createPullCommentR :: Name Owner -> Name Repo -> IssueNumber -> Text -> Text -> Int -> Text -> Request 'RW Comment
- GitHub: createPullCommentReplyR :: Name Owner -> Name Repo -> IssueNumber -> Id Comment -> Text -> Request 'RW Comment
+ GitHub: createPullCommentReplyR :: Name Owner -> Name Repo -> IssueNumber -> Id Comment -> Text -> Request 'RW Comment
- GitHub: createPullRequestR :: Name Owner -> Name Repo -> CreatePullRequest -> Request 'RW PullRequest
+ GitHub: createPullRequestR :: Name Owner -> Name Repo -> CreatePullRequest -> Request 'RW PullRequest
- GitHub: createReferenceR :: Name Owner -> Name Repo -> NewGitReference -> Request 'RW GitReference
+ GitHub: createReferenceR :: Name Owner -> Name Repo -> NewGitReference -> Request 'RW GitReference
- GitHub: createRepoDeployKeyR :: Name Owner -> Name Repo -> NewRepoDeployKey -> Request 'RW RepoDeployKey
+ GitHub: createRepoDeployKeyR :: Name Owner -> Name Repo -> NewRepoDeployKey -> Request 'RW RepoDeployKey
- GitHub: createRepoWebhookR :: Name Owner -> Name Repo -> NewRepoWebhook -> Request 'RW RepoWebhook
+ GitHub: createRepoWebhookR :: Name Owner -> Name Repo -> NewRepoWebhook -> Request 'RW RepoWebhook
- GitHub: createStatusR :: Name Owner -> Name Repo -> Name Commit -> NewStatus -> Request 'RW Status
+ GitHub: createStatusR :: Name Owner -> Name Repo -> Name Commit -> NewStatus -> Request 'RW Status
- GitHub: createTeamForR :: Name Organization -> CreateTeam -> Request 'RW Team
+ GitHub: createTeamForR :: Name Organization -> CreateTeam -> Request 'RW Team
- GitHub: createUserPublicSSHKeyR :: NewPublicSSHKey -> Request 'RW PublicSSHKey
+ GitHub: createUserPublicSSHKeyR :: NewPublicSSHKey -> Request 'RW PublicSSHKey
- GitHub: currentUserEmailsR :: FetchCount -> Request 'RA (Vector Email)
+ GitHub: currentUserEmailsR :: FetchCount -> Request 'RA (Vector Email)
- GitHub: currentUserIssuesR :: IssueMod -> FetchCount -> Request 'RA (Vector Issue)
+ GitHub: currentUserIssuesR :: IssueMod -> FetchCount -> Request 'RA (Vector Issue)
- GitHub: currentUserPublicEmailsR :: FetchCount -> Request 'RA (Vector Email)
+ GitHub: currentUserPublicEmailsR :: FetchCount -> Request 'RA (Vector Email)
- GitHub: deleteCommentR :: Name Owner -> Name Repo -> Id Comment -> GenRequest 'MtUnit 'RW ()
+ GitHub: deleteCommentR :: Name Owner -> Name Repo -> Id Comment -> GenRequest 'MtUnit 'RW ()
- GitHub: deleteFileR :: Name Owner -> Name Repo -> DeleteFile -> GenRequest 'MtUnit 'RW ()
+ GitHub: deleteFileR :: Name Owner -> Name Repo -> DeleteFile -> GenRequest 'MtUnit 'RW ()
- GitHub: deleteGistR :: Name Gist -> GenRequest 'MtUnit 'RW ()
+ GitHub: deleteGistR :: Name Gist -> GenRequest 'MtUnit 'RW ()
- GitHub: deleteLabelR :: Name Owner -> Name Repo -> Name IssueLabel -> GenRequest 'MtUnit 'RW ()
+ GitHub: deleteLabelR :: Name Owner -> Name Repo -> Name IssueLabel -> GenRequest 'MtUnit 'RW ()
- GitHub: deleteMilestoneR :: Name Owner -> Name Repo -> Id Milestone -> GenRequest 'MtUnit 'RW ()
+ GitHub: deleteMilestoneR :: Name Owner -> Name Repo -> Id Milestone -> GenRequest 'MtUnit 'RW ()
- GitHub: deleteReferenceR :: Name Owner -> Name Repo -> Name GitReference -> GenRequest 'MtUnit 'RW ()
+ GitHub: deleteReferenceR :: Name Owner -> Name Repo -> Name GitReference -> GenRequest 'MtUnit 'RW ()
- GitHub: deleteRepoDeployKeyR :: Name Owner -> Name Repo -> Id RepoDeployKey -> GenRequest 'MtUnit 'RW ()
+ GitHub: deleteRepoDeployKeyR :: Name Owner -> Name Repo -> Id RepoDeployKey -> GenRequest 'MtUnit 'RW ()
- GitHub: deleteRepoWebhookR :: Name Owner -> Name Repo -> Id RepoWebhook -> GenRequest 'MtUnit 'RW ()
+ GitHub: deleteRepoWebhookR :: Name Owner -> Name Repo -> Id RepoWebhook -> GenRequest 'MtUnit 'RW ()
- GitHub: deleteTeamMembershipForR :: Id Team -> Name Owner -> GenRequest 'MtUnit 'RW ()
+ GitHub: deleteTeamMembershipForR :: Id Team -> Name Owner -> GenRequest 'MtUnit 'RW ()
- GitHub: deleteTeamR :: Id Team -> GenRequest 'MtUnit 'RW ()
+ GitHub: deleteTeamR :: Id Team -> GenRequest 'MtUnit 'RW ()
- GitHub: deleteUserPublicSSHKeyR :: Id PublicSSHKey -> GenRequest 'MtUnit 'RW ()
+ GitHub: deleteUserPublicSSHKeyR :: Id PublicSSHKey -> GenRequest 'MtUnit 'RW ()
- GitHub: deployKeyForR :: Name Owner -> Name Repo -> Id RepoDeployKey -> Request 'RA RepoDeployKey
+ GitHub: deployKeyForR :: Name Owner -> Name Repo -> Id RepoDeployKey -> Request 'RA RepoDeployKey
- GitHub: deployKeysForR :: Name Owner -> Name Repo -> FetchCount -> Request 'RA (Vector RepoDeployKey)
+ GitHub: deployKeysForR :: Name Owner -> Name Repo -> FetchCount -> Request 'RA (Vector RepoDeployKey)
- GitHub: deploymentStatusesForR :: Name Owner -> Name Repo -> Id (Deployment a) -> FetchCount -> Request 'RA (Vector DeploymentStatus)
+ GitHub: deploymentStatusesForR :: Name Owner -> Name Repo -> Id (Deployment a) -> FetchCount -> Request 'RA (Vector DeploymentStatus)
- GitHub: deploymentsWithOptionsForR :: FromJSON a => Name Owner -> Name Repo -> FetchCount -> [DeploymentQueryOption] -> Request 'RA (Vector (Deployment a))
+ GitHub: deploymentsWithOptionsForR :: FromJSON a => Name Owner -> Name Repo -> FetchCount -> [DeploymentQueryOption] -> Request 'RA (Vector (Deployment a))
- GitHub: editCommentR :: Name Owner -> Name Repo -> Id Comment -> Text -> Request 'RW Comment
+ GitHub: editCommentR :: Name Owner -> Name Repo -> Id Comment -> Text -> Request 'RW Comment
- GitHub: editIssueR :: Name Owner -> Name Repo -> IssueNumber -> EditIssue -> Request 'RW Issue
+ GitHub: editIssueR :: Name Owner -> Name Repo -> IssueNumber -> EditIssue -> Request 'RW Issue
- GitHub: editRepoWebhookR :: Name Owner -> Name Repo -> Id RepoWebhook -> EditRepoWebhook -> Request 'RW RepoWebhook
+ GitHub: editRepoWebhookR :: Name Owner -> Name Repo -> Id RepoWebhook -> EditRepoWebhook -> Request 'RW RepoWebhook
- GitHub: editTeamR :: Id Team -> EditTeam -> Request 'RW Team
+ GitHub: editTeamR :: Id Team -> EditTeam -> Request 'RW Team
- GitHub: getNotificationsR :: FetchCount -> Request 'RA (Vector Notification)
+ GitHub: getNotificationsR :: FetchCount -> Request 'RA (Vector Notification)
- GitHub: isCollaboratorOnR :: Name Owner -> Name Repo -> Name User -> GenRequest 'MtStatus rw Bool
+ GitHub: isCollaboratorOnR :: Name Owner -> Name Repo -> Name User -> GenRequest 'MtStatus rw Bool
- GitHub: isMemberOfR :: Name User -> Name Organization -> GenRequest 'MtStatus rw Bool
+ GitHub: isMemberOfR :: Name User -> Name Organization -> GenRequest 'MtStatus rw Bool
- GitHub: isPullRequestMergedR :: Name Owner -> Name Repo -> IssueNumber -> GenRequest 'MtStatus rw Bool
+ GitHub: isPullRequestMergedR :: Name Owner -> Name Repo -> IssueNumber -> GenRequest 'MtStatus rw Bool
- GitHub: listInvitationsOnR :: Name Owner -> Name Repo -> FetchCount -> GenRequest 'MtJSON k (Vector RepoInvitation)
+ GitHub: listInvitationsOnR :: Name Owner -> Name Repo -> FetchCount -> GenRequest 'MtJSON k (Vector RepoInvitation)
- GitHub: listTeamMembersR :: Id Team -> TeamMemberRole -> FetchCount -> Request 'RA (Vector SimpleUser)
+ GitHub: listTeamMembersR :: Id Team -> TeamMemberRole -> FetchCount -> Request 'RA (Vector SimpleUser)
- GitHub: listTeamsCurrentR :: FetchCount -> Request 'RA (Vector Team)
+ GitHub: listTeamsCurrentR :: FetchCount -> Request 'RA (Vector Team)
- GitHub: markAllNotificationsAsReadR :: GenRequest 'MtUnit 'RW ()
+ GitHub: markAllNotificationsAsReadR :: GenRequest 'MtUnit 'RW ()
- GitHub: markNotificationAsReadR :: Id Notification -> GenRequest 'MtUnit 'RW ()
+ GitHub: markNotificationAsReadR :: Id Notification -> GenRequest 'MtUnit 'RW ()
- GitHub: mergePullRequestR :: Name Owner -> Name Repo -> IssueNumber -> Maybe Text -> GenRequest 'MtStatus 'RW MergeResult
+ GitHub: mergePullRequestR :: Name Owner -> Name Repo -> IssueNumber -> Maybe Text -> GenRequest 'MtStatus 'RW MergeResult
- GitHub: myStarredAcceptStarR :: FetchCount -> GenRequest 'MtStar 'RA (Vector RepoStarred)
+ GitHub: myStarredAcceptStarR :: FetchCount -> GenRequest 'MtStar 'RA (Vector RepoStarred)
- GitHub: myStarredR :: FetchCount -> Request 'RA (Vector Repo)
+ GitHub: myStarredR :: FetchCount -> Request 'RA (Vector Repo)
- GitHub: orgInvitationsR :: Name Organization -> FetchCount -> Request 'RA (Vector Invitation)
+ GitHub: orgInvitationsR :: Name Organization -> FetchCount -> Request 'RA (Vector Invitation)
- GitHub: pingRepoWebhookR :: Name Owner -> Name Repo -> Id RepoWebhook -> GenRequest 'MtStatus 'RW Bool
+ GitHub: pingRepoWebhookR :: Name Owner -> Name Repo -> Id RepoWebhook -> GenRequest 'MtStatus 'RW Bool
- GitHub: publicSSHKeyR :: Id PublicSSHKey -> Request 'RA PublicSSHKey
+ GitHub: publicSSHKeyR :: Id PublicSSHKey -> Request 'RA PublicSSHKey
- GitHub: publicSSHKeysForR :: Name Owner -> FetchCount -> Request 'RO (Vector PublicSSHKeyBasic)
+ GitHub: publicSSHKeysForR :: Name Owner -> FetchCount -> Request 'RO (Vector PublicSSHKeyBasic)
- GitHub: publicSSHKeysR :: Request 'RA (Vector PublicSSHKey)
+ GitHub: publicSSHKeysR :: Request 'RA (Vector PublicSSHKey)
- GitHub: pullRequestDiffR :: Name Owner -> Name Repo -> IssueNumber -> GenRequest 'MtDiff rw ByteString
+ GitHub: pullRequestDiffR :: Name Owner -> Name Repo -> IssueNumber -> GenRequest 'MtDiff rw ByteString
- GitHub: pullRequestPatchR :: Name Owner -> Name Repo -> IssueNumber -> GenRequest 'MtPatch rw ByteString
+ GitHub: pullRequestPatchR :: Name Owner -> Name Repo -> IssueNumber -> GenRequest 'MtPatch rw ByteString
- GitHub: removeAllLabelsFromIssueR :: Name Owner -> Name Repo -> Id Issue -> GenRequest 'MtUnit 'RW ()
+ GitHub: removeAllLabelsFromIssueR :: Name Owner -> Name Repo -> Id Issue -> GenRequest 'MtUnit 'RW ()
- GitHub: removeLabelFromIssueR :: Name Owner -> Name Repo -> Id Issue -> Name IssueLabel -> GenRequest 'MtUnit 'RW ()
+ GitHub: removeLabelFromIssueR :: Name Owner -> Name Repo -> Id Issue -> Name IssueLabel -> GenRequest 'MtUnit 'RW ()
- GitHub: replaceAllLabelsForIssueR :: Foldable f => Name Owner -> Name Repo -> Id Issue -> f (Name IssueLabel) -> Request 'RW (Vector IssueLabel)
+ GitHub: replaceAllLabelsForIssueR :: Foldable f => Name Owner -> Name Repo -> Id Issue -> f (Name IssueLabel) -> Request 'RW (Vector IssueLabel)
- GitHub: repositoryEventsR :: Name Owner -> Name Repo -> FetchCount -> Request 'RO (Vector Event)
+ GitHub: repositoryEventsR :: Name Owner -> Name Repo -> FetchCount -> Request 'RO (Vector Event)
- GitHub: starGistR :: Name Gist -> GenRequest 'MtUnit 'RW ()
+ GitHub: starGistR :: Name Gist -> GenRequest 'MtUnit 'RW ()
- GitHub: starRepoR :: Name Owner -> Name Repo -> GenRequest 'MtUnit 'RW ()
+ GitHub: starRepoR :: Name Owner -> Name Repo -> GenRequest 'MtUnit 'RW ()
- GitHub: statusForR :: Name Owner -> Name Repo -> Name Commit -> Request 'RW CombinedStatus
+ GitHub: statusForR :: Name Owner -> Name Repo -> Name Commit -> Request 'RW CombinedStatus
- GitHub: statusesForR :: Name Owner -> Name Repo -> Name Commit -> FetchCount -> Request 'RW (Vector Status)
+ GitHub: statusesForR :: Name Owner -> Name Repo -> Name Commit -> FetchCount -> Request 'RW (Vector Status)
- GitHub: testPushRepoWebhookR :: Name Owner -> Name Repo -> Id RepoWebhook -> GenRequest 'MtStatus 'RW Bool
+ GitHub: testPushRepoWebhookR :: Name Owner -> Name Repo -> Id RepoWebhook -> GenRequest 'MtStatus 'RW Bool
- GitHub: unstarGistR :: Name Gist -> GenRequest 'MtUnit 'RW ()
+ GitHub: unstarGistR :: Name Gist -> GenRequest 'MtUnit 'RW ()
- GitHub: unstarRepoR :: Name Owner -> Name Repo -> GenRequest 'MtUnit 'RW ()
+ GitHub: unstarRepoR :: Name Owner -> Name Repo -> GenRequest 'MtUnit 'RW ()
- GitHub: updateFileR :: Name Owner -> Name Repo -> UpdateFile -> Request 'RW ContentResult
+ GitHub: updateFileR :: Name Owner -> Name Repo -> UpdateFile -> Request 'RW ContentResult
- GitHub: updateLabelR :: Name Owner -> Name Repo -> Name IssueLabel -> UpdateIssueLabel -> Request 'RW IssueLabel
+ GitHub: updateLabelR :: Name Owner -> Name Repo -> Name IssueLabel -> UpdateIssueLabel -> Request 'RW IssueLabel
- GitHub: updateMilestoneR :: Name Owner -> Name Repo -> Id Milestone -> UpdateMilestone -> Request 'RW Milestone
+ GitHub: updateMilestoneR :: Name Owner -> Name Repo -> Id Milestone -> UpdateMilestone -> Request 'RW Milestone
- GitHub: updatePullRequestR :: Name Owner -> Name Repo -> IssueNumber -> EditPullRequest -> Request 'RW PullRequest
+ GitHub: updatePullRequestR :: Name Owner -> Name Repo -> IssueNumber -> EditPullRequest -> Request 'RW PullRequest
- GitHub: userEventsR :: Name User -> FetchCount -> Request 'RO (Vector Event)
+ GitHub: userEventsR :: Name User -> FetchCount -> Request 'RO (Vector Event)
- GitHub: userInfoCurrentR :: Request 'RA User
+ GitHub: userInfoCurrentR :: Request 'RA User
- GitHub.Data.Content: (.=?) :: ToJSON v => Text -> Maybe v -> [Pair]
+ GitHub.Data.Content: (.=?) :: ToJSON v => Key -> Maybe v -> [Pair]
- GitHub.Data.PullRequests: PullRequest :: !Maybe UTCTime -> !UTCTime -> !SimpleUser -> !URL -> !IssueState -> !IssueNumber -> !URL -> !UTCTime -> !Maybe Text -> Vector SimpleUser -> Vector SimpleUser -> !URL -> !URL -> !URL -> !PullRequestLinks -> !Maybe UTCTime -> !Text -> !Id PullRequest -> !Maybe SimpleUser -> !Int -> !PullRequestCommit -> !Count -> !Count -> !Count -> !Count -> !PullRequestCommit -> !Count -> !Bool -> !Maybe Bool -> !MergeableState -> PullRequest
+ GitHub.Data.PullRequests: PullRequest :: !Maybe UTCTime -> !UTCTime -> !SimpleUser -> !URL -> !IssueState -> !IssueNumber -> !URL -> !UTCTime -> !Maybe Text -> Vector SimpleUser -> Vector SimpleUser -> Vector SimpleTeam -> !URL -> !URL -> !URL -> !PullRequestLinks -> !Maybe UTCTime -> !Text -> !Id PullRequest -> !Maybe SimpleUser -> !Int -> !PullRequestCommit -> !Count -> !Count -> !Count -> !Count -> !PullRequestCommit -> !Count -> !Bool -> !Maybe Bool -> !MergeableState -> PullRequest
- GitHub.Data.PullRequests: SimplePullRequest :: !Maybe UTCTime -> !UTCTime -> !SimpleUser -> !URL -> !IssueState -> !IssueNumber -> !URL -> !UTCTime -> !Maybe Text -> Vector SimpleUser -> Vector SimpleUser -> !URL -> !URL -> !URL -> !PullRequestLinks -> !Maybe UTCTime -> !Text -> !Id PullRequest -> SimplePullRequest
+ GitHub.Data.PullRequests: SimplePullRequest :: !Maybe UTCTime -> !UTCTime -> !SimpleUser -> !URL -> !IssueState -> !IssueNumber -> !URL -> !UTCTime -> !Maybe Text -> Vector SimpleUser -> Vector SimpleUser -> Vector SimpleTeam -> !URL -> !URL -> !URL -> !PullRequestLinks -> !Maybe UTCTime -> !Text -> !Id PullRequest -> SimplePullRequest
- GitHub.Data.Request: [Command] :: CommandMethod -> Paths -> ByteString -> GenRequest mt 'RW a
+ GitHub.Data.Request: [Command] :: CommandMethod -> Paths -> ByteString -> GenRequest mt 'RW a
- GitHub.Data.Request: command :: CommandMethod -> Paths -> ByteString -> Request 'RW a
+ GitHub.Data.Request: command :: CommandMethod -> Paths -> ByteString -> Request 'RW a
- GitHub.Data.Request: type Request = GenRequest 'MtJSON
+ GitHub.Data.Request: type Request = GenRequest 'MtJSON
- GitHub.Data.Reviews: Review :: !Text -> !Text -> ReviewState -> !UTCTime -> !URL -> !Text -> !SimpleUser -> !Id Review -> Review
+ GitHub.Data.Reviews: Review :: !Text -> !Text -> ReviewState -> !Maybe UTCTime -> !URL -> !Text -> !SimpleUser -> !Id Review -> Review
- GitHub.Data.Reviews: [reviewSubmittedAt] :: Review -> !UTCTime
+ GitHub.Data.Reviews: [reviewSubmittedAt] :: Review -> !Maybe UTCTime
- GitHub.Endpoints.Activity.Events: repositoryEventsR :: Name Owner -> Name Repo -> FetchCount -> Request 'RO (Vector Event)
+ GitHub.Endpoints.Activity.Events: repositoryEventsR :: Name Owner -> Name Repo -> FetchCount -> Request 'RO (Vector Event)
- GitHub.Endpoints.Activity.Events: userEventsR :: Name User -> FetchCount -> Request 'RO (Vector Event)
+ GitHub.Endpoints.Activity.Events: userEventsR :: Name User -> FetchCount -> Request 'RO (Vector Event)
- GitHub.Endpoints.Activity.Notifications: getNotificationsR :: FetchCount -> Request 'RA (Vector Notification)
+ GitHub.Endpoints.Activity.Notifications: getNotificationsR :: FetchCount -> Request 'RA (Vector Notification)
- GitHub.Endpoints.Activity.Notifications: markAllNotificationsAsReadR :: GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Activity.Notifications: markAllNotificationsAsReadR :: GenRequest 'MtUnit 'RW ()
- GitHub.Endpoints.Activity.Notifications: markNotificationAsReadR :: Id Notification -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Activity.Notifications: markNotificationAsReadR :: Id Notification -> GenRequest 'MtUnit 'RW ()
- GitHub.Endpoints.Activity.Starring: myStarredAcceptStarR :: FetchCount -> GenRequest 'MtStar 'RA (Vector RepoStarred)
+ GitHub.Endpoints.Activity.Starring: myStarredAcceptStarR :: FetchCount -> GenRequest 'MtStar 'RA (Vector RepoStarred)
- GitHub.Endpoints.Activity.Starring: myStarredR :: FetchCount -> Request 'RA (Vector Repo)
+ GitHub.Endpoints.Activity.Starring: myStarredR :: FetchCount -> Request 'RA (Vector Repo)
- GitHub.Endpoints.Activity.Starring: starRepoR :: Name Owner -> Name Repo -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Activity.Starring: starRepoR :: Name Owner -> Name Repo -> GenRequest 'MtUnit 'RW ()
- GitHub.Endpoints.Activity.Starring: unstarRepoR :: Name Owner -> Name Repo -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Activity.Starring: unstarRepoR :: Name Owner -> Name Repo -> GenRequest 'MtUnit 'RW ()
- GitHub.Endpoints.Enterprise.Organizations: createOrganizationR :: CreateOrganization -> Request 'RW SimpleOrganization
+ GitHub.Endpoints.Enterprise.Organizations: createOrganizationR :: CreateOrganization -> Request 'RW SimpleOrganization
- GitHub.Endpoints.Enterprise.Organizations: renameOrganizationR :: Name Organization -> RenameOrganization -> Request 'RW RenameOrganizationResponse
+ GitHub.Endpoints.Enterprise.Organizations: renameOrganizationR :: Name Organization -> RenameOrganization -> Request 'RW RenameOrganizationResponse
- GitHub.Endpoints.Gists: deleteGistR :: Name Gist -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Gists: deleteGistR :: Name Gist -> GenRequest 'MtUnit 'RW ()
- GitHub.Endpoints.Gists: starGistR :: Name Gist -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Gists: starGistR :: Name Gist -> GenRequest 'MtUnit 'RW ()
- GitHub.Endpoints.Gists: unstarGistR :: Name Gist -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Gists: unstarGistR :: Name Gist -> GenRequest 'MtUnit 'RW ()
- GitHub.Endpoints.GitData.References: createReferenceR :: Name Owner -> Name Repo -> NewGitReference -> Request 'RW GitReference
+ GitHub.Endpoints.GitData.References: createReferenceR :: Name Owner -> Name Repo -> NewGitReference -> Request 'RW GitReference
- GitHub.Endpoints.GitData.References: deleteReferenceR :: Name Owner -> Name Repo -> Name GitReference -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.GitData.References: deleteReferenceR :: Name Owner -> Name Repo -> Name GitReference -> GenRequest 'MtUnit 'RW ()
- GitHub.Endpoints.Issues: createIssueR :: Name Owner -> Name Repo -> NewIssue -> Request 'RW Issue
+ GitHub.Endpoints.Issues: createIssueR :: Name Owner -> Name Repo -> NewIssue -> Request 'RW Issue
- GitHub.Endpoints.Issues: currentUserIssuesR :: IssueMod -> FetchCount -> Request 'RA (Vector Issue)
+ GitHub.Endpoints.Issues: currentUserIssuesR :: IssueMod -> FetchCount -> Request 'RA (Vector Issue)
- GitHub.Endpoints.Issues: editIssueR :: Name Owner -> Name Repo -> IssueNumber -> EditIssue -> Request 'RW Issue
+ GitHub.Endpoints.Issues: editIssueR :: Name Owner -> Name Repo -> IssueNumber -> EditIssue -> Request 'RW Issue
- GitHub.Endpoints.Issues.Comments: createCommentR :: Name Owner -> Name Repo -> IssueNumber -> Text -> Request 'RW Comment
+ GitHub.Endpoints.Issues.Comments: createCommentR :: Name Owner -> Name Repo -> IssueNumber -> Text -> Request 'RW Comment
- GitHub.Endpoints.Issues.Comments: deleteCommentR :: Name Owner -> Name Repo -> Id Comment -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Issues.Comments: deleteCommentR :: Name Owner -> Name Repo -> Id Comment -> GenRequest 'MtUnit 'RW ()
- GitHub.Endpoints.Issues.Comments: editCommentR :: Name Owner -> Name Repo -> Id Comment -> Text -> Request 'RW Comment
+ GitHub.Endpoints.Issues.Comments: editCommentR :: Name Owner -> Name Repo -> Id Comment -> Text -> Request 'RW Comment
- GitHub.Endpoints.Issues.Labels: addLabelsToIssueR :: Foldable f => Name Owner -> Name Repo -> Id Issue -> f (Name IssueLabel) -> Request 'RW (Vector IssueLabel)
+ GitHub.Endpoints.Issues.Labels: addLabelsToIssueR :: Foldable f => Name Owner -> Name Repo -> Id Issue -> f (Name IssueLabel) -> Request 'RW (Vector IssueLabel)
- GitHub.Endpoints.Issues.Labels: createLabelR :: Name Owner -> Name Repo -> NewIssueLabel -> Request 'RW IssueLabel
+ GitHub.Endpoints.Issues.Labels: createLabelR :: Name Owner -> Name Repo -> NewIssueLabel -> Request 'RW IssueLabel
- GitHub.Endpoints.Issues.Labels: deleteLabelR :: Name Owner -> Name Repo -> Name IssueLabel -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Issues.Labels: deleteLabelR :: Name Owner -> Name Repo -> Name IssueLabel -> GenRequest 'MtUnit 'RW ()
- GitHub.Endpoints.Issues.Labels: removeAllLabelsFromIssueR :: Name Owner -> Name Repo -> Id Issue -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Issues.Labels: removeAllLabelsFromIssueR :: Name Owner -> Name Repo -> Id Issue -> GenRequest 'MtUnit 'RW ()
- GitHub.Endpoints.Issues.Labels: removeLabelFromIssueR :: Name Owner -> Name Repo -> Id Issue -> Name IssueLabel -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Issues.Labels: removeLabelFromIssueR :: Name Owner -> Name Repo -> Id Issue -> Name IssueLabel -> GenRequest 'MtUnit 'RW ()
- GitHub.Endpoints.Issues.Labels: replaceAllLabelsForIssueR :: Foldable f => Name Owner -> Name Repo -> Id Issue -> f (Name IssueLabel) -> Request 'RW (Vector IssueLabel)
+ GitHub.Endpoints.Issues.Labels: replaceAllLabelsForIssueR :: Foldable f => Name Owner -> Name Repo -> Id Issue -> f (Name IssueLabel) -> Request 'RW (Vector IssueLabel)
- GitHub.Endpoints.Issues.Labels: updateLabelR :: Name Owner -> Name Repo -> Name IssueLabel -> UpdateIssueLabel -> Request 'RW IssueLabel
+ GitHub.Endpoints.Issues.Labels: updateLabelR :: Name Owner -> Name Repo -> Name IssueLabel -> UpdateIssueLabel -> Request 'RW IssueLabel
- GitHub.Endpoints.Issues.Milestones: createMilestoneR :: Name Owner -> Name Repo -> NewMilestone -> Request 'RW Milestone
+ GitHub.Endpoints.Issues.Milestones: createMilestoneR :: Name Owner -> Name Repo -> NewMilestone -> Request 'RW Milestone
- GitHub.Endpoints.Issues.Milestones: deleteMilestoneR :: Name Owner -> Name Repo -> Id Milestone -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Issues.Milestones: deleteMilestoneR :: Name Owner -> Name Repo -> Id Milestone -> GenRequest 'MtUnit 'RW ()
- GitHub.Endpoints.Issues.Milestones: updateMilestoneR :: Name Owner -> Name Repo -> Id Milestone -> UpdateMilestone -> Request 'RW Milestone
+ GitHub.Endpoints.Issues.Milestones: updateMilestoneR :: Name Owner -> Name Repo -> Id Milestone -> UpdateMilestone -> Request 'RW Milestone
- GitHub.Endpoints.Organizations.Members: isMemberOfR :: Name User -> Name Organization -> GenRequest 'MtStatus rw Bool
+ GitHub.Endpoints.Organizations.Members: isMemberOfR :: Name User -> Name Organization -> GenRequest 'MtStatus rw Bool
- GitHub.Endpoints.Organizations.Members: orgInvitationsR :: Name Organization -> FetchCount -> Request 'RA (Vector Invitation)
+ GitHub.Endpoints.Organizations.Members: orgInvitationsR :: Name Organization -> FetchCount -> Request 'RA (Vector Invitation)
- GitHub.Endpoints.Organizations.Teams: addOrUpdateTeamRepoR :: Id Team -> Name Organization -> Name Repo -> Permission -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Organizations.Teams: addOrUpdateTeamRepoR :: Id Team -> Name Organization -> Name Repo -> Permission -> GenRequest 'MtUnit 'RW ()
- GitHub.Endpoints.Organizations.Teams: addTeamMembershipForR :: Id Team -> Name Owner -> Role -> Request 'RW TeamMembership
+ GitHub.Endpoints.Organizations.Teams: addTeamMembershipForR :: Id Team -> Name Owner -> Role -> Request 'RW TeamMembership
- GitHub.Endpoints.Organizations.Teams: createTeamForR :: Name Organization -> CreateTeam -> Request 'RW Team
+ GitHub.Endpoints.Organizations.Teams: createTeamForR :: Name Organization -> CreateTeam -> Request 'RW Team
- GitHub.Endpoints.Organizations.Teams: deleteTeamMembershipForR :: Id Team -> Name Owner -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Organizations.Teams: deleteTeamMembershipForR :: Id Team -> Name Owner -> GenRequest 'MtUnit 'RW ()
- GitHub.Endpoints.Organizations.Teams: deleteTeamR :: Id Team -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Organizations.Teams: deleteTeamR :: Id Team -> GenRequest 'MtUnit 'RW ()
- GitHub.Endpoints.Organizations.Teams: editTeamR :: Id Team -> EditTeam -> Request 'RW Team
+ GitHub.Endpoints.Organizations.Teams: editTeamR :: Id Team -> EditTeam -> Request 'RW Team
- GitHub.Endpoints.Organizations.Teams: listTeamMembersR :: Id Team -> TeamMemberRole -> FetchCount -> Request 'RA (Vector SimpleUser)
+ GitHub.Endpoints.Organizations.Teams: listTeamMembersR :: Id Team -> TeamMemberRole -> FetchCount -> Request 'RA (Vector SimpleUser)
- GitHub.Endpoints.Organizations.Teams: listTeamsCurrentR :: FetchCount -> Request 'RA (Vector Team)
+ GitHub.Endpoints.Organizations.Teams: listTeamsCurrentR :: FetchCount -> Request 'RA (Vector Team)
- GitHub.Endpoints.PullRequests: createPullRequestR :: Name Owner -> Name Repo -> CreatePullRequest -> Request 'RW PullRequest
+ GitHub.Endpoints.PullRequests: createPullRequestR :: Name Owner -> Name Repo -> CreatePullRequest -> Request 'RW PullRequest
- GitHub.Endpoints.PullRequests: isPullRequestMergedR :: Name Owner -> Name Repo -> IssueNumber -> GenRequest 'MtStatus rw Bool
+ GitHub.Endpoints.PullRequests: isPullRequestMergedR :: Name Owner -> Name Repo -> IssueNumber -> GenRequest 'MtStatus rw Bool
- GitHub.Endpoints.PullRequests: mergePullRequestR :: Name Owner -> Name Repo -> IssueNumber -> Maybe Text -> GenRequest 'MtStatus 'RW MergeResult
+ GitHub.Endpoints.PullRequests: mergePullRequestR :: Name Owner -> Name Repo -> IssueNumber -> Maybe Text -> GenRequest 'MtStatus 'RW MergeResult
- GitHub.Endpoints.PullRequests: pullRequestDiffR :: Name Owner -> Name Repo -> IssueNumber -> GenRequest 'MtDiff rw ByteString
+ GitHub.Endpoints.PullRequests: pullRequestDiffR :: Name Owner -> Name Repo -> IssueNumber -> GenRequest 'MtDiff rw ByteString
- GitHub.Endpoints.PullRequests: pullRequestPatchR :: Name Owner -> Name Repo -> IssueNumber -> GenRequest 'MtPatch rw ByteString
+ GitHub.Endpoints.PullRequests: pullRequestPatchR :: Name Owner -> Name Repo -> IssueNumber -> GenRequest 'MtPatch rw ByteString
- GitHub.Endpoints.PullRequests: updatePullRequestR :: Name Owner -> Name Repo -> IssueNumber -> EditPullRequest -> Request 'RW PullRequest
+ GitHub.Endpoints.PullRequests: updatePullRequestR :: Name Owner -> Name Repo -> IssueNumber -> EditPullRequest -> Request 'RW PullRequest
- GitHub.Endpoints.PullRequests.Comments: createPullCommentR :: Name Owner -> Name Repo -> IssueNumber -> Text -> Text -> Int -> Text -> Request 'RW Comment
+ GitHub.Endpoints.PullRequests.Comments: createPullCommentR :: Name Owner -> Name Repo -> IssueNumber -> Text -> Text -> Int -> Text -> Request 'RW Comment
- GitHub.Endpoints.PullRequests.Comments: createPullCommentReplyR :: Name Owner -> Name Repo -> IssueNumber -> Id Comment -> Text -> Request 'RW Comment
+ GitHub.Endpoints.PullRequests.Comments: createPullCommentReplyR :: Name Owner -> Name Repo -> IssueNumber -> Id Comment -> Text -> Request 'RW Comment
- GitHub.Endpoints.Repos: createOrganizationRepoR :: Name Organization -> NewRepo -> Request 'RW Repo
+ GitHub.Endpoints.Repos: createOrganizationRepoR :: Name Organization -> NewRepo -> Request 'RW Repo
- GitHub.Endpoints.Repos: createRepoR :: NewRepo -> Request 'RW Repo
+ GitHub.Endpoints.Repos: createRepoR :: NewRepo -> Request 'RW Repo
- GitHub.Endpoints.Repos: deleteRepoR :: Name Owner -> Name Repo -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Repos: deleteRepoR :: Name Owner -> Name Repo -> GenRequest 'MtUnit 'RW ()
- GitHub.Endpoints.Repos: editRepoR :: Name Owner -> Name Repo -> EditRepo -> Request 'RW Repo
+ GitHub.Endpoints.Repos: editRepoR :: Name Owner -> Name Repo -> EditRepo -> Request 'RW Repo
- GitHub.Endpoints.Repos: forkExistingRepoR :: Name Owner -> Name Repo -> Maybe (Name Owner) -> Request 'RW Repo
+ GitHub.Endpoints.Repos: forkExistingRepoR :: Name Owner -> Name Repo -> Maybe (Name Owner) -> Request 'RW Repo
- GitHub.Endpoints.Repos.Collaborators: addCollaboratorR :: Name Owner -> Name Repo -> Name User -> GenRequest 'MtJSON 'RW (Maybe RepoInvitation)
+ GitHub.Endpoints.Repos.Collaborators: addCollaboratorR :: Name Owner -> Name Repo -> Name User -> GenRequest 'MtJSON 'RW (Maybe RepoInvitation)
- GitHub.Endpoints.Repos.Collaborators: collaboratorPermissionOnR :: Name Owner -> Name Repo -> Name User -> GenRequest 'MtJSON rw CollaboratorWithPermission
+ GitHub.Endpoints.Repos.Collaborators: collaboratorPermissionOnR :: Name Owner -> Name Repo -> Name User -> GenRequest 'MtJSON rw CollaboratorWithPermission
- GitHub.Endpoints.Repos.Collaborators: isCollaboratorOnR :: Name Owner -> Name Repo -> Name User -> GenRequest 'MtStatus rw Bool
+ GitHub.Endpoints.Repos.Collaborators: isCollaboratorOnR :: Name Owner -> Name Repo -> Name User -> GenRequest 'MtStatus rw Bool
- GitHub.Endpoints.Repos.Contents: archiveForR :: Name Owner -> Name Repo -> ArchiveFormat -> Maybe Text -> GenRequest 'MtRedirect rw URI
+ GitHub.Endpoints.Repos.Contents: archiveForR :: Name Owner -> Name Repo -> ArchiveFormat -> Maybe Text -> GenRequest 'MtRedirect rw URI
- GitHub.Endpoints.Repos.Contents: createFileR :: Name Owner -> Name Repo -> CreateFile -> Request 'RW ContentResult
+ GitHub.Endpoints.Repos.Contents: createFileR :: Name Owner -> Name Repo -> CreateFile -> Request 'RW ContentResult
- GitHub.Endpoints.Repos.Contents: deleteFileR :: Name Owner -> Name Repo -> DeleteFile -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Repos.Contents: deleteFileR :: Name Owner -> Name Repo -> DeleteFile -> GenRequest 'MtUnit 'RW ()
- GitHub.Endpoints.Repos.Contents: updateFileR :: Name Owner -> Name Repo -> UpdateFile -> Request 'RW ContentResult
+ GitHub.Endpoints.Repos.Contents: updateFileR :: Name Owner -> Name Repo -> UpdateFile -> Request 'RW ContentResult
- GitHub.Endpoints.Repos.DeployKeys: createRepoDeployKeyR :: Name Owner -> Name Repo -> NewRepoDeployKey -> Request 'RW RepoDeployKey
+ GitHub.Endpoints.Repos.DeployKeys: createRepoDeployKeyR :: Name Owner -> Name Repo -> NewRepoDeployKey -> Request 'RW RepoDeployKey
- GitHub.Endpoints.Repos.DeployKeys: deleteRepoDeployKeyR :: Name Owner -> Name Repo -> Id RepoDeployKey -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Repos.DeployKeys: deleteRepoDeployKeyR :: Name Owner -> Name Repo -> Id RepoDeployKey -> GenRequest 'MtUnit 'RW ()
- GitHub.Endpoints.Repos.DeployKeys: deployKeyForR :: Name Owner -> Name Repo -> Id RepoDeployKey -> Request 'RA RepoDeployKey
+ GitHub.Endpoints.Repos.DeployKeys: deployKeyForR :: Name Owner -> Name Repo -> Id RepoDeployKey -> Request 'RA RepoDeployKey
- GitHub.Endpoints.Repos.DeployKeys: deployKeysForR :: Name Owner -> Name Repo -> FetchCount -> Request 'RA (Vector RepoDeployKey)
+ GitHub.Endpoints.Repos.DeployKeys: deployKeysForR :: Name Owner -> Name Repo -> FetchCount -> Request 'RA (Vector RepoDeployKey)
- GitHub.Endpoints.Repos.Deployments: createDeploymentR :: (ToJSON a, FromJSON a) => Name Owner -> Name Repo -> CreateDeployment a -> Request 'RW (Deployment a)
+ GitHub.Endpoints.Repos.Deployments: createDeploymentR :: (ToJSON a, FromJSON a) => Name Owner -> Name Repo -> CreateDeployment a -> Request 'RW (Deployment a)
- GitHub.Endpoints.Repos.Deployments: createDeploymentStatusR :: Name Owner -> Name Repo -> Id (Deployment a) -> CreateDeploymentStatus -> Request 'RW DeploymentStatus
+ GitHub.Endpoints.Repos.Deployments: createDeploymentStatusR :: Name Owner -> Name Repo -> Id (Deployment a) -> CreateDeploymentStatus -> Request 'RW DeploymentStatus
- GitHub.Endpoints.Repos.Deployments: deploymentStatusesForR :: Name Owner -> Name Repo -> Id (Deployment a) -> FetchCount -> Request 'RA (Vector DeploymentStatus)
+ GitHub.Endpoints.Repos.Deployments: deploymentStatusesForR :: Name Owner -> Name Repo -> Id (Deployment a) -> FetchCount -> Request 'RA (Vector DeploymentStatus)
- GitHub.Endpoints.Repos.Deployments: deploymentsWithOptionsForR :: FromJSON a => Name Owner -> Name Repo -> FetchCount -> [DeploymentQueryOption] -> Request 'RA (Vector (Deployment a))
+ GitHub.Endpoints.Repos.Deployments: deploymentsWithOptionsForR :: FromJSON a => Name Owner -> Name Repo -> FetchCount -> [DeploymentQueryOption] -> Request 'RA (Vector (Deployment a))
- GitHub.Endpoints.Repos.Invitations: acceptInvitationFromR :: Id RepoInvitation -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Repos.Invitations: acceptInvitationFromR :: Id RepoInvitation -> GenRequest 'MtUnit 'RW ()
- GitHub.Endpoints.Repos.Invitations: listInvitationsOnR :: Name Owner -> Name Repo -> FetchCount -> GenRequest 'MtJSON k (Vector RepoInvitation)
+ GitHub.Endpoints.Repos.Invitations: listInvitationsOnR :: Name Owner -> Name Repo -> FetchCount -> GenRequest 'MtJSON k (Vector RepoInvitation)
- GitHub.Endpoints.Repos.Statuses: createStatusR :: Name Owner -> Name Repo -> Name Commit -> NewStatus -> Request 'RW Status
+ GitHub.Endpoints.Repos.Statuses: createStatusR :: Name Owner -> Name Repo -> Name Commit -> NewStatus -> Request 'RW Status
- GitHub.Endpoints.Repos.Statuses: statusForR :: Name Owner -> Name Repo -> Name Commit -> Request 'RW CombinedStatus
+ GitHub.Endpoints.Repos.Statuses: statusForR :: Name Owner -> Name Repo -> Name Commit -> Request 'RW CombinedStatus
- GitHub.Endpoints.Repos.Statuses: statusesForR :: Name Owner -> Name Repo -> Name Commit -> FetchCount -> Request 'RW (Vector Status)
+ GitHub.Endpoints.Repos.Statuses: statusesForR :: Name Owner -> Name Repo -> Name Commit -> FetchCount -> Request 'RW (Vector Status)
- GitHub.Endpoints.Repos.Webhooks: createRepoWebhookR :: Name Owner -> Name Repo -> NewRepoWebhook -> Request 'RW RepoWebhook
+ GitHub.Endpoints.Repos.Webhooks: createRepoWebhookR :: Name Owner -> Name Repo -> NewRepoWebhook -> Request 'RW RepoWebhook
- GitHub.Endpoints.Repos.Webhooks: deleteRepoWebhookR :: Name Owner -> Name Repo -> Id RepoWebhook -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Repos.Webhooks: deleteRepoWebhookR :: Name Owner -> Name Repo -> Id RepoWebhook -> GenRequest 'MtUnit 'RW ()
- GitHub.Endpoints.Repos.Webhooks: editRepoWebhookR :: Name Owner -> Name Repo -> Id RepoWebhook -> EditRepoWebhook -> Request 'RW RepoWebhook
+ GitHub.Endpoints.Repos.Webhooks: editRepoWebhookR :: Name Owner -> Name Repo -> Id RepoWebhook -> EditRepoWebhook -> Request 'RW RepoWebhook
- GitHub.Endpoints.Repos.Webhooks: pingRepoWebhookR :: Name Owner -> Name Repo -> Id RepoWebhook -> GenRequest 'MtStatus 'RW Bool
+ GitHub.Endpoints.Repos.Webhooks: pingRepoWebhookR :: Name Owner -> Name Repo -> Id RepoWebhook -> GenRequest 'MtStatus 'RW Bool
- GitHub.Endpoints.Repos.Webhooks: testPushRepoWebhookR :: Name Owner -> Name Repo -> Id RepoWebhook -> GenRequest 'MtStatus 'RW Bool
+ GitHub.Endpoints.Repos.Webhooks: testPushRepoWebhookR :: Name Owner -> Name Repo -> Id RepoWebhook -> GenRequest 'MtStatus 'RW Bool
- GitHub.Endpoints.Users: userInfoCurrentR :: Request 'RA User
+ GitHub.Endpoints.Users: userInfoCurrentR :: Request 'RA User
- GitHub.Endpoints.Users.Emails: currentUserEmailsR :: FetchCount -> Request 'RA (Vector Email)
+ GitHub.Endpoints.Users.Emails: currentUserEmailsR :: FetchCount -> Request 'RA (Vector Email)
- GitHub.Endpoints.Users.Emails: currentUserPublicEmailsR :: FetchCount -> Request 'RA (Vector Email)
+ GitHub.Endpoints.Users.Emails: currentUserPublicEmailsR :: FetchCount -> Request 'RA (Vector Email)
- GitHub.Endpoints.Users.PublicSSHKeys: createUserPublicSSHKeyR :: NewPublicSSHKey -> Request 'RW PublicSSHKey
+ GitHub.Endpoints.Users.PublicSSHKeys: createUserPublicSSHKeyR :: NewPublicSSHKey -> Request 'RW PublicSSHKey
- GitHub.Endpoints.Users.PublicSSHKeys: deleteUserPublicSSHKeyR :: Id PublicSSHKey -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Users.PublicSSHKeys: deleteUserPublicSSHKeyR :: Id PublicSSHKey -> GenRequest 'MtUnit 'RW ()
- GitHub.Endpoints.Users.PublicSSHKeys: publicSSHKeyR :: Id PublicSSHKey -> Request 'RA PublicSSHKey
+ GitHub.Endpoints.Users.PublicSSHKeys: publicSSHKeyR :: Id PublicSSHKey -> Request 'RA PublicSSHKey
- GitHub.Endpoints.Users.PublicSSHKeys: publicSSHKeysForR :: Name Owner -> FetchCount -> Request 'RO (Vector PublicSSHKeyBasic)
+ GitHub.Endpoints.Users.PublicSSHKeys: publicSSHKeysForR :: Name Owner -> FetchCount -> Request 'RO (Vector PublicSSHKeyBasic)
- GitHub.Endpoints.Users.PublicSSHKeys: publicSSHKeysR :: Request 'RA (Vector PublicSSHKey)
+ GitHub.Endpoints.Users.PublicSSHKeys: publicSSHKeysR :: Request 'RA (Vector PublicSSHKey)
- GitHub.Enterprise: createOrganizationR :: CreateOrganization -> Request 'RW SimpleOrganization
+ GitHub.Enterprise: createOrganizationR :: CreateOrganization -> Request 'RW SimpleOrganization
- GitHub.Enterprise: renameOrganizationR :: Name Organization -> RenameOrganization -> Request 'RW RenameOrganizationResponse
+ GitHub.Enterprise: renameOrganizationR :: Name Organization -> RenameOrganization -> Request 'RW RenameOrganizationResponse
- GitHub.Internal.Prelude: (.!=) :: () => Parser (Maybe a) -> a -> Parser a
+ GitHub.Internal.Prelude: (.!=) :: Parser (Maybe a) -> a -> Parser a
- GitHub.Internal.Prelude: (.:) :: FromJSON a => Object -> Text -> Parser a
+ GitHub.Internal.Prelude: (.:) :: FromJSON a => Object -> Key -> Parser a
- GitHub.Internal.Prelude: (.:?) :: FromJSON a => Object -> Text -> Parser (Maybe a)
+ GitHub.Internal.Prelude: (.:?) :: FromJSON a => Object -> Key -> Parser (Maybe a)
- GitHub.Internal.Prelude: (.=) :: (KeyValue kv, ToJSON v) => Text -> v -> kv
+ GitHub.Internal.Prelude: (.=) :: (KeyValue kv, ToJSON v) => Key -> v -> kv
- GitHub.Internal.Prelude: catMaybes :: () => [Maybe a] -> [a]
+ GitHub.Internal.Prelude: catMaybes :: [Maybe a] -> [a]
- GitHub.Internal.Prelude: intercalate :: () => [a] -> [[a]] -> [a]
+ GitHub.Internal.Prelude: intercalate :: [a] -> [[a]] -> [a]
- GitHub.Internal.Prelude: type Object = HashMap Text Value
+ GitHub.Internal.Prelude: type Object = KeyMap Value
- GitHub.Internal.Prelude: typeMismatch :: () => String -> Value -> Parser a
+ GitHub.Internal.Prelude: typeMismatch :: String -> Value -> Parser a
- GitHub.Internal.Prelude: withObject :: () => String -> (Object -> Parser a) -> Value -> Parser a
+ GitHub.Internal.Prelude: withObject :: String -> (Object -> Parser a) -> Value -> Parser a
- GitHub.Internal.Prelude: withText :: () => String -> (Text -> Parser a) -> Value -> Parser a
+ GitHub.Internal.Prelude: withText :: String -> (Text -> Parser a) -> Value -> Parser a
- GitHub.Request: [Command] :: CommandMethod -> Paths -> ByteString -> GenRequest mt 'RW a
+ GitHub.Request: [Command] :: CommandMethod -> Paths -> ByteString -> GenRequest mt 'RW a
- GitHub.Request: executeRequest' :: ParseResponse mt a => GenRequest mt 'RO a -> IO (Either Error a)
+ GitHub.Request: executeRequest' :: ParseResponse mt a => GenRequest mt 'RO a -> IO (Either Error a)
- GitHub.Request: executeRequestMaybe :: (AuthMethod am, ParseResponse mt a) => Maybe am -> GenRequest mt 'RO a -> IO (Either Error a)
+ GitHub.Request: executeRequestMaybe :: (AuthMethod am, ParseResponse mt a) => Maybe am -> GenRequest mt 'RO a -> IO (Either Error a)
- GitHub.Request: executeRequestWithMgr' :: ParseResponse mt a => Manager -> GenRequest mt 'RO a -> IO (Either Error a)
+ GitHub.Request: executeRequestWithMgr' :: ParseResponse mt a => Manager -> GenRequest mt 'RO a -> IO (Either Error a)
- GitHub.Request: previewContentType :: PreviewAccept p => Tagged ( 'MtPreview p) ByteString
+ GitHub.Request: previewContentType :: PreviewAccept p => Tagged ('MtPreview p) ByteString
- GitHub.Request: previewModifyRequest :: PreviewAccept p => Tagged ( 'MtPreview p) (Request -> Request)
+ GitHub.Request: previewModifyRequest :: PreviewAccept p => Tagged ('MtPreview p) (Request -> Request)
- GitHub.Request: previewParseResponse :: (PreviewParseResponse p a, MonadError Error m) => Request -> Response ByteString -> Tagged ( 'MtPreview p) (m a)
+ GitHub.Request: previewParseResponse :: (PreviewParseResponse p a, MonadError Error m) => Request -> Response ByteString -> Tagged ('MtPreview p) (m a)
- GitHub.Request: type Request = GenRequest 'MtJSON
+ GitHub.Request: type Request = GenRequest 'MtJSON
Files
- CHANGELOG.md +11/−0
- README.md +1/−1
- fixtures/pull-request-approved-review.json +38/−0
- fixtures/pull-request-pending-review.json +37/−0
- fixtures/pull-request-team-review-requested.json +362/−0
- github.cabal +13/−18
- spec/GitHub/PullRequestsSpec.hs +18/−0
- spec/GitHub/ReviewDecodeSpec.hs +25/−0
- src/GitHub.hs +1/−1
- src/GitHub/Data/Content.hs +9/−0
- src/GitHub/Data/Definitions.hs +1/−1
- src/GitHub/Data/Gists.hs +32/−0
- src/GitHub/Data/PullRequests.hs +5/−0
- src/GitHub/Data/Reviews.hs +6/−6
- src/GitHub/Data/Webhooks.hs +38/−14
- src/GitHub/Endpoints/Gists.hs +6/−0
- src/GitHub/Internal/Prelude.hs +1/−0
- src/GitHub/Request.hs +2/−2
CHANGELOG.md view
@@ -1,3 +1,14 @@+## Changes for 0.27++- Add vector of SimpleTeam in "requested_teams" field of PullRequest+ [#453](https://github.com/phadej/github/pull/453)+- Add endpoint to create gist+ [#455](https://github.com/phadej/github/pull/455)+- Update RepoWebhookEvent+ [#461](https://github.com/phadej/github/pull/461)+- PullRequest Reviews may not have submitted_at field + [#450](https://github.com/phadej/github/pull/450)+ ## Changes for 0.26 - Generalize PagedQuery to allow its reuse by preview github APIs
README.md view
@@ -42,7 +42,7 @@ Each module lines up with the hierarchy of [documentation from the Github API](http://developer.github.com/v3/). -Request functions (ending with `R`) construct a data type with can be executed+Request functions (ending with `R`) construct a data type which can be executed in `IO` by `executeRequest` functions. They are all listed in the root `GitHub` module.
+ fixtures/pull-request-approved-review.json view
@@ -0,0 +1,38 @@+{+ "id": 80,+ "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=",+ "user": {+ "login": "octocat",+ "id": 1,+ "node_id": "MDQ6VXNlcjE=",+ "avatar_url": "https://github.com/images/error/octocat_happy.gif",+ "gravatar_id": "",+ "url": "https://api.github.com/users/octocat",+ "html_url": "https://github.com/octocat",+ "followers_url": "https://api.github.com/users/octocat/followers",+ "following_url": "https://api.github.com/users/octocat/following{/other_user}",+ "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}",+ "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}",+ "subscriptions_url": "https://api.github.com/users/octocat/subscriptions",+ "organizations_url": "https://api.github.com/users/octocat/orgs",+ "repos_url": "https://api.github.com/users/octocat/repos",+ "events_url": "https://api.github.com/users/octocat/events{/privacy}",+ "received_events_url": "https://api.github.com/users/octocat/received_events",+ "type": "User",+ "site_admin": false+ },+ "body": "Here is the body for the review.",+ "state": "APPROVED",+ "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80",+ "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12",+ "_links": {+ "html": {+ "href": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80"+ },+ "pull_request": {+ "href": "https://api.github.com/repos/octocat/Hello-World/pulls/12"+ }+ },+ "submitted_at": "2019-11-17T17:43:43Z",+ "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091"+}
+ fixtures/pull-request-pending-review.json view
@@ -0,0 +1,37 @@+{+ "id": 80,+ "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=",+ "user": {+ "login": "octocat",+ "id": 1,+ "node_id": "MDQ6VXNlcjE=",+ "avatar_url": "https://github.com/images/error/octocat_happy.gif",+ "gravatar_id": "",+ "url": "https://api.github.com/users/octocat",+ "html_url": "https://github.com/octocat",+ "followers_url": "https://api.github.com/users/octocat/followers",+ "following_url": "https://api.github.com/users/octocat/following{/other_user}",+ "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}",+ "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}",+ "subscriptions_url": "https://api.github.com/users/octocat/subscriptions",+ "organizations_url": "https://api.github.com/users/octocat/orgs",+ "repos_url": "https://api.github.com/users/octocat/repos",+ "events_url": "https://api.github.com/users/octocat/events{/privacy}",+ "received_events_url": "https://api.github.com/users/octocat/received_events",+ "type": "User",+ "site_admin": false+ },+ "body": "Here is the body for the review.",+ "state": "PENDING",+ "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80",+ "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12",+ "_links": {+ "html": {+ "href": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80"+ },+ "pull_request": {+ "href": "https://api.github.com/repos/octocat/Hello-World/pulls/12"+ }+ },+ "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091"+}
+ fixtures/pull-request-team-review-requested.json view
@@ -0,0 +1,362 @@+{+ "url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/pulls/910",+ "id": 529597962,+ "node_id": "MDExOlB1bGxSZXF1ZXN0NTI5NTk3OTYy",+ "html_url": "https://github.com/tahoe-lafs/tahoe-lafs/pull/910",+ "diff_url": "https://github.com/tahoe-lafs/tahoe-lafs/pull/910.diff",+ "patch_url": "https://github.com/tahoe-lafs/tahoe-lafs/pull/910.patch",+ "issue_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/issues/910",+ "number": 910,+ "state": "open",+ "locked": false,+ "title": "Fix NodeMaker's use of the WeakValueDictionary",+ "user": {+ "login": "exarkun",+ "id": 254565,+ "node_id": "MDQ6VXNlcjI1NDU2NQ==",+ "avatar_url": "https://avatars1.githubusercontent.com/u/254565?v=4",+ "gravatar_id": "",+ "url": "https://api.github.com/users/exarkun",+ "html_url": "https://github.com/exarkun",+ "followers_url": "https://api.github.com/users/exarkun/followers",+ "following_url": "https://api.github.com/users/exarkun/following{/other_user}",+ "gists_url": "https://api.github.com/users/exarkun/gists{/gist_id}",+ "starred_url": "https://api.github.com/users/exarkun/starred{/owner}{/repo}",+ "subscriptions_url": "https://api.github.com/users/exarkun/subscriptions",+ "organizations_url": "https://api.github.com/users/exarkun/orgs",+ "repos_url": "https://api.github.com/users/exarkun/repos",+ "events_url": "https://api.github.com/users/exarkun/events{/privacy}",+ "received_events_url": "https://api.github.com/users/exarkun/received_events",+ "type": "User",+ "site_admin": false+ },+ "body": "https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3539",+ "created_at": "2020-11-30T14:46:37Z",+ "updated_at": "2020-12-02T17:23:41Z",+ "closed_at": null,+ "merged_at": null,+ "merge_commit_sha": "3c97064ee5f71357c88f7940a91da8859641c2c6",+ "assignee": null,+ "assignees": [++ ],+ "requested_reviewers": [++ ],+ "requested_teams": [+ {+ "name": "Tahoe Committers",+ "id": 121616,+ "node_id": "MDQ6VGVhbTEyMTYxNg==",+ "slug": "tahoe-committers",+ "description": null,+ "privacy": "closed",+ "url": "https://api.github.com/organizations/1156454/team/121616",+ "html_url": "https://github.com/orgs/tahoe-lafs/teams/tahoe-committers",+ "members_url": "https://api.github.com/organizations/1156454/team/121616/members{/member}",+ "repositories_url": "https://api.github.com/organizations/1156454/team/121616/repos",+ "permission": "push",+ "parent": null+ }+ ],+ "labels": [++ ],+ "milestone": null,+ "draft": false,+ "commits_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/pulls/910/commits",+ "review_comments_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/pulls/910/comments",+ "review_comment_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/pulls/comments{/number}",+ "comments_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/issues/910/comments",+ "statuses_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/statuses/ef2f7e61364c6a3187d2ab4859adfc4031213bdd",+ "head": {+ "label": "tahoe-lafs:3539.nodemaker-weakrefdict",+ "ref": "3539.nodemaker-weakrefdict",+ "sha": "ef2f7e61364c6a3187d2ab4859adfc4031213bdd",+ "user": {+ "login": "tahoe-lafs",+ "id": 1156454,+ "node_id": "MDEyOk9yZ2FuaXphdGlvbjExNTY0NTQ=",+ "avatar_url": "https://avatars1.githubusercontent.com/u/1156454?v=4",+ "gravatar_id": "",+ "url": "https://api.github.com/users/tahoe-lafs",+ "html_url": "https://github.com/tahoe-lafs",+ "followers_url": "https://api.github.com/users/tahoe-lafs/followers",+ "following_url": "https://api.github.com/users/tahoe-lafs/following{/other_user}",+ "gists_url": "https://api.github.com/users/tahoe-lafs/gists{/gist_id}",+ "starred_url": "https://api.github.com/users/tahoe-lafs/starred{/owner}{/repo}",+ "subscriptions_url": "https://api.github.com/users/tahoe-lafs/subscriptions",+ "organizations_url": "https://api.github.com/users/tahoe-lafs/orgs",+ "repos_url": "https://api.github.com/users/tahoe-lafs/repos",+ "events_url": "https://api.github.com/users/tahoe-lafs/events{/privacy}",+ "received_events_url": "https://api.github.com/users/tahoe-lafs/received_events",+ "type": "Organization",+ "site_admin": false+ },+ "repo": {+ "id": 3007569,+ "node_id": "MDEwOlJlcG9zaXRvcnkzMDA3NTY5",+ "name": "tahoe-lafs",+ "full_name": "tahoe-lafs/tahoe-lafs",+ "private": false,+ "owner": {+ "login": "tahoe-lafs",+ "id": 1156454,+ "node_id": "MDEyOk9yZ2FuaXphdGlvbjExNTY0NTQ=",+ "avatar_url": "https://avatars1.githubusercontent.com/u/1156454?v=4",+ "gravatar_id": "",+ "url": "https://api.github.com/users/tahoe-lafs",+ "html_url": "https://github.com/tahoe-lafs",+ "followers_url": "https://api.github.com/users/tahoe-lafs/followers",+ "following_url": "https://api.github.com/users/tahoe-lafs/following{/other_user}",+ "gists_url": "https://api.github.com/users/tahoe-lafs/gists{/gist_id}",+ "starred_url": "https://api.github.com/users/tahoe-lafs/starred{/owner}{/repo}",+ "subscriptions_url": "https://api.github.com/users/tahoe-lafs/subscriptions",+ "organizations_url": "https://api.github.com/users/tahoe-lafs/orgs",+ "repos_url": "https://api.github.com/users/tahoe-lafs/repos",+ "events_url": "https://api.github.com/users/tahoe-lafs/events{/privacy}",+ "received_events_url": "https://api.github.com/users/tahoe-lafs/received_events",+ "type": "Organization",+ "site_admin": false+ },+ "html_url": "https://github.com/tahoe-lafs/tahoe-lafs",+ "description": "The Tahoe-LAFS decentralized secure filesystem.",+ "fork": false,+ "url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs",+ "forks_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/forks",+ "keys_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/keys{/key_id}",+ "collaborators_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/collaborators{/collaborator}",+ "teams_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/teams",+ "hooks_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/hooks",+ "issue_events_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/issues/events{/number}",+ "events_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/events",+ "assignees_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/assignees{/user}",+ "branches_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/branches{/branch}",+ "tags_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/tags",+ "blobs_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/git/blobs{/sha}",+ "git_tags_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/git/tags{/sha}",+ "git_refs_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/git/refs{/sha}",+ "trees_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/git/trees{/sha}",+ "statuses_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/statuses/{sha}",+ "languages_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/languages",+ "stargazers_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/stargazers",+ "contributors_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/contributors",+ "subscribers_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/subscribers",+ "subscription_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/subscription",+ "commits_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/commits{/sha}",+ "git_commits_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/git/commits{/sha}",+ "comments_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/comments{/number}",+ "issue_comment_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/issues/comments{/number}",+ "contents_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/contents/{+path}",+ "compare_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/compare/{base}...{head}",+ "merges_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/merges",+ "archive_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/{archive_format}{/ref}",+ "downloads_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/downloads",+ "issues_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/issues{/number}",+ "pulls_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/pulls{/number}",+ "milestones_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/milestones{/number}",+ "notifications_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/notifications{?since,all,participating}",+ "labels_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/labels{/name}",+ "releases_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/releases{/id}",+ "deployments_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/deployments",+ "created_at": "2011-12-18T19:33:55Z",+ "updated_at": "2020-12-02T20:24:23Z",+ "pushed_at": "2020-12-02T20:27:05Z",+ "git_url": "git://github.com/tahoe-lafs/tahoe-lafs.git",+ "ssh_url": "git@github.com:tahoe-lafs/tahoe-lafs.git",+ "clone_url": "https://github.com/tahoe-lafs/tahoe-lafs.git",+ "svn_url": "https://github.com/tahoe-lafs/tahoe-lafs",+ "homepage": "https://tahoe-lafs.org/",+ "size": 73606,+ "stargazers_count": 1018,+ "watchers_count": 1018,+ "language": "Python",+ "has_issues": false,+ "has_projects": false,+ "has_downloads": true,+ "has_wiki": false,+ "has_pages": false,+ "forks_count": 236,+ "mirror_url": null,+ "archived": false,+ "disabled": false,+ "open_issues_count": 21,+ "license": {+ "key": "other",+ "name": "Other",+ "spdx_id": "NOASSERTION",+ "url": null,+ "node_id": "MDc6TGljZW5zZTA="+ },+ "forks": 236,+ "open_issues": 21,+ "watchers": 1018,+ "default_branch": "master"+ }+ },+ "base": {+ "label": "tahoe-lafs:master",+ "ref": "master",+ "sha": "fba386cb8ee2b48a34c0d954b5c6b5b080d3234e",+ "user": {+ "login": "tahoe-lafs",+ "id": 1156454,+ "node_id": "MDEyOk9yZ2FuaXphdGlvbjExNTY0NTQ=",+ "avatar_url": "https://avatars1.githubusercontent.com/u/1156454?v=4",+ "gravatar_id": "",+ "url": "https://api.github.com/users/tahoe-lafs",+ "html_url": "https://github.com/tahoe-lafs",+ "followers_url": "https://api.github.com/users/tahoe-lafs/followers",+ "following_url": "https://api.github.com/users/tahoe-lafs/following{/other_user}",+ "gists_url": "https://api.github.com/users/tahoe-lafs/gists{/gist_id}",+ "starred_url": "https://api.github.com/users/tahoe-lafs/starred{/owner}{/repo}",+ "subscriptions_url": "https://api.github.com/users/tahoe-lafs/subscriptions",+ "organizations_url": "https://api.github.com/users/tahoe-lafs/orgs",+ "repos_url": "https://api.github.com/users/tahoe-lafs/repos",+ "events_url": "https://api.github.com/users/tahoe-lafs/events{/privacy}",+ "received_events_url": "https://api.github.com/users/tahoe-lafs/received_events",+ "type": "Organization",+ "site_admin": false+ },+ "repo": {+ "id": 3007569,+ "node_id": "MDEwOlJlcG9zaXRvcnkzMDA3NTY5",+ "name": "tahoe-lafs",+ "full_name": "tahoe-lafs/tahoe-lafs",+ "private": false,+ "owner": {+ "login": "tahoe-lafs",+ "id": 1156454,+ "node_id": "MDEyOk9yZ2FuaXphdGlvbjExNTY0NTQ=",+ "avatar_url": "https://avatars1.githubusercontent.com/u/1156454?v=4",+ "gravatar_id": "",+ "url": "https://api.github.com/users/tahoe-lafs",+ "html_url": "https://github.com/tahoe-lafs",+ "followers_url": "https://api.github.com/users/tahoe-lafs/followers",+ "following_url": "https://api.github.com/users/tahoe-lafs/following{/other_user}",+ "gists_url": "https://api.github.com/users/tahoe-lafs/gists{/gist_id}",+ "starred_url": "https://api.github.com/users/tahoe-lafs/starred{/owner}{/repo}",+ "subscriptions_url": "https://api.github.com/users/tahoe-lafs/subscriptions",+ "organizations_url": "https://api.github.com/users/tahoe-lafs/orgs",+ "repos_url": "https://api.github.com/users/tahoe-lafs/repos",+ "events_url": "https://api.github.com/users/tahoe-lafs/events{/privacy}",+ "received_events_url": "https://api.github.com/users/tahoe-lafs/received_events",+ "type": "Organization",+ "site_admin": false+ },+ "html_url": "https://github.com/tahoe-lafs/tahoe-lafs",+ "description": "The Tahoe-LAFS decentralized secure filesystem.",+ "fork": false,+ "url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs",+ "forks_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/forks",+ "keys_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/keys{/key_id}",+ "collaborators_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/collaborators{/collaborator}",+ "teams_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/teams",+ "hooks_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/hooks",+ "issue_events_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/issues/events{/number}",+ "events_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/events",+ "assignees_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/assignees{/user}",+ "branches_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/branches{/branch}",+ "tags_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/tags",+ "blobs_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/git/blobs{/sha}",+ "git_tags_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/git/tags{/sha}",+ "git_refs_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/git/refs{/sha}",+ "trees_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/git/trees{/sha}",+ "statuses_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/statuses/{sha}",+ "languages_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/languages",+ "stargazers_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/stargazers",+ "contributors_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/contributors",+ "subscribers_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/subscribers",+ "subscription_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/subscription",+ "commits_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/commits{/sha}",+ "git_commits_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/git/commits{/sha}",+ "comments_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/comments{/number}",+ "issue_comment_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/issues/comments{/number}",+ "contents_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/contents/{+path}",+ "compare_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/compare/{base}...{head}",+ "merges_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/merges",+ "archive_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/{archive_format}{/ref}",+ "downloads_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/downloads",+ "issues_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/issues{/number}",+ "pulls_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/pulls{/number}",+ "milestones_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/milestones{/number}",+ "notifications_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/notifications{?since,all,participating}",+ "labels_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/labels{/name}",+ "releases_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/releases{/id}",+ "deployments_url": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/deployments",+ "created_at": "2011-12-18T19:33:55Z",+ "updated_at": "2020-12-02T20:24:23Z",+ "pushed_at": "2020-12-02T20:27:05Z",+ "git_url": "git://github.com/tahoe-lafs/tahoe-lafs.git",+ "ssh_url": "git@github.com:tahoe-lafs/tahoe-lafs.git",+ "clone_url": "https://github.com/tahoe-lafs/tahoe-lafs.git",+ "svn_url": "https://github.com/tahoe-lafs/tahoe-lafs",+ "homepage": "https://tahoe-lafs.org/",+ "size": 73606,+ "stargazers_count": 1018,+ "watchers_count": 1018,+ "language": "Python",+ "has_issues": false,+ "has_projects": false,+ "has_downloads": true,+ "has_wiki": false,+ "has_pages": false,+ "forks_count": 236,+ "mirror_url": null,+ "archived": false,+ "disabled": false,+ "open_issues_count": 21,+ "license": {+ "key": "other",+ "name": "Other",+ "spdx_id": "NOASSERTION",+ "url": null,+ "node_id": "MDc6TGljZW5zZTA="+ },+ "forks": 236,+ "open_issues": 21,+ "watchers": 1018,+ "default_branch": "master"+ }+ },+ "_links": {+ "self": {+ "href": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/pulls/910"+ },+ "html": {+ "href": "https://github.com/tahoe-lafs/tahoe-lafs/pull/910"+ },+ "issue": {+ "href": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/issues/910"+ },+ "comments": {+ "href": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/issues/910/comments"+ },+ "review_comments": {+ "href": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/pulls/910/comments"+ },+ "review_comment": {+ "href": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/pulls/comments{/number}"+ },+ "commits": {+ "href": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/pulls/910/commits"+ },+ "statuses": {+ "href": "https://api.github.com/repos/tahoe-lafs/tahoe-lafs/statuses/ef2f7e61364c6a3187d2ab4859adfc4031213bdd"+ }+ },+ "author_association": "MEMBER",+ "active_lock_reason": null,+ "merged": false,+ "mergeable": true,+ "rebaseable": true,+ "mergeable_state": "clean",+ "merged_by": null,+ "comments": 1,+ "review_comments": 0,+ "maintainer_can_modify": false,+ "commits": 5,+ "additions": 223,+ "deletions": 4,+ "changed_files": 5+}
github.cabal view
@@ -1,6 +1,6 @@ cabal-version: >=1.10 name: github-version: 0.26+version: 0.27 synopsis: Access to the GitHub API, v3. category: Network description:@@ -27,7 +27,7 @@ homepage: https://github.com/phadej/github build-type: Simple copyright:- Copyright 2012-2013 Mike Burns, Copyright 2013-2015 John Wiegley, Copyright 2016-2019 Oleg Grenrus+ Copyright 2012-2013 Mike Burns, Copyright 2013-2015 John Wiegley, Copyright 2016-2021 Oleg Grenrus tested-with: GHC ==7.8.4@@ -36,20 +36,14 @@ || ==8.2.2 || ==8.4.4 || ==8.6.5- || ==8.8.3- || ==8.10.1+ || ==8.8.4+ || ==8.10.4+ || ==9.0.1 extra-source-files: README.md CHANGELOG.md- fixtures/issue-search.json- fixtures/list-teams.json- fixtures/members-list.json- fixtures/pull-request-opened.json- fixtures/pull-request-review-requested.json- fixtures/user-organizations.json- fixtures/user.json- fixtures/user-bot.json+ fixtures/*.json source-repository head type: git@@ -164,7 +158,7 @@ -- Packages bundles with GHC, mtl and text are also here build-depends:- base >=4.7 && <4.15+ base >=4.7 && <4.16 , binary >=0.7.1.0 && <0.11 , bytestring >=0.10.4.0 && <0.11 , containers >=0.5.5.1 && <0.7@@ -176,21 +170,21 @@ -- other packages build-depends:- aeson >=1.4.0.0 && <1.6- , base-compat >=0.11.1 && <0.12- , base16-bytestring >=0.1.1.6 && <0.2+ aeson >=1.4.0.0 && <1.6 || >=2.0.1.0 && <2.1+ , base-compat >=0.11.1 && <0.13+ , base16-bytestring >=0.1.1.6 && <1.1 , binary-instances >=1 && <1.1 , cryptohash-sha1 >=0.11.100.1 && <0.12 , deepseq-generics >=0.2.0.0 && <0.3 , exceptions >=0.10.2 && <0.11 , hashable >=1.2.7.0 && <1.4 , http-client >=0.5.12 && <0.8- , http-link-header >=1.0.3.1 && <1.1+ , http-link-header >=1.0.3.1 && <1.3 , http-types >=0.12.3 && <0.13 , iso8601-time >=0.1.5 && <0.2 , network-uri >=2.6.1.0 && <2.7 , tagged >=0.8.5 && <0.9- , transformers-compat >=0.6.5 && <0.7+ , transformers-compat >=0.6.5 && <0.8 , unordered-containers >=0.2.10.0 && <0.3 , vector >=0.12.0.1 && <0.13 , vector-instances >=3.4 && <3.5@@ -229,6 +223,7 @@ GitHub.RateLimitSpec GitHub.ReleasesSpec GitHub.ReposSpec+ GitHub.ReviewDecodeSpec GitHub.SearchSpec GitHub.UsersSpec
spec/GitHub/PullRequestsSpec.hs view
@@ -65,6 +65,13 @@ V.length (GH.pullRequestRequestedReviewers pullRequestReviewRequested) `shouldBe` 1 + it "decodes a pull request 'team_requested' payload" $ do+ V.length (GH.simplePullRequestRequestedTeamReviewers simplePullRequestTeamReviewRequested)+ `shouldBe` 1++ V.length (GH.pullRequestRequestedTeamReviewers pullRequestTeamReviewRequested)+ `shouldBe` 1+ describe "checking if a pull request is merged" $ do it "works" $ withAuth $ \auth -> do b <- GH.executeRequest auth $ GH.isPullRequestMergedR "phadej" "github" (GH.IssueNumber 14)@@ -97,15 +104,26 @@ simplePullRequestReviewRequested = fromRightS (eitherDecodeStrict prReviewRequestedPayload) + simplePullRequestTeamReviewRequested :: GH.SimplePullRequest+ simplePullRequestTeamReviewRequested =+ fromRightS (eitherDecodeStrict prTeamReviewRequestedPayload)+ pullRequestReviewRequested :: GH.PullRequest pullRequestReviewRequested = fromRightS (eitherDecodeStrict prReviewRequestedPayload) + pullRequestTeamReviewRequested :: GH.PullRequest+ pullRequestTeamReviewRequested =+ fromRightS (eitherDecodeStrict prTeamReviewRequestedPayload)+ prOpenedPayload :: ByteString prOpenedPayload = $(embedFile "fixtures/pull-request-opened.json") prReviewRequestedPayload :: ByteString prReviewRequestedPayload = $(embedFile "fixtures/pull-request-review-requested.json")++ prTeamReviewRequestedPayload :: ByteString+ prTeamReviewRequestedPayload = $(embedFile "fixtures/pull-request-team-review-requested.json") ------------------------------------------------------------------------------- -- Draft Pull Requests
+ spec/GitHub/ReviewDecodeSpec.hs view
@@ -0,0 +1,25 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TemplateHaskell #-}+module GitHub.ReviewDecodeSpec where++import Data.Aeson (eitherDecodeStrict)+import Data.Either.Compat (isRight)+import Data.FileEmbed (embedFile)+import Test.Hspec+ (Spec, describe, it, shouldSatisfy)++import GitHub.Data (Review)++spec :: Spec+spec = do+ describe "PENDING state" $ do+ -- https://docs.github.com/en/rest/reference/pulls#create-a-review-for-a-pull-request+ -- > Pull request reviews created in the PENDING state do not include the submitted_at property in the response.+ it "decodes review when submitted_at is missing" $ do+ let reviewInfo = eitherDecodeStrict $(embedFile "fixtures/pull-request-pending-review.json") :: Either String Review+ reviewInfo `shouldSatisfy` isRight++ describe "Other states" $ do+ it "decodes review" $ do+ let reviewInfo = eitherDecodeStrict $(embedFile "fixtures/pull-request-approved-review.json") :: Either String Review+ reviewInfo `shouldSatisfy` isRight
src/GitHub.hs view
@@ -62,7 +62,6 @@ -- Missing endpoints: -- -- * Query a specific revision of a gist- -- * Create a gist -- * Edit a gist -- * List gist commits -- * Check if a gist is starred@@ -70,6 +69,7 @@ -- * List gist forks gistsR, gistR,+ createGistR, starGistR, unstarGistR, deleteGistR,
src/GitHub/Data/Content.hs view
@@ -1,4 +1,5 @@ {-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE CPP #-} ----------------------------------------------------------------------------- -- | -- License : BSD-3-Clause@@ -15,6 +16,10 @@ import Data.Maybe (maybe) import qualified Data.Text as T +#if MIN_VERSION_aeson(2,0,0)+import Data.Aeson (Key)+#endif+ data Content = ContentFile !ContentFileData | ContentDirectory !(Vector ContentItem)@@ -205,5 +210,9 @@ ++ "author" .=? deleteFileAuthor ++ "committer" .=? deleteFileCommitter +#if MIN_VERSION_aeson(2,0,0)+(.=?) :: ToJSON v => Key -> Maybe v -> [Pair]+#else (.=?) :: ToJSON v => Text -> Maybe v -> [Pair]+#endif name .=? value = maybe [] (pure . (name .=)) value
src/GitHub/Data/Definitions.hs view
@@ -121,7 +121,7 @@ instance NFData Organization where rnf = genericRnf instance Binary Organization --- | In practic, you cam't have concrete values of 'Owner'.+-- | In practice you can't have concrete values of 'Owner'. newtype Owner = Owner (Either User Organization) deriving (Show, Data, Typeable, Eq, Ord, Generic)
src/GitHub/Data/Gists.hs view
@@ -89,3 +89,35 @@ <*> o .: "body" <*> o .: "updated_at" <*> o .: "id"++data NewGist = NewGist+ { newGistDescription :: !(Maybe Text)+ , newGistFiles :: !(HashMap Text NewGistFile)+ , newGistPublic :: !(Maybe Bool)+ } deriving (Show, Data, Typeable, Eq, Generic)++instance NFData NewGist where rnf = genericRnf+instance Binary NewGist++instance ToJSON NewGist where+ toJSON NewGist { newGistDescription = description+ , newGistFiles = files+ , newGistPublic = public+ } = object $ filter notNull+ [ "description" .= description+ , "files" .= files+ , "public" .= public+ ]+ where+ notNull (_, Null) = False+ notNull (_, _) = True++data NewGistFile = NewGistFile+ { newGistFileContent :: !Text+ } deriving (Show, Data, Typeable, Eq, Generic)++instance NFData NewGistFile where rnf = genericRnf+instance Binary NewGistFile++instance ToJSON NewGistFile where+ toJSON (NewGistFile c) = object ["content" .= c]
src/GitHub/Data/PullRequests.hs view
@@ -21,6 +21,7 @@ import GitHub.Data.Options (IssueState (..), MergeableState (..)) import GitHub.Data.Repos (Repo) import GitHub.Data.URL (URL)+import GitHub.Data.Teams (SimpleTeam) import GitHub.Internal.Prelude import Prelude () @@ -38,6 +39,7 @@ , simplePullRequestBody :: !(Maybe Text) , simplePullRequestAssignees :: (Vector SimpleUser) , simplePullRequestRequestedReviewers :: (Vector SimpleUser)+ , simplePullRequestRequestedTeamReviewers:: (Vector SimpleTeam) , simplePullRequestIssueUrl :: !URL , simplePullRequestDiffUrl :: !URL , simplePullRequestUrl :: !URL@@ -63,6 +65,7 @@ , pullRequestBody :: !(Maybe Text) , pullRequestAssignees :: (Vector SimpleUser) , pullRequestRequestedReviewers :: (Vector SimpleUser)+ , pullRequestRequestedTeamReviewers :: (Vector SimpleTeam) , pullRequestIssueUrl :: !URL , pullRequestDiffUrl :: !URL , pullRequestUrl :: !URL@@ -198,6 +201,7 @@ <*> o .:? "body" <*> o .: "assignees" <*> o .:? "requested_reviewers" .!= mempty+ <*> o .:? "requested_teams" .!= mempty <*> o .: "issue_url" <*> o .: "diff_url" <*> o .: "url"@@ -239,6 +243,7 @@ <*> o .:? "body" <*> o .: "assignees" <*> o .:? "requested_reviewers" .!= mempty+ <*> o .:? "requested_teams" .!= mempty <*> o .: "issue_url" <*> o .: "diff_url" <*> o .: "url"
src/GitHub/Data/Reviews.hs view
@@ -35,7 +35,7 @@ { reviewBody :: !Text , reviewCommitId :: !Text , reviewState :: ReviewState- , reviewSubmittedAt :: !UTCTime+ , reviewSubmittedAt :: !(Maybe UTCTime) , reviewPullRequestUrl :: !URL , reviewHtmlUrl :: !Text , reviewUser :: !SimpleUser@@ -51,11 +51,11 @@ parseJSON = withObject "Review" $ \o -> Review <$> o .: "body" <*> o .: "commit_id" <*> o .: "state" <*>- o .: "submitted_at" <*>- o .: "pull_request_url" <*>- o .: "html_url" <*>- o .: "user" <*>- o .: "id"+ o .:? "submitted_at" <*>+ o .: "pull_request_url" <*>+ o .: "html_url" <*>+ o .: "user" <*>+ o .: "id" data ReviewComment = ReviewComment { reviewCommentId :: !(Id ReviewComment)
src/GitHub/Data/Webhooks.hs view
@@ -35,6 +35,7 @@ = WebhookWildcardEvent | WebhookCheckRunEvent | WebhookCheckSuiteEvent+ | WebhookCodeScanningAlert | WebhookCommitCommentEvent | WebhookContentReferenceEvent | WebhookCreateEvent@@ -42,12 +43,13 @@ | WebhookDeployKeyEvent | WebhookDeploymentEvent | WebhookDeploymentStatusEvent+ | WebhookDiscussion+ | WebhookDiscussionComment | WebhookDownloadEvent | WebhookFollowEvent | WebhookForkEvent- | WebhookForkApplyEvent- | WebhookGitHubAppAuthorizationEvent | WebhookGistEvent+ | WebhookGitHubAppAuthorizationEvent | WebhookGollumEvent | WebhookInstallationEvent | WebhookInstallationRepositoriesEvent@@ -59,8 +61,9 @@ | WebhookMembershipEvent | WebhookMetaEvent | WebhookMilestoneEvent- | WebhookOrganizationEvent | WebhookOrgBlockEvent+ | WebhookOrganizationEvent+ | WebhookPackage | WebhookPageBuildEvent | WebhookPingEvent | WebhookProjectCardEvent@@ -68,20 +71,25 @@ | WebhookProjectEvent | WebhookPublicEvent | WebhookPullRequestEvent- | WebhookPullRequestReviewEvent | WebhookPullRequestReviewCommentEvent+ | WebhookPullRequestReviewEvent | WebhookPushEvent | WebhookRegistryPackageEvent | WebhookReleaseEvent+ | WebhookRepositoryDispatch | WebhookRepositoryEvent | WebhookRepositoryImportEvent | WebhookRepositoryVulnerabilityAlertEvent+ | WebhookSecretScanningAlert | WebhookSecurityAdvisoryEvent+ | WebhookSponsorship | WebhookStarEvent | WebhookStatusEvent- | WebhookTeamEvent | WebhookTeamAddEvent+ | WebhookTeamEvent | WebhookWatchEvent+ | WebhookWorkflowDispatch+ | WebhookWorkflowRun deriving (Show, Data, Typeable, Eq, Ord, Generic) instance NFData RepoWebhookEvent where rnf = genericRnf@@ -137,6 +145,7 @@ "*" -> pure WebhookWildcardEvent "check_run" -> pure WebhookCheckRunEvent "check_suite" -> pure WebhookCheckSuiteEvent+ "code_scanning_alert" -> pure WebhookCodeScanningAlert "commit_comment" -> pure WebhookCommitCommentEvent "content_reference" -> pure WebhookContentReferenceEvent "create" -> pure WebhookCreateEvent@@ -144,12 +153,13 @@ "deploy_key" -> pure WebhookDeployKeyEvent "deployment" -> pure WebhookDeploymentEvent "deployment_status" -> pure WebhookDeploymentStatusEvent+ "discussion" -> pure WebhookDiscussion+ "discussion_comment" -> pure WebhookDiscussionComment "download" -> pure WebhookDownloadEvent "follow" -> pure WebhookFollowEvent "fork" -> pure WebhookForkEvent- "fork_apply" -> pure WebhookForkApplyEvent- "github_app_authorization" -> pure WebhookGitHubAppAuthorizationEvent "gist" -> pure WebhookGistEvent+ "github_app_authorization" -> pure WebhookGitHubAppAuthorizationEvent "gollum" -> pure WebhookGollumEvent "installation" -> pure WebhookInstallationEvent "installation_repositories" -> pure WebhookInstallationRepositoriesEvent@@ -161,13 +171,14 @@ "membership" -> pure WebhookMembershipEvent "meta" -> pure WebhookMetaEvent "milestone" -> pure WebhookMilestoneEvent- "organization" -> pure WebhookOrganizationEvent "org_block" -> pure WebhookOrgBlockEvent+ "organization" -> pure WebhookOrganizationEvent+ "package" -> pure WebhookPackage "page_build" -> pure WebhookPageBuildEvent "ping" -> pure WebhookPingEvent+ "project" -> pure WebhookProjectEvent "project_card" -> pure WebhookProjectCardEvent "project_column" -> pure WebhookProjectColumnEvent- "project" -> pure WebhookProjectEvent "public" -> pure WebhookPublicEvent "pull_request" -> pure WebhookPullRequestEvent "pull_request_review" -> pure WebhookPullRequestReviewEvent@@ -176,20 +187,26 @@ "registry_package" -> pure WebhookRegistryPackageEvent "release" -> pure WebhookReleaseEvent "repository" -> pure WebhookRepositoryEvent+ "repository_dispatch" -> pure WebhookRepositoryDispatch "repository_import" -> pure WebhookRepositoryImportEvent "repository_vulnerability_alert" -> pure WebhookRepositoryVulnerabilityAlertEvent+ "secret_scanning_alert" -> pure WebhookSecretScanningAlert "security_advisory" -> pure WebhookSecurityAdvisoryEvent+ "sponsorship" -> pure WebhookSponsorship "star" -> pure WebhookStarEvent "status" -> pure WebhookStatusEvent "team" -> pure WebhookTeamEvent "team_add" -> pure WebhookTeamAddEvent "watch" -> pure WebhookWatchEvent+ "workflow_dispatch" -> pure WebhookWorkflowDispatch+ "workflow_run" -> pure WebhookWorkflowRun _ -> fail $ "Unknown RepoWebhookEvent: " <> T.unpack t instance ToJSON RepoWebhookEvent where toJSON WebhookWildcardEvent = String "*" toJSON WebhookCheckRunEvent = String "check_run" toJSON WebhookCheckSuiteEvent = String "check_suite"+ toJSON WebhookCodeScanningAlert = String "code_scanning_alert" toJSON WebhookCommitCommentEvent = String "commit_comment" toJSON WebhookContentReferenceEvent = String "content_reference" toJSON WebhookCreateEvent = String "create"@@ -197,12 +214,13 @@ toJSON WebhookDeployKeyEvent = String "deploy_key" toJSON WebhookDeploymentEvent = String "deployment" toJSON WebhookDeploymentStatusEvent = String "deployment_status"+ toJSON WebhookDiscussion = String "discussion"+ toJSON WebhookDiscussionComment = String "discussion_comment" toJSON WebhookDownloadEvent = String "download" toJSON WebhookFollowEvent = String "follow" toJSON WebhookForkEvent = String "fork"- toJSON WebhookForkApplyEvent = String "fork_apply"- toJSON WebhookGitHubAppAuthorizationEvent = String "github_app_authorization" toJSON WebhookGistEvent = String "gist"+ toJSON WebhookGitHubAppAuthorizationEvent = String "github_app_authorization" toJSON WebhookGollumEvent = String "gollum" toJSON WebhookInstallationEvent = String "installation" toJSON WebhookInstallationRepositoriesEvent = String "installation_repositories"@@ -214,8 +232,9 @@ toJSON WebhookMembershipEvent = String "membership" toJSON WebhookMetaEvent = String "meta" toJSON WebhookMilestoneEvent = String "milestone"- toJSON WebhookOrganizationEvent = String "organization" toJSON WebhookOrgBlockEvent = String "org_block"+ toJSON WebhookOrganizationEvent = String "organization"+ toJSON WebhookPackage = String "package" toJSON WebhookPageBuildEvent = String "page_build" toJSON WebhookPingEvent = String "ping" toJSON WebhookProjectCardEvent = String "project_card"@@ -223,20 +242,25 @@ toJSON WebhookProjectEvent = String "project" toJSON WebhookPublicEvent = String "public" toJSON WebhookPullRequestEvent = String "pull_request"- toJSON WebhookPullRequestReviewEvent = String "pull_request_review" toJSON WebhookPullRequestReviewCommentEvent = String "pull_request_review_comment"+ toJSON WebhookPullRequestReviewEvent = String "pull_request_review" toJSON WebhookPushEvent = String "push" toJSON WebhookRegistryPackageEvent = String "registry_package" toJSON WebhookReleaseEvent = String "release"+ toJSON WebhookRepositoryDispatch = String "repository_dispatch" toJSON WebhookRepositoryEvent = String "repository" toJSON WebhookRepositoryImportEvent = String "repository_import" toJSON WebhookRepositoryVulnerabilityAlertEvent = String "repository_vulnerability_alert"+ toJSON WebhookSecretScanningAlert = String "secret_scanning_alert" toJSON WebhookSecurityAdvisoryEvent = String "security_advisory"+ toJSON WebhookSponsorship = String "sponsorship" toJSON WebhookStarEvent = String "star" toJSON WebhookStatusEvent = String "status"- toJSON WebhookTeamEvent = String "team" toJSON WebhookTeamAddEvent = String "team_add"+ toJSON WebhookTeamEvent = String "team" toJSON WebhookWatchEvent = String "watch"+ toJSON WebhookWorkflowDispatch = String "workflow_dispatch"+ toJSON WebhookWorkflowRun = String "workflow_run" instance FromJSON RepoWebhook where parseJSON = withObject "RepoWebhook" $ \o -> RepoWebhook
src/GitHub/Endpoints/Gists.hs view
@@ -7,6 +7,7 @@ module GitHub.Endpoints.Gists ( gistsR, gistR,+ createGistR, starGistR, unstarGistR, deleteGistR,@@ -27,6 +28,11 @@ gistR :: Name Gist -> Request k Gist gistR gid = query ["gists", toPathPart gid] []++-- | Create a new gist+-- See <https://docs.github.com/rest/reference/gists#create-a-gist>+createGistR :: NewGist -> Request 'RW Gist+createGistR ngist = command Post ["gists"] (encode ngist) -- | Star a gist by the authenticated user. -- See <https://developer.github.com/v3/gists/#star-a-gist>
src/GitHub/Internal/Prelude.hs view
@@ -1,4 +1,5 @@ {-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE CPP #-} ----------------------------------------------------------------------------- -- | -- License : BSD-3-Clause
src/GitHub/Request.hs view
@@ -90,7 +90,7 @@ httpLbs, method, newManager, redirectCount, requestBody, requestHeaders, setQueryString, setRequestIgnoreStatus) import Network.HTTP.Link.Parser (parseLinkHeaderBS)-import Network.HTTP.Link.Types (Link (..), LinkParam (..), href, linkParams)+import Network.HTTP.Link.Types (LinkParam (..), href, linkParams) import Network.HTTP.Types (Method, RequestHeaders, Status (..)) import Network.URI (URI, escapeURIString, isUnescapedInURIComponent, parseURIReference,@@ -507,7 +507,7 @@ nextURI <- find isRelNext links return $ href nextURI where- isRelNext :: Link -> Bool+ -- isRelNext :: Link -> Bool or Link uri -> Bool isRelNext = any (== relNextLinkParam) . linkParams relNextLinkParam :: (LinkParam, Text)