:calls: `GET /repos/{owner}/{repo}/releases/{release_id} `_ :param id: int (release id), str (tag name) :rtype: None or :class:`github.GitRelease.GitRelease`
(self, id: int | str)
| 3664 | return PaginatedList(github.GitRelease.GitRelease, self._requester, f"{self.url}/releases", None) |
| 3665 | |
| 3666 | def get_release(self, id: int | str) -> GitRelease: |
| 3667 | """ |
| 3668 | :calls: `GET /repos/{owner}/{repo}/releases/{release_id} <https://docs.github.com/en/rest/reference/repos#get-a-release>`_ |
| 3669 | :param id: int (release id), str (tag name) |
| 3670 | :rtype: None or :class:`github.GitRelease.GitRelease` |
| 3671 | """ |
| 3672 | assert isinstance(id, (int, str)), id |
| 3673 | if isinstance(id, int): |
| 3674 | url = f"{self.url}/releases/{id}" |
| 3675 | return github.GitRelease.GitRelease(self._requester, url=url) |
| 3676 | else: |
| 3677 | tag = urllib.parse.quote(id, safe="") |
| 3678 | url = f"{self.url}/releases/tags/{tag}" |
| 3679 | # a release by tag cannot be lazy, we need to get the url with release id |
| 3680 | return github.GitRelease.GitRelease(self._requester, url=url).complete() |
| 3681 | |
| 3682 | def get_latest_release(self) -> GitRelease: |
| 3683 | """ |
no test coverage detected