-- The Release API, as described at
-- .
module GitHub.Endpoints.Repos.Releases (
releasesR,
releaseR,
latestReleaseR,
releaseByTagNameR,
module GitHub.Data,
) where
import GitHub.Data
import GitHub.Internal.Prelude
import Prelude ()
-- | List releases for a repository.
-- See
releasesR :: Name Owner -> Name Repo -> FetchCount -> Request k (Vector Release)
releasesR user repo =
pagedQuery ["repos", toPathPart user, toPathPart repo, "releases"] []
-- | Get a single release.
-- See
releaseR :: Name Owner -> Name Repo -> Id Release -> Request k Release
releaseR user repo reqReleaseId =
query ["repos", toPathPart user, toPathPart repo, "releases", toPathPart reqReleaseId ] []
-- | Get the latest release.
-- See
latestReleaseR :: Name Owner -> Name Repo -> Request k Release
latestReleaseR user repo =
query ["repos", toPathPart user, toPathPart repo, "releases", "latest" ] []
-- | Get a release by tag name
-- See
releaseByTagNameR :: Name Owner -> Name Repo -> Text -> Request k Release
releaseByTagNameR user repo reqTagName =
query ["repos", toPathPart user, toPathPart repo, "releases", "tags" , reqTagName ] []
{-
-- TODO: implement the following:
https://developer.github.com/v3/repos/releases/#create-a-release
https://developer.github.com/v3/repos/releases/#edit-a-release
https://developer.github.com/v3/repos/releases/#delete-a-release
https://developer.github.com/v3/repos/releases/#list-assets-for-a-release
https://developer.github.com/v3/repos/releases/#upload-a-release-asset
https://developer.github.com/v3/repos/releases/#get-a-single-release-asset
https://developer.github.com/v3/repos/releases/#edit-a-release-asset
https://developer.github.com/v3/repos/releases/#delete-a-release-asset
-}