{"action":"created","comment":{"url":"https://api.github.com/repos/marshmallow-code/marshmallow/pulls/comments/87983371","pull_request_review_id":8570668,"id":87983371,"diff_hunk":"@@ -334,16 +334,31 @@ def callable_or_raise(obj):\n     return obj\n \n \n-def get_func_args(func):","path":"marshmallow/utils.py","position":14,"original_position":4,"commit_id":"baff62c110d88525076d6ba70ecd077762ea54b7","original_commit_id":"25bbbddd91791a4e74ed1983f5aed19048a25830","user":{"login":"sabinem","id":5292683,"avatar_url":"https://avatars.githubusercontent.com/u/5292683?v=3","gravatar_id":"","url":"https://api.github.com/users/sabinem","html_url":"https://github.com/sabinem","followers_url":"https://api.github.com/users/sabinem/followers","following_url":"https://api.github.com/users/sabinem/following{/other_user}","gists_url":"https://api.github.com/users/sabinem/gists{/gist_id}","starred_url":"https://api.github.com/users/sabinem/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sabinem/subscriptions","organizations_url":"https://api.github.com/users/sabinem/orgs","repos_url":"https://api.github.com/users/sabinem/repos","events_url":"https://api.github.com/users/sabinem/events{/privacy}","received_events_url":"https://api.github.com/users/sabinem/received_events","type":"User","site_admin":false},"body":"I just tried my best to rebase and update the pull request. Hope it worked all out, otherwise please let me know.","created_at":"2016-11-15T10:04:00Z","updated_at":"2016-11-15T10:04:00Z","html_url":"https://github.com/marshmallow-code/marshmallow/pull/548#discussion_r87983371","pull_request_url":"https://api.github.com/repos/marshmallow-code/marshmallow/pulls/548","_links":{"self":{"href":"https://api.github.com/repos/marshmallow-code/marshmallow/pulls/comments/87983371"},"html":{"href":"https://github.com/marshmallow-code/marshmallow/pull/548#discussion_r87983371"},"pull_request":{"href":"https://api.github.com/repos/marshmallow-code/marshmallow/pulls/548"}}},"pull_request":{"url":"https://api.github.com/repos/marshmallow-code/marshmallow/pulls/548","id":93220597,"html_url":"https://github.com/marshmallow-code/marshmallow/pull/548","diff_url":"https://github.com/marshmallow-code/marshmallow/pull/548.diff","patch_url":"https://github.com/marshmallow-code/marshmallow/pull/548.patch","issue_url":"https://api.github.com/repos/marshmallow-code/marshmallow/issues/548","number":548,"state":"open","locked":false,"title":"Bugfix Issue 540 type annotations","user":{"login":"sabinem","id":5292683,"avatar_url":"https://avatars.githubusercontent.com/u/5292683?v=3","gravatar_id":"","url":"https://api.github.com/users/sabinem","html_url":"https://github.com/sabinem","followers_url":"https://api.github.com/users/sabinem/followers","following_url":"https://api.github.com/users/sabinem/following{/other_user}","gists_url":"https://api.github.com/users/sabinem/gists{/gist_id}","starred_url":"https://api.github.com/users/sabinem/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sabinem/subscriptions","organizations_url":"https://api.github.com/users/sabinem/orgs","repos_url":"https://api.github.com/users/sabinem/repos","events_url":"https://api.github.com/users/sabinem/events{/privacy}","received_events_url":"https://api.github.com/users/sabinem/received_events","type":"User","site_admin":false},"body":"[Fix for Issue 540](https://github.com/marshmallow-code/marshmallow/issues/540)\r\n\r\n**Problem**\r\nIn Python 3 function parameters can have type annotations. Adding\r\nannotations to a deserialization function used in schema caused a crash\r\non a utility function: `utils.get_func_args`. \r\n\r\n**Fix**\r\nSince the inspect modul changed a lot from Python 2 to Python 3, I implemented a branching in\r\ncompat and a new version of the utility function for python 3. \r\nBoth of these functions return now the arguments as tuples, the old function returned a list, but the new `inspect.signature` in Python3 returns a Ordered Dict, therefore I settled for a tuple as was stated in the docstring of the original function. \r\n\r\n**Open Points**\r\n1. I tried to branch from `1.2-line`, but run into an error, like this here: [#475](https://github.com/marshmallow-code/marshmallow/pull/475), when I tried to set up my development environment, therefor I branched from `dev`instead.\r\n2. I did not know how to set up a test case, since the test case with annotations is not valid python2 code and the python2 syntax check crashes on it.\r\n\r\n**Feedback?**\r\nThis is my first meaningful open source bug fix. So please excuse, if I did something wrong and tell me how to improve.","created_at":"2016-11-10T20:03:13Z","updated_at":"2016-11-15T10:04:00Z","closed_at":null,"merged_at":null,"merge_commit_sha":"238e47876ae5850987a2720f1d234700094bb410","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/marshmallow-code/marshmallow/pulls/548/commits","review_comments_url":"https://api.github.com/repos/marshmallow-code/marshmallow/pulls/548/comments","review_comment_url":"https://api.github.com/repos/marshmallow-code/marshmallow/pulls/comments{/number}","comments_url":"https://api.github.com/repos/marshmallow-code/marshmallow/issues/548/comments","statuses_url":"https://api.github.com/repos/marshmallow-code/marshmallow/statuses/baff62c110d88525076d6ba70ecd077762ea54b7","head":{"label":"sabinem:issue_540_annotations_bug","ref":"issue_540_annotations_bug","sha":"baff62c110d88525076d6ba70ecd077762ea54b7","user":{"login":"sabinem","id":5292683,"avatar_url":"https://avatars.githubusercontent.com/u/5292683?v=3","gravatar_id":"","url":"https://api.github.com/users/sabinem","html_url":"https://github.com/sabinem","followers_url":"https://api.github.com/users/sabinem/followers","following_url":"https://api.github.com/users/sabinem/following{/other_user}","gists_url":"https://api.github.com/users/sabinem/gists{/gist_id}","starred_url":"https://api.github.com/users/sabinem/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sabinem/subscriptions","organizations_url":"https://api.github.com/users/sabinem/orgs","repos_url":"https://api.github.com/users/sabinem/repos","events_url":"https://api.github.com/users/sabinem/events{/privacy}","received_events_url":"https://api.github.com/users/sabinem/received_events","type":"User","site_admin":false},"repo":{"id":73268927,"name":"marshmallow","full_name":"sabinem/marshmallow","owner":{"login":"sabinem","id":5292683,"avatar_url":"https://avatars.githubusercontent.com/u/5292683?v=3","gravatar_id":"","url":"https://api.github.com/users/sabinem","html_url":"https://github.com/sabinem","followers_url":"https://api.github.com/users/sabinem/followers","following_url":"https://api.github.com/users/sabinem/following{/other_user}","gists_url":"https://api.github.com/users/sabinem/gists{/gist_id}","starred_url":"https://api.github.com/users/sabinem/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sabinem/subscriptions","organizations_url":"https://api.github.com/users/sabinem/orgs","repos_url":"https://api.github.com/users/sabinem/repos","events_url":"https://api.github.com/users/sabinem/events{/privacy}","received_events_url":"https://api.github.com/users/sabinem/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/sabinem/marshmallow","description":"A lightweight library for converting complex objects to and from simple Python datatypes.","fork":true,"url":"https://api.github.com/repos/sabinem/marshmallow","forks_url":"https://api.github.com/repos/sabinem/marshmallow/forks","keys_url":"https://api.github.com/repos/sabinem/marshmallow/keys{/key_id}","collaborators_url":"https://api.github.com/repos/sabinem/marshmallow/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/sabinem/marshmallow/teams","hooks_url":"https://api.github.com/repos/sabinem/marshmallow/hooks","issue_events_url":"https://api.github.com/repos/sabinem/marshmallow/issues/events{/number}","events_url":"https://api.github.com/repos/sabinem/marshmallow/events","assignees_url":"https://api.github.com/repos/sabinem/marshmallow/assignees{/user}","branches_url":"https://api.github.com/repos/sabinem/marshmallow/branches{/branch}","tags_url":"https://api.github.com/repos/sabinem/marshmallow/tags","blobs_url":"https://api.github.com/repos/sabinem/marshmallow/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/sabinem/marshmallow/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/sabinem/marshmallow/git/refs{/sha}","trees_url":"https://api.github.com/repos/sabinem/marshmallow/git/trees{/sha}","statuses_url":"https://api.github.com/repos/sabinem/marshmallow/statuses/{sha}","languages_url":"https://api.github.com/repos/sabinem/marshmallow/languages","stargazers_url":"https://api.github.com/repos/sabinem/marshmallow/stargazers","contributors_url":"https://api.github.com/repos/sabinem/marshmallow/contributors","subscribers_url":"https://api.github.com/repos/sabinem/marshmallow/subscribers","subscription_url":"https://api.github.com/repos/sabinem/marshmallow/subscription","commits_url":"https://api.github.com/repos/sabinem/marshmallow/commits{/sha}","git_commits_url":"https://api.github.com/repos/sabinem/marshmallow/git/commits{/sha}","comments_url":"https://api.github.com/repos/sabinem/marshmallow/comments{/number}","issue_comment_url":"https://api.github.com/repos/sabinem/marshmallow/issues/comments{/number}","contents_url":"https://api.github.com/repos/sabinem/marshmallow/contents/{+path}","compare_url":"https://api.github.com/repos/sabinem/marshmallow/compare/{base}...{head}","merges_url":"https://api.github.com/repos/sabinem/marshmallow/merges","archive_url":"https://api.github.com/repos/sabinem/marshmallow/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/sabinem/marshmallow/downloads","issues_url":"https://api.github.com/repos/sabinem/marshmallow/issues{/number}","pulls_url":"https://api.github.com/repos/sabinem/marshmallow/pulls{/number}","milestones_url":"https://api.github.com/repos/sabinem/marshmallow/milestones{/number}","notifications_url":"https://api.github.com/repos/sabinem/marshmallow/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/sabinem/marshmallow/labels{/name}","releases_url":"https://api.github.com/repos/sabinem/marshmallow/releases{/id}","deployments_url":"https://api.github.com/repos/sabinem/marshmallow/deployments","created_at":"2016-11-09T09:23:42Z","updated_at":"2016-11-09T09:23:43Z","pushed_at":"2016-11-15T10:02:01Z","git_url":"git://github.com/sabinem/marshmallow.git","ssh_url":"git@github.com:sabinem/marshmallow.git","clone_url":"https://github.com/sabinem/marshmallow.git","svn_url":"https://github.com/sabinem/marshmallow","homepage":"http://marshmallow.readthedocs.io/","size":2426,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"dev"}},"base":{"label":"marshmallow-code:dev","ref":"dev","sha":"025e8dea64688c0106ae4deaccdc021bd71e58a5","user":{"login":"marshmallow-code","id":10334301,"avatar_url":"https://avatars.githubusercontent.com/u/10334301?v=3","gravatar_id":"","url":"https://api.github.com/users/marshmallow-code","html_url":"https://github.com/marshmallow-code","followers_url":"https://api.github.com/users/marshmallow-code/followers","following_url":"https://api.github.com/users/marshmallow-code/following{/other_user}","gists_url":"https://api.github.com/users/marshmallow-code/gists{/gist_id}","starred_url":"https://api.github.com/users/marshmallow-code/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/marshmallow-code/subscriptions","organizations_url":"https://api.github.com/users/marshmallow-code/orgs","repos_url":"https://api.github.com/users/marshmallow-code/repos","events_url":"https://api.github.com/users/marshmallow-code/events{/privacy}","received_events_url":"https://api.github.com/users/marshmallow-code/received_events","type":"Organization","site_admin":false},"repo":{"id":14284859,"name":"marshmallow","full_name":"marshmallow-code/marshmallow","owner":{"login":"marshmallow-code","id":10334301,"avatar_url":"https://avatars.githubusercontent.com/u/10334301?v=3","gravatar_id":"","url":"https://api.github.com/users/marshmallow-code","html_url":"https://github.com/marshmallow-code","followers_url":"https://api.github.com/users/marshmallow-code/followers","following_url":"https://api.github.com/users/marshmallow-code/following{/other_user}","gists_url":"https://api.github.com/users/marshmallow-code/gists{/gist_id}","starred_url":"https://api.github.com/users/marshmallow-code/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/marshmallow-code/subscriptions","organizations_url":"https://api.github.com/users/marshmallow-code/orgs","repos_url":"https://api.github.com/users/marshmallow-code/repos","events_url":"https://api.github.com/users/marshmallow-code/events{/privacy}","received_events_url":"https://api.github.com/users/marshmallow-code/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/marshmallow-code/marshmallow","description":"A lightweight library for converting complex objects to and from simple Python datatypes.","fork":false,"url":"https://api.github.com/repos/marshmallow-code/marshmallow","forks_url":"https://api.github.com/repos/marshmallow-code/marshmallow/forks","keys_url":"https://api.github.com/repos/marshmallow-code/marshmallow/keys{/key_id}","collaborators_url":"https://api.github.com/repos/marshmallow-code/marshmallow/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/marshmallow-code/marshmallow/teams","hooks_url":"https://api.github.com/repos/marshmallow-code/marshmallow/hooks","issue_events_url":"https://api.github.com/repos/marshmallow-code/marshmallow/issues/events{/number}","events_url":"https://api.github.com/repos/marshmallow-code/marshmallow/events","assignees_url":"https://api.github.com/repos/marshmallow-code/marshmallow/assignees{/user}","branches_url":"https://api.github.com/repos/marshmallow-code/marshmallow/branches{/branch}","tags_url":"https://api.github.com/repos/marshmallow-code/marshmallow/tags","blobs_url":"https://api.github.com/repos/marshmallow-code/marshmallow/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/marshmallow-code/marshmallow/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/marshmallow-code/marshmallow/git/refs{/sha}","trees_url":"https://api.github.com/repos/marshmallow-code/marshmallow/git/trees{/sha}","statuses_url":"https://api.github.com/repos/marshmallow-code/marshmallow/statuses/{sha}","languages_url":"https://api.github.com/repos/marshmallow-code/marshmallow/languages","stargazers_url":"https://api.github.com/repos/marshmallow-code/marshmallow/stargazers","contributors_url":"https://api.github.com/repos/marshmallow-code/marshmallow/contributors","subscribers_url":"https://api.github.com/repos/marshmallow-code/marshmallow/subscribers","subscription_url":"https://api.github.com/repos/marshmallow-code/marshmallow/subscription","commits_url":"https://api.github.com/repos/marshmallow-code/marshmallow/commits{/sha}","git_commits_url":"https://api.github.com/repos/marshmallow-code/marshmallow/git/commits{/sha}","comments_url":"https://api.github.com/repos/marshmallow-code/marshmallow/comments{/number}","issue_comment_url":"https://api.github.com/repos/marshmallow-code/marshmallow/issues/comments{/number}","contents_url":"https://api.github.com/repos/marshmallow-code/marshmallow/contents/{+path}","compare_url":"https://api.github.com/repos/marshmallow-code/marshmallow/compare/{base}...{head}","merges_url":"https://api.github.com/repos/marshmallow-code/marshmallow/merges","archive_url":"https://api.github.com/repos/marshmallow-code/marshmallow/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/marshmallow-code/marshmallow/downloads","issues_url":"https://api.github.com/repos/marshmallow-code/marshmallow/issues{/number}","pulls_url":"https://api.github.com/repos/marshmallow-code/marshmallow/pulls{/number}","milestones_url":"https://api.github.com/repos/marshmallow-code/marshmallow/milestones{/number}","notifications_url":"https://api.github.com/repos/marshmallow-code/marshmallow/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/marshmallow-code/marshmallow/labels{/name}","releases_url":"https://api.github.com/repos/marshmallow-code/marshmallow/releases{/id}","deployments_url":"https://api.github.com/repos/marshmallow-code/marshmallow/deployments","created_at":"2013-11-10T21:32:24Z","updated_at":"2016-11-14T18:47:48Z","pushed_at":"2016-11-15T10:02:02Z","git_url":"git://github.com/marshmallow-code/marshmallow.git","ssh_url":"git@github.com:marshmallow-code/marshmallow.git","clone_url":"https://github.com/marshmallow-code/marshmallow.git","svn_url":"https://github.com/marshmallow-code/marshmallow","homepage":"http://marshmallow.readthedocs.io/","size":2590,"stargazers_count":1352,"watchers_count":1352,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":161,"mirror_url":null,"open_issues_count":72,"forks":161,"open_issues":72,"watchers":1352,"default_branch":"dev"}},"_links":{"self":{"href":"https://api.github.com/repos/marshmallow-code/marshmallow/pulls/548"},"html":{"href":"https://github.com/marshmallow-code/marshmallow/pull/548"},"issue":{"href":"https://api.github.com/repos/marshmallow-code/marshmallow/issues/548"},"comments":{"href":"https://api.github.com/repos/marshmallow-code/marshmallow/issues/548/comments"},"review_comments":{"href":"https://api.github.com/repos/marshmallow-code/marshmallow/pulls/548/comments"},"review_comment":{"href":"https://api.github.com/repos/marshmallow-code/marshmallow/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/marshmallow-code/marshmallow/pulls/548/commits"},"statuses":{"href":"https://api.github.com/repos/marshmallow-code/marshmallow/statuses/baff62c110d88525076d6ba70ecd077762ea54b7"}}}}
{"actor":{"display_login":"sabinem"}}