MCPcopy Index your code
hub / github.com/PyGithub/PyGithub / update_release

Method update_release

github/GitRelease.py:276–317  ·  view source on GitHub ↗

:calls: `PATCH /repos/{owner}/{repo}/releases/{release_id} `_

(
        self,
        name: str,
        message: str,
        draft: bool = False,
        prerelease: bool = False,
        tag_name: Opt[str] = NotSet,
        target_commitish: Opt[str] = NotSet,
        make_latest: Opt[str] = NotSet,
        discussion_category_name: Opt[str] = NotSet,
    )

Source from the content-addressed store, hash-verified

274 headers, data = self._requester.requestJsonAndCheck("DELETE", self.url)
275
276 def update_release(
277 self,
278 name: str,
279 message: str,
280 draft: bool = False,
281 prerelease: bool = False,
282 tag_name: Opt[str] = NotSet,
283 target_commitish: Opt[str] = NotSet,
284 make_latest: Opt[str] = NotSet,
285 discussion_category_name: Opt[str] = NotSet,
286 ) -> GitRelease:
287 """
288 :calls: `PATCH /repos/{owner}/{repo}/releases/{release_id} <https://docs.github.com/en/rest/releases/releases?apiVersion=2022-11-28#update-a-release>`_
289 """
290 assert isinstance(name, str), name
291 assert isinstance(message, str), message
292 assert isinstance(draft, bool), draft
293 assert isinstance(prerelease, bool), prerelease
294 assert is_optional(tag_name, str), "tag_name must be a str/unicode object"
295 assert is_optional(target_commitish, str), "target_commitish must be a str/unicode object"
296 assert make_latest in ["true", "false", "legacy", NotSet], make_latest
297 assert is_optional(discussion_category_name, str), discussion_category_name
298 # default tag_name with instance attribute if not given to the method
299 if tag_name is NotSet:
300 tag_name = self.tag_name
301 post_parameters = {
302 "tag_name": tag_name,
303 "name": name,
304 "body": message,
305 "draft": draft,
306 "prerelease": prerelease,
307 }
308 # Do not set target_commitish to self.target_commitish when omitted, just don't send it
309 # altogether in that case, in order to match the Github API behaviour. Only send it when set.
310 if target_commitish is not NotSet:
311 post_parameters["target_commitish"] = target_commitish
312 if make_latest is not NotSet:
313 post_parameters["make_latest"] = make_latest
314 if discussion_category_name is not NotSet:
315 post_parameters["discussion_category_name"] = discussion_category_name
316 headers, data = self._requester.requestJsonAndCheck("PATCH", self.url, input=post_parameters)
317 return github.GitRelease.GitRelease(self._requester, headers, data, completed=True)
318
319 def upload_asset(
320 self, path: str, label: str = "", content_type: Opt[str] = NotSet, name: Opt[str] = NotSet

Callers 1

testUpdateMethod · 0.80

Calls 2

is_optionalFunction · 0.90
requestJsonAndCheckMethod · 0.80

Tested by

no test coverage detected