packages feed

github 0.28.0.1 → 0.29

raw patch · 101 files changed

+2998/−363 lines, 101 filesdep ~aesondep ~base-compatdep ~bytestringPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: aeson, base-compat, bytestring, containers, deepseq, hashable, text

API changes (from Hackage documentation)

+ GitHub: addOrganizationSelectedRepositoriesForSecretR :: Name Organization -> Name OrganizationSecret -> Id Repo -> GenRequest 'MtUnit 'RW ()
+ GitHub: approveWorkflowRunR :: Name Owner -> Name Repo -> Id WorkflowRun -> GenRequest 'MtUnit 'RW ()
+ GitHub: artifactR :: Name Owner -> Name Repo -> Id Artifact -> Request 'RA Artifact
+ GitHub: artifactsForR :: Name Owner -> Name Repo -> ArtifactMod -> FetchCount -> Request 'RA (WithTotalCount Artifact)
+ GitHub: artifactsForWorkflowRunR :: Name Owner -> Name Repo -> Id WorkflowRun -> FetchCount -> Request 'RA (WithTotalCount Artifact)
+ GitHub: cacheUsageByRepositoryR :: Name Organization -> FetchCount -> GenRequest 'MtJSON 'RA (WithTotalCount RepositoryCacheUsage)
+ GitHub: cacheUsageOrganizationR :: Name Organization -> GenRequest 'MtJSON 'RA OrganizationCacheUsage
+ GitHub: cacheUsageR :: Name Owner -> Name Repo -> Request k RepositoryCacheUsage
+ GitHub: cachesForRepoR :: Name Owner -> Name Repo -> CacheMod -> FetchCount -> GenRequest 'MtJSON 'RA (WithTotalCount Cache)
+ GitHub: cancelWorkflowRunR :: Name Owner -> Name Repo -> Id WorkflowRun -> GenRequest 'MtUnit 'RW ()
+ GitHub: deleteArtifactR :: Name Owner -> Name Repo -> Id Comment -> GenRequest 'MtUnit 'RW ()
+ GitHub: deleteCacheR :: Name Owner -> Name Repo -> Id Cache -> GenRequest 'MtUnit 'RW ()
+ GitHub: deleteEnvironmentSecretR :: Id Repo -> Name Environment -> Name RepoSecret -> GenRequest 'MtUnit 'RW ()
+ GitHub: deleteOrganizationSecretR :: Name Organization -> Name OrganizationSecret -> GenRequest 'MtUnit 'RW ()
+ GitHub: deleteRepoSecretR :: Name Owner -> Name Organization -> Name RepoSecret -> GenRequest 'MtUnit 'RW ()
+ GitHub: deleteWorkflowRunLogsR :: Name Owner -> Name Repo -> Id WorkflowRun -> GenRequest 'MtUnit 'RW ()
+ GitHub: deleteWorkflowRunR :: Name Owner -> Name Repo -> Id WorkflowRun -> GenRequest 'MtUnit 'RW ()
+ GitHub: disableWorkflowR :: IsPathPart idOrName => Name Owner -> Name Repo -> idOrName -> GenRequest 'MtUnit 'RW ()
+ GitHub: downloadArtifactR :: Name Owner -> Name Repo -> Id Artifact -> GenRequest 'MtRedirect 'RW URI
+ GitHub: downloadJobLogsR :: Name Owner -> Name Repo -> Id Job -> GenRequest 'MtRedirect 'RO URI
+ GitHub: downloadWorkflowRunAttemptLogsR :: Name Owner -> Name Repo -> Id WorkflowRun -> Id RunAttempt -> GenRequest 'MtRedirect 'RO URI
+ GitHub: downloadWorkflowRunLogsR :: Name Owner -> Name Repo -> Id WorkflowRun -> GenRequest 'MtRedirect 'RA URI
+ GitHub: enableWorkflowR :: IsPathPart idOrName => Name Owner -> Name Repo -> idOrName -> GenRequest 'MtUnit 'RW ()
+ GitHub: environmentPublicKeyR :: Id Repo -> Name Environment -> GenRequest 'MtJSON 'RA PublicKey
+ GitHub: environmentSecretR :: Id Repo -> Name Environment -> Name RepoSecret -> GenRequest 'MtJSON 'RA RepoSecret
+ GitHub: environmentSecretsR :: Id Repo -> Name Environment -> FetchCount -> GenRequest 'MtJSON 'RA (WithTotalCount RepoSecret)
+ GitHub: jobR :: Name Owner -> Name Repo -> Id Job -> Request 'RA Job
+ GitHub: jobsForWorkflowRunAttemptR :: Name Owner -> Name Repo -> Id WorkflowRun -> Id RunAttempt -> FetchCount -> GenRequest 'MtJSON 'RA (WithTotalCount Job)
+ GitHub: jobsForWorkflowRunR :: Name Owner -> Name Repo -> Id WorkflowRun -> FetchCount -> GenRequest 'MtJSON 'RA (WithTotalCount Job)
+ GitHub: organizationPublicKeyR :: Name Organization -> GenRequest 'MtJSON 'RA PublicKey
+ GitHub: organizationSecretR :: Name Organization -> Name OrganizationSecret -> GenRequest 'MtJSON 'RA OrganizationSecret
+ GitHub: organizationSecretsR :: Name Organization -> FetchCount -> GenRequest 'MtJSON 'RA (WithTotalCount OrganizationSecret)
+ GitHub: organizationSelectedRepositoriesForSecretR :: Name Organization -> Name OrganizationSecret -> FetchCount -> GenRequest 'MtJSON 'RA (WithTotalCount SelectedRepo)
+ GitHub: reRunFailedJobsR :: Name Owner -> Name Repo -> Id WorkflowRun -> GenRequest 'MtUnit 'RW ()
+ GitHub: reRunJobR :: Name Owner -> Name Repo -> Id Job -> GenRequest 'MtUnit 'RW ()
+ GitHub: reRunWorkflowR :: Name Owner -> Name Repo -> Id WorkflowRun -> GenRequest 'MtUnit 'RW ()
+ GitHub: removeOrganizationSelectedRepositoriesForSecretR :: Name Organization -> Name OrganizationSecret -> Id Repo -> GenRequest 'MtUnit 'RW ()
+ GitHub: repoPublicKeyR :: Name Owner -> Name Organization -> GenRequest 'MtJSON 'RA PublicKey
+ GitHub: repoSecretR :: Name Owner -> Name Organization -> Name RepoSecret -> GenRequest 'MtJSON 'RA RepoSecret
+ GitHub: repoSecretsR :: Name Owner -> Name Repo -> FetchCount -> GenRequest 'MtJSON 'RA (WithTotalCount RepoSecret)
+ GitHub: repositoryWorkflowsR :: Name Owner -> Name Repo -> FetchCount -> GenRequest 'MtJSON 'RA (WithTotalCount Workflow)
+ GitHub: setEnvironmentSecretR :: Id Repo -> Name Environment -> Name RepoSecret -> SetRepoSecret -> GenRequest 'MtUnit 'RW ()
+ GitHub: setOrganizationSecretR :: Name Organization -> Name OrganizationSecret -> SetSecret -> GenRequest 'MtUnit 'RW ()
+ GitHub: setOrganizationSelectedRepositoriesForSecretR :: Name Organization -> Name OrganizationSecret -> SetSelectedRepositories -> GenRequest 'MtUnit 'RW ()
+ GitHub: setRepoSecretR :: Name Owner -> Name Organization -> Name RepoSecret -> SetRepoSecret -> GenRequest 'MtUnit 'RW ()
+ GitHub: triggerWorkflowR :: (ToJSON a, IsPathPart idOrName) => Name Owner -> Name Repo -> idOrName -> CreateWorkflowDispatchEvent a -> GenRequest 'MtUnit 'RW ()
+ GitHub: workflowR :: IsPathPart idOrName => Name Owner -> Name Repo -> idOrName -> GenRequest 'MtJSON 'RA Workflow
+ GitHub: workflowRunAttemptR :: Name Owner -> Name Repo -> Id WorkflowRun -> Id RunAttempt -> GenRequest 'MtJSON 'RA WorkflowRun
+ GitHub: workflowRunR :: Name Owner -> Name Repo -> Id WorkflowRun -> GenRequest 'MtJSON 'RA WorkflowRun
+ GitHub: workflowRunReviewHistoryR :: Name Owner -> Name Repo -> Id WorkflowRun -> GenRequest 'MtJSON 'RA (Vector ReviewHistory)
+ GitHub: workflowRunsForWorkflowR :: IsPathPart idOrName => Name Owner -> Name Repo -> idOrName -> WorkflowRunMod -> FetchCount -> GenRequest 'MtJSON 'RA (WithTotalCount WorkflowRun)
+ GitHub: workflowRunsR :: Name Owner -> Name Repo -> WorkflowRunMod -> FetchCount -> GenRequest 'MtJSON 'RA (WithTotalCount WorkflowRun)
+ GitHub.Data.Actions.Artifacts: Artifact :: !URL -> !UTCTime -> !Bool -> !UTCTime -> !Id Artifact -> !Text -> !Text -> !Int -> !UTCTime -> !URL -> !ArtifactWorkflowRun -> Artifact
+ GitHub.Data.Actions.Artifacts: ArtifactWorkflowRun :: !Id WorkflowRun -> !Id Repo -> !Id Repo -> !Text -> !Text -> ArtifactWorkflowRun
+ GitHub.Data.Actions.Artifacts: [artifactArchiveDownloadUrl] :: Artifact -> !URL
+ GitHub.Data.Actions.Artifacts: [artifactCreatedAt] :: Artifact -> !UTCTime
+ GitHub.Data.Actions.Artifacts: [artifactExpired] :: Artifact -> !Bool
+ GitHub.Data.Actions.Artifacts: [artifactExpiresAt] :: Artifact -> !UTCTime
+ GitHub.Data.Actions.Artifacts: [artifactId] :: Artifact -> !Id Artifact
+ GitHub.Data.Actions.Artifacts: [artifactName] :: Artifact -> !Text
+ GitHub.Data.Actions.Artifacts: [artifactNodeId] :: Artifact -> !Text
+ GitHub.Data.Actions.Artifacts: [artifactSizeInBytes] :: Artifact -> !Int
+ GitHub.Data.Actions.Artifacts: [artifactUpdatedAt] :: Artifact -> !UTCTime
+ GitHub.Data.Actions.Artifacts: [artifactUrl] :: Artifact -> !URL
+ GitHub.Data.Actions.Artifacts: [artifactWorkflowRunHeadBranch] :: ArtifactWorkflowRun -> !Text
+ GitHub.Data.Actions.Artifacts: [artifactWorkflowRunHeadRepositoryId] :: ArtifactWorkflowRun -> !Id Repo
+ GitHub.Data.Actions.Artifacts: [artifactWorkflowRunHeadSha] :: ArtifactWorkflowRun -> !Text
+ GitHub.Data.Actions.Artifacts: [artifactWorkflowRunRepositoryId] :: ArtifactWorkflowRun -> !Id Repo
+ GitHub.Data.Actions.Artifacts: [artifactWorkflowRunWorkflowRunId] :: ArtifactWorkflowRun -> !Id WorkflowRun
+ GitHub.Data.Actions.Artifacts: [artifactWorkflowRun] :: Artifact -> !ArtifactWorkflowRun
+ GitHub.Data.Actions.Artifacts: data Artifact
+ GitHub.Data.Actions.Artifacts: data ArtifactWorkflowRun
+ GitHub.Data.Actions.Artifacts: instance Data.Aeson.Types.FromJSON.FromJSON (GitHub.Data.Actions.Common.WithTotalCount GitHub.Data.Actions.Artifacts.Artifact)
+ GitHub.Data.Actions.Artifacts: instance Data.Aeson.Types.FromJSON.FromJSON GitHub.Data.Actions.Artifacts.Artifact
+ GitHub.Data.Actions.Artifacts: instance Data.Aeson.Types.FromJSON.FromJSON GitHub.Data.Actions.Artifacts.ArtifactWorkflowRun
+ GitHub.Data.Actions.Artifacts: instance Data.Data.Data GitHub.Data.Actions.Artifacts.Artifact
+ GitHub.Data.Actions.Artifacts: instance Data.Data.Data GitHub.Data.Actions.Artifacts.ArtifactWorkflowRun
+ GitHub.Data.Actions.Artifacts: instance GHC.Classes.Eq GitHub.Data.Actions.Artifacts.Artifact
+ GitHub.Data.Actions.Artifacts: instance GHC.Classes.Eq GitHub.Data.Actions.Artifacts.ArtifactWorkflowRun
+ GitHub.Data.Actions.Artifacts: instance GHC.Classes.Ord GitHub.Data.Actions.Artifacts.Artifact
+ GitHub.Data.Actions.Artifacts: instance GHC.Classes.Ord GitHub.Data.Actions.Artifacts.ArtifactWorkflowRun
+ GitHub.Data.Actions.Artifacts: instance GHC.Generics.Generic GitHub.Data.Actions.Artifacts.Artifact
+ GitHub.Data.Actions.Artifacts: instance GHC.Generics.Generic GitHub.Data.Actions.Artifacts.ArtifactWorkflowRun
+ GitHub.Data.Actions.Artifacts: instance GHC.Show.Show GitHub.Data.Actions.Artifacts.Artifact
+ GitHub.Data.Actions.Artifacts: instance GHC.Show.Show GitHub.Data.Actions.Artifacts.ArtifactWorkflowRun
+ GitHub.Data.Actions.Cache: Cache :: !Id Cache -> !Text -> !Text -> !Text -> !UTCTime -> !UTCTime -> !Int -> Cache
+ GitHub.Data.Actions.Cache: OrganizationCacheUsage :: !Int -> !Int -> OrganizationCacheUsage
+ GitHub.Data.Actions.Cache: RepositoryCacheUsage :: !Text -> !Int -> !Int -> RepositoryCacheUsage
+ GitHub.Data.Actions.Cache: [cacheCreatedAt] :: Cache -> !UTCTime
+ GitHub.Data.Actions.Cache: [cacheId] :: Cache -> !Id Cache
+ GitHub.Data.Actions.Cache: [cacheKey] :: Cache -> !Text
+ GitHub.Data.Actions.Cache: [cacheLastAccessedAt] :: Cache -> !UTCTime
+ GitHub.Data.Actions.Cache: [cacheRef] :: Cache -> !Text
+ GitHub.Data.Actions.Cache: [cacheSizeInBytes] :: Cache -> !Int
+ GitHub.Data.Actions.Cache: [cacheVersion] :: Cache -> !Text
+ GitHub.Data.Actions.Cache: [organizationCacheUsageTotalActiveCachesCount] :: OrganizationCacheUsage -> !Int
+ GitHub.Data.Actions.Cache: [organizationCacheUsageTotalActiveCachesSizeInBytes] :: OrganizationCacheUsage -> !Int
+ GitHub.Data.Actions.Cache: [repositoryCacheUsageActiveCachesCount] :: RepositoryCacheUsage -> !Int
+ GitHub.Data.Actions.Cache: [repositoryCacheUsageActiveCachesSizeInBytes] :: RepositoryCacheUsage -> !Int
+ GitHub.Data.Actions.Cache: [repositoryCacheUsageFullName] :: RepositoryCacheUsage -> !Text
+ GitHub.Data.Actions.Cache: data Cache
+ GitHub.Data.Actions.Cache: data OrganizationCacheUsage
+ GitHub.Data.Actions.Cache: data RepositoryCacheUsage
+ GitHub.Data.Actions.Cache: instance Data.Aeson.Types.FromJSON.FromJSON (GitHub.Data.Actions.Common.WithTotalCount GitHub.Data.Actions.Cache.Cache)
+ GitHub.Data.Actions.Cache: instance Data.Aeson.Types.FromJSON.FromJSON (GitHub.Data.Actions.Common.WithTotalCount GitHub.Data.Actions.Cache.RepositoryCacheUsage)
+ GitHub.Data.Actions.Cache: instance Data.Aeson.Types.FromJSON.FromJSON GitHub.Data.Actions.Cache.Cache
+ GitHub.Data.Actions.Cache: instance Data.Aeson.Types.FromJSON.FromJSON GitHub.Data.Actions.Cache.OrganizationCacheUsage
+ GitHub.Data.Actions.Cache: instance Data.Aeson.Types.FromJSON.FromJSON GitHub.Data.Actions.Cache.RepositoryCacheUsage
+ GitHub.Data.Actions.Cache: instance Data.Data.Data GitHub.Data.Actions.Cache.Cache
+ GitHub.Data.Actions.Cache: instance Data.Data.Data GitHub.Data.Actions.Cache.OrganizationCacheUsage
+ GitHub.Data.Actions.Cache: instance Data.Data.Data GitHub.Data.Actions.Cache.RepositoryCacheUsage
+ GitHub.Data.Actions.Cache: instance GHC.Classes.Eq GitHub.Data.Actions.Cache.Cache
+ GitHub.Data.Actions.Cache: instance GHC.Classes.Eq GitHub.Data.Actions.Cache.OrganizationCacheUsage
+ GitHub.Data.Actions.Cache: instance GHC.Classes.Eq GitHub.Data.Actions.Cache.RepositoryCacheUsage
+ GitHub.Data.Actions.Cache: instance GHC.Classes.Ord GitHub.Data.Actions.Cache.Cache
+ GitHub.Data.Actions.Cache: instance GHC.Classes.Ord GitHub.Data.Actions.Cache.OrganizationCacheUsage
+ GitHub.Data.Actions.Cache: instance GHC.Classes.Ord GitHub.Data.Actions.Cache.RepositoryCacheUsage
+ GitHub.Data.Actions.Cache: instance GHC.Generics.Generic GitHub.Data.Actions.Cache.Cache
+ GitHub.Data.Actions.Cache: instance GHC.Generics.Generic GitHub.Data.Actions.Cache.OrganizationCacheUsage
+ GitHub.Data.Actions.Cache: instance GHC.Generics.Generic GitHub.Data.Actions.Cache.RepositoryCacheUsage
+ GitHub.Data.Actions.Cache: instance GHC.Show.Show GitHub.Data.Actions.Cache.Cache
+ GitHub.Data.Actions.Cache: instance GHC.Show.Show GitHub.Data.Actions.Cache.OrganizationCacheUsage
+ GitHub.Data.Actions.Cache: instance GHC.Show.Show GitHub.Data.Actions.Cache.RepositoryCacheUsage
+ GitHub.Data.Actions.Common: WithTotalCount :: !Vector a -> !Int -> WithTotalCount a
+ GitHub.Data.Actions.Common: [withTotalCountItems] :: WithTotalCount a -> !Vector a
+ GitHub.Data.Actions.Common: [withTotalCountTotalCount] :: WithTotalCount a -> !Int
+ GitHub.Data.Actions.Common: data WithTotalCount a
+ GitHub.Data.Actions.Common: instance Data.Data.Data a => Data.Data.Data (GitHub.Data.Actions.Common.WithTotalCount a)
+ GitHub.Data.Actions.Common: instance Data.Foldable.Foldable GitHub.Data.Actions.Common.WithTotalCount
+ GitHub.Data.Actions.Common: instance GHC.Base.Semigroup (GitHub.Data.Actions.Common.WithTotalCount a)
+ GitHub.Data.Actions.Common: instance GHC.Classes.Eq a => GHC.Classes.Eq (GitHub.Data.Actions.Common.WithTotalCount a)
+ GitHub.Data.Actions.Common: instance GHC.Classes.Ord a => GHC.Classes.Ord (GitHub.Data.Actions.Common.WithTotalCount a)
+ GitHub.Data.Actions.Common: instance GHC.Generics.Generic (GitHub.Data.Actions.Common.WithTotalCount a)
+ GitHub.Data.Actions.Common: instance GHC.Show.Show a => GHC.Show.Show (GitHub.Data.Actions.Common.WithTotalCount a)
+ GitHub.Data.Actions.Secrets: Environment :: Environment
+ GitHub.Data.Actions.Secrets: OrganizationSecret :: !Name OrganizationSecret -> !UTCTime -> !UTCTime -> !Text -> OrganizationSecret
+ GitHub.Data.Actions.Secrets: PublicKey :: !Text -> !Text -> PublicKey
+ GitHub.Data.Actions.Secrets: RepoSecret :: !Name RepoSecret -> !UTCTime -> !UTCTime -> RepoSecret
+ GitHub.Data.Actions.Secrets: SelectedRepo :: !Id Repo -> !Name Repo -> SelectedRepo
+ GitHub.Data.Actions.Secrets: SetRepoSecret :: !Text -> !Text -> SetRepoSecret
+ GitHub.Data.Actions.Secrets: SetSecret :: !Text -> !Text -> !Text -> !Maybe [Id Repo] -> SetSecret
+ GitHub.Data.Actions.Secrets: SetSelectedRepositories :: ![Id Repo] -> SetSelectedRepositories
+ GitHub.Data.Actions.Secrets: [organizationSecretCreatedAt] :: OrganizationSecret -> !UTCTime
+ GitHub.Data.Actions.Secrets: [organizationSecretName] :: OrganizationSecret -> !Name OrganizationSecret
+ GitHub.Data.Actions.Secrets: [organizationSecretUpdatedAt] :: OrganizationSecret -> !UTCTime
+ GitHub.Data.Actions.Secrets: [organizationSecretVisibility] :: OrganizationSecret -> !Text
+ GitHub.Data.Actions.Secrets: [publicKeyId] :: PublicKey -> !Text
+ GitHub.Data.Actions.Secrets: [publicKeyKey] :: PublicKey -> !Text
+ GitHub.Data.Actions.Secrets: [repoSecretCreatedAt] :: RepoSecret -> !UTCTime
+ GitHub.Data.Actions.Secrets: [repoSecretName] :: RepoSecret -> !Name RepoSecret
+ GitHub.Data.Actions.Secrets: [repoSecretUpdatedAt] :: RepoSecret -> !UTCTime
+ GitHub.Data.Actions.Secrets: [selectedRepoRepoId] :: SelectedRepo -> !Id Repo
+ GitHub.Data.Actions.Secrets: [selectedRepoRepoName] :: SelectedRepo -> !Name Repo
+ GitHub.Data.Actions.Secrets: [setRepoSecretEncryptedValue] :: SetRepoSecret -> !Text
+ GitHub.Data.Actions.Secrets: [setRepoSecretPublicKeyId] :: SetRepoSecret -> !Text
+ GitHub.Data.Actions.Secrets: [setSecretEncryptedValue] :: SetSecret -> !Text
+ GitHub.Data.Actions.Secrets: [setSecretPublicKeyId] :: SetSecret -> !Text
+ GitHub.Data.Actions.Secrets: [setSecretSelectedRepositoryIds] :: SetSecret -> !Maybe [Id Repo]
+ GitHub.Data.Actions.Secrets: [setSecretVisibility] :: SetSecret -> !Text
+ GitHub.Data.Actions.Secrets: [setSelectedRepositoriesRepositoryIds] :: SetSelectedRepositories -> ![Id Repo]
+ GitHub.Data.Actions.Secrets: data Environment
+ GitHub.Data.Actions.Secrets: data OrganizationSecret
+ GitHub.Data.Actions.Secrets: data PublicKey
+ GitHub.Data.Actions.Secrets: data RepoSecret
+ GitHub.Data.Actions.Secrets: data SelectedRepo
+ GitHub.Data.Actions.Secrets: data SetRepoSecret
+ GitHub.Data.Actions.Secrets: data SetSecret
+ GitHub.Data.Actions.Secrets: data SetSelectedRepositories
+ GitHub.Data.Actions.Secrets: instance Data.Aeson.Types.FromJSON.FromJSON (GitHub.Data.Actions.Common.WithTotalCount GitHub.Data.Actions.Secrets.OrganizationSecret)
+ GitHub.Data.Actions.Secrets: instance Data.Aeson.Types.FromJSON.FromJSON (GitHub.Data.Actions.Common.WithTotalCount GitHub.Data.Actions.Secrets.RepoSecret)
+ GitHub.Data.Actions.Secrets: instance Data.Aeson.Types.FromJSON.FromJSON (GitHub.Data.Actions.Common.WithTotalCount GitHub.Data.Actions.Secrets.SelectedRepo)
+ GitHub.Data.Actions.Secrets: instance Data.Aeson.Types.FromJSON.FromJSON GitHub.Data.Actions.Secrets.OrganizationSecret
+ GitHub.Data.Actions.Secrets: instance Data.Aeson.Types.FromJSON.FromJSON GitHub.Data.Actions.Secrets.PublicKey
+ GitHub.Data.Actions.Secrets: instance Data.Aeson.Types.FromJSON.FromJSON GitHub.Data.Actions.Secrets.RepoSecret
+ GitHub.Data.Actions.Secrets: instance Data.Aeson.Types.FromJSON.FromJSON GitHub.Data.Actions.Secrets.SelectedRepo
+ GitHub.Data.Actions.Secrets: instance Data.Aeson.Types.ToJSON.ToJSON GitHub.Data.Actions.Secrets.SetRepoSecret
+ GitHub.Data.Actions.Secrets: instance Data.Aeson.Types.ToJSON.ToJSON GitHub.Data.Actions.Secrets.SetSecret
+ GitHub.Data.Actions.Secrets: instance Data.Aeson.Types.ToJSON.ToJSON GitHub.Data.Actions.Secrets.SetSelectedRepositories
+ GitHub.Data.Actions.Secrets: instance Data.Data.Data GitHub.Data.Actions.Secrets.Environment
+ GitHub.Data.Actions.Secrets: instance Data.Data.Data GitHub.Data.Actions.Secrets.OrganizationSecret
+ GitHub.Data.Actions.Secrets: instance Data.Data.Data GitHub.Data.Actions.Secrets.PublicKey
+ GitHub.Data.Actions.Secrets: instance Data.Data.Data GitHub.Data.Actions.Secrets.RepoSecret
+ GitHub.Data.Actions.Secrets: instance Data.Data.Data GitHub.Data.Actions.Secrets.SelectedRepo
+ GitHub.Data.Actions.Secrets: instance Data.Data.Data GitHub.Data.Actions.Secrets.SetRepoSecret
+ GitHub.Data.Actions.Secrets: instance Data.Data.Data GitHub.Data.Actions.Secrets.SetSecret
+ GitHub.Data.Actions.Secrets: instance Data.Data.Data GitHub.Data.Actions.Secrets.SetSelectedRepositories
+ GitHub.Data.Actions.Secrets: instance GHC.Classes.Eq GitHub.Data.Actions.Secrets.Environment
+ GitHub.Data.Actions.Secrets: instance GHC.Classes.Eq GitHub.Data.Actions.Secrets.OrganizationSecret
+ GitHub.Data.Actions.Secrets: instance GHC.Classes.Eq GitHub.Data.Actions.Secrets.PublicKey
+ GitHub.Data.Actions.Secrets: instance GHC.Classes.Eq GitHub.Data.Actions.Secrets.RepoSecret
+ GitHub.Data.Actions.Secrets: instance GHC.Classes.Eq GitHub.Data.Actions.Secrets.SelectedRepo
+ GitHub.Data.Actions.Secrets: instance GHC.Classes.Eq GitHub.Data.Actions.Secrets.SetRepoSecret
+ GitHub.Data.Actions.Secrets: instance GHC.Classes.Eq GitHub.Data.Actions.Secrets.SetSecret
+ GitHub.Data.Actions.Secrets: instance GHC.Classes.Eq GitHub.Data.Actions.Secrets.SetSelectedRepositories
+ GitHub.Data.Actions.Secrets: instance GHC.Classes.Ord GitHub.Data.Actions.Secrets.Environment
+ GitHub.Data.Actions.Secrets: instance GHC.Classes.Ord GitHub.Data.Actions.Secrets.OrganizationSecret
+ GitHub.Data.Actions.Secrets: instance GHC.Classes.Ord GitHub.Data.Actions.Secrets.PublicKey
+ GitHub.Data.Actions.Secrets: instance GHC.Classes.Ord GitHub.Data.Actions.Secrets.RepoSecret
+ GitHub.Data.Actions.Secrets: instance GHC.Classes.Ord GitHub.Data.Actions.Secrets.SelectedRepo
+ GitHub.Data.Actions.Secrets: instance GHC.Classes.Ord GitHub.Data.Actions.Secrets.SetRepoSecret
+ GitHub.Data.Actions.Secrets: instance GHC.Classes.Ord GitHub.Data.Actions.Secrets.SetSecret
+ GitHub.Data.Actions.Secrets: instance GHC.Classes.Ord GitHub.Data.Actions.Secrets.SetSelectedRepositories
+ GitHub.Data.Actions.Secrets: instance GHC.Generics.Generic GitHub.Data.Actions.Secrets.Environment
+ GitHub.Data.Actions.Secrets: instance GHC.Generics.Generic GitHub.Data.Actions.Secrets.OrganizationSecret
+ GitHub.Data.Actions.Secrets: instance GHC.Generics.Generic GitHub.Data.Actions.Secrets.PublicKey
+ GitHub.Data.Actions.Secrets: instance GHC.Generics.Generic GitHub.Data.Actions.Secrets.RepoSecret
+ GitHub.Data.Actions.Secrets: instance GHC.Generics.Generic GitHub.Data.Actions.Secrets.SelectedRepo
+ GitHub.Data.Actions.Secrets: instance GHC.Generics.Generic GitHub.Data.Actions.Secrets.SetRepoSecret
+ GitHub.Data.Actions.Secrets: instance GHC.Generics.Generic GitHub.Data.Actions.Secrets.SetSecret
+ GitHub.Data.Actions.Secrets: instance GHC.Generics.Generic GitHub.Data.Actions.Secrets.SetSelectedRepositories
+ GitHub.Data.Actions.Secrets: instance GHC.Show.Show GitHub.Data.Actions.Secrets.Environment
+ GitHub.Data.Actions.Secrets: instance GHC.Show.Show GitHub.Data.Actions.Secrets.OrganizationSecret
+ GitHub.Data.Actions.Secrets: instance GHC.Show.Show GitHub.Data.Actions.Secrets.PublicKey
+ GitHub.Data.Actions.Secrets: instance GHC.Show.Show GitHub.Data.Actions.Secrets.RepoSecret
+ GitHub.Data.Actions.Secrets: instance GHC.Show.Show GitHub.Data.Actions.Secrets.SelectedRepo
+ GitHub.Data.Actions.Secrets: instance GHC.Show.Show GitHub.Data.Actions.Secrets.SetRepoSecret
+ GitHub.Data.Actions.Secrets: instance GHC.Show.Show GitHub.Data.Actions.Secrets.SetSecret
+ GitHub.Data.Actions.Secrets: instance GHC.Show.Show GitHub.Data.Actions.Secrets.SetSelectedRepositories
+ GitHub.Data.Actions.WorkflowJobs: Job :: !Id Job -> !Id WorkflowRun -> !URL -> !Integer -> !Text -> !Text -> !URL -> !URL -> !Text -> !Text -> !UTCTime -> !UTCTime -> !Vector JobStep -> !URL -> !Vector Text -> !Integer -> !Text -> !Integer -> !Text -> Job
+ GitHub.Data.Actions.WorkflowJobs: JobStep :: !Name JobStep -> !Text -> !Text -> !Integer -> !UTCTime -> !UTCTime -> JobStep
+ GitHub.Data.Actions.WorkflowJobs: [jobCompletedAt] :: Job -> !UTCTime
+ GitHub.Data.Actions.WorkflowJobs: [jobConclusion] :: Job -> !Text
+ GitHub.Data.Actions.WorkflowJobs: [jobHeadSha] :: Job -> !Text
+ GitHub.Data.Actions.WorkflowJobs: [jobHtmlUrl] :: Job -> !URL
+ GitHub.Data.Actions.WorkflowJobs: [jobId] :: Job -> !Id Job
+ GitHub.Data.Actions.WorkflowJobs: [jobLabels] :: Job -> !Vector Text
+ GitHub.Data.Actions.WorkflowJobs: [jobNodeId] :: Job -> !Text
+ GitHub.Data.Actions.WorkflowJobs: [jobRunAttempt] :: Job -> !Integer
+ GitHub.Data.Actions.WorkflowJobs: [jobRunCheckUrl] :: Job -> !URL
+ GitHub.Data.Actions.WorkflowJobs: [jobRunId] :: Job -> !Id WorkflowRun
+ GitHub.Data.Actions.WorkflowJobs: [jobRunUrl] :: Job -> !URL
+ GitHub.Data.Actions.WorkflowJobs: [jobRunnerGroupId] :: Job -> !Integer
+ GitHub.Data.Actions.WorkflowJobs: [jobRunnerGroupName] :: Job -> !Text
+ GitHub.Data.Actions.WorkflowJobs: [jobRunnerId] :: Job -> !Integer
+ GitHub.Data.Actions.WorkflowJobs: [jobRunnerName] :: Job -> !Text
+ GitHub.Data.Actions.WorkflowJobs: [jobStartedAt] :: Job -> !UTCTime
+ GitHub.Data.Actions.WorkflowJobs: [jobStatus] :: Job -> !Text
+ GitHub.Data.Actions.WorkflowJobs: [jobStepCompletedAt] :: JobStep -> !UTCTime
+ GitHub.Data.Actions.WorkflowJobs: [jobStepConclusion] :: JobStep -> !Text
+ GitHub.Data.Actions.WorkflowJobs: [jobStepName] :: JobStep -> !Name JobStep
+ GitHub.Data.Actions.WorkflowJobs: [jobStepNumber] :: JobStep -> !Integer
+ GitHub.Data.Actions.WorkflowJobs: [jobStepStartedAt] :: JobStep -> !UTCTime
+ GitHub.Data.Actions.WorkflowJobs: [jobStepStatus] :: JobStep -> !Text
+ GitHub.Data.Actions.WorkflowJobs: [jobSteps] :: Job -> !Vector JobStep
+ GitHub.Data.Actions.WorkflowJobs: [jobUrl] :: Job -> !URL
+ GitHub.Data.Actions.WorkflowJobs: data Job
+ GitHub.Data.Actions.WorkflowJobs: data JobStep
+ GitHub.Data.Actions.WorkflowJobs: instance Data.Aeson.Types.FromJSON.FromJSON (GitHub.Data.Actions.Common.WithTotalCount GitHub.Data.Actions.WorkflowJobs.Job)
+ GitHub.Data.Actions.WorkflowJobs: instance Data.Aeson.Types.FromJSON.FromJSON GitHub.Data.Actions.WorkflowJobs.Job
+ GitHub.Data.Actions.WorkflowJobs: instance Data.Aeson.Types.FromJSON.FromJSON GitHub.Data.Actions.WorkflowJobs.JobStep
+ GitHub.Data.Actions.WorkflowJobs: instance Data.Data.Data GitHub.Data.Actions.WorkflowJobs.Job
+ GitHub.Data.Actions.WorkflowJobs: instance Data.Data.Data GitHub.Data.Actions.WorkflowJobs.JobStep
+ GitHub.Data.Actions.WorkflowJobs: instance GHC.Classes.Eq GitHub.Data.Actions.WorkflowJobs.Job
+ GitHub.Data.Actions.WorkflowJobs: instance GHC.Classes.Eq GitHub.Data.Actions.WorkflowJobs.JobStep
+ GitHub.Data.Actions.WorkflowJobs: instance GHC.Classes.Ord GitHub.Data.Actions.WorkflowJobs.Job
+ GitHub.Data.Actions.WorkflowJobs: instance GHC.Classes.Ord GitHub.Data.Actions.WorkflowJobs.JobStep
+ GitHub.Data.Actions.WorkflowJobs: instance GHC.Generics.Generic GitHub.Data.Actions.WorkflowJobs.Job
+ GitHub.Data.Actions.WorkflowJobs: instance GHC.Generics.Generic GitHub.Data.Actions.WorkflowJobs.JobStep
+ GitHub.Data.Actions.WorkflowJobs: instance GHC.Show.Show GitHub.Data.Actions.WorkflowJobs.Job
+ GitHub.Data.Actions.WorkflowJobs: instance GHC.Show.Show GitHub.Data.Actions.WorkflowJobs.JobStep
+ GitHub.Data.Actions.WorkflowRuns: ReviewHistory :: !Text -> !Text -> !SimpleUser -> ReviewHistory
+ GitHub.Data.Actions.WorkflowRuns: RunAttempt :: RunAttempt
+ GitHub.Data.Actions.WorkflowRuns: WorkflowRun :: !Id WorkflowRun -> !Name WorkflowRun -> !Text -> !Text -> !Text -> !Text -> !Integer -> !Text -> !Text -> !Maybe Text -> !Integer -> !URL -> !URL -> !UTCTime -> !UTCTime -> !SimpleUser -> !Integer -> !UTCTime -> WorkflowRun
+ GitHub.Data.Actions.WorkflowRuns: [reviewHistoryComment] :: ReviewHistory -> !Text
+ GitHub.Data.Actions.WorkflowRuns: [reviewHistoryState] :: ReviewHistory -> !Text
+ GitHub.Data.Actions.WorkflowRuns: [reviewHistoryUser] :: ReviewHistory -> !SimpleUser
+ GitHub.Data.Actions.WorkflowRuns: [workflowRunActor] :: WorkflowRun -> !SimpleUser
+ GitHub.Data.Actions.WorkflowRuns: [workflowRunAttempt] :: WorkflowRun -> !Integer
+ GitHub.Data.Actions.WorkflowRuns: [workflowRunConclusion] :: WorkflowRun -> !Maybe Text
+ GitHub.Data.Actions.WorkflowRuns: [workflowRunCreatedAt] :: WorkflowRun -> !UTCTime
+ GitHub.Data.Actions.WorkflowRuns: [workflowRunDisplayTitle] :: WorkflowRun -> !Text
+ GitHub.Data.Actions.WorkflowRuns: [workflowRunEvent] :: WorkflowRun -> !Text
+ GitHub.Data.Actions.WorkflowRuns: [workflowRunHeadBranch] :: WorkflowRun -> !Text
+ GitHub.Data.Actions.WorkflowRuns: [workflowRunHeadSha] :: WorkflowRun -> !Text
+ GitHub.Data.Actions.WorkflowRuns: [workflowRunHtmlUrl] :: WorkflowRun -> !URL
+ GitHub.Data.Actions.WorkflowRuns: [workflowRunName] :: WorkflowRun -> !Name WorkflowRun
+ GitHub.Data.Actions.WorkflowRuns: [workflowRunPath] :: WorkflowRun -> !Text
+ GitHub.Data.Actions.WorkflowRuns: [workflowRunRunNumber] :: WorkflowRun -> !Integer
+ GitHub.Data.Actions.WorkflowRuns: [workflowRunStartedAt] :: WorkflowRun -> !UTCTime
+ GitHub.Data.Actions.WorkflowRuns: [workflowRunStatus] :: WorkflowRun -> !Text
+ GitHub.Data.Actions.WorkflowRuns: [workflowRunUpdatedAt] :: WorkflowRun -> !UTCTime
+ GitHub.Data.Actions.WorkflowRuns: [workflowRunUrl] :: WorkflowRun -> !URL
+ GitHub.Data.Actions.WorkflowRuns: [workflowRunWorkflowId] :: WorkflowRun -> !Integer
+ GitHub.Data.Actions.WorkflowRuns: [workflowRunWorkflowRunId] :: WorkflowRun -> !Id WorkflowRun
+ GitHub.Data.Actions.WorkflowRuns: data ReviewHistory
+ GitHub.Data.Actions.WorkflowRuns: data RunAttempt
+ GitHub.Data.Actions.WorkflowRuns: data WorkflowRun
+ GitHub.Data.Actions.WorkflowRuns: instance Data.Aeson.Types.FromJSON.FromJSON (GitHub.Data.Actions.Common.WithTotalCount GitHub.Data.Actions.WorkflowRuns.WorkflowRun)
+ GitHub.Data.Actions.WorkflowRuns: instance Data.Aeson.Types.FromJSON.FromJSON GitHub.Data.Actions.WorkflowRuns.ReviewHistory
+ GitHub.Data.Actions.WorkflowRuns: instance Data.Aeson.Types.FromJSON.FromJSON GitHub.Data.Actions.WorkflowRuns.WorkflowRun
+ GitHub.Data.Actions.WorkflowRuns: instance Data.Data.Data GitHub.Data.Actions.WorkflowRuns.ReviewHistory
+ GitHub.Data.Actions.WorkflowRuns: instance Data.Data.Data GitHub.Data.Actions.WorkflowRuns.RunAttempt
+ GitHub.Data.Actions.WorkflowRuns: instance Data.Data.Data GitHub.Data.Actions.WorkflowRuns.WorkflowRun
+ GitHub.Data.Actions.WorkflowRuns: instance GHC.Classes.Eq GitHub.Data.Actions.WorkflowRuns.ReviewHistory
+ GitHub.Data.Actions.WorkflowRuns: instance GHC.Classes.Eq GitHub.Data.Actions.WorkflowRuns.RunAttempt
+ GitHub.Data.Actions.WorkflowRuns: instance GHC.Classes.Eq GitHub.Data.Actions.WorkflowRuns.WorkflowRun
+ GitHub.Data.Actions.WorkflowRuns: instance GHC.Classes.Ord GitHub.Data.Actions.WorkflowRuns.ReviewHistory
+ GitHub.Data.Actions.WorkflowRuns: instance GHC.Classes.Ord GitHub.Data.Actions.WorkflowRuns.RunAttempt
+ GitHub.Data.Actions.WorkflowRuns: instance GHC.Classes.Ord GitHub.Data.Actions.WorkflowRuns.WorkflowRun
+ GitHub.Data.Actions.WorkflowRuns: instance GHC.Generics.Generic GitHub.Data.Actions.WorkflowRuns.ReviewHistory
+ GitHub.Data.Actions.WorkflowRuns: instance GHC.Generics.Generic GitHub.Data.Actions.WorkflowRuns.RunAttempt
+ GitHub.Data.Actions.WorkflowRuns: instance GHC.Generics.Generic GitHub.Data.Actions.WorkflowRuns.WorkflowRun
+ GitHub.Data.Actions.WorkflowRuns: instance GHC.Show.Show GitHub.Data.Actions.WorkflowRuns.ReviewHistory
+ GitHub.Data.Actions.WorkflowRuns: instance GHC.Show.Show GitHub.Data.Actions.WorkflowRuns.RunAttempt
+ GitHub.Data.Actions.WorkflowRuns: instance GHC.Show.Show GitHub.Data.Actions.WorkflowRuns.WorkflowRun
+ GitHub.Data.Actions.Workflows: CreateWorkflowDispatchEvent :: !Text -> !a -> CreateWorkflowDispatchEvent a
+ GitHub.Data.Actions.Workflows: Workflow :: !Id Workflow -> !Text -> !Text -> !Text -> !UTCTime -> !UTCTime -> !URL -> !URL -> !URL -> Workflow
+ GitHub.Data.Actions.Workflows: [createWorkflowDispatchEventInputs] :: CreateWorkflowDispatchEvent a -> !a
+ GitHub.Data.Actions.Workflows: [createWorkflowDispatchEventRef] :: CreateWorkflowDispatchEvent a -> !Text
+ GitHub.Data.Actions.Workflows: [workflowBadgeUrl] :: Workflow -> !URL
+ GitHub.Data.Actions.Workflows: [workflowCreatedAt] :: Workflow -> !UTCTime
+ GitHub.Data.Actions.Workflows: [workflowHtmlUrl] :: Workflow -> !URL
+ GitHub.Data.Actions.Workflows: [workflowName] :: Workflow -> !Text
+ GitHub.Data.Actions.Workflows: [workflowPath] :: Workflow -> !Text
+ GitHub.Data.Actions.Workflows: [workflowState] :: Workflow -> !Text
+ GitHub.Data.Actions.Workflows: [workflowUpdatedAt] :: Workflow -> !UTCTime
+ GitHub.Data.Actions.Workflows: [workflowUrl] :: Workflow -> !URL
+ GitHub.Data.Actions.Workflows: [workflowWorkflowId] :: Workflow -> !Id Workflow
+ GitHub.Data.Actions.Workflows: data CreateWorkflowDispatchEvent a
+ GitHub.Data.Actions.Workflows: data Workflow
+ GitHub.Data.Actions.Workflows: instance Control.DeepSeq.NFData a => Control.DeepSeq.NFData (GitHub.Data.Actions.Workflows.CreateWorkflowDispatchEvent a)
+ GitHub.Data.Actions.Workflows: instance Data.Aeson.Types.FromJSON.FromJSON (GitHub.Data.Actions.Common.WithTotalCount GitHub.Data.Actions.Workflows.Workflow)
+ GitHub.Data.Actions.Workflows: instance Data.Aeson.Types.FromJSON.FromJSON GitHub.Data.Actions.Workflows.Workflow
+ GitHub.Data.Actions.Workflows: instance Data.Aeson.Types.ToJSON.ToJSON a => Data.Aeson.Types.ToJSON.ToJSON (GitHub.Data.Actions.Workflows.CreateWorkflowDispatchEvent a)
+ GitHub.Data.Actions.Workflows: instance Data.Binary.Class.Binary a => Data.Binary.Class.Binary (GitHub.Data.Actions.Workflows.CreateWorkflowDispatchEvent a)
+ GitHub.Data.Actions.Workflows: instance Data.Data.Data GitHub.Data.Actions.Workflows.Workflow
+ GitHub.Data.Actions.Workflows: instance GHC.Classes.Eq GitHub.Data.Actions.Workflows.Workflow
+ GitHub.Data.Actions.Workflows: instance GHC.Classes.Ord GitHub.Data.Actions.Workflows.Workflow
+ GitHub.Data.Actions.Workflows: instance GHC.Generics.Generic (GitHub.Data.Actions.Workflows.CreateWorkflowDispatchEvent a)
+ GitHub.Data.Actions.Workflows: instance GHC.Generics.Generic GitHub.Data.Actions.Workflows.Workflow
+ GitHub.Data.Actions.Workflows: instance GHC.Show.Show GitHub.Data.Actions.Workflows.Workflow
+ GitHub.Data.Actions.Workflows: instance GHC.Show.Show a => GHC.Show.Show (GitHub.Data.Actions.Workflows.CreateWorkflowDispatchEvent a)
+ GitHub.Data.Issues: [issueStateReason] :: Issue -> !Maybe IssueStateReason
+ GitHub.Data.Options: StateReasonCompleted :: IssueStateReason
+ GitHub.Data.Options: StateReasonNotPlanned :: IssueStateReason
+ GitHub.Data.Options: StateReasonReopened :: IssueStateReason
+ GitHub.Data.Options: artifactModToQueryString :: ArtifactMod -> QueryString
+ GitHub.Data.Options: cacheModToQueryString :: CacheMod -> QueryString
+ GitHub.Data.Options: data ArtifactMod
+ GitHub.Data.Options: data CacheMod
+ GitHub.Data.Options: data IssueStateReason
+ GitHub.Data.Options: data WorkflowRunMod
+ GitHub.Data.Options: instance Control.DeepSeq.NFData GitHub.Data.Options.IssueStateReason
+ GitHub.Data.Options: instance Control.DeepSeq.NFData GitHub.Data.Options.SortCache
+ GitHub.Data.Options: instance Data.Aeson.Types.FromJSON.FromJSON GitHub.Data.Options.IssueStateReason
+ GitHub.Data.Options: instance Data.Aeson.Types.ToJSON.ToJSON GitHub.Data.Options.IssueStateReason
+ GitHub.Data.Options: instance Data.Binary.Class.Binary GitHub.Data.Options.IssueStateReason
+ GitHub.Data.Options: instance Data.Binary.Class.Binary GitHub.Data.Options.SortCache
+ GitHub.Data.Options: instance Data.Data.Data GitHub.Data.Options.ArtifactOptions
+ GitHub.Data.Options: instance Data.Data.Data GitHub.Data.Options.CacheOptions
+ GitHub.Data.Options: instance Data.Data.Data GitHub.Data.Options.IssueStateReason
+ GitHub.Data.Options: instance Data.Data.Data GitHub.Data.Options.SortCache
+ GitHub.Data.Options: instance Data.Data.Data GitHub.Data.Options.WorkflowRunOptions
+ GitHub.Data.Options: instance GHC.Base.Monoid GitHub.Data.Options.ArtifactMod
+ GitHub.Data.Options: instance GHC.Base.Monoid GitHub.Data.Options.CacheMod
+ GitHub.Data.Options: instance GHC.Base.Monoid GitHub.Data.Options.WorkflowRunMod
+ GitHub.Data.Options: instance GHC.Base.Semigroup GitHub.Data.Options.ArtifactMod
+ GitHub.Data.Options: instance GHC.Base.Semigroup GitHub.Data.Options.CacheMod
+ GitHub.Data.Options: instance GHC.Base.Semigroup GitHub.Data.Options.WorkflowRunMod
+ GitHub.Data.Options: instance GHC.Classes.Eq GitHub.Data.Options.ArtifactOptions
+ GitHub.Data.Options: instance GHC.Classes.Eq GitHub.Data.Options.CacheOptions
+ GitHub.Data.Options: instance GHC.Classes.Eq GitHub.Data.Options.IssueStateReason
+ GitHub.Data.Options: instance GHC.Classes.Eq GitHub.Data.Options.SortCache
+ GitHub.Data.Options: instance GHC.Classes.Eq GitHub.Data.Options.WorkflowRunOptions
+ GitHub.Data.Options: instance GHC.Classes.Ord GitHub.Data.Options.ArtifactOptions
+ GitHub.Data.Options: instance GHC.Classes.Ord GitHub.Data.Options.CacheOptions
+ GitHub.Data.Options: instance GHC.Classes.Ord GitHub.Data.Options.IssueStateReason
+ GitHub.Data.Options: instance GHC.Classes.Ord GitHub.Data.Options.SortCache
+ GitHub.Data.Options: instance GHC.Classes.Ord GitHub.Data.Options.WorkflowRunOptions
+ GitHub.Data.Options: instance GHC.Enum.Bounded GitHub.Data.Options.IssueStateReason
+ GitHub.Data.Options: instance GHC.Enum.Bounded GitHub.Data.Options.SortCache
+ GitHub.Data.Options: instance GHC.Enum.Enum GitHub.Data.Options.IssueStateReason
+ GitHub.Data.Options: instance GHC.Enum.Enum GitHub.Data.Options.SortCache
+ GitHub.Data.Options: instance GHC.Generics.Generic GitHub.Data.Options.ArtifactOptions
+ GitHub.Data.Options: instance GHC.Generics.Generic GitHub.Data.Options.CacheOptions
+ GitHub.Data.Options: instance GHC.Generics.Generic GitHub.Data.Options.IssueStateReason
+ GitHub.Data.Options: instance GHC.Generics.Generic GitHub.Data.Options.SortCache
+ GitHub.Data.Options: instance GHC.Generics.Generic GitHub.Data.Options.WorkflowRunOptions
+ GitHub.Data.Options: instance GHC.Show.Show GitHub.Data.Options.ArtifactOptions
+ GitHub.Data.Options: instance GHC.Show.Show GitHub.Data.Options.CacheOptions
+ GitHub.Data.Options: instance GHC.Show.Show GitHub.Data.Options.IssueStateReason
+ GitHub.Data.Options: instance GHC.Show.Show GitHub.Data.Options.SortCache
+ GitHub.Data.Options: instance GHC.Show.Show GitHub.Data.Options.WorkflowRunOptions
+ GitHub.Data.Options: optionsArtifactName :: Text -> ArtifactMod
+ GitHub.Data.Options: optionsDirectionAsc :: CacheMod
+ GitHub.Data.Options: optionsDirectionDesc :: CacheMod
+ GitHub.Data.Options: optionsKey :: Text -> CacheMod
+ GitHub.Data.Options: optionsNoKey :: CacheMod
+ GitHub.Data.Options: optionsNoRef :: CacheMod
+ GitHub.Data.Options: optionsRef :: Text -> CacheMod
+ GitHub.Data.Options: optionsWorkflowRunActor :: Text -> WorkflowRunMod
+ GitHub.Data.Options: optionsWorkflowRunBranch :: Text -> WorkflowRunMod
+ GitHub.Data.Options: optionsWorkflowRunCreated :: Text -> WorkflowRunMod
+ GitHub.Data.Options: optionsWorkflowRunEvent :: Text -> WorkflowRunMod
+ GitHub.Data.Options: optionsWorkflowRunHeadSha :: Text -> WorkflowRunMod
+ GitHub.Data.Options: optionsWorkflowRunStatus :: Text -> WorkflowRunMod
+ GitHub.Data.Options: sortByCreatedAt :: CacheMod
+ GitHub.Data.Options: sortByLastAccessedAt :: CacheMod
+ GitHub.Data.Options: sortBySizeInBytes :: CacheMod
+ GitHub.Data.Options: workflowRunModToQueryString :: WorkflowRunMod -> QueryString
+ GitHub.Endpoints.Actions.Artifacts: artifactR :: Name Owner -> Name Repo -> Id Artifact -> Request 'RA Artifact
+ GitHub.Endpoints.Actions.Artifacts: artifactsForR :: Name Owner -> Name Repo -> ArtifactMod -> FetchCount -> Request 'RA (WithTotalCount Artifact)
+ GitHub.Endpoints.Actions.Artifacts: artifactsForWorkflowRunR :: Name Owner -> Name Repo -> Id WorkflowRun -> FetchCount -> Request 'RA (WithTotalCount Artifact)
+ GitHub.Endpoints.Actions.Artifacts: deleteArtifactR :: Name Owner -> Name Repo -> Id Comment -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Actions.Artifacts: downloadArtifactR :: Name Owner -> Name Repo -> Id Artifact -> GenRequest 'MtRedirect 'RW URI
+ GitHub.Endpoints.Actions.Cache: cacheUsageByRepositoryR :: Name Organization -> FetchCount -> GenRequest 'MtJSON 'RA (WithTotalCount RepositoryCacheUsage)
+ GitHub.Endpoints.Actions.Cache: cacheUsageOrganizationR :: Name Organization -> GenRequest 'MtJSON 'RA OrganizationCacheUsage
+ GitHub.Endpoints.Actions.Cache: cacheUsageR :: Name Owner -> Name Repo -> Request k RepositoryCacheUsage
+ GitHub.Endpoints.Actions.Cache: cachesForRepoR :: Name Owner -> Name Repo -> CacheMod -> FetchCount -> GenRequest 'MtJSON 'RA (WithTotalCount Cache)
+ GitHub.Endpoints.Actions.Cache: deleteCacheR :: Name Owner -> Name Repo -> Id Cache -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Actions.Secrets: addOrganizationSelectedRepositoriesForSecretR :: Name Organization -> Name OrganizationSecret -> Id Repo -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Actions.Secrets: deleteEnvironmentSecretR :: Id Repo -> Name Environment -> Name RepoSecret -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Actions.Secrets: deleteOrganizationSecretR :: Name Organization -> Name OrganizationSecret -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Actions.Secrets: deleteRepoSecretR :: Name Owner -> Name Organization -> Name RepoSecret -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Actions.Secrets: environmentPublicKeyR :: Id Repo -> Name Environment -> GenRequest 'MtJSON 'RA PublicKey
+ GitHub.Endpoints.Actions.Secrets: environmentSecretR :: Id Repo -> Name Environment -> Name RepoSecret -> GenRequest 'MtJSON 'RA RepoSecret
+ GitHub.Endpoints.Actions.Secrets: environmentSecretsR :: Id Repo -> Name Environment -> FetchCount -> GenRequest 'MtJSON 'RA (WithTotalCount RepoSecret)
+ GitHub.Endpoints.Actions.Secrets: organizationPublicKeyR :: Name Organization -> GenRequest 'MtJSON 'RA PublicKey
+ GitHub.Endpoints.Actions.Secrets: organizationSecretR :: Name Organization -> Name OrganizationSecret -> GenRequest 'MtJSON 'RA OrganizationSecret
+ GitHub.Endpoints.Actions.Secrets: organizationSecretsR :: Name Organization -> FetchCount -> GenRequest 'MtJSON 'RA (WithTotalCount OrganizationSecret)
+ GitHub.Endpoints.Actions.Secrets: organizationSelectedRepositoriesForSecretR :: Name Organization -> Name OrganizationSecret -> FetchCount -> GenRequest 'MtJSON 'RA (WithTotalCount SelectedRepo)
+ GitHub.Endpoints.Actions.Secrets: removeOrganizationSelectedRepositoriesForSecretR :: Name Organization -> Name OrganizationSecret -> Id Repo -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Actions.Secrets: repoPublicKeyR :: Name Owner -> Name Organization -> GenRequest 'MtJSON 'RA PublicKey
+ GitHub.Endpoints.Actions.Secrets: repoSecretR :: Name Owner -> Name Organization -> Name RepoSecret -> GenRequest 'MtJSON 'RA RepoSecret
+ GitHub.Endpoints.Actions.Secrets: repoSecretsR :: Name Owner -> Name Repo -> FetchCount -> GenRequest 'MtJSON 'RA (WithTotalCount RepoSecret)
+ GitHub.Endpoints.Actions.Secrets: setEnvironmentSecretR :: Id Repo -> Name Environment -> Name RepoSecret -> SetRepoSecret -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Actions.Secrets: setOrganizationSecretR :: Name Organization -> Name OrganizationSecret -> SetSecret -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Actions.Secrets: setOrganizationSelectedRepositoriesForSecretR :: Name Organization -> Name OrganizationSecret -> SetSelectedRepositories -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Actions.Secrets: setRepoSecretR :: Name Owner -> Name Organization -> Name RepoSecret -> SetRepoSecret -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Actions.WorkflowJobs: downloadJobLogsR :: Name Owner -> Name Repo -> Id Job -> GenRequest 'MtRedirect 'RO URI
+ GitHub.Endpoints.Actions.WorkflowJobs: jobR :: Name Owner -> Name Repo -> Id Job -> Request 'RA Job
+ GitHub.Endpoints.Actions.WorkflowJobs: jobsForWorkflowRunAttemptR :: Name Owner -> Name Repo -> Id WorkflowRun -> Id RunAttempt -> FetchCount -> GenRequest 'MtJSON 'RA (WithTotalCount Job)
+ GitHub.Endpoints.Actions.WorkflowJobs: jobsForWorkflowRunR :: Name Owner -> Name Repo -> Id WorkflowRun -> FetchCount -> GenRequest 'MtJSON 'RA (WithTotalCount Job)
+ GitHub.Endpoints.Actions.WorkflowRuns: approveWorkflowRunR :: Name Owner -> Name Repo -> Id WorkflowRun -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Actions.WorkflowRuns: cancelWorkflowRunR :: Name Owner -> Name Repo -> Id WorkflowRun -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Actions.WorkflowRuns: deleteWorkflowRunLogsR :: Name Owner -> Name Repo -> Id WorkflowRun -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Actions.WorkflowRuns: deleteWorkflowRunR :: Name Owner -> Name Repo -> Id WorkflowRun -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Actions.WorkflowRuns: downloadWorkflowRunAttemptLogsR :: Name Owner -> Name Repo -> Id WorkflowRun -> Id RunAttempt -> GenRequest 'MtRedirect 'RO URI
+ GitHub.Endpoints.Actions.WorkflowRuns: downloadWorkflowRunLogsR :: Name Owner -> Name Repo -> Id WorkflowRun -> GenRequest 'MtRedirect 'RA URI
+ GitHub.Endpoints.Actions.WorkflowRuns: reRunFailedJobsR :: Name Owner -> Name Repo -> Id WorkflowRun -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Actions.WorkflowRuns: reRunJobR :: Name Owner -> Name Repo -> Id Job -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Actions.WorkflowRuns: reRunWorkflowR :: Name Owner -> Name Repo -> Id WorkflowRun -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Actions.WorkflowRuns: workflowRunAttemptR :: Name Owner -> Name Repo -> Id WorkflowRun -> Id RunAttempt -> GenRequest 'MtJSON 'RA WorkflowRun
+ GitHub.Endpoints.Actions.WorkflowRuns: workflowRunR :: Name Owner -> Name Repo -> Id WorkflowRun -> GenRequest 'MtJSON 'RA WorkflowRun
+ GitHub.Endpoints.Actions.WorkflowRuns: workflowRunReviewHistoryR :: Name Owner -> Name Repo -> Id WorkflowRun -> GenRequest 'MtJSON 'RA (Vector ReviewHistory)
+ GitHub.Endpoints.Actions.WorkflowRuns: workflowRunsForWorkflowR :: IsPathPart idOrName => Name Owner -> Name Repo -> idOrName -> WorkflowRunMod -> FetchCount -> GenRequest 'MtJSON 'RA (WithTotalCount WorkflowRun)
+ GitHub.Endpoints.Actions.WorkflowRuns: workflowRunsR :: Name Owner -> Name Repo -> WorkflowRunMod -> FetchCount -> GenRequest 'MtJSON 'RA (WithTotalCount WorkflowRun)
+ GitHub.Endpoints.Actions.Workflows: disableWorkflowR :: IsPathPart idOrName => Name Owner -> Name Repo -> idOrName -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Actions.Workflows: enableWorkflowR :: IsPathPart idOrName => Name Owner -> Name Repo -> idOrName -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Actions.Workflows: repositoryWorkflowsR :: Name Owner -> Name Repo -> FetchCount -> GenRequest 'MtJSON 'RA (WithTotalCount Workflow)
+ GitHub.Endpoints.Actions.Workflows: triggerWorkflowR :: (ToJSON a, IsPathPart idOrName) => Name Owner -> Name Repo -> idOrName -> CreateWorkflowDispatchEvent a -> GenRequest 'MtUnit 'RW ()
+ GitHub.Endpoints.Actions.Workflows: workflowR :: IsPathPart idOrName => Name Owner -> Name Repo -> idOrName -> GenRequest 'MtJSON 'RA Workflow
+ GitHub.Internal.Prelude: (!!) :: [a] -> Int -> a
+ GitHub.Internal.Prelude: ($!) :: forall (r :: RuntimeRep) a (b :: TYPE r). (a -> b) -> a -> b
+ GitHub.Internal.Prelude: ($) :: forall (r :: RuntimeRep) a (b :: TYPE r). (a -> b) -> a -> b
+ GitHub.Internal.Prelude: (&&) :: Bool -> Bool -> Bool
+ GitHub.Internal.Prelude: (*) :: Num a => a -> a -> a
+ GitHub.Internal.Prelude: (**) :: Floating a => a -> a -> a
+ GitHub.Internal.Prelude: (*>) :: Applicative f => f a -> f b -> f b
+ GitHub.Internal.Prelude: (+) :: Num a => a -> a -> a
+ GitHub.Internal.Prelude: (++) :: [a] -> [a] -> [a]
+ GitHub.Internal.Prelude: (-) :: Num a => a -> a -> a
+ GitHub.Internal.Prelude: (.) :: (b -> c) -> (a -> b) -> a -> c
+ GitHub.Internal.Prelude: (/) :: Fractional a => a -> a -> a
+ GitHub.Internal.Prelude: (/=) :: Eq a => a -> a -> Bool
+ GitHub.Internal.Prelude: (<$) :: Functor f => a -> f b -> f a
+ GitHub.Internal.Prelude: (<$>) :: Functor f => (a -> b) -> f a -> f b
+ GitHub.Internal.Prelude: (<&>) :: Functor f => f a -> (a -> b) -> f b
+ GitHub.Internal.Prelude: (<) :: Ord a => a -> a -> Bool
+ GitHub.Internal.Prelude: (<*) :: Applicative f => f a -> f b -> f a
+ GitHub.Internal.Prelude: (<*>) :: Applicative f => f (a -> b) -> f a -> f b
+ GitHub.Internal.Prelude: (<=) :: Ord a => a -> a -> Bool
+ GitHub.Internal.Prelude: (=<<) :: Monad m => (a -> m b) -> m a -> m b
+ GitHub.Internal.Prelude: (==) :: Eq a => a -> a -> Bool
+ GitHub.Internal.Prelude: (>) :: Ord a => a -> a -> Bool
+ GitHub.Internal.Prelude: (>=) :: Ord a => a -> a -> Bool
+ GitHub.Internal.Prelude: (>>) :: Monad m => m a -> m b -> m b
+ GitHub.Internal.Prelude: (>>=) :: Monad m => m a -> (a -> m b) -> m b
+ GitHub.Internal.Prelude: (^) :: (Num a, Integral b) => a -> b -> a
+ GitHub.Internal.Prelude: (^^) :: (Fractional a, Integral b) => a -> b -> a
+ GitHub.Internal.Prelude: (||) :: Bool -> Bool -> Bool
+ GitHub.Internal.Prelude: EQ :: Ordering
+ GitHub.Internal.Prelude: False :: Bool
+ GitHub.Internal.Prelude: GT :: Ordering
+ GitHub.Internal.Prelude: Just :: a -> Maybe a
+ GitHub.Internal.Prelude: LT :: Ordering
+ GitHub.Internal.Prelude: Left :: a -> Either a b
+ GitHub.Internal.Prelude: Nothing :: Maybe a
+ GitHub.Internal.Prelude: Right :: b -> Either a b
+ GitHub.Internal.Prelude: True :: Bool
+ GitHub.Internal.Prelude: abs :: Num a => a -> a
+ GitHub.Internal.Prelude: acos :: Floating a => a -> a
+ GitHub.Internal.Prelude: acosh :: Floating a => a -> a
+ GitHub.Internal.Prelude: all :: Foldable t => (a -> Bool) -> t a -> Bool
+ GitHub.Internal.Prelude: and :: Foldable t => t Bool -> Bool
+ GitHub.Internal.Prelude: any :: Foldable t => (a -> Bool) -> t a -> Bool
+ GitHub.Internal.Prelude: appendFile :: FilePath -> String -> IO ()
+ GitHub.Internal.Prelude: asTypeOf :: a -> a -> a
+ GitHub.Internal.Prelude: asin :: Floating a => a -> a
+ GitHub.Internal.Prelude: asinh :: Floating a => a -> a
+ GitHub.Internal.Prelude: atan :: Floating a => a -> a
+ GitHub.Internal.Prelude: atan2 :: RealFloat a => a -> a -> a
+ GitHub.Internal.Prelude: atanh :: Floating a => a -> a
+ GitHub.Internal.Prelude: break :: (a -> Bool) -> [a] -> ([a], [a])
+ GitHub.Internal.Prelude: ceiling :: (RealFrac a, Integral b) => a -> b
+ GitHub.Internal.Prelude: class Functor f => Applicative (f :: Type -> Type)
+ GitHub.Internal.Prelude: class Bounded a
+ GitHub.Internal.Prelude: class Enum a
+ GitHub.Internal.Prelude: class Eq a
+ GitHub.Internal.Prelude: class Fractional a => Floating a
+ GitHub.Internal.Prelude: class Foldable (t :: TYPE LiftedRep -> Type)
+ GitHub.Internal.Prelude: class Num a => Fractional a
+ GitHub.Internal.Prelude: class Functor (f :: Type -> Type)
+ GitHub.Internal.Prelude: class (Real a, Enum a) => Integral a
+ GitHub.Internal.Prelude: class Applicative m => Monad (m :: Type -> Type)
+ GitHub.Internal.Prelude: class Monad m => MonadFail (m :: Type -> Type)
+ GitHub.Internal.Prelude: class Semigroup a => Monoid a
+ GitHub.Internal.Prelude: class Num a
+ GitHub.Internal.Prelude: class Eq a => Ord a
+ GitHub.Internal.Prelude: class Read a
+ GitHub.Internal.Prelude: class (Num a, Ord a) => Real a
+ GitHub.Internal.Prelude: class (RealFrac a, Floating a) => RealFloat a
+ GitHub.Internal.Prelude: class (Real a, Fractional a) => RealFrac a
+ GitHub.Internal.Prelude: class Show a
+ GitHub.Internal.Prelude: class (Functor t, Foldable t) => Traversable (t :: Type -> Type)
+ GitHub.Internal.Prelude: compare :: Ord a => a -> a -> Ordering
+ GitHub.Internal.Prelude: concat :: Foldable t => t [a] -> [a]
+ GitHub.Internal.Prelude: concatMap :: Foldable t => (a -> [b]) -> t a -> [b]
+ GitHub.Internal.Prelude: const :: a -> b -> a
+ GitHub.Internal.Prelude: cos :: Floating a => a -> a
+ GitHub.Internal.Prelude: cosh :: Floating a => a -> a
+ GitHub.Internal.Prelude: curry :: ((a, b) -> c) -> a -> b -> c
+ GitHub.Internal.Prelude: cycle :: [a] -> [a]
+ GitHub.Internal.Prelude: data Bool
+ GitHub.Internal.Prelude: data Char
+ GitHub.Internal.Prelude: data Double
+ GitHub.Internal.Prelude: data Either a b
+ GitHub.Internal.Prelude: data Float
+ GitHub.Internal.Prelude: data IO a
+ GitHub.Internal.Prelude: data Int
+ GitHub.Internal.Prelude: data Integer
+ GitHub.Internal.Prelude: data Maybe a
+ GitHub.Internal.Prelude: data Ordering
+ GitHub.Internal.Prelude: data Word
+ GitHub.Internal.Prelude: decodeFloat :: RealFloat a => a -> (Integer, Int)
+ GitHub.Internal.Prelude: div :: Integral a => a -> a -> a
+ GitHub.Internal.Prelude: divMod :: Integral a => a -> a -> (a, a)
+ GitHub.Internal.Prelude: drop :: Int -> [a] -> [a]
+ GitHub.Internal.Prelude: dropWhile :: (a -> Bool) -> [a] -> [a]
+ GitHub.Internal.Prelude: either :: (a -> c) -> (b -> c) -> Either a b -> c
+ GitHub.Internal.Prelude: elem :: (Foldable t, Eq a) => a -> t a -> Bool
+ GitHub.Internal.Prelude: encodeFloat :: RealFloat a => Integer -> Int -> a
+ GitHub.Internal.Prelude: enumFrom :: Enum a => a -> [a]
+ GitHub.Internal.Prelude: enumFromThen :: Enum a => a -> a -> [a]
+ GitHub.Internal.Prelude: enumFromThenTo :: Enum a => a -> a -> a -> [a]
+ GitHub.Internal.Prelude: enumFromTo :: Enum a => a -> a -> [a]
+ GitHub.Internal.Prelude: error :: forall (r :: RuntimeRep) (a :: TYPE r). HasCallStack => [Char] -> a
+ GitHub.Internal.Prelude: errorWithoutStackTrace :: forall (r :: RuntimeRep) (a :: TYPE r). [Char] -> a
+ GitHub.Internal.Prelude: even :: Integral a => a -> Bool
+ GitHub.Internal.Prelude: exp :: Floating a => a -> a
+ GitHub.Internal.Prelude: exponent :: RealFloat a => a -> Int
+ GitHub.Internal.Prelude: fail :: MonadFail m => String -> m a
+ GitHub.Internal.Prelude: filter :: (a -> Bool) -> [a] -> [a]
+ GitHub.Internal.Prelude: flip :: (a -> b -> c) -> b -> a -> c
+ GitHub.Internal.Prelude: floatDigits :: RealFloat a => a -> Int
+ GitHub.Internal.Prelude: floatRadix :: RealFloat a => a -> Integer
+ GitHub.Internal.Prelude: floatRange :: RealFloat a => a -> (Int, Int)
+ GitHub.Internal.Prelude: floor :: (RealFrac a, Integral b) => a -> b
+ GitHub.Internal.Prelude: fmap :: Functor f => (a -> b) -> f a -> f b
+ GitHub.Internal.Prelude: foldMap :: (Foldable t, Monoid m) => (a -> m) -> t a -> m
+ GitHub.Internal.Prelude: foldl :: Foldable t => (b -> a -> b) -> b -> t a -> b
+ GitHub.Internal.Prelude: foldl1 :: Foldable t => (a -> a -> a) -> t a -> a
+ GitHub.Internal.Prelude: foldr :: Foldable t => (a -> b -> b) -> b -> t a -> b
+ GitHub.Internal.Prelude: foldr1 :: Foldable t => (a -> a -> a) -> t a -> a
+ GitHub.Internal.Prelude: fromEnum :: Enum a => a -> Int
+ GitHub.Internal.Prelude: fromInteger :: Num a => Integer -> a
+ GitHub.Internal.Prelude: fromIntegral :: (Integral a, Num b) => a -> b
+ GitHub.Internal.Prelude: fromRational :: Fractional a => Rational -> a
+ GitHub.Internal.Prelude: fst :: (a, b) -> a
+ GitHub.Internal.Prelude: gcd :: Integral a => a -> a -> a
+ GitHub.Internal.Prelude: getChar :: IO Char
+ GitHub.Internal.Prelude: getContents :: IO String
+ GitHub.Internal.Prelude: getLine :: IO String
+ GitHub.Internal.Prelude: head :: [a] -> a
+ GitHub.Internal.Prelude: id :: a -> a
+ GitHub.Internal.Prelude: infix 4 `notElem`
+ GitHub.Internal.Prelude: infixl 1 <&>
+ GitHub.Internal.Prelude: infixl 4 <$>
+ GitHub.Internal.Prelude: infixl 6 -
+ GitHub.Internal.Prelude: infixl 7 *
+ GitHub.Internal.Prelude: infixl 9 !!
+ GitHub.Internal.Prelude: infixr 0 $!
+ GitHub.Internal.Prelude: infixr 1 =<<
+ GitHub.Internal.Prelude: infixr 2 ||
+ GitHub.Internal.Prelude: infixr 3 &&
+ GitHub.Internal.Prelude: infixr 5 ++
+ GitHub.Internal.Prelude: infixr 9 .
+ GitHub.Internal.Prelude: init :: [a] -> [a]
+ GitHub.Internal.Prelude: interact :: (String -> String) -> IO ()
+ GitHub.Internal.Prelude: ioError :: IOError -> IO a
+ GitHub.Internal.Prelude: isDenormalized :: RealFloat a => a -> Bool
+ GitHub.Internal.Prelude: isIEEE :: RealFloat a => a -> Bool
+ GitHub.Internal.Prelude: isInfinite :: RealFloat a => a -> Bool
+ GitHub.Internal.Prelude: isNaN :: RealFloat a => a -> Bool
+ GitHub.Internal.Prelude: isNegativeZero :: RealFloat a => a -> Bool
+ GitHub.Internal.Prelude: iterate :: (a -> a) -> a -> [a]
+ GitHub.Internal.Prelude: last :: [a] -> a
+ GitHub.Internal.Prelude: lcm :: Integral a => a -> a -> a
+ GitHub.Internal.Prelude: length :: Foldable t => t a -> Int
+ GitHub.Internal.Prelude: lex :: ReadS String
+ GitHub.Internal.Prelude: liftA2 :: Applicative f => (a -> b -> c) -> f a -> f b -> f c
+ GitHub.Internal.Prelude: lines :: String -> [String]
+ GitHub.Internal.Prelude: log :: Floating a => a -> a
+ GitHub.Internal.Prelude: logBase :: Floating a => a -> a -> a
+ GitHub.Internal.Prelude: lookup :: Eq a => a -> [(a, b)] -> Maybe b
+ GitHub.Internal.Prelude: map :: (a -> b) -> [a] -> [b]
+ GitHub.Internal.Prelude: mapM :: (Traversable t, Monad m) => (a -> m b) -> t a -> m (t b)
+ GitHub.Internal.Prelude: mapM_ :: (Foldable t, Monad m) => (a -> m b) -> t a -> m ()
+ GitHub.Internal.Prelude: mappend :: Monoid a => a -> a -> a
+ GitHub.Internal.Prelude: max :: Ord a => a -> a -> a
+ GitHub.Internal.Prelude: maxBound :: Bounded a => a
+ GitHub.Internal.Prelude: maximum :: (Foldable t, Ord a) => t a -> a
+ GitHub.Internal.Prelude: maybe :: b -> (a -> b) -> Maybe a -> b
+ GitHub.Internal.Prelude: mconcat :: Monoid a => [a] -> a
+ GitHub.Internal.Prelude: mempty :: Monoid a => a
+ GitHub.Internal.Prelude: min :: Ord a => a -> a -> a
+ GitHub.Internal.Prelude: minBound :: Bounded a => a
+ GitHub.Internal.Prelude: minimum :: (Foldable t, Ord a) => t a -> a
+ GitHub.Internal.Prelude: mod :: Integral a => a -> a -> a
+ GitHub.Internal.Prelude: negate :: Num a => a -> a
+ GitHub.Internal.Prelude: not :: Bool -> Bool
+ GitHub.Internal.Prelude: notElem :: (Foldable t, Eq a) => a -> t a -> Bool
+ GitHub.Internal.Prelude: null :: Foldable t => t a -> Bool
+ GitHub.Internal.Prelude: odd :: Integral a => a -> Bool
+ GitHub.Internal.Prelude: or :: Foldable t => t Bool -> Bool
+ GitHub.Internal.Prelude: otherwise :: Bool
+ GitHub.Internal.Prelude: pi :: Floating a => a
+ GitHub.Internal.Prelude: pred :: Enum a => a -> a
+ GitHub.Internal.Prelude: print :: Show a => a -> IO ()
+ GitHub.Internal.Prelude: product :: (Foldable t, Num a) => t a -> a
+ GitHub.Internal.Prelude: properFraction :: (RealFrac a, Integral b) => a -> (b, a)
+ GitHub.Internal.Prelude: pure :: Applicative f => a -> f a
+ GitHub.Internal.Prelude: putChar :: Char -> IO ()
+ GitHub.Internal.Prelude: putStr :: String -> IO ()
+ GitHub.Internal.Prelude: putStrLn :: String -> IO ()
+ GitHub.Internal.Prelude: quot :: Integral a => a -> a -> a
+ GitHub.Internal.Prelude: quotRem :: Integral a => a -> a -> (a, a)
+ GitHub.Internal.Prelude: read :: Read a => String -> a
+ GitHub.Internal.Prelude: readFile :: FilePath -> IO String
+ GitHub.Internal.Prelude: readIO :: Read a => String -> IO a
+ GitHub.Internal.Prelude: readList :: Read a => ReadS [a]
+ GitHub.Internal.Prelude: readLn :: Read a => IO a
+ GitHub.Internal.Prelude: readParen :: Bool -> ReadS a -> ReadS a
+ GitHub.Internal.Prelude: reads :: Read a => ReadS a
+ GitHub.Internal.Prelude: readsPrec :: Read a => Int -> ReadS a
+ GitHub.Internal.Prelude: realToFrac :: (Real a, Fractional b) => a -> b
+ GitHub.Internal.Prelude: recip :: Fractional a => a -> a
+ GitHub.Internal.Prelude: rem :: Integral a => a -> a -> a
+ GitHub.Internal.Prelude: repeat :: a -> [a]
+ GitHub.Internal.Prelude: replicate :: Int -> a -> [a]
+ GitHub.Internal.Prelude: return :: Monad m => a -> m a
+ GitHub.Internal.Prelude: reverse :: [a] -> [a]
+ GitHub.Internal.Prelude: round :: (RealFrac a, Integral b) => a -> b
+ GitHub.Internal.Prelude: scaleFloat :: RealFloat a => Int -> a -> a
+ GitHub.Internal.Prelude: scanl :: (b -> a -> b) -> b -> [a] -> [b]
+ GitHub.Internal.Prelude: scanl1 :: (a -> a -> a) -> [a] -> [a]
+ GitHub.Internal.Prelude: scanr :: (a -> b -> b) -> b -> [a] -> [b]
+ GitHub.Internal.Prelude: scanr1 :: (a -> a -> a) -> [a] -> [a]
+ GitHub.Internal.Prelude: seq :: forall {r :: RuntimeRep} a (b :: TYPE r). a -> b -> b
+ GitHub.Internal.Prelude: sequence :: (Traversable t, Monad m) => t (m a) -> m (t a)
+ GitHub.Internal.Prelude: sequenceA :: (Traversable t, Applicative f) => t (f a) -> f (t a)
+ GitHub.Internal.Prelude: sequence_ :: (Foldable t, Monad m) => t (m a) -> m ()
+ GitHub.Internal.Prelude: show :: Show a => a -> String
+ GitHub.Internal.Prelude: showChar :: Char -> ShowS
+ GitHub.Internal.Prelude: showList :: Show a => [a] -> ShowS
+ GitHub.Internal.Prelude: showParen :: Bool -> ShowS -> ShowS
+ GitHub.Internal.Prelude: showString :: String -> ShowS
+ GitHub.Internal.Prelude: shows :: Show a => a -> ShowS
+ GitHub.Internal.Prelude: showsPrec :: Show a => Int -> a -> ShowS
+ GitHub.Internal.Prelude: significand :: RealFloat a => a -> a
+ GitHub.Internal.Prelude: signum :: Num a => a -> a
+ GitHub.Internal.Prelude: sin :: Floating a => a -> a
+ GitHub.Internal.Prelude: sinh :: Floating a => a -> a
+ GitHub.Internal.Prelude: snd :: (a, b) -> b
+ GitHub.Internal.Prelude: span :: (a -> Bool) -> [a] -> ([a], [a])
+ GitHub.Internal.Prelude: splitAt :: Int -> [a] -> ([a], [a])
+ GitHub.Internal.Prelude: sqrt :: Floating a => a -> a
+ GitHub.Internal.Prelude: subtract :: Num a => a -> a -> a
+ GitHub.Internal.Prelude: succ :: Enum a => a -> a
+ GitHub.Internal.Prelude: sum :: (Foldable t, Num a) => t a -> a
+ GitHub.Internal.Prelude: tail :: [a] -> [a]
+ GitHub.Internal.Prelude: take :: Int -> [a] -> [a]
+ GitHub.Internal.Prelude: takeWhile :: (a -> Bool) -> [a] -> [a]
+ GitHub.Internal.Prelude: tan :: Floating a => a -> a
+ GitHub.Internal.Prelude: tanh :: Floating a => a -> a
+ GitHub.Internal.Prelude: toEnum :: Enum a => Int -> a
+ GitHub.Internal.Prelude: toInteger :: Integral a => a -> Integer
+ GitHub.Internal.Prelude: toRational :: Real a => a -> Rational
+ GitHub.Internal.Prelude: traverse :: (Traversable t, Applicative f) => (a -> f b) -> t a -> f (t b)
+ GitHub.Internal.Prelude: truncate :: (RealFrac a, Integral b) => a -> b
+ GitHub.Internal.Prelude: type FilePath = String
+ GitHub.Internal.Prelude: type IOError = IOException
+ GitHub.Internal.Prelude: type Rational = Ratio Integer
+ GitHub.Internal.Prelude: type ReadS a = String -> [(a, String)]
+ GitHub.Internal.Prelude: type ShowS = String -> String
+ GitHub.Internal.Prelude: type String = [Char]
+ GitHub.Internal.Prelude: uncurry :: (a -> b -> c) -> (a, b) -> c
+ GitHub.Internal.Prelude: undefined :: forall (r :: RuntimeRep) (a :: TYPE r). HasCallStack => a
+ GitHub.Internal.Prelude: unlines :: [String] -> String
+ GitHub.Internal.Prelude: until :: (a -> Bool) -> (a -> a) -> a -> a
+ GitHub.Internal.Prelude: unwords :: [String] -> String
+ GitHub.Internal.Prelude: unzip :: [(a, b)] -> ([a], [b])
+ GitHub.Internal.Prelude: unzip3 :: [(a, b, c)] -> ([a], [b], [c])
+ GitHub.Internal.Prelude: userError :: String -> IOError
+ GitHub.Internal.Prelude: words :: String -> [String]
+ GitHub.Internal.Prelude: writeFile :: FilePath -> String -> IO ()
+ GitHub.Internal.Prelude: zip :: [a] -> [b] -> [(a, b)]
+ GitHub.Internal.Prelude: zip3 :: [a] -> [b] -> [c] -> [(a, b, c)]
+ GitHub.Internal.Prelude: zipWith :: (a -> b -> c) -> [a] -> [b] -> [c]
+ GitHub.Internal.Prelude: zipWith3 :: (a -> b -> c -> d) -> [a] -> [b] -> [c] -> [d]
- GitHub.Data.Issues: Issue :: !Maybe UTCTime -> !UTCTime -> !URL -> !Maybe URL -> !Maybe SimpleUser -> !Vector IssueLabel -> !IssueNumber -> !Vector SimpleUser -> !SimpleUser -> !Text -> !Maybe PullRequestReference -> !URL -> !UTCTime -> !Maybe Text -> !IssueState -> !Id Issue -> !Int -> !Maybe Milestone -> Issue
+ GitHub.Data.Issues: Issue :: !Maybe UTCTime -> !UTCTime -> !URL -> !Maybe URL -> !Maybe SimpleUser -> !Vector IssueLabel -> !IssueNumber -> !Vector SimpleUser -> !SimpleUser -> !Text -> !Maybe PullRequestReference -> !URL -> !UTCTime -> !Maybe Text -> !IssueState -> !Id Issue -> !Int -> !Maybe Milestone -> !Maybe IssueStateReason -> Issue
- GitHub.Data.Request: data GenRequest (mt :: MediaType *) (rw :: RW) a
+ GitHub.Data.Request: data GenRequest (mt :: MediaType (*)) (rw :: RW) a
- GitHub.Internal.Prelude: infixr 8 .=
+ GitHub.Internal.Prelude: infixr 8 ^
- GitHub.Request: class Accept (mt :: MediaType *)
+ GitHub.Request: class Accept (mt :: MediaType (*))
- GitHub.Request: class Accept mt => ParseResponse (mt :: MediaType *) a
+ GitHub.Request: class Accept mt => ParseResponse (mt :: MediaType (*)) a
- GitHub.Request: data GenRequest (mt :: MediaType *) (rw :: RW) a
+ GitHub.Request: data GenRequest (mt :: MediaType (*)) (rw :: RW) a

Files

CHANGELOG.md view
@@ -1,3 +1,19 @@+## Changes for 0.29++_2023-06-24, Andreas Abel, Midsommar edition_++- Support for the GitHub Actions API+  (PR [#459](https://github.com/haskell-github/github/pull/459)):+  * New endpoint modules `GitHub.EndPoints.Actions.Artifacts`, `.Cache`,+    `.Secrets`, `.Workflows`, `.WorkflowRuns`, `.WorkflowJobs`.+  * Matching data structure modules `GitHub.Data.Actions.*`.++- Add field `issueStateReason` of type `Maybe IssueStateReason` to `Issue`+  with possible values `completed`, `not_planned` and `reopened`+  (PR [#496](https://github.com/haskell-github/github/pull/496)).++Tested with GHC 7.8 - 9.6.2+ ## Changes for 0.28.0.1  _2022-07-23, Andreas Abel_
README.md view
@@ -1,8 +1,10 @@ GitHub ------ +[![Hackage version](https://img.shields.io/hackage/v/github.svg?label=Hackage&color=informational)](http://hackage.haskell.org/package/github)+[![github on Stackage Nightly](https://stackage.org/package/github/badge/nightly)](https://stackage.org/nightly/package/github)+[![Stackage LTS version](https://www.stackage.org/package/github/badge/lts?label=Stackage)](https://www.stackage.org/package/github) [![Haskell-CI](https://github.com/haskell-github/github/actions/workflows/haskell-ci.yml/badge.svg)](https://github.com/haskell-github/github/actions/workflows/haskell-ci.yml)-[![Hackage](https://img.shields.io/hackage/v/github.svg)][hackage]  The GitHub API v3 for Haskell. @@ -92,7 +94,7 @@  Available under the BSD 3-clause license. -[hackage]: http://hackage.haskell.org/package/github "Hackage"+[hackage]: https://hackage.haskell.org/package/github "Hackage"  Alternative ===========
+ fixtures/actions/artifact.json view
@@ -0,0 +1,19 @@+{+  "id": 416767789,+  "node_id": "MDg6QXJ0aWZhY3Q0MTY3Njc3ODk=",+  "name": "dist-without-markdown",+  "size_in_bytes": 42718,+  "url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/artifacts/416767789",+  "archive_download_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/artifacts/416767789/zip",+  "expired": false,+  "created_at": "2022-10-29T22:18:21Z",+  "updated_at": "2022-10-29T22:18:23Z",+  "expires_at": "2023-01-27T22:18:16Z",+  "workflow_run": {+    "id": 3353148947,+    "repository_id": 559365297,+    "head_repository_id": 559365297,+    "head_branch": "main",+    "head_sha": "601593ecb1d8a57a04700fdb445a28d4186b8954"+  }+}
+ fixtures/actions/artifacts-list.json view
@@ -0,0 +1,43 @@+{+  "total_count": 23809,+  "artifacts": [+    {+      "id": 416737084,+      "node_id": "MDg6QXJ0aWZhY3Q0MTY3MzcwODQ=",+      "name": "doc-html",+      "size_in_bytes": 61667543,+      "url": "https://api.github.com/repos/python/cpython/actions/artifacts/416737084",+      "archive_download_url": "https://api.github.com/repos/python/cpython/actions/artifacts/416737084/zip",+      "expired": false,+      "created_at": "2022-10-29T20:56:24Z",+      "updated_at": "2022-10-29T20:56:25Z",+      "expires_at": "2023-01-27T20:50:21Z",+      "workflow_run": {+        "id": 3352897496,+        "repository_id": 81598961,+        "head_repository_id": 101955313,+        "head_branch": "backport-bfecff5-3.11",+        "head_sha": "692cd77975413d71ff0951072df686e6f38711c8"+      }+    },+    {+      "id": 416712612,+      "node_id": "MDg6QXJ0aWZhY3Q0MTY3MTI2MTI=",+      "name": "doc-html",+      "size_in_bytes": 61217330,+      "url": "https://api.github.com/repos/python/cpython/actions/artifacts/416712612",+      "archive_download_url": "https://api.github.com/repos/python/cpython/actions/artifacts/416712612/zip",+      "expired": false,+      "created_at": "2022-10-29T19:53:19Z",+      "updated_at": "2022-10-29T19:53:20Z",+      "expires_at": "2023-01-27T19:49:12Z",+      "workflow_run": {+        "id": 3352724493,+        "repository_id": 81598961,+        "head_repository_id": 559335486,+        "head_branch": "patch-1",+        "head_sha": "62eb88a66d1d35f7701873d8b698a2f8d7e84fa5"+      }+    }+  ]+}
+ fixtures/actions/cache-list.json view
@@ -0,0 +1,14 @@+{+  "total_count": 1,+  "actions_caches": [+    {+      "id": 1,+      "ref": "refs/heads/main",+      "key": "cache_key",+      "version": "f5f850afdadd47730296d4ffa900de95f6bbafb75dc1e8475df1fa6ae79dcece",+      "last_accessed_at": "2022-10-30T00:08:14.223333300Z",+      "created_at": "2022-10-30T00:08:14.223333300Z",+      "size_in_bytes": 26586+    }+  ]+}
+ fixtures/actions/org-cache-usage.json view
@@ -0,0 +1,4 @@+{+  "total_active_caches_size_in_bytes": 26586,+  "total_active_caches_count": 1+}
+ fixtures/actions/org-public-key.json view
@@ -0,0 +1,4 @@+{+  "key_id": "568250167242549743",+  "key": "KHVvOxB765kjkShEgUu27QCzl5XxKz/L20V+KRsWf0w="+}
+ fixtures/actions/org-secrets-list.json view
@@ -0,0 +1,18 @@+{+  "total_count": 2,+  "secrets": [+    {+      "name": "TEST_SECRET",+      "created_at": "2022-10-31T00:08:12Z",+      "updated_at": "2022-10-31T00:08:12Z",+      "visibility": "all"+    },+    {+      "name": "TEST_SELECTED",+      "created_at": "2022-10-31T00:08:43Z",+      "updated_at": "2022-10-31T00:08:43Z",+      "visibility": "selected",+      "selected_repositories_url": "https://api.github.com/orgs/kote-test-org-actions/actions/secrets/TEST_SELECTED/repositories"+    }+  ]+}
+ fixtures/actions/repo-cache-usage.json view
@@ -0,0 +1,5 @@+{+  "full_name": "python/cpython",+  "active_caches_size_in_bytes": 55000268087,+  "active_caches_count": 171+}
+ fixtures/actions/selected-repositories-for-secret.json view
@@ -0,0 +1,72 @@+{+  "total_count": 1,+  "repositories": [+    {+      "id": 559365297,+      "node_id": "R_kgDOIVc8sQ",+      "name": "actions-api",+      "full_name": "kote-test-org-actions/actions-api",+      "private": true,+      "owner": {+        "login": "kote-test-org-actions",+        "id": 116976977,+        "node_id": "O_kgDOBvjtUQ",+        "avatar_url": "https://avatars.githubusercontent.com/u/116976977?v=4",+        "gravatar_id": "",+        "url": "https://api.github.com/users/kote-test-org-actions",+        "html_url": "https://github.com/kote-test-org-actions",+        "followers_url": "https://api.github.com/users/kote-test-org-actions/followers",+        "following_url": "https://api.github.com/users/kote-test-org-actions/following{/other_user}",+        "gists_url": "https://api.github.com/users/kote-test-org-actions/gists{/gist_id}",+        "starred_url": "https://api.github.com/users/kote-test-org-actions/starred{/owner}{/repo}",+        "subscriptions_url": "https://api.github.com/users/kote-test-org-actions/subscriptions",+        "organizations_url": "https://api.github.com/users/kote-test-org-actions/orgs",+        "repos_url": "https://api.github.com/users/kote-test-org-actions/repos",+        "events_url": "https://api.github.com/users/kote-test-org-actions/events{/privacy}",+        "received_events_url": "https://api.github.com/users/kote-test-org-actions/received_events",+        "type": "Organization",+        "site_admin": false+      },+      "html_url": "https://github.com/kote-test-org-actions/actions-api",+      "description": null,+      "fork": false,+      "url": "https://api.github.com/repos/kote-test-org-actions/actions-api",+      "forks_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/forks",+      "keys_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/keys{/key_id}",+      "collaborators_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/collaborators{/collaborator}",+      "teams_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/teams",+      "hooks_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/hooks",+      "issue_events_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/issues/events{/number}",+      "events_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/events",+      "assignees_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/assignees{/user}",+      "branches_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/branches{/branch}",+      "tags_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/tags",+      "blobs_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/blobs{/sha}",+      "git_tags_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/tags{/sha}",+      "git_refs_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/refs{/sha}",+      "trees_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/trees{/sha}",+      "statuses_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/statuses/{sha}",+      "languages_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/languages",+      "stargazers_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/stargazers",+      "contributors_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/contributors",+      "subscribers_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/subscribers",+      "subscription_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/subscription",+      "commits_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/commits{/sha}",+      "git_commits_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/commits{/sha}",+      "comments_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/comments{/number}",+      "issue_comment_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/issues/comments{/number}",+      "contents_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/contents/{+path}",+      "compare_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/compare/{base}...{head}",+      "merges_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/merges",+      "archive_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/{archive_format}{/ref}",+      "downloads_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/downloads",+      "issues_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/issues{/number}",+      "pulls_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/pulls{/number}",+      "milestones_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/milestones{/number}",+      "notifications_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/notifications{?since,all,participating}",+      "labels_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/labels{/name}",+      "releases_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/releases{/id}",+      "deployments_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/deployments"+    }+  ]+}
+ fixtures/actions/workflow-job.json view
@@ -0,0 +1,113 @@+{+  "id": 9183275828,+  "run_id": 3353449941,+  "run_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/runs/3353449941",+  "run_attempt": 1,+  "node_id": "CR_kwDOIVc8sc8AAAACI12rNA",+  "head_sha": "3156f684232a3adec5085c920d2006aca80f2798",+  "url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/jobs/9183275828",+  "html_url": "https://github.com/kote-test-org-actions/actions-api/actions/runs/3353449941/jobs/5556228789",+  "status": "completed",+  "conclusion": "success",+  "started_at": "2022-10-30T00:09:29Z",+  "completed_at": "2022-10-30T00:09:49Z",+  "name": "check-bats-version",+  "steps": [+    {+      "name": "Set up job",+      "status": "completed",+      "conclusion": "success",+      "number": 1,+      "started_at": "2022-10-29T17:09:29.000-07:00",+      "completed_at": "2022-10-29T17:09:32.000-07:00"+    },+    {+      "name": "Run actions/checkout@v3",+      "status": "completed",+      "conclusion": "success",+      "number": 2,+      "started_at": "2022-10-29T17:09:32.000-07:00",+      "completed_at": "2022-10-29T17:09:33.000-07:00"+    },+    {+      "name": "Run actions/setup-node@v3",+      "status": "completed",+      "conclusion": "success",+      "number": 3,+      "started_at": "2022-10-29T17:09:34.000-07:00",+      "completed_at": "2022-10-29T17:09:39.000-07:00"+    },+    {+      "name": "Run npm install -g bats",+      "status": "completed",+      "conclusion": "success",+      "number": 4,+      "started_at": "2022-10-29T17:09:40.000-07:00",+      "completed_at": "2022-10-29T17:09:42.000-07:00"+    },+    {+      "name": "Run bats -v",+      "status": "completed",+      "conclusion": "success",+      "number": 5,+      "started_at": "2022-10-29T17:09:42.000-07:00",+      "completed_at": "2022-10-29T17:09:42.000-07:00"+    },+    {+      "name": "Archive Test",+      "status": "completed",+      "conclusion": "success",+      "number": 6,+      "started_at": "2022-10-29T17:09:42.000-07:00",+      "completed_at": "2022-10-29T17:09:46.000-07:00"+    },+    {+      "name": "Cache",+      "status": "completed",+      "conclusion": "success",+      "number": 7,+      "started_at": "2022-10-29T17:09:46.000-07:00",+      "completed_at": "2022-10-29T17:09:47.000-07:00"+    },+    {+      "name": "Post Cache",+      "status": "completed",+      "conclusion": "success",+      "number": 12,+      "started_at": "2022-10-29T17:09:49.000-07:00",+      "completed_at": "2022-10-29T17:09:47.000-07:00"+    },+    {+      "name": "Post Run actions/setup-node@v3",+      "status": "completed",+      "conclusion": "success",+      "number": 13,+      "started_at": "2022-10-29T17:09:49.000-07:00",+      "completed_at": "2022-10-29T17:09:49.000-07:00"+    },+    {+      "name": "Post Run actions/checkout@v3",+      "status": "completed",+      "conclusion": "success",+      "number": 14,+      "started_at": "2022-10-29T17:09:49.000-07:00",+      "completed_at": "2022-10-29T17:09:49.000-07:00"+    },+    {+      "name": "Complete job",+      "status": "completed",+      "conclusion": "success",+      "number": 15,+      "started_at": "2022-10-29T17:09:47.000-07:00",+      "completed_at": "2022-10-29T17:09:47.000-07:00"+    }+  ],+  "check_run_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/check-runs/9183275828",+  "labels": [+    "ubuntu-latest"+  ],+  "runner_id": 1,+  "runner_name": "Hosted Agent",+  "runner_group_id": 2,+  "runner_group_name": "GitHub Actions"+}
+ fixtures/actions/workflow-list.json view
@@ -0,0 +1,17 @@+{+  "total_count": 1,+  "workflows": [+    {+      "id": 39065091,+      "node_id": "W_kwDOIVc8sc4CVBYD",+      "name": "learn-github-actions",+      "path": ".github/workflows/make_artifact.yaml",+      "state": "active",+      "created_at": "2022-10-29T15:17:59.000-07:00",+      "updated_at": "2022-10-29T15:17:59.000-07:00",+      "url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/workflows/39065091",+      "html_url": "https://github.com/kote-test-org-actions/actions-api/blob/main/.github/workflows/make_artifact.yaml",+      "badge_url": "https://github.com/kote-test-org-actions/actions-api/workflows/learn-github-actions/badge.svg"+    }+  ]+}
+ fixtures/actions/workflow-runs-list.json view
@@ -0,0 +1,665 @@+{+  "total_count": 3,+  "workflow_runs": [+    {+      "id": 3353449941,+      "name": "K0Te is learning GitHub Actions",+      "node_id": "WFR_kwLOIVc8sc7H4ZXV",+      "head_branch": "main",+      "head_sha": "3156f684232a3adec5085c920d2006aca80f2798",+      "path": ".github/workflows/make_artifact.yaml",+      "display_title": "K0Te is learning GitHub Actions",+      "run_number": 3,+      "event": "push",+      "status": "completed",+      "conclusion": "success",+      "workflow_id": 39065091,+      "check_suite_id": 9030268154,+      "check_suite_node_id": "CS_kwDOIVc8sc8AAAACGj70-g",+      "url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/runs/3353449941",+      "html_url": "https://github.com/kote-test-org-actions/actions-api/actions/runs/3353449941",+      "pull_requests": [],+      "created_at": "2022-10-30T00:09:22Z",+      "updated_at": "2022-10-30T00:09:50Z",+      "actor": {+        "login": "K0Te",+        "id": 6162155,+        "node_id": "MDQ6VXNlcjYxNjIxNTU=",+        "avatar_url": "https://avatars.githubusercontent.com/u/6162155?v=4",+        "gravatar_id": "",+        "url": "https://api.github.com/users/K0Te",+        "html_url": "https://github.com/K0Te",+        "followers_url": "https://api.github.com/users/K0Te/followers",+        "following_url": "https://api.github.com/users/K0Te/following{/other_user}",+        "gists_url": "https://api.github.com/users/K0Te/gists{/gist_id}",+        "starred_url": "https://api.github.com/users/K0Te/starred{/owner}{/repo}",+        "subscriptions_url": "https://api.github.com/users/K0Te/subscriptions",+        "organizations_url": "https://api.github.com/users/K0Te/orgs",+        "repos_url": "https://api.github.com/users/K0Te/repos",+        "events_url": "https://api.github.com/users/K0Te/events{/privacy}",+        "received_events_url": "https://api.github.com/users/K0Te/received_events",+        "type": "User",+        "site_admin": false+      },+      "run_attempt": 1,+      "referenced_workflows": [],+      "run_started_at": "2022-10-30T00:09:22Z",+      "triggering_actor": {+        "login": "K0Te",+        "id": 6162155,+        "node_id": "MDQ6VXNlcjYxNjIxNTU=",+        "avatar_url": "https://avatars.githubusercontent.com/u/6162155?v=4",+        "gravatar_id": "",+        "url": "https://api.github.com/users/K0Te",+        "html_url": "https://github.com/K0Te",+        "followers_url": "https://api.github.com/users/K0Te/followers",+        "following_url": "https://api.github.com/users/K0Te/following{/other_user}",+        "gists_url": "https://api.github.com/users/K0Te/gists{/gist_id}",+        "starred_url": "https://api.github.com/users/K0Te/starred{/owner}{/repo}",+        "subscriptions_url": "https://api.github.com/users/K0Te/subscriptions",+        "organizations_url": "https://api.github.com/users/K0Te/orgs",+        "repos_url": "https://api.github.com/users/K0Te/repos",+        "events_url": "https://api.github.com/users/K0Te/events{/privacy}",+        "received_events_url": "https://api.github.com/users/K0Te/received_events",+        "type": "User",+        "site_admin": false+      },+      "jobs_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/runs/3353449941/jobs",+      "logs_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/runs/3353449941/logs",+      "check_suite_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/check-suites/9030268154",+      "artifacts_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/runs/3353449941/artifacts",+      "cancel_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/runs/3353449941/cancel",+      "rerun_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/runs/3353449941/rerun",+      "previous_attempt_url": null,+      "workflow_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/workflows/39065091",+      "head_commit": {+        "id": "3156f684232a3adec5085c920d2006aca80f2798",+        "tree_id": "f51ba8632086ca7af92f5e58c1dc98df1c62d7ce",+        "message": "up",+        "timestamp": "2022-10-30T00:09:16Z",+        "author": {+          "name": "Oleg Nykolyn",+          "email": "juravel2@gmail.com"+        },+        "committer": {+          "name": "Oleg Nykolyn",+          "email": "juravel2@gmail.com"+        }+      },+      "repository": {+        "id": 559365297,+        "node_id": "R_kgDOIVc8sQ",+        "name": "actions-api",+        "full_name": "kote-test-org-actions/actions-api",+        "private": true,+        "owner": {+          "login": "kote-test-org-actions",+          "id": 116976977,+          "node_id": "O_kgDOBvjtUQ",+          "avatar_url": "https://avatars.githubusercontent.com/u/116976977?v=4",+          "gravatar_id": "",+          "url": "https://api.github.com/users/kote-test-org-actions",+          "html_url": "https://github.com/kote-test-org-actions",+          "followers_url": "https://api.github.com/users/kote-test-org-actions/followers",+          "following_url": "https://api.github.com/users/kote-test-org-actions/following{/other_user}",+          "gists_url": "https://api.github.com/users/kote-test-org-actions/gists{/gist_id}",+          "starred_url": "https://api.github.com/users/kote-test-org-actions/starred{/owner}{/repo}",+          "subscriptions_url": "https://api.github.com/users/kote-test-org-actions/subscriptions",+          "organizations_url": "https://api.github.com/users/kote-test-org-actions/orgs",+          "repos_url": "https://api.github.com/users/kote-test-org-actions/repos",+          "events_url": "https://api.github.com/users/kote-test-org-actions/events{/privacy}",+          "received_events_url": "https://api.github.com/users/kote-test-org-actions/received_events",+          "type": "Organization",+          "site_admin": false+        },+        "html_url": "https://github.com/kote-test-org-actions/actions-api",+        "description": null,+        "fork": false,+        "url": "https://api.github.com/repos/kote-test-org-actions/actions-api",+        "forks_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/forks",+        "keys_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/keys{/key_id}",+        "collaborators_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/collaborators{/collaborator}",+        "teams_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/teams",+        "hooks_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/hooks",+        "issue_events_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/issues/events{/number}",+        "events_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/events",+        "assignees_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/assignees{/user}",+        "branches_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/branches{/branch}",+        "tags_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/tags",+        "blobs_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/blobs{/sha}",+        "git_tags_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/tags{/sha}",+        "git_refs_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/refs{/sha}",+        "trees_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/trees{/sha}",+        "statuses_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/statuses/{sha}",+        "languages_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/languages",+        "stargazers_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/stargazers",+        "contributors_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/contributors",+        "subscribers_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/subscribers",+        "subscription_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/subscription",+        "commits_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/commits{/sha}",+        "git_commits_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/commits{/sha}",+        "comments_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/comments{/number}",+        "issue_comment_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/issues/comments{/number}",+        "contents_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/contents/{+path}",+        "compare_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/compare/{base}...{head}",+        "merges_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/merges",+        "archive_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/{archive_format}{/ref}",+        "downloads_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/downloads",+        "issues_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/issues{/number}",+        "pulls_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/pulls{/number}",+        "milestones_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/milestones{/number}",+        "notifications_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/notifications{?since,all,participating}",+        "labels_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/labels{/name}",+        "releases_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/releases{/id}",+        "deployments_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/deployments"+      },+      "head_repository": {+        "id": 559365297,+        "node_id": "R_kgDOIVc8sQ",+        "name": "actions-api",+        "full_name": "kote-test-org-actions/actions-api",+        "private": true,+        "owner": {+          "login": "kote-test-org-actions",+          "id": 116976977,+          "node_id": "O_kgDOBvjtUQ",+          "avatar_url": "https://avatars.githubusercontent.com/u/116976977?v=4",+          "gravatar_id": "",+          "url": "https://api.github.com/users/kote-test-org-actions",+          "html_url": "https://github.com/kote-test-org-actions",+          "followers_url": "https://api.github.com/users/kote-test-org-actions/followers",+          "following_url": "https://api.github.com/users/kote-test-org-actions/following{/other_user}",+          "gists_url": "https://api.github.com/users/kote-test-org-actions/gists{/gist_id}",+          "starred_url": "https://api.github.com/users/kote-test-org-actions/starred{/owner}{/repo}",+          "subscriptions_url": "https://api.github.com/users/kote-test-org-actions/subscriptions",+          "organizations_url": "https://api.github.com/users/kote-test-org-actions/orgs",+          "repos_url": "https://api.github.com/users/kote-test-org-actions/repos",+          "events_url": "https://api.github.com/users/kote-test-org-actions/events{/privacy}",+          "received_events_url": "https://api.github.com/users/kote-test-org-actions/received_events",+          "type": "Organization",+          "site_admin": false+        },+        "html_url": "https://github.com/kote-test-org-actions/actions-api",+        "description": null,+        "fork": false,+        "url": "https://api.github.com/repos/kote-test-org-actions/actions-api",+        "forks_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/forks",+        "keys_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/keys{/key_id}",+        "collaborators_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/collaborators{/collaborator}",+        "teams_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/teams",+        "hooks_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/hooks",+        "issue_events_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/issues/events{/number}",+        "events_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/events",+        "assignees_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/assignees{/user}",+        "branches_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/branches{/branch}",+        "tags_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/tags",+        "blobs_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/blobs{/sha}",+        "git_tags_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/tags{/sha}",+        "git_refs_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/refs{/sha}",+        "trees_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/trees{/sha}",+        "statuses_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/statuses/{sha}",+        "languages_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/languages",+        "stargazers_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/stargazers",+        "contributors_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/contributors",+        "subscribers_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/subscribers",+        "subscription_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/subscription",+        "commits_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/commits{/sha}",+        "git_commits_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/commits{/sha}",+        "comments_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/comments{/number}",+        "issue_comment_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/issues/comments{/number}",+        "contents_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/contents/{+path}",+        "compare_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/compare/{base}...{head}",+        "merges_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/merges",+        "archive_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/{archive_format}{/ref}",+        "downloads_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/downloads",+        "issues_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/issues{/number}",+        "pulls_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/pulls{/number}",+        "milestones_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/milestones{/number}",+        "notifications_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/notifications{?since,all,participating}",+        "labels_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/labels{/name}",+        "releases_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/releases{/id}",+        "deployments_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/deployments"+      }+    },+    {+      "id": 3353445625,+      "name": "K0Te is learning GitHub Actions",+      "node_id": "WFR_kwLOIVc8sc7H4YT5",+      "head_branch": "main",+      "head_sha": "2d2486b9aecb80bf916717f47f7c312431d3ceb6",+      "path": ".github/workflows/make_artifact.yaml",+      "display_title": "K0Te is learning GitHub Actions",+      "run_number": 2,+      "event": "push",+      "status": "completed",+      "conclusion": "success",+      "workflow_id": 39065091,+      "check_suite_id": 9030259685,+      "check_suite_node_id": "CS_kwDOIVc8sc8AAAACGj7T5Q",+      "url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/runs/3353445625",+      "html_url": "https://github.com/kote-test-org-actions/actions-api/actions/runs/3353445625",+      "pull_requests": [],+      "created_at": "2022-10-30T00:07:49Z",+      "updated_at": "2022-10-30T00:08:19Z",+      "actor": {+        "login": "K0Te",+        "id": 6162155,+        "node_id": "MDQ6VXNlcjYxNjIxNTU=",+        "avatar_url": "https://avatars.githubusercontent.com/u/6162155?v=4",+        "gravatar_id": "",+        "url": "https://api.github.com/users/K0Te",+        "html_url": "https://github.com/K0Te",+        "followers_url": "https://api.github.com/users/K0Te/followers",+        "following_url": "https://api.github.com/users/K0Te/following{/other_user}",+        "gists_url": "https://api.github.com/users/K0Te/gists{/gist_id}",+        "starred_url": "https://api.github.com/users/K0Te/starred{/owner}{/repo}",+        "subscriptions_url": "https://api.github.com/users/K0Te/subscriptions",+        "organizations_url": "https://api.github.com/users/K0Te/orgs",+        "repos_url": "https://api.github.com/users/K0Te/repos",+        "events_url": "https://api.github.com/users/K0Te/events{/privacy}",+        "received_events_url": "https://api.github.com/users/K0Te/received_events",+        "type": "User",+        "site_admin": false+      },+      "run_attempt": 1,+      "referenced_workflows": [],+      "run_started_at": "2022-10-30T00:07:49Z",+      "triggering_actor": {+        "login": "K0Te",+        "id": 6162155,+        "node_id": "MDQ6VXNlcjYxNjIxNTU=",+        "avatar_url": "https://avatars.githubusercontent.com/u/6162155?v=4",+        "gravatar_id": "",+        "url": "https://api.github.com/users/K0Te",+        "html_url": "https://github.com/K0Te",+        "followers_url": "https://api.github.com/users/K0Te/followers",+        "following_url": "https://api.github.com/users/K0Te/following{/other_user}",+        "gists_url": "https://api.github.com/users/K0Te/gists{/gist_id}",+        "starred_url": "https://api.github.com/users/K0Te/starred{/owner}{/repo}",+        "subscriptions_url": "https://api.github.com/users/K0Te/subscriptions",+        "organizations_url": "https://api.github.com/users/K0Te/orgs",+        "repos_url": "https://api.github.com/users/K0Te/repos",+        "events_url": "https://api.github.com/users/K0Te/events{/privacy}",+        "received_events_url": "https://api.github.com/users/K0Te/received_events",+        "type": "User",+        "site_admin": false+      },+      "jobs_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/runs/3353445625/jobs",+      "logs_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/runs/3353445625/logs",+      "check_suite_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/check-suites/9030259685",+      "artifacts_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/runs/3353445625/artifacts",+      "cancel_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/runs/3353445625/cancel",+      "rerun_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/runs/3353445625/rerun",+      "previous_attempt_url": null,+      "workflow_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/workflows/39065091",+      "head_commit": {+        "id": "2d2486b9aecb80bf916717f47f7c312431d3ceb6",+        "tree_id": "21d858674ab650ea734b7efbf05442a21685d121",+        "message": "up",+        "timestamp": "2022-10-30T00:07:44Z",+        "author": {+          "name": "Oleg Nykolyn",+          "email": "juravel2@gmail.com"+        },+        "committer": {+          "name": "Oleg Nykolyn",+          "email": "juravel2@gmail.com"+        }+      },+      "repository": {+        "id": 559365297,+        "node_id": "R_kgDOIVc8sQ",+        "name": "actions-api",+        "full_name": "kote-test-org-actions/actions-api",+        "private": true,+        "owner": {+          "login": "kote-test-org-actions",+          "id": 116976977,+          "node_id": "O_kgDOBvjtUQ",+          "avatar_url": "https://avatars.githubusercontent.com/u/116976977?v=4",+          "gravatar_id": "",+          "url": "https://api.github.com/users/kote-test-org-actions",+          "html_url": "https://github.com/kote-test-org-actions",+          "followers_url": "https://api.github.com/users/kote-test-org-actions/followers",+          "following_url": "https://api.github.com/users/kote-test-org-actions/following{/other_user}",+          "gists_url": "https://api.github.com/users/kote-test-org-actions/gists{/gist_id}",+          "starred_url": "https://api.github.com/users/kote-test-org-actions/starred{/owner}{/repo}",+          "subscriptions_url": "https://api.github.com/users/kote-test-org-actions/subscriptions",+          "organizations_url": "https://api.github.com/users/kote-test-org-actions/orgs",+          "repos_url": "https://api.github.com/users/kote-test-org-actions/repos",+          "events_url": "https://api.github.com/users/kote-test-org-actions/events{/privacy}",+          "received_events_url": "https://api.github.com/users/kote-test-org-actions/received_events",+          "type": "Organization",+          "site_admin": false+        },+        "html_url": "https://github.com/kote-test-org-actions/actions-api",+        "description": null,+        "fork": false,+        "url": "https://api.github.com/repos/kote-test-org-actions/actions-api",+        "forks_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/forks",+        "keys_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/keys{/key_id}",+        "collaborators_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/collaborators{/collaborator}",+        "teams_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/teams",+        "hooks_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/hooks",+        "issue_events_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/issues/events{/number}",+        "events_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/events",+        "assignees_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/assignees{/user}",+        "branches_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/branches{/branch}",+        "tags_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/tags",+        "blobs_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/blobs{/sha}",+        "git_tags_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/tags{/sha}",+        "git_refs_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/refs{/sha}",+        "trees_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/trees{/sha}",+        "statuses_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/statuses/{sha}",+        "languages_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/languages",+        "stargazers_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/stargazers",+        "contributors_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/contributors",+        "subscribers_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/subscribers",+        "subscription_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/subscription",+        "commits_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/commits{/sha}",+        "git_commits_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/commits{/sha}",+        "comments_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/comments{/number}",+        "issue_comment_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/issues/comments{/number}",+        "contents_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/contents/{+path}",+        "compare_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/compare/{base}...{head}",+        "merges_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/merges",+        "archive_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/{archive_format}{/ref}",+        "downloads_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/downloads",+        "issues_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/issues{/number}",+        "pulls_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/pulls{/number}",+        "milestones_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/milestones{/number}",+        "notifications_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/notifications{?since,all,participating}",+        "labels_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/labels{/name}",+        "releases_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/releases{/id}",+        "deployments_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/deployments"+      },+      "head_repository": {+        "id": 559365297,+        "node_id": "R_kgDOIVc8sQ",+        "name": "actions-api",+        "full_name": "kote-test-org-actions/actions-api",+        "private": true,+        "owner": {+          "login": "kote-test-org-actions",+          "id": 116976977,+          "node_id": "O_kgDOBvjtUQ",+          "avatar_url": "https://avatars.githubusercontent.com/u/116976977?v=4",+          "gravatar_id": "",+          "url": "https://api.github.com/users/kote-test-org-actions",+          "html_url": "https://github.com/kote-test-org-actions",+          "followers_url": "https://api.github.com/users/kote-test-org-actions/followers",+          "following_url": "https://api.github.com/users/kote-test-org-actions/following{/other_user}",+          "gists_url": "https://api.github.com/users/kote-test-org-actions/gists{/gist_id}",+          "starred_url": "https://api.github.com/users/kote-test-org-actions/starred{/owner}{/repo}",+          "subscriptions_url": "https://api.github.com/users/kote-test-org-actions/subscriptions",+          "organizations_url": "https://api.github.com/users/kote-test-org-actions/orgs",+          "repos_url": "https://api.github.com/users/kote-test-org-actions/repos",+          "events_url": "https://api.github.com/users/kote-test-org-actions/events{/privacy}",+          "received_events_url": "https://api.github.com/users/kote-test-org-actions/received_events",+          "type": "Organization",+          "site_admin": false+        },+        "html_url": "https://github.com/kote-test-org-actions/actions-api",+        "description": null,+        "fork": false,+        "url": "https://api.github.com/repos/kote-test-org-actions/actions-api",+        "forks_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/forks",+        "keys_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/keys{/key_id}",+        "collaborators_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/collaborators{/collaborator}",+        "teams_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/teams",+        "hooks_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/hooks",+        "issue_events_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/issues/events{/number}",+        "events_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/events",+        "assignees_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/assignees{/user}",+        "branches_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/branches{/branch}",+        "tags_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/tags",+        "blobs_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/blobs{/sha}",+        "git_tags_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/tags{/sha}",+        "git_refs_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/refs{/sha}",+        "trees_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/trees{/sha}",+        "statuses_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/statuses/{sha}",+        "languages_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/languages",+        "stargazers_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/stargazers",+        "contributors_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/contributors",+        "subscribers_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/subscribers",+        "subscription_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/subscription",+        "commits_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/commits{/sha}",+        "git_commits_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/commits{/sha}",+        "comments_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/comments{/number}",+        "issue_comment_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/issues/comments{/number}",+        "contents_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/contents/{+path}",+        "compare_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/compare/{base}...{head}",+        "merges_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/merges",+        "archive_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/{archive_format}{/ref}",+        "downloads_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/downloads",+        "issues_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/issues{/number}",+        "pulls_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/pulls{/number}",+        "milestones_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/milestones{/number}",+        "notifications_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/notifications{?since,all,participating}",+        "labels_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/labels{/name}",+        "releases_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/releases{/id}",+        "deployments_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/deployments"+      }+    },+    {+      "id": 3353148947,+      "name": "K0Te is learning GitHub Actions",+      "node_id": "WFR_kwLOIVc8sc7H3P4T",+      "head_branch": "main",+      "head_sha": "601593ecb1d8a57a04700fdb445a28d4186b8954",+      "path": ".github/workflows/make_artifact.yaml",+      "display_title": "K0Te is learning GitHub Actions",+      "run_number": 1,+      "event": "push",+      "status": "completed",+      "conclusion": "success",+      "workflow_id": 39065091,+      "check_suite_id": 9029740591,+      "check_suite_node_id": "CS_kwDOIVc8sc8AAAACGjboLw",+      "url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/runs/3353148947",+      "html_url": "https://github.com/kote-test-org-actions/actions-api/actions/runs/3353148947",+      "pull_requests": [],+      "created_at": "2022-10-29T22:18:02Z",+      "updated_at": "2022-10-29T22:18:22Z",+      "actor": {+        "login": "K0Te",+        "id": 6162155,+        "node_id": "MDQ6VXNlcjYxNjIxNTU=",+        "avatar_url": "https://avatars.githubusercontent.com/u/6162155?v=4",+        "gravatar_id": "",+        "url": "https://api.github.com/users/K0Te",+        "html_url": "https://github.com/K0Te",+        "followers_url": "https://api.github.com/users/K0Te/followers",+        "following_url": "https://api.github.com/users/K0Te/following{/other_user}",+        "gists_url": "https://api.github.com/users/K0Te/gists{/gist_id}",+        "starred_url": "https://api.github.com/users/K0Te/starred{/owner}{/repo}",+        "subscriptions_url": "https://api.github.com/users/K0Te/subscriptions",+        "organizations_url": "https://api.github.com/users/K0Te/orgs",+        "repos_url": "https://api.github.com/users/K0Te/repos",+        "events_url": "https://api.github.com/users/K0Te/events{/privacy}",+        "received_events_url": "https://api.github.com/users/K0Te/received_events",+        "type": "User",+        "site_admin": false+      },+      "run_attempt": 1,+      "referenced_workflows": [],+      "run_started_at": "2022-10-29T22:18:02Z",+      "triggering_actor": {+        "login": "K0Te",+        "id": 6162155,+        "node_id": "MDQ6VXNlcjYxNjIxNTU=",+        "avatar_url": "https://avatars.githubusercontent.com/u/6162155?v=4",+        "gravatar_id": "",+        "url": "https://api.github.com/users/K0Te",+        "html_url": "https://github.com/K0Te",+        "followers_url": "https://api.github.com/users/K0Te/followers",+        "following_url": "https://api.github.com/users/K0Te/following{/other_user}",+        "gists_url": "https://api.github.com/users/K0Te/gists{/gist_id}",+        "starred_url": "https://api.github.com/users/K0Te/starred{/owner}{/repo}",+        "subscriptions_url": "https://api.github.com/users/K0Te/subscriptions",+        "organizations_url": "https://api.github.com/users/K0Te/orgs",+        "repos_url": "https://api.github.com/users/K0Te/repos",+        "events_url": "https://api.github.com/users/K0Te/events{/privacy}",+        "received_events_url": "https://api.github.com/users/K0Te/received_events",+        "type": "User",+        "site_admin": false+      },+      "jobs_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/runs/3353148947/jobs",+      "logs_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/runs/3353148947/logs",+      "check_suite_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/check-suites/9029740591",+      "artifacts_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/runs/3353148947/artifacts",+      "cancel_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/runs/3353148947/cancel",+      "rerun_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/runs/3353148947/rerun",+      "previous_attempt_url": null,+      "workflow_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/actions/workflows/39065091",+      "head_commit": {+        "id": "601593ecb1d8a57a04700fdb445a28d4186b8954",+        "tree_id": "7aa2d4e6f4e0ddb277fe2f35f7615651ee01c5a2",+        "message": "test",+        "timestamp": "2022-10-29T22:17:55Z",+        "author": {+          "name": "Oleg Nykolyn",+          "email": "juravel2@gmail.com"+        },+        "committer": {+          "name": "Oleg Nykolyn",+          "email": "juravel2@gmail.com"+        }+      },+      "repository": {+        "id": 559365297,+        "node_id": "R_kgDOIVc8sQ",+        "name": "actions-api",+        "full_name": "kote-test-org-actions/actions-api",+        "private": true,+        "owner": {+          "login": "kote-test-org-actions",+          "id": 116976977,+          "node_id": "O_kgDOBvjtUQ",+          "avatar_url": "https://avatars.githubusercontent.com/u/116976977?v=4",+          "gravatar_id": "",+          "url": "https://api.github.com/users/kote-test-org-actions",+          "html_url": "https://github.com/kote-test-org-actions",+          "followers_url": "https://api.github.com/users/kote-test-org-actions/followers",+          "following_url": "https://api.github.com/users/kote-test-org-actions/following{/other_user}",+          "gists_url": "https://api.github.com/users/kote-test-org-actions/gists{/gist_id}",+          "starred_url": "https://api.github.com/users/kote-test-org-actions/starred{/owner}{/repo}",+          "subscriptions_url": "https://api.github.com/users/kote-test-org-actions/subscriptions",+          "organizations_url": "https://api.github.com/users/kote-test-org-actions/orgs",+          "repos_url": "https://api.github.com/users/kote-test-org-actions/repos",+          "events_url": "https://api.github.com/users/kote-test-org-actions/events{/privacy}",+          "received_events_url": "https://api.github.com/users/kote-test-org-actions/received_events",+          "type": "Organization",+          "site_admin": false+        },+        "html_url": "https://github.com/kote-test-org-actions/actions-api",+        "description": null,+        "fork": false,+        "url": "https://api.github.com/repos/kote-test-org-actions/actions-api",+        "forks_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/forks",+        "keys_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/keys{/key_id}",+        "collaborators_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/collaborators{/collaborator}",+        "teams_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/teams",+        "hooks_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/hooks",+        "issue_events_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/issues/events{/number}",+        "events_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/events",+        "assignees_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/assignees{/user}",+        "branches_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/branches{/branch}",+        "tags_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/tags",+        "blobs_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/blobs{/sha}",+        "git_tags_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/tags{/sha}",+        "git_refs_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/refs{/sha}",+        "trees_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/trees{/sha}",+        "statuses_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/statuses/{sha}",+        "languages_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/languages",+        "stargazers_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/stargazers",+        "contributors_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/contributors",+        "subscribers_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/subscribers",+        "subscription_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/subscription",+        "commits_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/commits{/sha}",+        "git_commits_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/commits{/sha}",+        "comments_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/comments{/number}",+        "issue_comment_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/issues/comments{/number}",+        "contents_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/contents/{+path}",+        "compare_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/compare/{base}...{head}",+        "merges_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/merges",+        "archive_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/{archive_format}{/ref}",+        "downloads_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/downloads",+        "issues_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/issues{/number}",+        "pulls_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/pulls{/number}",+        "milestones_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/milestones{/number}",+        "notifications_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/notifications{?since,all,participating}",+        "labels_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/labels{/name}",+        "releases_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/releases{/id}",+        "deployments_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/deployments"+      },+      "head_repository": {+        "id": 559365297,+        "node_id": "R_kgDOIVc8sQ",+        "name": "actions-api",+        "full_name": "kote-test-org-actions/actions-api",+        "private": true,+        "owner": {+          "login": "kote-test-org-actions",+          "id": 116976977,+          "node_id": "O_kgDOBvjtUQ",+          "avatar_url": "https://avatars.githubusercontent.com/u/116976977?v=4",+          "gravatar_id": "",+          "url": "https://api.github.com/users/kote-test-org-actions",+          "html_url": "https://github.com/kote-test-org-actions",+          "followers_url": "https://api.github.com/users/kote-test-org-actions/followers",+          "following_url": "https://api.github.com/users/kote-test-org-actions/following{/other_user}",+          "gists_url": "https://api.github.com/users/kote-test-org-actions/gists{/gist_id}",+          "starred_url": "https://api.github.com/users/kote-test-org-actions/starred{/owner}{/repo}",+          "subscriptions_url": "https://api.github.com/users/kote-test-org-actions/subscriptions",+          "organizations_url": "https://api.github.com/users/kote-test-org-actions/orgs",+          "repos_url": "https://api.github.com/users/kote-test-org-actions/repos",+          "events_url": "https://api.github.com/users/kote-test-org-actions/events{/privacy}",+          "received_events_url": "https://api.github.com/users/kote-test-org-actions/received_events",+          "type": "Organization",+          "site_admin": false+        },+        "html_url": "https://github.com/kote-test-org-actions/actions-api",+        "description": null,+        "fork": false,+        "url": "https://api.github.com/repos/kote-test-org-actions/actions-api",+        "forks_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/forks",+        "keys_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/keys{/key_id}",+        "collaborators_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/collaborators{/collaborator}",+        "teams_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/teams",+        "hooks_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/hooks",+        "issue_events_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/issues/events{/number}",+        "events_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/events",+        "assignees_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/assignees{/user}",+        "branches_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/branches{/branch}",+        "tags_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/tags",+        "blobs_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/blobs{/sha}",+        "git_tags_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/tags{/sha}",+        "git_refs_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/refs{/sha}",+        "trees_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/trees{/sha}",+        "statuses_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/statuses/{sha}",+        "languages_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/languages",+        "stargazers_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/stargazers",+        "contributors_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/contributors",+        "subscribers_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/subscribers",+        "subscription_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/subscription",+        "commits_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/commits{/sha}",+        "git_commits_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/git/commits{/sha}",+        "comments_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/comments{/number}",+        "issue_comment_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/issues/comments{/number}",+        "contents_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/contents/{+path}",+        "compare_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/compare/{base}...{head}",+        "merges_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/merges",+        "archive_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/{archive_format}{/ref}",+        "downloads_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/downloads",+        "issues_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/issues{/number}",+        "pulls_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/pulls{/number}",+        "milestones_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/milestones{/number}",+        "notifications_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/notifications{?since,all,participating}",+        "labels_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/labels{/name}",+        "releases_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/releases{/id}",+        "deployments_url": "https://api.github.com/repos/kote-test-org-actions/actions-api/deployments"+      }+    }+  ]+}
github.cabal view
@@ -1,6 +1,6 @@-cabal-version:      >=1.10+cabal-version:      2.4 name:               github-version:            0.28.0.1+version:            0.29 synopsis:           Access to the GitHub API, v3. category:           Network description:@@ -20,7 +20,7 @@   .   For more of an overview please see the README: <https://github.com/haskell-github/github/blob/master/README.md> -license:            BSD3+license:            BSD-3-Clause license-file:       LICENSE author:             Mike Burns, John Wiegley, Oleg Grenrus maintainer:         Andreas Abel@@ -30,8 +30,9 @@   Copyright 2012-2013 Mike Burns, Copyright 2013-2015 John Wiegley, Copyright 2016-2021 Oleg Grenrus  tested-with:-  GHC == 9.4.1-  GHC == 9.2.3+  GHC == 9.6.2+  GHC == 9.4.5+  GHC == 9.2.8   GHC == 9.0.2   GHC == 8.10.7   GHC == 8.8.4@@ -42,14 +43,16 @@   GHC == 7.10.3   GHC == 7.8.4 -extra-source-files:+extra-doc-files:   README.md   CHANGELOG.md-  fixtures/*.json +extra-source-files:+  fixtures/**/*.json+ source-repository head   type:     git-  location: git://github.com/haskell-github/github.git+  location: https://github.com/haskell-github/github.git  flag openssl   description: "Use http-client-openssl"@@ -70,6 +73,7 @@     DataKinds     DeriveDataTypeable     DeriveGeneric+    LambdaCase     OverloadedStrings     ScopedTypeVariables     TypeOperators@@ -87,6 +91,13 @@     GitHub     GitHub.Auth     GitHub.Data+    GitHub.Data.Actions.Common+    GitHub.Data.Actions.Artifacts+    GitHub.Data.Actions.Cache+    GitHub.Data.Actions.Secrets+    GitHub.Data.Actions.Workflows+    GitHub.Data.Actions.WorkflowJobs+    GitHub.Data.Actions.WorkflowRuns     GitHub.Data.Activities     GitHub.Data.Comments     GitHub.Data.Content@@ -118,6 +129,12 @@     GitHub.Data.URL     GitHub.Data.Webhooks     GitHub.Data.Webhooks.Validate+    GitHub.Endpoints.Actions.Artifacts+    GitHub.Endpoints.Actions.Cache+    GitHub.Endpoints.Actions.Secrets+    GitHub.Endpoints.Actions.Workflows+    GitHub.Endpoints.Actions.WorkflowJobs+    GitHub.Endpoints.Actions.WorkflowRuns     GitHub.Endpoints.Activity.Events     GitHub.Endpoints.Activity.Notifications     GitHub.Endpoints.Activity.Starring@@ -163,7 +180,8 @@     GitHub.Internal.Prelude     GitHub.Request -  other-modules: Paths_github+  other-modules:   Paths_github+  autogen-modules: Paths_github    -- Packages bundles with GHC, mtl and text are also here   build-depends:@@ -180,7 +198,7 @@   -- other packages   build-depends:       aeson                 >=1.4.0.0    && <1.6 || >=2.0.1.0 && <2.2-    , base-compat           >=0.11.1     && <0.13+    , base-compat           >=0.11.1     && <0.14     , base16-bytestring     >=0.1.1.6    && <1.1     , binary-instances      >=1          && <1.1     , cryptohash-sha1       >=0.11.100.1 && <0.12@@ -217,9 +235,15 @@   hs-source-dirs:     spec   main-is:            Spec.hs   ghc-options:        -Wall -threaded-  build-tool-depends: hspec-discover:hspec-discover >=2.7.1 && <2.11+  build-tool-depends: hspec-discover:hspec-discover >=2.7.1 && <2.12   other-extensions:   TemplateHaskell   other-modules:+    GitHub.Actions.ArtifactsSpec+    GitHub.Actions.CacheSpec+    GitHub.Actions.SecretsSpec+    GitHub.Actions.WorkflowJobSpec+    GitHub.Actions.WorkflowRunsSpec+    GitHub.Actions.WorkflowSpec     GitHub.ActivitySpec     GitHub.CommitsSpec     GitHub.EventsSpec@@ -242,7 +266,7 @@     , bytestring     , file-embed     , github-    , hspec                 >=2.6.1 && <2.11+    , hspec                 >=2.6.1 && <2.12     , tagged     , text     , unordered-containers
+ spec/GitHub/Actions/ArtifactsSpec.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TemplateHaskell   #-}+module GitHub.Actions.ArtifactsSpec where++import qualified GitHub as GH++import Prelude ()+import Prelude.Compat++import           Data.Aeson         (eitherDecodeStrict)+import           Data.ByteString    (ByteString)+import           Data.Either.Compat (isRight)+import           Data.FileEmbed     (embedFile)+import           Data.Foldable      (for_)+import           Data.String        (fromString)+import qualified Data.Vector        as V+import           System.Environment (lookupEnv)+import           Test.Hspec+                 (Spec, describe, it, pendingWith, shouldBe, shouldSatisfy)++fromRightS :: Show a => Either a b -> b+fromRightS (Right b) = b+fromRightS (Left a) = error $ "Expected a Right and got a Left" ++ show a++withAuth :: (GH.Auth -> IO ()) -> IO ()+withAuth action = do+    mtoken <- lookupEnv "GITHUB_TOKEN"+    case mtoken of+        Nothing    -> pendingWith "no GITHUB_TOKEN"+        Just token -> action (GH.OAuth $ fromString token)++spec :: Spec+spec = do+    describe "artifactsForR" $ do+        it "works" $ withAuth $ \auth -> for_ repos $ \(owner, repo) -> do+            cs <- GH.executeRequest auth $+                GH.artifactsForR owner repo mempty GH.FetchAll+            cs `shouldSatisfy` isRight++    describe "decoding artifacts payloads" $ do+        it "decodes artifacts list payload" $ do+            GH.withTotalCountTotalCount artifactList `shouldBe` 23809+            V.length (GH.withTotalCountItems artifactList) `shouldBe` 2+        it "decodes signle artifact payload" $ do+            GH.artifactName artifact `shouldBe` "dist-without-markdown"+            GH.artifactWorkflowRunHeadSha (GH.artifactWorkflowRun artifact) `shouldBe` "601593ecb1d8a57a04700fdb445a28d4186b8954"++  where+    repos =+      [ ("thoughtbot", "paperclip")+      , ("phadej", "github")+      ]++    artifactList :: GH.WithTotalCount GH.Artifact+    artifactList =+        fromRightS (eitherDecodeStrict artifactsListPayload)++    artifact :: GH.Artifact+    artifact =+        fromRightS (eitherDecodeStrict artifactPayload)++    artifactsListPayload :: ByteString+    artifactsListPayload = $(embedFile "fixtures/actions/artifacts-list.json")++    artifactPayload :: ByteString+    artifactPayload = $(embedFile "fixtures/actions/artifact.json")
+ spec/GitHub/Actions/CacheSpec.hs view
@@ -0,0 +1,53 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TemplateHaskell   #-}+module GitHub.Actions.CacheSpec where++import qualified GitHub as GH++import Prelude ()+import Prelude.Compat++import           Data.Aeson      (eitherDecodeStrict)+import           Data.ByteString (ByteString)+import           Data.FileEmbed  (embedFile)+import qualified Data.Vector     as V+import           Test.Hspec      (Spec, describe, it, shouldBe)++fromRightS :: Show a => Either a b -> b+fromRightS (Right b) = b+fromRightS (Left a) = error $ "Expected a Right and got a Left" ++ show a++spec :: Spec+spec = do+    describe "decoding cache payloads" $ do+        it "decodes cache list payload" $ do+            V.length (GH.withTotalCountItems cacheList) `shouldBe` 1+        it "decodes cache usage for repo" $ do+            GH.repositoryCacheUsageFullName repoCacheUsage `shouldBe` "python/cpython"+            GH.repositoryCacheUsageActiveCachesSizeInBytes repoCacheUsage `shouldBe` 55000268087+            GH.repositoryCacheUsageActiveCachesCount repoCacheUsage `shouldBe` 171+        it "decodes cache usage for org" $ do+            GH.organizationCacheUsageTotalActiveCachesSizeInBytes orgCacheUsage `shouldBe` 26586+            GH.organizationCacheUsageTotalActiveCachesCount orgCacheUsage `shouldBe` 1++  where+    cacheList :: GH.WithTotalCount GH.Cache+    cacheList =+        fromRightS (eitherDecodeStrict cacheListPayload)++    repoCacheUsage :: GH.RepositoryCacheUsage+    repoCacheUsage =+        fromRightS (eitherDecodeStrict repoCacheUsagePayload)++    orgCacheUsage :: GH.OrganizationCacheUsage+    orgCacheUsage =+        fromRightS (eitherDecodeStrict orgCacheUsagePayload)++    cacheListPayload :: ByteString+    cacheListPayload = $(embedFile "fixtures/actions/cache-list.json")++    repoCacheUsagePayload :: ByteString+    repoCacheUsagePayload = $(embedFile "fixtures/actions/repo-cache-usage.json")++    orgCacheUsagePayload :: ByteString+    orgCacheUsagePayload = $(embedFile "fixtures/actions/org-cache-usage.json")
+ spec/GitHub/Actions/SecretsSpec.hs view
@@ -0,0 +1,50 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TemplateHaskell   #-}+module GitHub.Actions.SecretsSpec where++import qualified GitHub as GH++import Prelude ()+import Prelude.Compat++import           Data.Aeson      (eitherDecodeStrict)+import           Data.ByteString (ByteString)+import           Data.FileEmbed  (embedFile)+import qualified Data.Vector     as V+import           Test.Hspec      (Spec, describe, it, shouldBe)++fromRightS :: Show a => Either a b -> b+fromRightS (Right b) = b+fromRightS (Left a) = error $ "Expected a Right and got a Left" ++ show a++spec :: Spec+spec = do+    describe "decoding secrets payloads" $ do+        it "decodes selected repo list payload" $ do+            V.length (GH.withTotalCountItems repoList) `shouldBe` 1+        it "decodes secret list payload" $ do+            V.length (GH.withTotalCountItems orgSecretList) `shouldBe` 2+        it "decodes public key payload" $ do+            GH.publicKeyId orgPublicKey `shouldBe` "568250167242549743"++  where+    repoList :: GH.WithTotalCount GH.SelectedRepo+    repoList =+        fromRightS (eitherDecodeStrict repoListPayload)++    orgSecretList:: GH.WithTotalCount GH.OrganizationSecret+    orgSecretList=+        fromRightS (eitherDecodeStrict orgSecretListPayload)++    orgPublicKey:: GH.PublicKey+    orgPublicKey=+        fromRightS (eitherDecodeStrict orgPublicKeyPayload)++    repoListPayload :: ByteString+    repoListPayload = $(embedFile "fixtures/actions/selected-repositories-for-secret.json")++    orgSecretListPayload :: ByteString+    orgSecretListPayload = $(embedFile "fixtures/actions/org-secrets-list.json")++    orgPublicKeyPayload :: ByteString+    orgPublicKeyPayload = $(embedFile "fixtures/actions/org-public-key.json")
+ spec/GitHub/Actions/WorkflowJobSpec.hs view
@@ -0,0 +1,32 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TemplateHaskell   #-}+module GitHub.Actions.WorkflowJobSpec where++import qualified GitHub         as GH+import           GitHub.Data.Id++import Prelude ()+import Prelude.Compat++import Data.Aeson      (eitherDecodeStrict)+import Data.ByteString (ByteString)+import Data.FileEmbed  (embedFile)+import Test.Hspec      (Spec, describe, it, shouldBe)++fromRightS :: Show a => Either a b -> b+fromRightS (Right b) = b+fromRightS (Left a) = error $ "Expected a Right and got a Left" ++ show a++spec :: Spec+spec = do+    describe "decoding workflow jobs payloads" $ do+        it "decodes workflow job" $ do+            GH.jobId workflowJob `shouldBe` Id 9183275828++  where+    workflowJob:: GH.Job+    workflowJob=+        fromRightS (eitherDecodeStrict workflowJobPayload)++    workflowJobPayload :: ByteString+    workflowJobPayload = $(embedFile "fixtures/actions/workflow-job.json")
+ spec/GitHub/Actions/WorkflowRunsSpec.hs view
@@ -0,0 +1,32 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TemplateHaskell   #-}+module GitHub.Actions.WorkflowRunsSpec where++import qualified GitHub as GH++import Prelude ()+import Prelude.Compat++import           Data.Aeson      (eitherDecodeStrict)+import           Data.ByteString (ByteString)+import           Data.FileEmbed  (embedFile)+import qualified Data.Vector     as V+import           Test.Hspec      (Spec, describe, it, shouldBe)++fromRightS :: Show a => Either a b -> b+fromRightS (Right b) = b+fromRightS (Left a) = error $ "Expected a Right and got a Left" ++ show a++spec :: Spec+spec = do+    describe "decoding workflow runs payloads" $ do+        it "decodes workflow runs list" $ do+            V.length (GH.withTotalCountItems workflowRunsList) `shouldBe` 3++  where+    workflowRunsList:: GH.WithTotalCount GH.WorkflowRun+    workflowRunsList =+        fromRightS (eitherDecodeStrict workflowRunsPayload)++    workflowRunsPayload :: ByteString+    workflowRunsPayload = $(embedFile "fixtures/actions/workflow-runs-list.json")
+ spec/GitHub/Actions/WorkflowSpec.hs view
@@ -0,0 +1,32 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TemplateHaskell   #-}+module GitHub.Actions.WorkflowSpec where++import qualified GitHub as GH++import Prelude ()+import Prelude.Compat++import           Data.Aeson      (eitherDecodeStrict)+import           Data.ByteString (ByteString)+import           Data.FileEmbed  (embedFile)+import qualified Data.Vector     as V+import           Test.Hspec      (Spec, describe, it, shouldBe)++fromRightS :: Show a => Either a b -> b+fromRightS (Right b) = b+fromRightS (Left a) = error $ "Expected a Right and got a Left" ++ show a++spec :: Spec+spec = do+    describe "decoding workflow payloads" $ do+        it "decodes workflow list" $ do+            V.length (GH.withTotalCountItems workflowList) `shouldBe` 1++  where+    workflowList:: GH.WithTotalCount GH.Workflow+    workflowList =+        fromRightS (eitherDecodeStrict workflowPayload)++    workflowPayload :: ByteString+    workflowPayload = $(embedFile "fixtures/actions/workflow-list.json")
src/GitHub.hs view
@@ -1,8 +1,4 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- This module re-exports all request constructors and data definitions from -- this package. --@@ -16,7 +12,7 @@ -- -- The missing endpoints lists show which endpoints we know are missing, there -- might be more.---+ module GitHub (     -- * Activity     -- | See <https://developer.github.com/v3/activity/>@@ -413,6 +409,76 @@     -- | See <https://developer.github.com/v3/rate_limit/>     rateLimitR, +    -- ** Actions - artifacts+    -- | See <https://docs.github.com/en/rest/actions/artifacts>+    artifactsForR,+    artifactR,+    deleteArtifactR,+    downloadArtifactR,+    artifactsForWorkflowRunR,++    -- ** Actions - cache+    -- | See <https://docs.github.com/en/rest/actions/cache>+    cacheUsageOrganizationR,+    cacheUsageByRepositoryR,+    cacheUsageR,+    cachesForRepoR,+    deleteCacheR,++    -- ** Actions - secrets+    -- | See <https://docs.github.com/en/rest/actions/secrets>+    organizationSecretsR,+    organizationPublicKeyR,+    organizationSecretR,+    setOrganizationSecretR,+    deleteOrganizationSecretR,+    organizationSelectedRepositoriesForSecretR,+    setOrganizationSelectedRepositoriesForSecretR,+    addOrganizationSelectedRepositoriesForSecretR,+    removeOrganizationSelectedRepositoriesForSecretR,+    repoSecretsR,+    repoPublicKeyR,+    repoSecretR,+    setRepoSecretR,+    deleteRepoSecretR,+    environmentSecretsR,+    environmentPublicKeyR,+    environmentSecretR,+    setEnvironmentSecretR,+    deleteEnvironmentSecretR,++    -- ** Actions - workflow jobs+    -- | See <https://docs.github.com/en/rest/actions/workflow-jobs>+    jobR,+    downloadJobLogsR,+    jobsForWorkflowRunAttemptR,+    jobsForWorkflowRunR,++    -- ** Actions - workflow runs+    -- | See <https://docs.github.com/en/rest/actions/workflow-runs>+    reRunJobR,+    workflowRunsR,+    workflowRunR,+    deleteWorkflowRunR,+    workflowRunReviewHistoryR,+    approveWorkflowRunR,+    workflowRunAttemptR,+    downloadWorkflowRunAttemptLogsR,+    cancelWorkflowRunR,+    downloadWorkflowRunLogsR,+    deleteWorkflowRunLogsR,+    reRunWorkflowR,+    reRunFailedJobsR,+    workflowRunsForWorkflowR,++    -- ** Actions - workflows+    -- | See <https://docs.github.com/en/rest/actions/workflows>+    repositoryWorkflowsR,+    workflowR,+    disableWorkflowR,+    triggerWorkflowR,+    enableWorkflowR,+     -- * Data definitions     module GitHub.Data,     -- * Request handling@@ -420,6 +486,12 @@     ) where  import GitHub.Data+import GitHub.Endpoints.Actions.Artifacts+import GitHub.Endpoints.Actions.Cache+import GitHub.Endpoints.Actions.Secrets+import GitHub.Endpoints.Actions.WorkflowJobs+import GitHub.Endpoints.Actions.WorkflowRuns+import GitHub.Endpoints.Actions.Workflows import GitHub.Endpoints.Activity.Events import GitHub.Endpoints.Activity.Notifications import GitHub.Endpoints.Activity.Starring
src/GitHub/Auth.hs view
@@ -1,8 +1,3 @@--------------------------------------------------------------------------------- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- module GitHub.Auth (     Auth (..),     AuthMethod,
src/GitHub/Data.hs view
@@ -1,10 +1,8 @@ {-# LANGUAGE CPP #-}------------------------------------------------------------------------------+ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- This module re-exports the @GitHub.Data.@ and "GitHub.Auth" submodules.+ module GitHub.Data (     -- * Tagged types     -- ** Name@@ -34,6 +32,13 @@     IssueNumber (..),     -- * Module re-exports     module GitHub.Auth,+    module GitHub.Data.Actions.Common,+    module GitHub.Data.Actions.Artifacts,+    module GitHub.Data.Actions.Cache,+    module GitHub.Data.Actions.Secrets,+    module GitHub.Data.Actions.Workflows,+    module GitHub.Data.Actions.WorkflowJobs,+    module GitHub.Data.Actions.WorkflowRuns,     module GitHub.Data.Activities,     module GitHub.Data.Comments,     module GitHub.Data.Content,@@ -67,6 +72,13 @@ import Prelude ()  import GitHub.Auth+import GitHub.Data.Actions.Common+import GitHub.Data.Actions.Artifacts+import GitHub.Data.Actions.Secrets+import GitHub.Data.Actions.Cache+import GitHub.Data.Actions.Workflows+import GitHub.Data.Actions.WorkflowJobs+import GitHub.Data.Actions.WorkflowRuns import GitHub.Data.Activities import GitHub.Data.Comments import GitHub.Data.Content
+ src/GitHub/Data/Actions/Artifacts.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DataKinds         #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE KindSignatures    #-}++module GitHub.Data.Actions.Artifacts (+    Artifact(..),+    ArtifactWorkflowRun(..),+    ) where++import GitHub.Data.Id          (Id)+import GitHub.Data.URL         (URL)+import GitHub.Internal.Prelude+import Prelude ()++import GitHub.Data.Actions.Common       (WithTotalCount (WithTotalCount))+import GitHub.Data.Actions.WorkflowRuns (WorkflowRun)+import GitHub.Data.Repos                (Repo)++-------------------------------------------------------------------------------+-- Artifact+-------------------------------------------------------------------------------++data ArtifactWorkflowRun  = ArtifactWorkflowRun+    { artifactWorkflowRunWorkflowRunId    :: !(Id WorkflowRun)+    , artifactWorkflowRunRepositoryId     :: !(Id Repo)+    , artifactWorkflowRunHeadRepositoryId :: !(Id Repo)+    , artifactWorkflowRunHeadBranch       :: !Text+    , artifactWorkflowRunHeadSha          :: !Text+    }+  deriving (Show, Data, Typeable, Eq, Ord, Generic)++data Artifact = Artifact+    { artifactArchiveDownloadUrl :: !URL+    , artifactCreatedAt          :: !UTCTime+    , artifactExpired            :: !Bool+    , artifactExpiresAt          :: !UTCTime+    , artifactId                 :: !(Id Artifact)+    , artifactName               :: !Text+    , artifactNodeId             :: !Text+    , artifactSizeInBytes        :: !Int+    , artifactUpdatedAt          :: !UTCTime+    , artifactUrl                :: !URL+    , artifactWorkflowRun        :: !ArtifactWorkflowRun+    }+  deriving (Show, Data, Typeable, Eq, Ord, Generic)++-------------------------------------------------------------------------------+-- JSON instances+-------------------------------------------------------------------------------++instance FromJSON ArtifactWorkflowRun where+    parseJSON = withObject "ArtifactWorkflowRun" $ \o -> ArtifactWorkflowRun+        <$> o .: "id"+        <*> o .: "repository_id"+        <*> o .: "head_repository_id"+        <*> o .: "head_branch"+        <*> o .: "head_sha"++instance FromJSON Artifact where+    parseJSON = withObject "Artifact" $ \o -> Artifact+        <$> o .: "archive_download_url"+        <*> o .: "created_at"+        <*> o .: "expired"+        <*> o .: "expires_at"+        <*> o .: "id"+        <*> o .: "name"+        <*> o .: "node_id"+        <*> o .: "size_in_bytes"+        <*> o .: "updated_at"+        <*> o .: "url"+        <*> o .: "workflow_run"++instance FromJSON (WithTotalCount Artifact) where+    parseJSON = withObject "ArtifactList" $ \o -> WithTotalCount+        <$> o .: "artifacts"+        <*> o .: "total_count"
+ src/GitHub/Data/Actions/Cache.hs view
@@ -0,0 +1,78 @@+{-# LANGUAGE DataKinds         #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE KindSignatures    #-}++module GitHub.Data.Actions.Cache (+    Cache(..),+    RepositoryCacheUsage(..),+    OrganizationCacheUsage(..)+    ) where++import GitHub.Data.Id          (Id)+import GitHub.Internal.Prelude+import Prelude ()++import GitHub.Data.Actions.Common (WithTotalCount (WithTotalCount))++-------------------------------------------------------------------------------+-- Cache+-------------------------------------------------------------------------------++data Cache = Cache+    { cacheId             :: !(Id Cache)+    , cacheRef            :: !Text+    , cacheKey            :: !Text+    , cacheVersion        :: !Text+    , cacheLastAccessedAt :: !UTCTime+    , cacheCreatedAt      :: !UTCTime+    , cacheSizeInBytes    :: !Int+    }+  deriving (Show, Data, Typeable, Eq, Ord, Generic)++data RepositoryCacheUsage = RepositoryCacheUsage+    { repositoryCacheUsageFullName                :: !Text+    , repositoryCacheUsageActiveCachesSizeInBytes :: !Int+    , repositoryCacheUsageActiveCachesCount       :: !Int+    }+  deriving (Show, Data, Typeable, Eq, Ord, Generic)++data OrganizationCacheUsage = OrganizationCacheUsage+    { organizationCacheUsageTotalActiveCachesSizeInBytes :: !Int+    , organizationCacheUsageTotalActiveCachesCount       :: !Int+    }+  deriving (Show, Data, Typeable, Eq, Ord, Generic)++-------------------------------------------------------------------------------+-- JSON instances+-------------------------------------------------------------------------------++instance FromJSON Cache where+    parseJSON = withObject "Cache" $ \o -> Cache+        <$> o .: "id"+        <*> o .: "ref"+        <*> o .: "key"+        <*> o .: "version"+        <*> o .: "last_accessed_at"+        <*> o .: "created_at"+        <*> o .: "size_in_bytes"++instance FromJSON (WithTotalCount Cache) where+    parseJSON = withObject "CacheList" $ \o -> WithTotalCount+        <$> o .: "actions_caches"+        <*> o .: "total_count"++instance FromJSON OrganizationCacheUsage where+    parseJSON = withObject "OrganizationCacheUsage" $ \o -> OrganizationCacheUsage+        <$> o .: "total_active_caches_size_in_bytes"+        <*> o .: "total_active_caches_count"++instance FromJSON RepositoryCacheUsage where+    parseJSON = withObject "RepositoryCacheUsage" $ \o -> RepositoryCacheUsage+        <$> o .: "full_name"+        <*> o .: "active_caches_size_in_bytes"+        <*> o .: "active_caches_count"++instance FromJSON (WithTotalCount RepositoryCacheUsage) where+    parseJSON = withObject "CacheUsageList" $ \o -> WithTotalCount+        <$> o .: "repository_cache_usages"+        <*> o .: "total_count"
+ src/GitHub/Data/Actions/Common.hs view
@@ -0,0 +1,33 @@+{-# LANGUAGE DataKinds         #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE KindSignatures    #-}++module GitHub.Data.Actions.Common (+    WithTotalCount(..),+    ) where++import GitHub.Internal.Prelude+import Prelude ()++-------------------------------------------------------------------------------+-- Common+-------------------------------------------------------------------------------++-- | A page of a paginated response.+data WithTotalCount a = WithTotalCount+    { withTotalCountItems      :: !(Vector a)+        -- ^ A snippet of the answer.+    , withTotalCountTotalCount :: !Int+        -- ^ The total size of the answer.+    }+  deriving (Show, Data, Typeable, Eq, Ord, Generic)++-- | Joining two pages of a paginated response.+--   The 'withTotalCountTotalCount' is assumed to be the same in both pages,+--   but this is not checked.+instance Semigroup (WithTotalCount a) where+    WithTotalCount items1 count1 <> WithTotalCount items2 _ =+        WithTotalCount (items1 <> items2) count1++instance Foldable WithTotalCount where+    foldMap f (WithTotalCount items _) = foldMap f items
+ src/GitHub/Data/Actions/Secrets.hs view
@@ -0,0 +1,141 @@+{-# LANGUAGE DataKinds         #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE KindSignatures    #-}+{-# LANGUAGE RecordWildCards   #-}++module GitHub.Data.Actions.Secrets (+    OrganizationSecret(..),+    PublicKey(..),+    SetSecret(..),+    SetRepoSecret(..),+    SelectedRepo(..),+    SetSelectedRepositories(..),+    RepoSecret(..),+    Environment(..),+    ) where++import GitHub.Data.Id          (Id)+import GitHub.Internal.Prelude+import Prelude ()++import Data.Maybe                 (maybeToList)+import GitHub.Data.Actions.Common (WithTotalCount (WithTotalCount))+import GitHub.Data.Name           (Name)+import GitHub.Data.Repos          (Repo)++-------------------------------------------------------------------------------+-- Secret+-------------------------------------------------------------------------------++data OrganizationSecret = OrganizationSecret+    { organizationSecretName :: !(Name OrganizationSecret)+    , organizationSecretCreatedAt :: !UTCTime+    , organizationSecretUpdatedAt :: !UTCTime+    , organizationSecretVisibility :: !Text+    }+  deriving (Show, Data, Typeable, Eq, Ord, Generic)++data PublicKey = PublicKey+    { publicKeyId :: !Text+    , publicKeyKey :: !Text+    }+  deriving (Show, Data, Typeable, Eq, Ord, Generic)++data SetSecret = SetSecret+    { setSecretPublicKeyId :: !Text+    , setSecretEncryptedValue :: !Text+    , setSecretVisibility :: !Text+    , setSecretSelectedRepositoryIds :: !(Maybe [Id Repo])+    }+  deriving (Show, Data, Typeable, Eq, Ord, Generic)++data SetRepoSecret = SetRepoSecret+    { setRepoSecretPublicKeyId :: !Text+    , setRepoSecretEncryptedValue :: !Text+    }+  deriving (Show, Data, Typeable, Eq, Ord, Generic)++data SelectedRepo = SelectedRepo+    { selectedRepoRepoId :: !(Id Repo)+    , selectedRepoRepoName :: !(Name Repo)+    }+  deriving (Show, Data, Typeable, Eq, Ord, Generic)++data SetSelectedRepositories = SetSelectedRepositories+    { setSelectedRepositoriesRepositoryIds :: ![Id Repo]+    }+  deriving (Show, Data, Typeable, Eq, Ord, Generic)++data RepoSecret = RepoSecret+    { repoSecretName :: !(Name RepoSecret)+    , repoSecretCreatedAt :: !UTCTime+    , repoSecretUpdatedAt :: !UTCTime+    }+  deriving (Show, Data, Typeable, Eq, Ord, Generic)++-- TODO move somewhere else?+data Environment = Environment+  deriving (Show, Data, Typeable, Eq, Ord, Generic)++-------------------------------------------------------------------------------+-- JSON instances+-------------------------------------------------------------------------------++instance FromJSON OrganizationSecret where+    parseJSON = withObject "Secret" $ \o -> OrganizationSecret+        <$> o .: "name"+        <*> o .: "created_at"+        <*> o .: "updated_at"+        <*> o .: "visibility"++instance FromJSON (WithTotalCount OrganizationSecret) where+    parseJSON = withObject "SecretList" $ \o -> WithTotalCount+        <$> o .: "secrets"+        <*> o .: "total_count"++instance FromJSON PublicKey where+    parseJSON = withObject "PublicKey" $ \o -> PublicKey+        <$> o .: "key_id"+        <*> o .: "key"++instance FromJSON SelectedRepo where+    parseJSON = withObject "SelectedRepo" $ \o -> SelectedRepo+        <$> o .: "id"+        <*> o .: "name"++instance ToJSON SetSelectedRepositories where+    toJSON SetSelectedRepositories{..} =+        object+            [ "selected_repository_ids" .=  setSelectedRepositoriesRepositoryIds+            ]++instance ToJSON SetSecret where+    toJSON SetSecret{..} =+        object $+            [ "encrypted_value" .= setSecretEncryptedValue+            ,  "key_id" .= setSecretPublicKeyId+            ,  "visibility" .= setSecretVisibility+            ] <> maybeToList (fmap ("selected_repository_ids" .=) setSecretSelectedRepositoryIds)++instance ToJSON SetRepoSecret where+    toJSON SetRepoSecret{..} =+        object+            [ "encrypted_value" .= setRepoSecretEncryptedValue+            ,  "key_id" .= setRepoSecretPublicKeyId+            ]++instance FromJSON (WithTotalCount SelectedRepo) where+    parseJSON = withObject "SelectedRepoList" $ \o -> WithTotalCount+        <$> o .: "repositories"+        <*> o .: "total_count"++instance FromJSON RepoSecret where+    parseJSON = withObject "RepoSecret" $ \o -> RepoSecret+        <$> o .: "name"+        <*> o .: "created_at"+        <*> o .: "updated_at"++instance FromJSON (WithTotalCount RepoSecret) where+    parseJSON = withObject "RepoSecretList" $ \o -> WithTotalCount+        <$> o .: "secrets"+        <*> o .: "total_count"
+ src/GitHub/Data/Actions/WorkflowJobs.hs view
@@ -0,0 +1,98 @@+{-# LANGUAGE DataKinds         #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE KindSignatures    #-}++module GitHub.Data.Actions.WorkflowJobs (+    JobStep(..),+    Job(..),+    ) where++import Prelude ()+import GitHub.Internal.Prelude+       (Applicative ((<*>)), Data, Eq, FromJSON (parseJSON), Generic, Integer,+       Ord, Show, Text, Typeable, UTCTime, Vector, withObject, ($), (.:),+       (<$>))++import GitHub.Data.Id                   (Id)+import GitHub.Data.Name                 (Name)+import GitHub.Data.URL                  (URL)++import GitHub.Data.Actions.Common       (WithTotalCount (WithTotalCount))+import GitHub.Data.Actions.WorkflowRuns (WorkflowRun)++-------------------------------------------------------------------------------+-- Workflow jobs+-------------------------------------------------------------------------------++data JobStep = JobStep+    { jobStepName        :: !(Name JobStep)+    , jobStepStatus      :: !Text+    , jobStepConclusion  :: !Text+    , jobStepNumber      :: !Integer+    , jobStepStartedAt   :: !UTCTime+    , jobStepCompletedAt :: !UTCTime+    }+  deriving (Show, Data, Typeable, Eq, Ord, Generic)++data Job = Job+    { jobId              :: !(Id Job)+    , jobRunId           :: !(Id WorkflowRun)+    , jobRunUrl          :: !URL+    , jobRunAttempt      :: !Integer+    , jobNodeId          :: !Text+    , jobHeadSha         :: !Text+    , jobUrl             :: !URL+    , jobHtmlUrl         :: !URL+    , jobStatus          :: !Text+    , jobConclusion      :: !Text+    , jobStartedAt       :: !UTCTime+    , jobCompletedAt     :: !UTCTime+    , jobSteps           :: !(Vector JobStep)+    , jobRunCheckUrl     :: !URL+    , jobLabels          :: !(Vector Text)+    , jobRunnerId        :: !Integer+    , jobRunnerName      :: !Text+    , jobRunnerGroupId   :: !Integer+    , jobRunnerGroupName :: !Text+    }+  deriving (Show, Data, Typeable, Eq, Ord, Generic)++-------------------------------------------------------------------------------+-- JSON instances+-------------------------------------------------------------------------------++instance FromJSON JobStep where+    parseJSON = withObject "JobStep" $ \o -> JobStep+        <$> o .: "name"+        <*> o .: "status"+        <*> o .: "conclusion"+        <*> o .: "number"+        <*> o .: "started_at"+        <*> o .: "completed_at"++instance FromJSON Job where+    parseJSON = withObject "Job" $ \o -> Job+        <$> o .: "id"+        <*> o .: "run_id"+        <*> o .: "run_url"+        <*> o .: "run_attempt"+        <*> o .: "node_id"+        <*> o .: "head_sha"+        <*> o .: "url"+        <*> o .: "html_url"+        <*> o .: "status"+        <*> o .: "conclusion"+        <*> o .: "started_at"+        <*> o .: "completed_at"+        <*> o .: "steps"+        <*> o .: "check_run_url"+        <*> o .: "labels"+        <*> o .: "runner_id"+        <*> o .: "runner_name"+        <*> o .: "runner_group_id"+        <*> o .: "runner_group_name"++instance FromJSON (WithTotalCount Job) where+    parseJSON = withObject "JobList" $ \o -> WithTotalCount+        <$> o .: "jobs"+        <*> o .: "total_count"
+ src/GitHub/Data/Actions/WorkflowRuns.hs view
@@ -0,0 +1,91 @@+{-# LANGUAGE DataKinds         #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE KindSignatures    #-}++module GitHub.Data.Actions.WorkflowRuns (+    WorkflowRun(..),+    RunAttempt(..),+    ReviewHistory(..),+    ) where++import GitHub.Data.Actions.Common (WithTotalCount (WithTotalCount))+import GitHub.Data.Definitions+import GitHub.Data.URL            (URL)+import GitHub.Internal.Prelude+import Prelude ()++import GitHub.Data.Id   (Id)+import GitHub.Data.Name (Name)++-------------------------------------------------------------------------------+-- Workflow runs+-------------------------------------------------------------------------------++data WorkflowRun  = WorkflowRun+    { workflowRunWorkflowRunId :: !(Id WorkflowRun)+    , workflowRunName :: !(Name WorkflowRun)+    , workflowRunHeadBranch :: !Text+    , workflowRunHeadSha :: !Text+    , workflowRunPath :: !Text+    , workflowRunDisplayTitle :: !Text+    , workflowRunRunNumber :: !Integer+    , workflowRunEvent :: !Text+    , workflowRunStatus :: !Text+    , workflowRunConclusion :: !(Maybe Text)+    , workflowRunWorkflowId :: !Integer+    , workflowRunUrl :: !URL+    , workflowRunHtmlUrl :: !URL+    , workflowRunCreatedAt :: !UTCTime+    , workflowRunUpdatedAt :: !UTCTime+    , workflowRunActor :: !SimpleUser+    , workflowRunAttempt :: !Integer+    , workflowRunStartedAt :: !UTCTime+    }+  deriving (Show, Data, Typeable, Eq, Ord, Generic)++data RunAttempt = RunAttempt+  deriving (Show, Data, Typeable, Eq, Ord, Generic)++data ReviewHistory  = ReviewHistory+    { reviewHistoryState :: !Text+    , reviewHistoryComment :: !Text+    , reviewHistoryUser :: !SimpleUser++    }+  deriving (Show, Data, Typeable, Eq, Ord, Generic)++-------------------------------------------------------------------------------+-- JSON instances+-------------------------------------------------------------------------------++instance FromJSON WorkflowRun where+    parseJSON = withObject "WorkflowRun" $ \o -> WorkflowRun+        <$> o .: "id"+        <*> o .: "name"+        <*> o .: "head_branch"+        <*> o .: "head_sha"+        <*> o .: "path"+        <*> o .: "display_title"+        <*> o .: "run_number"+        <*> o .: "event"+        <*> o .: "status"+        <*> o .: "conclusion"+        <*> o .: "workflow_id"+        <*> o .: "url"+        <*> o .: "html_url"+        <*> o .: "created_at"+        <*> o .: "updated_at"+        <*> o .: "actor"+        <*> o .: "run_attempt"+        <*> o .: "run_started_at"++instance FromJSON (WithTotalCount WorkflowRun) where+    parseJSON = withObject "WorkflowRunList" $ \o -> WithTotalCount+        <$> o .: "workflow_runs"+        <*> o .: "total_count"++instance FromJSON ReviewHistory where+    parseJSON = withObject "ReviewHistory" $ \o -> ReviewHistory+        <$> o .: "state"+        <*> o .: "comment"+        <*> o .: "user"
+ src/GitHub/Data/Actions/Workflows.hs view
@@ -0,0 +1,62 @@+{-# LANGUAGE DataKinds         #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE KindSignatures    #-}++module GitHub.Data.Actions.Workflows (+    Workflow(..),+    CreateWorkflowDispatchEvent(..),+    ) where++import Prelude ()+import GitHub.Internal.Prelude++import GitHub.Data.Actions.Common (WithTotalCount (WithTotalCount))+import GitHub.Data.Id             (Id)+import GitHub.Data.URL            (URL)++data Workflow = Workflow+    { workflowWorkflowId :: !(Id Workflow)+    , workflowName       :: !Text+    , workflowPath       :: !Text+    , workflowState      :: !Text+    , workflowCreatedAt  :: !UTCTime+    , workflowUpdatedAt  :: !UTCTime+    , workflowUrl        :: !URL+    , workflowHtmlUrl    :: !URL+    , workflowBadgeUrl   :: !URL+    }+  deriving (Show, Data, Typeable, Eq, Ord, Generic)++data CreateWorkflowDispatchEvent a = CreateWorkflowDispatchEvent+    { createWorkflowDispatchEventRef    :: !Text+    , createWorkflowDispatchEventInputs :: !a+    }+  deriving (Show, Generic)++instance (NFData a) => NFData (CreateWorkflowDispatchEvent a) where rnf = genericRnf+instance (Binary a) => Binary (CreateWorkflowDispatchEvent a)++-------------------------------------------------------------------------------+-- JSON instances+-------------------------------------------------------------------------------++instance FromJSON Workflow where+    parseJSON = withObject "Workflow" $ \o -> Workflow+        <$> o .: "id"+        <*> o .: "name"+        <*> o .: "path"+        <*> o .: "state"+        <*> o .: "created_at"+        <*> o .: "updated_at"+        <*> o .: "url"+        <*> o .: "html_url"+        <*> o .: "badge_url"++instance FromJSON (WithTotalCount Workflow) where+    parseJSON = withObject "WorkflowList" $ \o -> WithTotalCount+        <$> o .: "workflows"+        <*> o .: "total_count"++instance ToJSON a => ToJSON (CreateWorkflowDispatchEvent a) where+    toJSON (CreateWorkflowDispatchEvent ref inputs) =+        object [ "ref" .= ref, "inputs" .= inputs ]
src/GitHub/Data/Activities.hs view
@@ -1,8 +1,3 @@--------------------------------------------------------------------------------- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- module GitHub.Data.Activities where  import GitHub.Data.Id          (Id, mkId)@@ -107,4 +102,3 @@         <*> o .: "updated_at"         <*> o .: "last_read_at"         <*> o .: "url"-
src/GitHub/Data/Comments.hs view
@@ -1,8 +1,3 @@--------------------------------------------------------------------------------- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- module GitHub.Data.Comments where  import GitHub.Data.Definitions
src/GitHub/Data/Content.hs view
@@ -1,10 +1,6 @@ {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE CPP #-}--------------------------------------------------------------------------------- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>---+ module GitHub.Data.Content where  import GitHub.Data.GitData
src/GitHub/Data/Definitions.hs view
@@ -1,8 +1,3 @@--------------------------------------------------------------------------------- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- module GitHub.Data.Definitions where  import GitHub.Internal.Prelude
src/GitHub/Data/Email.hs view
@@ -1,8 +1,3 @@--------------------------------------------------------------------------------- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- module GitHub.Data.Email where  import GitHub.Internal.Prelude
src/GitHub/Data/Enterprise.hs view
@@ -1,9 +1,6 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- This module re-exports the @GitHub.Data.Enterprise.@ submodules.+ module GitHub.Data.Enterprise (     -- * Module re-exports     module GitHub.Data.Enterprise.Organizations,
src/GitHub/Data/Enterprise/Organizations.hs view
@@ -1,8 +1,3 @@--------------------------------------------------------------------------------- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- module GitHub.Data.Enterprise.Organizations where  import GitHub.Data.Definitions
src/GitHub/Data/Events.hs view
@@ -1,8 +1,3 @@--------------------------------------------------------------------------------- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- module GitHub.Data.Events where  import GitHub.Data.Definitions@@ -14,6 +9,7 @@ -- /TODO:/ -- -- * missing repo, org, payload, id+-- data Event = Event     -- { eventId        :: !(Id Event) -- id can be encoded as string.     { eventActor     :: !SimpleUser
src/GitHub/Data/Gists.hs view
@@ -1,8 +1,3 @@--------------------------------------------------------------------------------- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- module GitHub.Data.Gists where  import GitHub.Data.Definitions
src/GitHub/Data/GitData.hs view
@@ -1,8 +1,3 @@--------------------------------------------------------------------------------- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- module GitHub.Data.GitData where  import GitHub.Data.Definitions
src/GitHub/Data/Id.hs view
@@ -1,8 +1,3 @@--------------------------------------------------------------------------------- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- module GitHub.Data.Id (     Id(..),     mkId,
src/GitHub/Data/Invitation.hs view
@@ -1,8 +1,3 @@--------------------------------------------------------------------------------- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- module GitHub.Data.Invitation where  import GitHub.Data.Definitions
src/GitHub/Data/Issues.hs view
@@ -1,15 +1,10 @@--------------------------------------------------------------------------------- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- module GitHub.Data.Issues where  import GitHub.Data.Definitions import GitHub.Data.Id           (Id) import GitHub.Data.Milestone    (Milestone) import GitHub.Data.Name         (Name)-import GitHub.Data.Options      (IssueState)+import GitHub.Data.Options      (IssueState, IssueStateReason) import GitHub.Data.PullRequests import GitHub.Data.URL          (URL) import GitHub.Internal.Prelude@@ -36,6 +31,7 @@     , issueId          :: !(Id Issue)     , issueComments    :: !Int     , issueMilestone   :: !(Maybe Milestone)+    , issueStateReason :: !(Maybe IssueStateReason)     }   deriving (Show, Data, Typeable, Eq, Ord, Generic) @@ -203,6 +199,7 @@         <*> o .: "id"         <*> o .: "comments"         <*> o .:? "milestone"+        <*> o .:? "state_reason"  instance ToJSON NewIssue where     toJSON (NewIssue t b a m ls) = object $ filter notNull
src/GitHub/Data/Milestone.hs view
@@ -1,8 +1,3 @@--------------------------------------------------------------------------------- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- module GitHub.Data.Milestone where  import GitHub.Data.Definitions
src/GitHub/Data/Name.hs view
@@ -1,9 +1,4 @@ {-# LANGUAGE CPP #-}--------------------------------------------------------------------------------- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- module GitHub.Data.Name (     Name(..),     mkName,
src/GitHub/Data/Options.hs view
@@ -1,10 +1,9 @@ {-# LANGUAGE RecordWildCards #-}------------------------------------------------------------------------------+{-# LANGUAGE LambdaCase #-}+ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- Module with modifiers for pull requests' and issues' listings.+ module GitHub.Data.Options (     -- * Common modifiers     stateOpen,@@ -48,8 +47,34 @@     optionsAnyAssignee,     optionsNoAssignee,     optionsAssignee,+    -- * Actions artifacts+    ArtifactMod,+    artifactModToQueryString,+    optionsArtifactName,+    -- * Actions cache+    CacheMod,+    cacheModToQueryString,+    optionsRef,+    optionsNoRef,+    optionsKey,+    optionsNoKey,+    optionsDirectionAsc,+    optionsDirectionDesc,+    sortByCreatedAt,+    sortByLastAccessedAt,+    sortBySizeInBytes,+    -- * Actions workflow runs+    WorkflowRunMod,+    workflowRunModToQueryString,+    optionsWorkflowRunActor,+    optionsWorkflowRunBranch,+    optionsWorkflowRunEvent,+    optionsWorkflowRunStatus,+    optionsWorkflowRunCreated,+    optionsWorkflowRunHeadSha,     -- * Data     IssueState (..),+    IssueStateReason (..),     MergeableState (..),     -- * Internal     HasState,@@ -94,6 +119,30 @@ instance NFData IssueState where rnf = genericRnf instance Binary IssueState +-- | 'GitHub.Data.Issues.Issue' state reason+data IssueStateReason+    = StateReasonCompleted+    | StateReasonNotPlanned+    | StateReasonReopened+  deriving+    (Eq, Ord, Show, Enum, Bounded, Generic, Typeable, Data)++instance ToJSON IssueStateReason where+    toJSON = String . \case+      StateReasonCompleted  -> "completed"+      StateReasonNotPlanned -> "not_planned"+      StateReasonReopened   -> "reopened"++instance FromJSON IssueStateReason where+    parseJSON = withText "IssueStateReason" $ \t -> case T.toLower t of+        "completed"   -> pure StateReasonCompleted+        "not_planned" -> pure StateReasonNotPlanned+        "reopened"    -> pure StateReasonReopened+        _ -> fail $ "Unknown IssueStateReason: " <> T.unpack t++instance NFData IssueStateReason where rnf = genericRnf+instance Binary IssueStateReason+ -- | 'GitHub.Data.PullRequests.PullRequest' mergeable_state data MergeableState     = StateUnknown@@ -184,6 +233,18 @@   deriving     (Eq, Ord, Show, Generic, Typeable, Data) +-- Actions cache++data SortCache+    = SortCacheCreatedAt+    | SortCacheLastAccessedAt+    | SortCacheSizeInBytes+  deriving+    (Eq, Ord, Show, Enum, Bounded, Generic, Typeable, Data)++instance NFData SortCache where rnf = genericRnf+instance Binary SortCache+ ------------------------------------------------------------------------------- -- Classes -------------------------------------------------------------------------------@@ -640,3 +701,236 @@ optionsAssignee :: Name User -> IssueRepoMod optionsAssignee u = IssueRepoMod $ \opts ->     opts { issueRepoOptionsAssignee = FilterBy u }++-------------------------------------------------------------------------------+-- Actions artifacts+-------------------------------------------------------------------------------++-- | See <https://docs.github.com/en/rest/actions/artifacts#list-artifacts-for-a-repository>.+data ArtifactOptions = ArtifactOptions+    { artifactOptionsName :: !(Maybe Text)+    }+  deriving+    (Eq, Ord, Show, Generic, Typeable, Data)++defaultArtifactOptions :: ArtifactOptions+defaultArtifactOptions = ArtifactOptions+    { artifactOptionsName = Nothing+    }++-- | See <https://docs.github.com/en/rest/actions/artifacts#list-artifacts-for-a-repository>.+newtype ArtifactMod = ArtifactMod (ArtifactOptions -> ArtifactOptions)++instance Semigroup ArtifactMod where+    ArtifactMod f <> ArtifactMod g = ArtifactMod (g . f)++instance Monoid ArtifactMod where+    mempty  = ArtifactMod id+    mappend = (<>)++-- | Filters artifacts by exact match on their name field.+optionsArtifactName :: Text -> ArtifactMod+optionsArtifactName n = ArtifactMod $ \opts ->+    opts { artifactOptionsName = Just n }++toArtifactOptions :: ArtifactMod -> ArtifactOptions+toArtifactOptions (ArtifactMod f) = f defaultArtifactOptions++artifactModToQueryString :: ArtifactMod -> QueryString+artifactModToQueryString = artifactOptionsToQueryString . toArtifactOptions++artifactOptionsToQueryString :: ArtifactOptions -> QueryString+artifactOptionsToQueryString (ArtifactOptions name) =+    catMaybes+    [ mk "name" <$> name'+    ]+  where+    mk k v = (k, Just v)+    name' = fmap TE.encodeUtf8 name++-------------------------------------------------------------------------------+-- Actions cache+-------------------------------------------------------------------------------++-- | See <https://docs.github.com/en/rest/actions/cache#list-github-actions-caches-for-a-repository>.+data CacheOptions = CacheOptions+    { cacheOptionsRef       :: !(Maybe Text)+    , cacheOptionsKey       :: !(Maybe Text)+    , cacheOptionsSort      :: !(Maybe SortCache)+    , cacheOptionsDirection :: !(Maybe SortDirection)+    }+  deriving+    (Eq, Ord, Show, Generic, Typeable, Data)++defaultCacheOptions :: CacheOptions+defaultCacheOptions = CacheOptions+    { cacheOptionsRef       = Nothing+    , cacheOptionsKey       = Nothing+    , cacheOptionsSort      = Nothing+    , cacheOptionsDirection = Nothing+    }++-- | See <https://docs.github.com/en/rest/actions/cache#list-github-actions-caches-for-a-repository>.+newtype CacheMod = CacheMod (CacheOptions -> CacheOptions)++instance Semigroup CacheMod where+    CacheMod f <> CacheMod g = CacheMod (g . f)++instance Monoid CacheMod where+    mempty  = CacheMod id+    mappend = (<>)++toCacheOptions :: CacheMod -> CacheOptions+toCacheOptions (CacheMod f) = f defaultCacheOptions++cacheModToQueryString :: CacheMod -> QueryString+cacheModToQueryString = cacheOptionsToQueryString . toCacheOptions++cacheOptionsToQueryString :: CacheOptions -> QueryString+cacheOptionsToQueryString (CacheOptions ref key sort dir) =+    catMaybes+    [ mk "ref"        <$> ref'+    , mk "key"        <$> key'+    , mk "sort"       <$> sort'+    , mk "directions" <$> direction'+    ]+  where+    mk k v = (k, Just v)+    sort' = sort <&> \case+        SortCacheCreatedAt      -> "created_at"+        SortCacheLastAccessedAt -> "last_accessed_at"+        SortCacheSizeInBytes    -> "size_in_bytes"+    direction' = dir <&> \case+       SortDescending -> "desc"+       SortAscending  -> "asc"+    ref' = fmap TE.encodeUtf8 ref+    key' = fmap TE.encodeUtf8 key++-------------------------------------------------------------------------------+-- Cache modifiers+-------------------------------------------------------------------------------++optionsRef :: Text -> CacheMod+optionsRef x = CacheMod $ \opts ->+    opts { cacheOptionsRef = Just x }++optionsNoRef :: CacheMod+optionsNoRef = CacheMod $ \opts ->+    opts { cacheOptionsRef = Nothing }++optionsKey :: Text -> CacheMod+optionsKey x = CacheMod $ \opts ->+    opts { cacheOptionsKey = Just x }++optionsNoKey :: CacheMod+optionsNoKey = CacheMod $ \opts ->+    opts { cacheOptionsKey = Nothing }++optionsDirectionAsc :: CacheMod+optionsDirectionAsc = CacheMod $ \opts ->+    opts { cacheOptionsDirection = Just SortAscending }++optionsDirectionDesc :: CacheMod+optionsDirectionDesc = CacheMod $ \opts ->+    opts { cacheOptionsDirection = Just SortDescending }++sortByCreatedAt :: CacheMod+sortByCreatedAt = CacheMod $ \opts ->+    opts { cacheOptionsSort = Just SortCacheCreatedAt }++sortByLastAccessedAt :: CacheMod+sortByLastAccessedAt = CacheMod $ \opts ->+    opts { cacheOptionsSort = Just SortCacheLastAccessedAt }++sortBySizeInBytes :: CacheMod+sortBySizeInBytes = CacheMod $ \opts ->+    opts { cacheOptionsSort = Just SortCacheSizeInBytes }++-------------------------------------------------------------------------------+-- Actions workflow runs+-------------------------------------------------------------------------------++-- | See <https://docs.github.com/en/rest/actions/workflow-runs#list-workflow-runs-for-a-repository>.+data WorkflowRunOptions = WorkflowRunOptions+    { workflowRunOptionsActor   :: !(Maybe Text)+    , workflowRunOptionsBranch  :: !(Maybe Text)+    , workflowRunOptionsEvent   :: !(Maybe Text)+    , workflowRunOptionsStatus  :: !(Maybe Text)+    , workflowRunOptionsCreated :: !(Maybe Text)+    , workflowRunOptionsHeadSha :: !(Maybe Text)+    }+  deriving+    (Eq, Ord, Show, Generic, Typeable, Data)++defaultWorkflowRunOptions :: WorkflowRunOptions+defaultWorkflowRunOptions = WorkflowRunOptions+    { workflowRunOptionsActor   = Nothing+    , workflowRunOptionsBranch  = Nothing+    , workflowRunOptionsEvent   = Nothing+    , workflowRunOptionsStatus  = Nothing+    , workflowRunOptionsCreated = Nothing+    , workflowRunOptionsHeadSha = Nothing+    }++-- | See <https://docs.github.com/en/rest/actions/workflow-runs#list-workflow-runs-for-a-repository>.+newtype WorkflowRunMod = WorkflowRunMod (WorkflowRunOptions -> WorkflowRunOptions)++instance Semigroup WorkflowRunMod where+    WorkflowRunMod f <> WorkflowRunMod g = WorkflowRunMod (g . f)++instance Monoid WorkflowRunMod where+    mempty  = WorkflowRunMod id+    mappend = (<>)++toWorkflowRunOptions :: WorkflowRunMod -> WorkflowRunOptions+toWorkflowRunOptions (WorkflowRunMod f) = f defaultWorkflowRunOptions++workflowRunModToQueryString :: WorkflowRunMod -> QueryString+workflowRunModToQueryString = workflowRunOptionsToQueryString . toWorkflowRunOptions++workflowRunOptionsToQueryString :: WorkflowRunOptions -> QueryString+workflowRunOptionsToQueryString (WorkflowRunOptions actor branch event status created headSha) =+    catMaybes+    [ mk "actor"    <$> actor'+    , mk "branch"   <$> branch'+    , mk "event"    <$> event'+    , mk "status"   <$> status'+    , mk "created"  <$> created'+    , mk "head_sha" <$> headSha'+    ]+  where+    mk k v = (k, Just v)+    actor'   = fmap TE.encodeUtf8 actor+    branch'  = fmap TE.encodeUtf8 branch+    event'   = fmap TE.encodeUtf8 event+    status'  = fmap TE.encodeUtf8 status+    created' = fmap TE.encodeUtf8 created+    headSha' = fmap TE.encodeUtf8 headSha++-------------------------------------------------------------------------------+-- Workflow run modifiers+-------------------------------------------------------------------------------++optionsWorkflowRunActor :: Text -> WorkflowRunMod+optionsWorkflowRunActor x = WorkflowRunMod $ \opts ->+    opts { workflowRunOptionsActor = Just x }++optionsWorkflowRunBranch :: Text -> WorkflowRunMod+optionsWorkflowRunBranch x = WorkflowRunMod $ \opts ->+    opts { workflowRunOptionsBranch = Just x }++optionsWorkflowRunEvent :: Text -> WorkflowRunMod+optionsWorkflowRunEvent x = WorkflowRunMod $ \opts ->+    opts { workflowRunOptionsEvent = Just x }++optionsWorkflowRunStatus :: Text -> WorkflowRunMod+optionsWorkflowRunStatus x = WorkflowRunMod $ \opts ->+    opts { workflowRunOptionsStatus = Just x }++optionsWorkflowRunCreated :: Text -> WorkflowRunMod+optionsWorkflowRunCreated x = WorkflowRunMod $ \opts ->+    opts { workflowRunOptionsCreated = Just x }++optionsWorkflowRunHeadSha :: Text -> WorkflowRunMod+optionsWorkflowRunHeadSha x = WorkflowRunMod $ \opts ->+    opts { workflowRunOptionsHeadSha = Just x }
src/GitHub/Data/PullRequests.hs view
@@ -1,8 +1,3 @@--------------------------------------------------------------------------------- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- module GitHub.Data.PullRequests (     SimplePullRequest(..),     PullRequest(..),
src/GitHub/Data/RateLimit.hs view
@@ -1,8 +1,3 @@--------------------------------------------------------------------------------- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- module GitHub.Data.RateLimit where  import GitHub.Internal.Prelude
src/GitHub/Data/Repos.hs view
@@ -1,14 +1,12 @@ {-# LANGUAGE CPP               #-} {-# LANGUAGE FlexibleInstances #-} #define UNSAFE 1------------------------------------------------------------------------------+ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- This module also exports -- @'FromJSON' a => 'FromJSON' ('HM.HashMap' 'Language' a)@ -- orphan-ish instance for @aeson < 1@+ module GitHub.Data.Repos where  import GitHub.Data.Definitions
src/GitHub/Data/Request.hs view
@@ -3,11 +3,7 @@ {-# LANGUAGE GADTs              #-} {-# LANGUAGE KindSignatures     #-} {-# LANGUAGE StandaloneDeriving #-}--------------------------------------------------------------------------------- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>---+ module GitHub.Data.Request (     -- * Request     Request,
src/GitHub/Data/Search.hs view
@@ -1,8 +1,3 @@--------------------------------------------------------------------------------- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- module GitHub.Data.Search where  import GitHub.Data.Repos       (CodeSearchRepo)
src/GitHub/Data/Teams.hs view
@@ -2,11 +2,7 @@ {-# LANGUAGE DeriveGeneric      #-} {-# LANGUAGE NoImplicitPrelude  #-} {-# LANGUAGE OverloadedStrings  #-}--------------------------------------------------------------------------------- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>---+ module GitHub.Data.Teams where  import GitHub.Data.Definitions
src/GitHub/Data/URL.hs view
@@ -1,8 +1,3 @@--------------------------------------------------------------------------------- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- module GitHub.Data.URL (     URL(..),     getUrl,
src/GitHub/Data/Webhooks.hs view
@@ -1,8 +1,3 @@--------------------------------------------------------------------------------- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- module GitHub.Data.Webhooks where  import GitHub.Data.Id          (Id)
src/GitHub/Data/Webhooks/Validate.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- Verification of incomming webhook payloads, as described at -- <https://developer.github.com/webhooks/securing/>+ module GitHub.Data.Webhooks.Validate (   isValidPayload ) where
+ src/GitHub/Endpoints/Actions/Artifacts.hs view
@@ -0,0 +1,61 @@+-- |+-- The actions API as documented at+-- <https://docs.github.com/en/rest/reference/actions>.++module GitHub.Endpoints.Actions.Artifacts (+    artifactsForR,+    artifactR,+    deleteArtifactR,+    downloadArtifactR,+    artifactsForWorkflowRunR,+    module GitHub.Data+    ) where++import GitHub.Data+import GitHub.Internal.Prelude+import Network.URI             (URI)+import Prelude ()++-- | List artifacts for repository.+-- See <https://docs.github.com/en/rest/reference/actions#list-artifacts-for-a-repository>+artifactsForR+    :: Name Owner+    -> Name Repo+    -> ArtifactMod+    -> FetchCount+    -> Request 'RA (WithTotalCount Artifact)+artifactsForR user repo opts = PagedQuery+    ["repos", toPathPart user, toPathPart repo, "actions", "artifacts"]+    (artifactModToQueryString opts)++-- | Get an artifact.+-- See <https://docs.github.com/en/rest/reference/actions#get-an-artifact>+artifactR :: Name Owner -> Name Repo -> Id Artifact -> Request 'RA Artifact+artifactR user repo artid =+    query ["repos", toPathPart user, toPathPart repo, "actions", "artifacts", toPathPart artid] []++-- | Delete an artifact.+-- See <https://docs.github.com/en/rest/reference/actions#delete-an-artifact>+deleteArtifactR :: Name Owner -> Name Repo -> Id Comment -> GenRequest 'MtUnit 'RW ()+deleteArtifactR user repo artid =+    Command Delete parts mempty+  where+    parts = ["repos", toPathPart user, toPathPart repo, "actions", "artifacts", toPathPart artid]++-- | Download an artifact.+-- See <https://docs.github.com/en/rest/reference/actions#download-an-artifact>+downloadArtifactR :: Name Owner -> Name Repo -> Id Artifact -> GenRequest 'MtRedirect 'RW URI+downloadArtifactR user repo artid =+    Query ["repos", toPathPart user, toPathPart repo, "actions", "artifacts", toPathPart artid, "zip"] []++-- | List artifacts for a workflow run.+-- See <https://docs.github.com/en/rest/reference/actions#list-workflow-run-artifacts>+artifactsForWorkflowRunR+    :: Name Owner+    -> Name Repo+    -> Id WorkflowRun+    -> FetchCount+    -> Request 'RA (WithTotalCount Artifact)+artifactsForWorkflowRunR user repo runid  = PagedQuery+    ["repos", toPathPart user, toPathPart repo, "actions", "runs", toPathPart runid, "artifacts"]+    []
+ src/GitHub/Endpoints/Actions/Cache.hs view
@@ -0,0 +1,66 @@+-- |+-- The actions API as documented at+-- <https://docs.github.com/en/rest/reference/actions>.++module GitHub.Endpoints.Actions.Cache (+    cacheUsageOrganizationR,+    cacheUsageByRepositoryR,+    cacheUsageR,+    cachesForRepoR,+    deleteCacheR,+    module GitHub.Data+    ) where++import GitHub.Data+import GitHub.Internal.Prelude+import Prelude ()++-- | Get Actions cache usage for the organization.+-- See <https://docs.github.com/en/rest/actions/cache#get-github-actions-cache-usage-for-an-organization>+cacheUsageOrganizationR+    :: Name Organization+    -> GenRequest 'MtJSON 'RA OrganizationCacheUsage+cacheUsageOrganizationR org =+    Query ["orgs", toPathPart org, "actions", "cache", "usage"] []++-- | List repositories with GitHub Actions cache usage for an organization.+-- See <https://docs.github.com/en/rest/actions/cache#list-repositories-with-github-actions-cache-usage-for-an-organization>+cacheUsageByRepositoryR+    :: Name Organization+    -> FetchCount+    -> GenRequest 'MtJSON 'RA (WithTotalCount RepositoryCacheUsage)+cacheUsageByRepositoryR org =+    PagedQuery ["orgs", toPathPart org, "actions", "cache", "usage-by-repository"] []++-- | Get GitHub Actions cache usage for a repository.+-- See <https://docs.github.com/en/rest/actions/cache#get-github-actions-cache-usage-for-a-repository>+cacheUsageR+    :: Name Owner+    -> Name Repo+    -> Request k RepositoryCacheUsage+cacheUsageR user repo =+    Query ["repos", toPathPart user, toPathPart repo, "actions", "cache", "usage"] []++-- | List the GitHub Actions caches for a repository.+-- See <https://docs.github.com/en/rest/actions/cache#list-github-actions-caches-for-a-repository>+cachesForRepoR+    :: Name Owner+    -> Name Repo+    -> CacheMod+    -> FetchCount+    -> GenRequest 'MtJSON 'RA (WithTotalCount Cache)+cachesForRepoR user repo opts = PagedQuery+    ["repos", toPathPart user, toPathPart repo, "actions", "caches"]+    (cacheModToQueryString opts)++-- | Delete GitHub Actions cache for a repository.+-- See <https://docs.github.com/en/rest/actions/cache#delete-a-github-actions-cache-for-a-repository-using-a-cache-id>+deleteCacheR+    :: Name Owner+    -> Name Repo+    -> Id Cache+    -> GenRequest 'MtUnit 'RW ()+deleteCacheR user repo cacheid =+    Command Delete parts mempty+  where+    parts = ["repos", toPathPart user, toPathPart repo, "actions", "caches", toPathPart cacheid]
+ src/GitHub/Endpoints/Actions/Secrets.hs view
@@ -0,0 +1,221 @@+-- |+-- The actions API as documented at+-- <https://docs.github.com/en/rest/reference/actions>.++module GitHub.Endpoints.Actions.Secrets (+    organizationSecretsR,+    organizationPublicKeyR,+    organizationSecretR,+    setOrganizationSecretR,+    deleteOrganizationSecretR,+    organizationSelectedRepositoriesForSecretR,+    setOrganizationSelectedRepositoriesForSecretR,+    addOrganizationSelectedRepositoriesForSecretR,+    removeOrganizationSelectedRepositoriesForSecretR,+    repoSecretsR,+    repoPublicKeyR,+    repoSecretR,+    setRepoSecretR,+    deleteRepoSecretR,+    environmentSecretsR,+    environmentPublicKeyR,+    environmentSecretR,+    setEnvironmentSecretR,+    deleteEnvironmentSecretR,+    module GitHub.Data+    ) where++import GitHub.Data+import GitHub.Internal.Prelude+import Prelude ()++-- | List organization secrets.+-- See <https://docs.github.com/en/rest/actions/secrets#list-organization-secrets>+organizationSecretsR+    :: Name Organization+    -> FetchCount+    -> GenRequest 'MtJSON 'RA (WithTotalCount OrganizationSecret)+organizationSecretsR org =+    PagedQuery ["orgs", toPathPart org, "actions", "secrets"] []++-- | List organization secrets.+-- See <https://docs.github.com/en/rest/actions/secrets#get-an-organization-public-key>+organizationPublicKeyR+    :: Name Organization+    -> GenRequest 'MtJSON 'RA PublicKey+organizationPublicKeyR org =+    Query ["orgs", toPathPart org, "actions", "secrets", "public-key"] []++-- | Get an organization secret.+-- See <https://docs.github.com/en/rest/actions/secrets#get-an-organization-secret>+organizationSecretR+    :: Name Organization+    -> Name OrganizationSecret+    -> GenRequest 'MtJSON 'RA OrganizationSecret+organizationSecretR org name =+    Query ["orgs", toPathPart org, "actions", "secrets", toPathPart name] []++-- | Create or update an organization secret.+-- See <https://docs.github.com/en/rest/actions/secrets#create-or-update-an-organization-secret>+setOrganizationSecretR+    :: Name Organization+    -> Name OrganizationSecret+    -> SetSecret+    -> GenRequest 'MtUnit 'RW ()+setOrganizationSecretR org name =+    Command Put ["orgs", toPathPart org, "actions", "secrets", toPathPart name] . encode++-- | Delete an organization secret.+-- See <https://docs.github.com/en/rest/actions/secrets#delete-an-organization-secret>+deleteOrganizationSecretR+    :: Name Organization+    -> Name OrganizationSecret+    -> GenRequest 'MtUnit 'RW ()+deleteOrganizationSecretR org name =+    Command Delete parts mempty+    where+        parts = ["orgs", toPathPart org, "actions", "secrets", toPathPart name]++-- | Get selected repositories for an organization secret.+-- See <https://docs.github.com/en/rest/actions/secrets#list-selected-repositories-for-an-organization-secret>+organizationSelectedRepositoriesForSecretR+    :: Name Organization+    -> Name OrganizationSecret+    -> FetchCount+    -> GenRequest 'MtJSON 'RA (WithTotalCount SelectedRepo)+organizationSelectedRepositoriesForSecretR org name =+    PagedQuery ["orgs", toPathPart org, "actions", "secrets", toPathPart name, "repositories"] []++-- | Set selected repositories for an organization secret.+-- See <https://docs.github.com/en/rest/actions/secrets#set-selected-repositories-for-an-organization-secret>+setOrganizationSelectedRepositoriesForSecretR+    :: Name Organization+    -> Name OrganizationSecret+    -> SetSelectedRepositories+    -> GenRequest 'MtUnit 'RW ()+setOrganizationSelectedRepositoriesForSecretR org name =+    Command Put ["orgs", toPathPart org, "actions", "secrets", toPathPart name, "repositories"]  . encode++-- | Add selected repository to an organization secret.+-- See <https://docs.github.com/en/rest/actions/secrets#add-selected-repository-to-an-organization-secret>+addOrganizationSelectedRepositoriesForSecretR+    :: Name Organization+    -> Name OrganizationSecret+    -> Id Repo+    -> GenRequest 'MtUnit 'RW ()+addOrganizationSelectedRepositoriesForSecretR org name repo =+    Command Put ["orgs", toPathPart org, "actions", "secrets", toPathPart name, "repositories", toPathPart repo] mempty++-- | Remove selected repository from an organization secret.+-- See <https://docs.github.com/en/rest/actions/secrets#remove-selected-repository-from-an-organization-secret>+removeOrganizationSelectedRepositoriesForSecretR+    :: Name Organization+    -> Name OrganizationSecret+    -> Id Repo+    -> GenRequest 'MtUnit 'RW ()+removeOrganizationSelectedRepositoriesForSecretR org name repo =+    Command Delete ["orgs", toPathPart org, "actions", "secrets", toPathPart name, "repositories", toPathPart repo] mempty++-- | List repository secrets.+-- See <https://docs.github.com/en/rest/actions/secrets#list-repository-secrets>+repoSecretsR+    :: Name Owner+    -> Name Repo+    -> FetchCount+    -> GenRequest 'MtJSON 'RA (WithTotalCount RepoSecret)+repoSecretsR user repo =+    PagedQuery ["repos", toPathPart user,  toPathPart repo, "actions", "secrets"] []++-- | Get a repository public key.+-- See <https://docs.github.com/en/rest/actions/secrets#get-a-repository-public-key>+repoPublicKeyR+    :: Name Owner+    -> Name Organization+    -> GenRequest 'MtJSON 'RA PublicKey+repoPublicKeyR user org =+    Query ["repos", toPathPart user, toPathPart org, "actions", "secrets", "public-key"] []++-- | Get a repository secret.+-- See <https://docs.github.com/en/rest/actions/secrets#get-a-repository-secret>+repoSecretR+    :: Name Owner+    -> Name Organization+    -> Name RepoSecret+    -> GenRequest 'MtJSON 'RA RepoSecret+repoSecretR user org name =+    Query ["repos", toPathPart user, toPathPart org, "actions", "secrets", toPathPart name] []++-- | Create or update a repository secret.+-- See <https://docs.github.com/en/rest/actions/secrets#create-or-update-a-repository-secret>+setRepoSecretR+    :: Name Owner+    -> Name Organization+    -> Name RepoSecret+    -> SetRepoSecret+    -> GenRequest 'MtUnit 'RW ()+setRepoSecretR user org name =+    Command Put ["repos", toPathPart user, toPathPart org, "actions", "secrets", toPathPart name] . encode++-- | Delete a repository secret.+-- See <https://docs.github.com/en/rest/actions/secrets#delete-a-repository-secret>+deleteRepoSecretR+    :: Name Owner+    -> Name Organization+    -> Name RepoSecret+    -> GenRequest 'MtUnit 'RW ()+deleteRepoSecretR user org name =+    Command Delete parts mempty+    where+        parts = ["repos", toPathPart user, toPathPart org, "actions", "secrets", toPathPart name]++-- | List environment secrets.+-- See <https://docs.github.com/en/rest/actions/secrets#list-environment-secrets>+environmentSecretsR+    :: Id Repo+    -> Name Environment+    -> FetchCount+    -> GenRequest 'MtJSON 'RA (WithTotalCount RepoSecret)+environmentSecretsR repo env =+    PagedQuery ["repositories", toPathPart repo, "environments", toPathPart env, "secrets"] []++-- | Get an environment public key.+-- See <https://docs.github.com/en/rest/actions/secrets#get-an-environment-public-key>+environmentPublicKeyR+    :: Id Repo+    -> Name Environment+    -> GenRequest 'MtJSON 'RA PublicKey+environmentPublicKeyR repo env =+    Query ["repositories", toPathPart repo, "environments", toPathPart env, "secrets", "public-key"] []++-- | Get an environment secret+-- See <https://docs.github.com/en/rest/actions/secrets#get-an-environment-secret>+environmentSecretR+    :: Id Repo+    -> Name Environment+    -> Name RepoSecret+    -> GenRequest 'MtJSON 'RA RepoSecret+environmentSecretR repo env name =+    Query ["repositories", toPathPart repo, "environments", toPathPart env, "secrets", toPathPart name] []++-- | Create or update an environment secret.+-- See <https://docs.github.com/en/rest/actions/secrets#create-or-update-an-environment-secret>+setEnvironmentSecretR+    :: Id Repo+    -> Name Environment+    -> Name RepoSecret+    -> SetRepoSecret+    -> GenRequest 'MtUnit 'RW ()+setEnvironmentSecretR repo env name =+    Command Put ["repositories", toPathPart repo, "environments", toPathPart env, "secrets", toPathPart name] . encode++-- | Delete an environment secret.+-- See <https://docs.github.com/en/rest/actions/secrets#delete-an-environment-secret>+deleteEnvironmentSecretR+    :: Id Repo+    -> Name Environment+    -> Name RepoSecret+    -> GenRequest 'MtUnit 'RW ()+deleteEnvironmentSecretR repo env name =+    Command Delete parts mempty+    where+        parts = ["repositories", toPathPart repo, "environments", toPathPart env, "secrets", toPathPart name]
+ src/GitHub/Endpoints/Actions/WorkflowJobs.hs view
@@ -0,0 +1,58 @@+-- |+-- The actions API as documented at+-- <https://docs.github.com/en/rest/reference/actions>.++module GitHub.Endpoints.Actions.WorkflowJobs (+    jobR,+    downloadJobLogsR,+    jobsForWorkflowRunAttemptR,+    jobsForWorkflowRunR,+    module GitHub.Data+    ) where++import GitHub.Data+import Network.URI (URI)+import Prelude ()++-- | Get a job for a workflow run.+-- See <https://docs.github.com/en/rest/actions/workflow-jobs#get-a-job-for-a-workflow-run>+jobR+    :: Name Owner+    -> Name Repo+    -> Id Job+    -> Request 'RA Job+jobR owner repo job =+    Query ["repos", toPathPart owner, toPathPart repo, "actions", "jobs", toPathPart job] []++-- | Download job logs for a workflow run.+-- See <https://docs.github.com/en/rest/actions/workflow-jobs#download-job-logs-for-a-workflow-run>+downloadJobLogsR+    :: Name Owner+    -> Name Repo+    -> Id Job+    -> GenRequest 'MtRedirect 'RO URI+downloadJobLogsR owner repo job =+    Query ["repos", toPathPart owner, toPathPart repo, "actions", "jobs", toPathPart job, "logs"] []++-- | List jobs for a workflow run attempt.+-- See <https://docs.github.com/en/rest/actions/workflow-jobs#list-jobs-for-a-workflow-run-attempt>+jobsForWorkflowRunAttemptR+    :: Name Owner+    -> Name Repo+    -> Id WorkflowRun+    -> Id RunAttempt+    -> FetchCount+    -> GenRequest 'MtJSON 'RA (WithTotalCount Job)+jobsForWorkflowRunAttemptR owner repo run attempt =+    PagedQuery ["repos", toPathPart owner, toPathPart repo, "actions", "runs", toPathPart run, "attempts", toPathPart attempt, "jobs"] []++-- | List jobs for a workflow run.+-- See <https://docs.github.com/en/rest/actions/workflow-jobs#list-jobs-for-a-workflow-run>+jobsForWorkflowRunR+    :: Name Owner+    -> Name Repo+    -> Id WorkflowRun+    -> FetchCount+    -> GenRequest 'MtJSON 'RA (WithTotalCount Job)+jobsForWorkflowRunR owner repo run =+    PagedQuery ["repos", toPathPart owner, toPathPart repo, "actions", "runs", toPathPart run, "jobs"] []
+ src/GitHub/Endpoints/Actions/WorkflowRuns.hs view
@@ -0,0 +1,181 @@+module GitHub.Endpoints.Actions.WorkflowRuns (+    reRunJobR,+    workflowRunsR,+    workflowRunR,+    deleteWorkflowRunR,+    workflowRunReviewHistoryR,+    approveWorkflowRunR,+    workflowRunAttemptR,+    downloadWorkflowRunAttemptLogsR,+    cancelWorkflowRunR,+    downloadWorkflowRunLogsR,+    deleteWorkflowRunLogsR,+    reRunWorkflowR,+    reRunFailedJobsR,+    workflowRunsForWorkflowR,+    module GitHub.Data+    ) where++import GitHub.Data+import GitHub.Internal.Prelude+import Network.URI             (URI)+import Prelude ()++-- | Re-run a job from a workflow run.+-- See <https://docs.github.com/en/rest/actions/workflow-runs#re-run-a-job-from-a-workflow-run>+reRunJobR+    :: Name Owner+    -> Name Repo+    -> Id Job+    -> GenRequest 'MtUnit 'RW ()+reRunJobR user repo job = Command Post+    ["repos", toPathPart user, toPathPart repo, "actions", "jobs", toPathPart job, "rerun"]+    mempty++-- | List workflow runs for a repository.+-- See <https://docs.github.com/en/rest/actions/workflow-runs#list-workflow-runs-for-a-repository>+workflowRunsR+    :: Name Owner+    -> Name Repo+    -> WorkflowRunMod+    -> FetchCount+    -> GenRequest 'MtJSON 'RA (WithTotalCount WorkflowRun)+workflowRunsR user repo runMod = PagedQuery+    ["repos", toPathPart user, toPathPart repo, "actions", "runs"]+    (workflowRunModToQueryString runMod)++-- | Get a workflow run.+-- See <https://docs.github.com/en/rest/actions/workflow-runs#get-a-workflow-run>+workflowRunR+    :: Name Owner+    -> Name Repo+    -> Id WorkflowRun+    -> GenRequest 'MtJSON 'RA WorkflowRun+workflowRunR user repo run = Query+    ["repos", toPathPart user, toPathPart repo, "actions", "runs", toPathPart run]+    []++-- | Delete a workflow run.+-- See <https://docs.github.com/en/rest/actions/workflow-runs#delete-a-workflow-run>+deleteWorkflowRunR+    :: Name Owner+    -> Name Repo+    -> Id WorkflowRun+    -> GenRequest 'MtUnit 'RW ()+deleteWorkflowRunR user repo run = Command Delete+    ["repos", toPathPart user, toPathPart repo, "actions", "runs", toPathPart run]+    mempty++-- | Get the review history for a workflow run.+-- See <https://docs.github.com/en/rest/actions/workflow-runs#get-the-review-history-for-a-workflow-run>+workflowRunReviewHistoryR+    :: Name Owner+    -> Name Repo+    -> Id WorkflowRun+    -> GenRequest 'MtJSON 'RA (Vector ReviewHistory)+workflowRunReviewHistoryR user repo run = Query+    ["repos", toPathPart user, toPathPart repo, "actions", "runs", toPathPart run, "approvals"]+    []++-- | Approve a workflow run for a fork pull request.+-- See <https://docs.github.com/en/rest/actions/workflow-runs#approve-a-workflow-run-for-a-fork-pull-request>+approveWorkflowRunR+    :: Name Owner+    -> Name Repo+    -> Id WorkflowRun+    -> GenRequest 'MtUnit 'RW ()+approveWorkflowRunR user repo run = Command Post+    ["repos", toPathPart user, toPathPart repo, "actions", "runs", toPathPart run, "approve"]+    mempty++-- | Get a workflow run attempt.+-- See <https://docs.github.com/en/rest/actions/workflow-runs#get-a-workflow-run-attempt>+workflowRunAttemptR+    :: Name Owner+    -> Name Repo+    -> Id WorkflowRun+    -> Id RunAttempt+    -> GenRequest 'MtJSON 'RA WorkflowRun+workflowRunAttemptR user repo run attempt = Query+    ["repos", toPathPart user, toPathPart repo, "actions", "runs", toPathPart run, "attempts", toPathPart attempt]+    []++-- | Download workflow run attempt logs.+-- See <https://docs.github.com/en/rest/actions/workflow-runs#download-workflow-run-attempt-logs>+downloadWorkflowRunAttemptLogsR+    :: Name Owner+    -> Name Repo+    -> Id WorkflowRun+    -> Id RunAttempt+    -> GenRequest 'MtRedirect 'RO URI+downloadWorkflowRunAttemptLogsR user repo run attempt = Query+    ["repos", toPathPart user, toPathPart repo, "actions", "runs", toPathPart run, "attempts", toPathPart attempt, "logs"]+    []++-- | Cancel a workflow run.+-- See <https://docs.github.com/en/rest/actions/workflow-runs#cancel-a-workflow-run>+cancelWorkflowRunR+    :: Name Owner+    -> Name Repo+    -> Id WorkflowRun+    -> GenRequest 'MtUnit 'RW ()+cancelWorkflowRunR user repo run = Command Post+    ["repos", toPathPart user, toPathPart repo, "actions", "runs", toPathPart run, "cancel"]+    mempty++-- | Download workflow run logs.+-- See <https://docs.github.com/en/rest/actions/workflow-runs#download-workflow-run-logs>+downloadWorkflowRunLogsR+    :: Name Owner+    -> Name Repo+    -> Id WorkflowRun+    -> GenRequest 'MtRedirect 'RA URI+downloadWorkflowRunLogsR user repo run = Query+    ["repos", toPathPart user, toPathPart repo, "actions", "runs", toPathPart run, "logs"]+    []++-- | Delete workflow run logs.+-- See <https://docs.github.com/en/rest/actions/workflow-runs#delete-workflow-run-logs>+deleteWorkflowRunLogsR+    :: Name Owner+    -> Name Repo+    -> Id WorkflowRun+    ->  GenRequest 'MtUnit 'RW ()+deleteWorkflowRunLogsR user repo run = Command Delete+    ["repos", toPathPart user, toPathPart repo, "actions", "runs", toPathPart run, "logs"]+    mempty++-- | Re-run a workflow.+-- See <https://docs.github.com/en/rest/actions/workflow-runs#re-run-a-workflow>+reRunWorkflowR+    :: Name Owner+    -> Name Repo+    -> Id WorkflowRun+    -> GenRequest 'MtUnit 'RW ()+reRunWorkflowR user repo run = Command Post+    ["repos", toPathPart user, toPathPart repo, "actions", "runs", toPathPart run, "rerun"]+    mempty++-- | Re-run failed jobs from a workflow run.+-- See <https://docs.github.com/en/rest/actions/re-run-failed-jobs-from-a-workflow-run>+reRunFailedJobsR+    :: Name Owner+    -> Name Repo+    -> Id WorkflowRun+    -> GenRequest 'MtUnit 'RW ()+reRunFailedJobsR user repo run = Command Post+    ["repos", toPathPart user, toPathPart repo, "actions", "runs", toPathPart run, "rerun-failed-jobs"]+    mempty++-- | List workflow runs for a workflow.+-- See <https://docs.github.com/en/rest/actions/workflow-runs#list-workflow-runs-for-a-workflow>+workflowRunsForWorkflowR+    :: (IsPathPart idOrName) => Name Owner+    -> Name Repo+    -> idOrName+    -> WorkflowRunMod+    -> FetchCount+    -> GenRequest 'MtJSON 'RA (WithTotalCount WorkflowRun)+workflowRunsForWorkflowR user repo idOrName runMod = PagedQuery+    ["repos", toPathPart user, toPathPart repo, "actions", "workflows", toPathPart idOrName, "runs"]+     (workflowRunModToQueryString runMod)
+ src/GitHub/Endpoints/Actions/Workflows.hs view
@@ -0,0 +1,68 @@+module GitHub.Endpoints.Actions.Workflows (+    repositoryWorkflowsR,+    workflowR,+    disableWorkflowR,+    triggerWorkflowR,+    enableWorkflowR,+    module GitHub.Data+    ) where++import GitHub.Data+import GitHub.Internal.Prelude+import Prelude ()++-- | List repository workflows.+-- See <https://docs.github.com/en/rest/actions/workflows#list-repository-workflows>+repositoryWorkflowsR+    :: Name Owner+    -> Name Repo+    -> FetchCount+    -> GenRequest 'MtJSON 'RA (WithTotalCount Workflow)+repositoryWorkflowsR user repo  = PagedQuery+    ["repos", toPathPart user, toPathPart repo, "actions", "workflows"]+    []++-- | Get a workflow.+-- See <https://docs.github.com/en/rest/actions/workflows#get-a-workflow>+workflowR+    :: (IsPathPart idOrName) => Name Owner+    -> Name Repo+    -> idOrName+    -> GenRequest 'MtJSON 'RA  Workflow+workflowR user repo idOrName  = Query+    ["repos", toPathPart user, toPathPart repo, "actions", "workflows", toPathPart idOrName]+    []++-- | Disable a workflow.+-- See <https://docs.github.com/en/rest/actions/workflows#disable-a-workflow>+disableWorkflowR+    :: (IsPathPart idOrName) => Name Owner+    -> Name Repo+    -> idOrName+    -> GenRequest 'MtUnit 'RW  ()+disableWorkflowR user repo idOrName  = Command Put+    ["repos", toPathPart user, toPathPart repo, "actions", "workflows", toPathPart idOrName, "disable"]+    mempty++-- | Create a workflow dispatch event.+-- See <https://docs.github.com/en/rest/actions/workflows#create-a-workflow-dispatch-event>+triggerWorkflowR+    :: (ToJSON a, IsPathPart idOrName) => Name Owner+    -> Name Repo+    -> idOrName+    -> CreateWorkflowDispatchEvent a+    -> GenRequest 'MtUnit 'RW  ()+triggerWorkflowR user repo idOrName  = Command Post+    ["repos", toPathPart user, toPathPart repo, "actions", "workflows", toPathPart idOrName, "dispatches"]+    . encode++-- | Enable a workflow.+-- See <https://docs.github.com/en/rest/actions/workflows#enable-a-workflow>+enableWorkflowR+    :: (IsPathPart idOrName) => Name Owner+    -> Name Repo+    -> idOrName+    -> GenRequest 'MtUnit 'RW  ()+enableWorkflowR user repo idOrName  = Command Put+    ["repos", toPathPart user, toPathPart repo, "actions", "workflows", toPathPart idOrName, "enable"]+    mempty
src/GitHub/Endpoints/Activity/Events.hs view
@@ -1,9 +1,6 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The events API as described on <https://developer.github.com/v3/activity/events/>.+ module GitHub.Endpoints.Activity.Events (     -- * Events     repositoryEventsR,
src/GitHub/Endpoints/Activity/Notifications.hs view
@@ -1,8 +1,4 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The repo watching API as described on -- <https://developer.github.com/v3/activity/notifications/>. 
src/GitHub/Endpoints/Activity/Starring.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The repo starring API as described on -- <https://developer.github.com/v3/activity/starring/>.+ module GitHub.Endpoints.Activity.Starring (     stargazersForR,     reposStarredByR,
src/GitHub/Endpoints/Activity/Watching.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The repo watching API as described on -- <https://developer.github.com/v3/activity/watching/>.+ module GitHub.Endpoints.Activity.Watching (     watchersForR,     reposWatchedByR,
src/GitHub/Endpoints/Enterprise/Organizations.hs view
@@ -1,9 +1,6 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The GitHub Enterprise orgs API as described on <https://developer.github.com/enterprise/v3/enterprise-admin/orgs/>.+ module GitHub.Endpoints.Enterprise.Organizations (     createOrganizationR,     renameOrganizationR,
src/GitHub/Endpoints/Gists.hs view
@@ -1,9 +1,6 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The gists API as described at <http://developer.github.com/v3/gists/>.+ module GitHub.Endpoints.Gists (     gistsR,     gistR,
src/GitHub/Endpoints/Gists/Comments.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The loving comments people have left on Gists, described on -- <http://developer.github.com/v3/gists/comments/>.+ module GitHub.Endpoints.Gists.Comments (     commentsOnR,     gistCommentR,
src/GitHub/Endpoints/GitData/Blobs.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The API for dealing with git blobs from Github repos, as described in -- <http://developer.github.com/v3/git/blobs/>.+ module GitHub.Endpoints.GitData.Blobs (     blobR,     module GitHub.Data,
src/GitHub/Endpoints/GitData/Commits.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The API for underlying git commits of a Github repo, as described on -- <http://developer.github.com/v3/git/commits/>.+ module GitHub.Endpoints.GitData.Commits (     gitCommitR,     module GitHub.Data,
src/GitHub/Endpoints/GitData/References.hs view
@@ -1,11 +1,8 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The underlying git references on a Github repo, exposed for the world to -- see. The git internals documentation will also prove handy for understanding -- these. API documentation at <http://developer.github.com/v3/git/refs/>.+ module GitHub.Endpoints.GitData.References (     referenceR,     referencesR,
src/GitHub/Endpoints/GitData/Trees.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The underlying tree of SHA1s and files that make up a git repo. The API is -- described on <http://developer.github.com/v3/git/trees/>.+ module GitHub.Endpoints.GitData.Trees (     treeR,     nestedTreeR,
src/GitHub/Endpoints/Issues.hs view
@@ -1,10 +1,8 @@ {-# LANGUAGE CPP #-}------------------------------------------------------------------------------+ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The issues API as described on <http://developer.github.com/v3/issues/>.+ module GitHub.Endpoints.Issues (     currentUserIssuesR,     organizationIssuesR,
src/GitHub/Endpoints/Issues/Comments.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The Github issue comments API from -- <http://developer.github.com/v3/issues/comments/>.+ module GitHub.Endpoints.Issues.Comments (     commentR,     commentsR,
src/GitHub/Endpoints/Issues/Events.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The Github issue events API, which is described on -- <http://developer.github.com/v3/issues/events/>+ module GitHub.Endpoints.Issues.Events (     eventsForIssueR,     eventsForRepoR,
src/GitHub/Endpoints/Issues/Labels.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The API for dealing with labels on Github issues as described on -- <http://developer.github.com/v3/issues/labels/>.+ module GitHub.Endpoints.Issues.Labels (     labelsOnRepoR,     labelR,
src/GitHub/Endpoints/Issues/Milestones.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The milestones API as described on -- <http://developer.github.com/v3/issues/milestones/>.+ module GitHub.Endpoints.Issues.Milestones (     milestonesR,     milestoneR,
src/GitHub/Endpoints/Organizations.hs view
@@ -1,9 +1,6 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The orgs API as described on <http://developer.github.com/v3/orgs/>.+ module GitHub.Endpoints.Organizations (     publicOrganizationsForR,     publicOrganizationR,
src/GitHub/Endpoints/Organizations/Members.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The organization members API as described on -- <http://developer.github.com/v3/orgs/members/>.+ module GitHub.Endpoints.Organizations.Members (     membersOfR,     membersOfWithR,
src/GitHub/Endpoints/Organizations/OutsideCollaborators.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The organization members API as described on -- <https://developer.github.com/v3/orgs/outside_collaborators/>.+ module GitHub.Endpoints.Organizations.OutsideCollaborators (     outsideCollaboratorsR,     ) where
src/GitHub/Endpoints/Organizations/Teams.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The Owner teams API as described on -- <http://developer.github.com/v3/orgs/teams/>.+ module GitHub.Endpoints.Organizations.Teams (     teamsOfR,     teamInfoForR,
src/GitHub/Endpoints/PullRequests.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The pull requests API as documented at -- <http://developer.github.com/v3/pulls/>.+ module GitHub.Endpoints.PullRequests (     pullRequestsForR,     pullRequestR,@@ -102,4 +99,3 @@     buildCommitMessageMap :: Maybe Text -> Value     buildCommitMessageMap (Just msg) = object ["commit_message" .= msg ]     buildCommitMessageMap Nothing    = object []-
src/GitHub/Endpoints/PullRequests/Comments.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The pull request review comments API as described at -- <http://developer.github.com/v3/pulls/comments/>.+ module GitHub.Endpoints.PullRequests.Comments (     pullRequestCommentsR,     pullRequestCommentR,
src/GitHub/Endpoints/PullRequests/Reviews.hs view
@@ -1,9 +1,6 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The reviews API as described on <http://developer.github.com/v3/pulls/reviews/>.+ module GitHub.Endpoints.PullRequests.Reviews     ( pullRequestReviewsR     , pullRequestReviewR
src/GitHub/Endpoints/RateLimit.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The Github RateLimit API, as described at -- <http://developer.github.com/v3/rate_limit/>.+ module GitHub.Endpoints.RateLimit (     rateLimitR,     module GitHub.Data,
src/GitHub/Endpoints/Repos.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The Github Repos API, as documented at -- <http://developer.github.com/v3/repos/>+ module GitHub.Endpoints.Repos (     -- * Querying repositories     currentUserReposR,
src/GitHub/Endpoints/Repos/Collaborators.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The repo collaborators API as described on -- <http://developer.github.com/v3/repos/collaborators/>.+ module GitHub.Endpoints.Repos.Collaborators (     collaboratorsOnR,     collaboratorPermissionOnR,
src/GitHub/Endpoints/Repos/Comments.hs view
@@ -1,11 +1,9 @@ {-# LANGUAGE CPP #-}------------------------------------------------------------------------------+ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The repo commits API as described on -- <http://developer.github.com/v3/repos/comments/>.+ module GitHub.Endpoints.Repos.Comments (     commentsForR,     commitCommentsForR,
src/GitHub/Endpoints/Repos/Commits.hs view
@@ -1,11 +1,9 @@ {-# LANGUAGE CPP #-}------------------------------------------------------------------------------+ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The repo commits API as described on -- <http://developer.github.com/v3/repos/commits/>.+ module GitHub.Endpoints.Repos.Commits (     CommitQueryOption(..),     commitsForR,
src/GitHub/Endpoints/Repos/Contents.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The Github Repo Contents API, as documented at -- <https://developer.github.com/v3/repos/contents/>+ module GitHub.Endpoints.Repos.Contents (     -- * Querying contents     contentsForR,
src/GitHub/Endpoints/Repos/Forks.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- Hot forking action, as described at -- <http://developer.github.com/v3/repos/forks/>.+ module GitHub.Endpoints.Repos.Forks (     forksForR,     module GitHub.Data,
src/GitHub/Endpoints/Repos/Invitations.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The repo invitations API as described on -- <https://developer.github.com/v3/repos/invitations/>.+ module GitHub.Endpoints.Repos.Invitations (     listInvitationsOnR,     listInvitationsForR,
src/GitHub/Endpoints/Repos/Statuses.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The repo statuses API as described on -- <https://developer.github.com/v3/repos/statuses/>.+ module GitHub.Endpoints.Repos.Statuses (     createStatusR,     statusesForR,
src/GitHub/Endpoints/Repos/Webhooks.hs view
@@ -1,11 +1,8 @@- ----------------------------------------------------------------------------- -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The webhooks API, as described at -- <https://developer.github.com/v3/repos/hooks/> -- <https://developer.github.com/webhooks>+ module GitHub.Endpoints.Repos.Webhooks (     -- * Querying repositories     webhooksForR,
src/GitHub/Endpoints/Search.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The Github Search API, as described at -- <http://developer.github.com/v3/search/>.+ module GitHub.Endpoints.Search(     searchReposR,     searchCodeR,
src/GitHub/Endpoints/Users.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The Github Users API, as described at -- <http://developer.github.com/v3/users/>.+ module GitHub.Endpoints.Users (     userInfoForR,     ownerInfoForR,
src/GitHub/Endpoints/Users/Emails.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The user emails API as described on -- <http://developer.github.com/v3/users/emails/>.+ module GitHub.Endpoints.Users.Emails (     currentUserEmailsR,     currentUserPublicEmailsR,
src/GitHub/Endpoints/Users/Followers.hs view
@@ -1,10 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- The user followers API as described on -- <http://developer.github.com/v3/users/followers/>.+ module GitHub.Endpoints.Users.Followers (     usersFollowingR,     usersFollowedByR,
src/GitHub/Enterprise.hs view
@@ -1,11 +1,7 @@------------------------------------------------------------------------------ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- This module re-exports all request constructors and data definitions for -- working with GitHub Enterprise.---+ module GitHub.Enterprise (     -- * Enterprise Admin     -- | See <https://developer.github.com/enterprise/v3/enterprise-admin/>
src/GitHub/Internal/Prelude.hs view
@@ -1,61 +1,32 @@ {-# LANGUAGE NoImplicitPrelude #-} {-# LANGUAGE CPP #-}------------------------------------------------------------------------------+ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- This module may change between minor releases. Do not rely on its contents.-module GitHub.Internal.Prelude (-    module Prelude.Compat,-    -- * Commonly used types-    UTCTime,-    HashMap,-    Text, pack, unpack,-    Vector,-    -- * Commonly used typeclasses-    Binary,-    Data, Typeable,-    Generic,-    Hashable(..),-    IsString(..),-    NFData(..), genericRnf,-    Semigroup(..),-    -- * Aeson-    FromJSON(..), ToJSON(..), Value(..), Object,-    emptyObject,-    encode,-    withText, withObject, (.:), (.:?), (.!=), (.=), object, typeMismatch,-    -- * Control.Applicative-    (<|>),-    -- * Data.Maybe-    catMaybes,-    -- * Data.List-    intercalate, toList,-    -- * Data.Time.ISO8601-    formatISO8601,-    ) where -import Control.Applicative      ((<|>))-import Control.DeepSeq          (NFData (..))-import Control.DeepSeq.Generics (genericRnf)-import Data.Aeson+module GitHub.Internal.Prelude ( module X ) where++import Control.Applicative      as X ((<|>))+import Control.DeepSeq          as X (NFData (..))+import Control.DeepSeq.Generics as X (genericRnf)+import Data.Aeson               as X        (FromJSON (..), Object, ToJSON (..), Value (..), encode, object,        withObject, withText, (.!=), (.:), (.:?), (.=))-import Data.Aeson.Types         (emptyObject, typeMismatch)-import Data.Binary              (Binary)-import Data.Binary.Instances ()-import Data.Data                (Data, Typeable)-import Data.Foldable            (toList)-import Data.Hashable            (Hashable (..))-import Data.HashMap.Strict      (HashMap)-import Data.List                (intercalate)-import Data.Maybe               (catMaybes)-import Data.Semigroup           (Semigroup (..))-import Data.String              (IsString (..))-import Data.Text                (Text, pack, unpack)-import Data.Time.Compat         (UTCTime)-import Data.Time.ISO8601        (formatISO8601)-import Data.Vector              (Vector)-import GHC.Generics             (Generic)-import Prelude.Compat+import Data.Aeson.Types         as X (emptyObject, typeMismatch)+import Data.Binary              as X (Binary)+import Data.Binary.Instances    as X ()+import Data.Data                as X (Data, Typeable)+import Data.Foldable            as X (toList)+import Data.Hashable            as X (Hashable (..))+import Data.HashMap.Strict      as X (HashMap)+import Data.List                as X (intercalate)+import Data.Maybe               as X (catMaybes)+import Data.Semigroup           as X (Semigroup (..))+import Data.String              as X (IsString (..))+import Data.Text                as X (Text, pack, unpack)+import Data.Time.Compat         as X (UTCTime)+import Data.Time.ISO8601        as X (formatISO8601)+import Data.Vector              as X (Vector)+import GHC.Generics             as X (Generic)+import Prelude.Compat           as X+import Data.Functor.Compat      as X ((<&>))
src/GitHub/Request.hs view
@@ -6,11 +6,8 @@ {-# LANGUAGE KindSignatures         #-} {-# LANGUAGE ScopedTypeVariables    #-} {-# LANGUAGE UndecidableInstances   #-}------------------------------------------------------------------------------+ -- |--- License     :  BSD-3-Clause--- Maintainer  :  Oleg Grenrus <oleg.grenrus@iki.fi>--- -- This module provides data types and helper methods, which makes possible -- to build alternative API request intepreters in addition to provided -- 'IO' functions.@@ -30,6 +27,7 @@ -- > -- | Lift request into Monad -- > githubRequest :: GH.Request 'False a -> GithubMonad a -- > githubRequest = singleton+ module GitHub.Request (     -- * A convenient execution of requests     github,