From 417cb4f7ce9a8cc859dbd53746471c1567eca685 Mon Sep 17 00:00:00 2001 From: mbed-deploy Date: Sat, 6 Jan 2018 17:45:33 +0000 Subject: [PATCH 1/3] Fixed up the squash and merge support to match the git api. The squash method has been removed and there is now a 'merge_method' parameter. See https://developer.github.com/changes/2017-04-07-end-merge-methods-api-preview/ for more details. --- github3/pulls.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/github3/pulls.py b/github3/pulls.py index 471961e27..0ea51ddcd 100644 --- a/github3/pulls.py +++ b/github3/pulls.py @@ -303,18 +303,17 @@ def issue_comments(self, number=-1, etag=None): return self._iter(int(number), url, IssueComment, etag=etag) @requires_auth - def merge(self, commit_message=None, sha=None, squash=False): + def merge(self, commit_message=None, sha=None, merge_method="merge"): """Merge this pull request. :param str commit_message: (optional), message to be used for the merge commit :param str sha: (optional), SHA that pull request head must match to merge. - :param bool squash: (optional), commit a single commit to the - head branch. + :param str merge_method: (optional), Change the merge method. Either 'merge', 'squash' or 'rebase'. Default is 'merge'. :returns: bool """ - parameters = {'squash': squash} + parameters = {'merge_method': merge_method} if sha: parameters['sha'] = sha if commit_message is not None: From ef53597388930d62a31f9577492a7074a9aead9c Mon Sep 17 00:00:00 2001 From: John-Paul Stanford Date: Sun, 7 Jan 2018 10:35:48 +0000 Subject: [PATCH 2/3] Fixed tests to align with changes in squash parameter --- tests/unit/test_pulls.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/unit/test_pulls.py b/tests/unit/test_pulls.py index 0b68ee4c0..4fc31f250 100644 --- a/tests/unit/test_pulls.py +++ b/tests/unit/test_pulls.py @@ -99,16 +99,16 @@ def test_merge(self): self.put_called_with( url_for('merge'), - data={"squash": False} + data={"merge_method": "merge"} ) def test_merge_squash_message(self): """Show that a user can merge a Pull Request.""" - self.instance.merge('commit message', squash=True) + self.instance.merge('commit message', merge_method='squash') self.put_called_with( url_for('merge'), - data={"squash": True, "commit_message": "commit message"} + data={"merge_method": "squash", "commit_message": "commit message"} ) def test_patch(self): From aeae94249032055e1467697048e9cc58587ce8db Mon Sep 17 00:00:00 2001 From: John-Paul Stanford Date: Sun, 7 Jan 2018 19:13:08 +0000 Subject: [PATCH 3/3] Fixed flake8 error --- github3/pulls.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/github3/pulls.py b/github3/pulls.py index 0ea51ddcd..6a40753d7 100644 --- a/github3/pulls.py +++ b/github3/pulls.py @@ -310,7 +310,8 @@ def merge(self, commit_message=None, sha=None, merge_method="merge"): merge commit :param str sha: (optional), SHA that pull request head must match to merge. - :param str merge_method: (optional), Change the merge method. Either 'merge', 'squash' or 'rebase'. Default is 'merge'. + :param str merge_method: (optional), Change the merge method. + Either 'merge', 'squash' or 'rebase'. Default is 'merge'. :returns: bool """ parameters = {'merge_method': merge_method}