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

Method edit

github/Issue.py:429–482  ·  view source on GitHub ↗

:calls: `PATCH /repos/{owner}/{repo}/issues/{issue_number} `_ :param assignee: deprecated, use `assignees` instead. `assignee=None` means to remove current assignee. :param milestone: `milestone=None` means to remove current

(
        self,
        title: Opt[str] = NotSet,
        body: Opt[str] = NotSet,
        assignee: Opt[str | NamedUser | None] = NotSet,
        state: Opt[str] = NotSet,
        milestone: Opt[Milestone | None] = NotSet,
        labels: Opt[list[str]] = NotSet,
        assignees: Opt[list[NamedUser | str]] = NotSet,
        state_reason: Opt[str] = NotSet,
    )

Source from the content-addressed store, hash-verified

427
428 # breaking change: remove deprecated assignee
429 def edit(
430 self,
431 title: Opt[str] = NotSet,
432 body: Opt[str] = NotSet,
433 assignee: Opt[str | NamedUser | None] = NotSet,
434 state: Opt[str] = NotSet,
435 milestone: Opt[Milestone | None] = NotSet,
436 labels: Opt[list[str]] = NotSet,
437 assignees: Opt[list[NamedUser | str]] = NotSet,
438 state_reason: Opt[str] = NotSet,
439 ) -> None:
440 """
441 :calls: `PATCH /repos/{owner}/{repo}/issues/{issue_number} <https://docs.github.com/en/rest/reference/issues>`_
442 :param assignee: deprecated, use `assignees` instead. `assignee=None` means to remove current assignee.
443 :param milestone: `milestone=None` means to remove current milestone.
444 """
445 assert is_optional(title, str), title
446 assert is_optional(body, str), body
447 assert assignee is None or is_optional(assignee, (github.NamedUser.NamedUser, str)), assignee
448 assert is_optional_list(assignees, (github.NamedUser.NamedUser, str)), assignees
449 assert is_optional(state, str), state
450 assert milestone is None or is_optional(milestone, github.Milestone.Milestone), milestone
451 assert is_optional_list(labels, str), labels
452
453 if assignee is None or is_defined(assignee):
454 warnings.warn(
455 "Argument assignee is deprecated, please use assignees=[assignee] instead",
456 category=DeprecationWarning,
457 )
458 if is_undefined(assignees):
459 assignees = [assignee] if assignee is not None else [] # type: ignore
460 if is_defined(assignees):
461 assignees = [
462 element._identity if isinstance(element, github.NamedUser.NamedUser) else element
463 for element in assignees
464 ]
465
466 post_parameters = NotSet.remove_unset_items(
467 {
468 "title": title,
469 "body": body,
470 "state": state,
471 "state_reason": state_reason,
472 "labels": labels,
473 "assignees": assignees,
474 "milestone": milestone._identity
475 if isinstance(milestone, github.Milestone.Milestone)
476 else (milestone or ""),
477 }
478 )
479
480 headers, data = self._requester.requestJsonAndCheck("PATCH", self.url, input=post_parameters)
481 self._useAttributes(data)
482 self._set_complete()
483
484 def lock(self, lock_reason: str) -> None:
485 """

Callers

nothing calls this directly

Calls 8

_useAttributesMethod · 0.95
is_optionalFunction · 0.90
is_optional_listFunction · 0.90
is_definedFunction · 0.90
is_undefinedFunction · 0.90
remove_unset_itemsMethod · 0.80
requestJsonAndCheckMethod · 0.80
_set_completeMethod · 0.80

Tested by

no test coverage detected