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

Method edit_required_pull_request_reviews

github/Branch.py:427–472  ·  view source on GitHub ↗

:calls: `PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews `_

(
        self,
        dismissal_users: Opt[list[str]] = NotSet,
        dismissal_teams: Opt[list[str]] = NotSet,
        dismissal_apps: Opt[list[str]] = NotSet,
        dismiss_stale_reviews: Opt[bool] = NotSet,
        require_code_owner_reviews: Opt[bool] = NotSet,
        required_approving_review_count: Opt[int] = NotSet,
        require_last_push_approval: Opt[bool] = NotSet,
    )

Source from the content-addressed store, hash-verified

425 )
426
427 def edit_required_pull_request_reviews(
428 self,
429 dismissal_users: Opt[list[str]] = NotSet,
430 dismissal_teams: Opt[list[str]] = NotSet,
431 dismissal_apps: Opt[list[str]] = NotSet,
432 dismiss_stale_reviews: Opt[bool] = NotSet,
433 require_code_owner_reviews: Opt[bool] = NotSet,
434 required_approving_review_count: Opt[int] = NotSet,
435 require_last_push_approval: Opt[bool] = NotSet,
436 ) -> RequiredPullRequestReviews:
437 """
438 :calls: `PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews <https://docs.github.com/en/rest/reference/repos#branches>`_
439 """
440 assert is_optional_list(dismissal_users, str), dismissal_users
441 assert is_optional_list(dismissal_teams, str), dismissal_teams
442 assert is_optional(dismiss_stale_reviews, bool), dismiss_stale_reviews
443 assert is_optional(require_code_owner_reviews, bool), require_code_owner_reviews
444 assert is_optional(required_approving_review_count, int), required_approving_review_count
445 assert is_optional(require_last_push_approval, bool), require_last_push_approval
446
447 post_parameters: dict[str, Any] = NotSet.remove_unset_items(
448 {
449 "dismiss_stale_reviews": dismiss_stale_reviews,
450 "require_code_owner_reviews": require_code_owner_reviews,
451 "required_approving_review_count": required_approving_review_count,
452 "require_last_push_approval": require_last_push_approval,
453 }
454 )
455
456 dismissal_restrictions: dict[str, Any] = NotSet.remove_unset_items(
457 {"users": dismissal_users, "teams": dismissal_teams, "apps": dismissal_apps}
458 )
459
460 if dismissal_restrictions:
461 post_parameters["dismissal_restrictions"] = dismissal_restrictions
462
463 headers, data = self._requester.requestJsonAndCheck(
464 "PATCH",
465 f"{self.protection_url}/required_pull_request_reviews",
466 headers={"Accept": Consts.mediaTypeRequireMultipleApprovingReviews},
467 input=post_parameters,
468 )
469
470 return github.RequiredPullRequestReviews.RequiredPullRequestReviews(
471 self._requester, headers, data, completed=True
472 )
473
474 def remove_required_pull_request_reviews(self) -> None:
475 """

Calls 4

is_optional_listFunction · 0.90
is_optionalFunction · 0.90
remove_unset_itemsMethod · 0.80
requestJsonAndCheckMethod · 0.80

Tested by

no test coverage detected