{"action":"created","comment":{"url":"https://api.github.com/repos/matplotlib/matplotlib/pulls/comments/218554139","pull_request_review_id":156519176,"id":218554139,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIxODU1NDEzOQ==","diff_hunk":"@@ -221,9 +217,11 @@ def wrapper(*args, **kwargs):\n \n         old_doc = textwrap.dedent(old_doc or '').strip('\\n')\n         message = message.strip()\n-        new_doc = (('\\n.. deprecated:: %(since)s'\n-                    '\\n    %(message)s\\n\\n' %\n-                    {'since': since, 'message': message}) + old_doc)\n+        new_doc = ('.. deprecated:: {}\\n'","path":"lib/matplotlib/cbook/deprecation.py","position":59,"original_position":59,"commit_id":"8abe9f61d31d84c881197fe8c71b529d823486c7","original_commit_id":"8abe9f61d31d84c881197fe8c71b529d823486c7","user":{"login":"timhoffm","id":2836374,"node_id":"MDQ6VXNlcjI4MzYzNzQ=","avatar_url":"https://avatars1.githubusercontent.com/u/2836374?v=4","gravatar_id":"","url":"https://api.github.com/users/timhoffm","html_url":"https://github.com/timhoffm","followers_url":"https://api.github.com/users/timhoffm/followers","following_url":"https://api.github.com/users/timhoffm/following{/other_user}","gists_url":"https://api.github.com/users/timhoffm/gists{/gist_id}","starred_url":"https://api.github.com/users/timhoffm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timhoffm/subscriptions","organizations_url":"https://api.github.com/users/timhoffm/orgs","repos_url":"https://api.github.com/users/timhoffm/repos","events_url":"https://api.github.com/users/timhoffm/events{/privacy}","received_events_url":"https://api.github.com/users/timhoffm/received_events","type":"User","site_admin":false},"body":"I'd rather keep named placeholders, i.e. `{since}`.\r\n\r\nWhen do we require Python 3.6 so that we can use f-strings? 😏 So long, I'd take the `.format(since=since, ...)` workaround.\r\n\r\n","created_at":"2018-09-18T18:56:37Z","updated_at":"2018-09-18T18:56:43Z","html_url":"https://github.com/matplotlib/matplotlib/pull/12151#discussion_r218554139","pull_request_url":"https://api.github.com/repos/matplotlib/matplotlib/pulls/12151","author_association":"MEMBER","_links":{"self":{"href":"https://api.github.com/repos/matplotlib/matplotlib/pulls/comments/218554139"},"html":{"href":"https://github.com/matplotlib/matplotlib/pull/12151#discussion_r218554139"},"pull_request":{"href":"https://api.github.com/repos/matplotlib/matplotlib/pulls/12151"}}},"pull_request":{"url":"https://api.github.com/repos/matplotlib/matplotlib/pulls/12151","id":216256349,"node_id":"MDExOlB1bGxSZXF1ZXN0MjE2MjU2MzQ5","html_url":"https://github.com/matplotlib/matplotlib/pull/12151","diff_url":"https://github.com/matplotlib/matplotlib/pull/12151.diff","patch_url":"https://github.com/matplotlib/matplotlib/pull/12151.patch","issue_url":"https://api.github.com/repos/matplotlib/matplotlib/issues/12151","number":12151,"state":"open","locked":false,"title":"Don't pretend @deprecated applies to classmethods.","user":{"login":"anntzer","id":1322974,"node_id":"MDQ6VXNlcjEzMjI5NzQ=","avatar_url":"https://avatars0.githubusercontent.com/u/1322974?v=4","gravatar_id":"","url":"https://api.github.com/users/anntzer","html_url":"https://github.com/anntzer","followers_url":"https://api.github.com/users/anntzer/followers","following_url":"https://api.github.com/users/anntzer/following{/other_user}","gists_url":"https://api.github.com/users/anntzer/gists{/gist_id}","starred_url":"https://api.github.com/users/anntzer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/anntzer/subscriptions","organizations_url":"https://api.github.com/users/anntzer/orgs","repos_url":"https://api.github.com/users/anntzer/repos","events_url":"https://api.github.com/users/anntzer/events{/privacy}","received_events_url":"https://api.github.com/users/anntzer/received_events","type":"User","site_admin":false},"body":"The `@deprecated` decorator has a branch for handling deprecation of\r\nclassmethods, but that won't ever work because we start by getting\r\nthe `__name__` attribute on the object, which raises an AttributeError\r\non classmethods.\r\n\r\nThis could be fixed by fetching `obj.__func__.__name__` instead, but\r\ngiven that one can as well put the `@deprecated` decorator *under* the\r\n`@classmethod` decorator (so that it sees the underlying function), we\r\ncan just remove that non-functioning code.\r\n\r\nAlso switch some docstring formatting to str.format.\r\n\r\n## PR Summary\r\n\r\n## PR Checklist\r\n\r\n- [ ] Has Pytest style unit tests\r\n- [ ] Code is [Flake 8](http://flake8.pycqa.org/en/latest/) compliant\r\n- [ ] New features are documented, with examples if plot related\r\n- [ ] Documentation is sphinx and numpydoc compliant\r\n- [ ] Added an entry to doc/users/next_whats_new/ if major new feature (follow instructions in README.rst there)\r\n- [ ] Documented in doc/api/api_changes.rst if API changed in a backward-incompatible way\r\n\r\n<!--\r\nThank you so much for your PR!  To help us review your contribution, please\r\nconsider the following points:\r\n\r\n- A development guide is available at https://matplotlib.org/devdocs/devel/index.html.\r\n\r\n- Help with git and github is available at\r\n  https://matplotlib.org/devel/gitwash/development_workflow.html.\r\n\r\n- Do not create the PR out of master, but out of a separate branch.\r\n\r\n- The PR title should summarize the changes, for example \"Raise ValueError on\r\n  non-numeric input to set_xlim\".  Avoid non-descriptive titles such as\r\n  \"Addresses issue #8576\".\r\n\r\n- The summary should provide at least 1-2 sentences describing the pull request\r\n  in detail (Why is this change required?  What problem does it solve?) and\r\n  link to any relevant issues.\r\n\r\n- If you are contributing fixes to docstrings, please pay attention to\r\n  http://matplotlib.org/devel/documenting_mpl.html#formatting.  In particular,\r\n  note the difference between using single backquotes, double backquotes, and\r\n  asterisks in the markup.\r\n\r\nWe understand that PRs can sometimes be overwhelming, especially as the\r\nreviews start coming in.  Please let us know if the reviews are unclear or\r\nthe recommended next step seems overly demanding, if you would like help in\r\naddressing a reviewer's comments, or if you have been waiting too long to hear\r\nback on your PR.\r\n-->\r\n","created_at":"2018-09-18T10:21:24Z","updated_at":"2018-09-18T18:56:43Z","closed_at":null,"merged_at":null,"merge_commit_sha":"8b2614617b3da61d2f08fdbfbb40ab672c1f97dc","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":{"url":"https://api.github.com/repos/matplotlib/matplotlib/milestones/35","html_url":"https://github.com/matplotlib/matplotlib/milestone/35","labels_url":"https://api.github.com/repos/matplotlib/matplotlib/milestones/35/labels","id":3382328,"node_id":"MDk6TWlsZXN0b25lMzM4MjMyOA==","number":35,"title":"v3.1","description":"","creator":{"login":"tacaswell","id":199813,"node_id":"MDQ6VXNlcjE5OTgxMw==","avatar_url":"https://avatars3.githubusercontent.com/u/199813?v=4","gravatar_id":"","url":"https://api.github.com/users/tacaswell","html_url":"https://github.com/tacaswell","followers_url":"https://api.github.com/users/tacaswell/followers","following_url":"https://api.github.com/users/tacaswell/following{/other_user}","gists_url":"https://api.github.com/users/tacaswell/gists{/gist_id}","starred_url":"https://api.github.com/users/tacaswell/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tacaswell/subscriptions","organizations_url":"https://api.github.com/users/tacaswell/orgs","repos_url":"https://api.github.com/users/tacaswell/repos","events_url":"https://api.github.com/users/tacaswell/events{/privacy}","received_events_url":"https://api.github.com/users/tacaswell/received_events","type":"User","site_admin":false},"open_issues":254,"closed_issues":101,"state":"open","created_at":"2018-05-29T02:12:40Z","updated_at":"2018-09-18T18:01:25Z","due_on":null,"closed_at":null},"commits_url":"https://api.github.com/repos/matplotlib/matplotlib/pulls/12151/commits","review_comments_url":"https://api.github.com/repos/matplotlib/matplotlib/pulls/12151/comments","review_comment_url":"https://api.github.com/repos/matplotlib/matplotlib/pulls/comments{/number}","comments_url":"https://api.github.com/repos/matplotlib/matplotlib/issues/12151/comments","statuses_url":"https://api.github.com/repos/matplotlib/matplotlib/statuses/8abe9f61d31d84c881197fe8c71b529d823486c7","head":{"label":"anntzer:classmethod-deprecation","ref":"classmethod-deprecation","sha":"8abe9f61d31d84c881197fe8c71b529d823486c7","user":{"login":"anntzer","id":1322974,"node_id":"MDQ6VXNlcjEzMjI5NzQ=","avatar_url":"https://avatars0.githubusercontent.com/u/1322974?v=4","gravatar_id":"","url":"https://api.github.com/users/anntzer","html_url":"https://github.com/anntzer","followers_url":"https://api.github.com/users/anntzer/followers","following_url":"https://api.github.com/users/anntzer/following{/other_user}","gists_url":"https://api.github.com/users/anntzer/gists{/gist_id}","starred_url":"https://api.github.com/users/anntzer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/anntzer/subscriptions","organizations_url":"https://api.github.com/users/anntzer/orgs","repos_url":"https://api.github.com/users/anntzer/repos","events_url":"https://api.github.com/users/anntzer/events{/privacy}","received_events_url":"https://api.github.com/users/anntzer/received_events","type":"User","site_admin":false},"repo":{"id":7439715,"node_id":"MDEwOlJlcG9zaXRvcnk3NDM5NzE1","name":"matplotlib","full_name":"anntzer/matplotlib","private":false,"owner":{"login":"anntzer","id":1322974,"node_id":"MDQ6VXNlcjEzMjI5NzQ=","avatar_url":"https://avatars0.githubusercontent.com/u/1322974?v=4","gravatar_id":"","url":"https://api.github.com/users/anntzer","html_url":"https://github.com/anntzer","followers_url":"https://api.github.com/users/anntzer/followers","following_url":"https://api.github.com/users/anntzer/following{/other_user}","gists_url":"https://api.github.com/users/anntzer/gists{/gist_id}","starred_url":"https://api.github.com/users/anntzer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/anntzer/subscriptions","organizations_url":"https://api.github.com/users/anntzer/orgs","repos_url":"https://api.github.com/users/anntzer/repos","events_url":"https://api.github.com/users/anntzer/events{/privacy}","received_events_url":"https://api.github.com/users/anntzer/received_events","type":"User","site_admin":false},"html_url":"https://github.com/anntzer/matplotlib","description":null,"fork":true,"url":"https://api.github.com/repos/anntzer/matplotlib","forks_url":"https://api.github.com/repos/anntzer/matplotlib/forks","keys_url":"https://api.github.com/repos/anntzer/matplotlib/keys{/key_id}","collaborators_url":"https://api.github.com/repos/anntzer/matplotlib/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/anntzer/matplotlib/teams","hooks_url":"https://api.github.com/repos/anntzer/matplotlib/hooks","issue_events_url":"https://api.github.com/repos/anntzer/matplotlib/issues/events{/number}","events_url":"https://api.github.com/repos/anntzer/matplotlib/events","assignees_url":"https://api.github.com/repos/anntzer/matplotlib/assignees{/user}","branches_url":"https://api.github.com/repos/anntzer/matplotlib/branches{/branch}","tags_url":"https://api.github.com/repos/anntzer/matplotlib/tags","blobs_url":"https://api.github.com/repos/anntzer/matplotlib/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/anntzer/matplotlib/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/anntzer/matplotlib/git/refs{/sha}","trees_url":"https://api.github.com/repos/anntzer/matplotlib/git/trees{/sha}","statuses_url":"https://api.github.com/repos/anntzer/matplotlib/statuses/{sha}","languages_url":"https://api.github.com/repos/anntzer/matplotlib/languages","stargazers_url":"https://api.github.com/repos/anntzer/matplotlib/stargazers","contributors_url":"https://api.github.com/repos/anntzer/matplotlib/contributors","subscribers_url":"https://api.github.com/repos/anntzer/matplotlib/subscribers","subscription_url":"https://api.github.com/repos/anntzer/matplotlib/subscription","commits_url":"https://api.github.com/repos/anntzer/matplotlib/commits{/sha}","git_commits_url":"https://api.github.com/repos/anntzer/matplotlib/git/commits{/sha}","comments_url":"https://api.github.com/repos/anntzer/matplotlib/comments{/number}","issue_comment_url":"https://api.github.com/repos/anntzer/matplotlib/issues/comments{/number}","contents_url":"https://api.github.com/repos/anntzer/matplotlib/contents/{+path}","compare_url":"https://api.github.com/repos/anntzer/matplotlib/compare/{base}...{head}","merges_url":"https://api.github.com/repos/anntzer/matplotlib/merges","archive_url":"https://api.github.com/repos/anntzer/matplotlib/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/anntzer/matplotlib/downloads","issues_url":"https://api.github.com/repos/anntzer/matplotlib/issues{/number}","pulls_url":"https://api.github.com/repos/anntzer/matplotlib/pulls{/number}","milestones_url":"https://api.github.com/repos/anntzer/matplotlib/milestones{/number}","notifications_url":"https://api.github.com/repos/anntzer/matplotlib/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/anntzer/matplotlib/labels{/name}","releases_url":"https://api.github.com/repos/anntzer/matplotlib/releases{/id}","deployments_url":"https://api.github.com/repos/anntzer/matplotlib/deployments","created_at":"2013-01-04T12:08:11Z","updated_at":"2018-09-17T16:22:30Z","pushed_at":"2018-09-18T18:42:11Z","git_url":"git://github.com/anntzer/matplotlib.git","ssh_url":"git@github.com:anntzer/matplotlib.git","clone_url":"https://github.com/anntzer/matplotlib.git","svn_url":"https://github.com/anntzer/matplotlib","homepage":"","size":334602,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1,"mirror_url":null,"archived":false,"open_issues_count":0,"license":null,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"matplotlib:master","ref":"master","sha":"ef04ad9b040098f4bca4550339f7e65083049d8f","user":{"login":"matplotlib","id":215947,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIxNTk0Nw==","avatar_url":"https://avatars0.githubusercontent.com/u/215947?v=4","gravatar_id":"","url":"https://api.github.com/users/matplotlib","html_url":"https://github.com/matplotlib","followers_url":"https://api.github.com/users/matplotlib/followers","following_url":"https://api.github.com/users/matplotlib/following{/other_user}","gists_url":"https://api.github.com/users/matplotlib/gists{/gist_id}","starred_url":"https://api.github.com/users/matplotlib/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matplotlib/subscriptions","organizations_url":"https://api.github.com/users/matplotlib/orgs","repos_url":"https://api.github.com/users/matplotlib/repos","events_url":"https://api.github.com/users/matplotlib/events{/privacy}","received_events_url":"https://api.github.com/users/matplotlib/received_events","type":"Organization","site_admin":false},"repo":{"id":1385122,"node_id":"MDEwOlJlcG9zaXRvcnkxMzg1MTIy","name":"matplotlib","full_name":"matplotlib/matplotlib","private":false,"owner":{"login":"matplotlib","id":215947,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIxNTk0Nw==","avatar_url":"https://avatars0.githubusercontent.com/u/215947?v=4","gravatar_id":"","url":"https://api.github.com/users/matplotlib","html_url":"https://github.com/matplotlib","followers_url":"https://api.github.com/users/matplotlib/followers","following_url":"https://api.github.com/users/matplotlib/following{/other_user}","gists_url":"https://api.github.com/users/matplotlib/gists{/gist_id}","starred_url":"https://api.github.com/users/matplotlib/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matplotlib/subscriptions","organizations_url":"https://api.github.com/users/matplotlib/orgs","repos_url":"https://api.github.com/users/matplotlib/repos","events_url":"https://api.github.com/users/matplotlib/events{/privacy}","received_events_url":"https://api.github.com/users/matplotlib/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/matplotlib/matplotlib","description":"matplotlib: plotting with Python","fork":false,"url":"https://api.github.com/repos/matplotlib/matplotlib","forks_url":"https://api.github.com/repos/matplotlib/matplotlib/forks","keys_url":"https://api.github.com/repos/matplotlib/matplotlib/keys{/key_id}","collaborators_url":"https://api.github.com/repos/matplotlib/matplotlib/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/matplotlib/matplotlib/teams","hooks_url":"https://api.github.com/repos/matplotlib/matplotlib/hooks","issue_events_url":"https://api.github.com/repos/matplotlib/matplotlib/issues/events{/number}","events_url":"https://api.github.com/repos/matplotlib/matplotlib/events","assignees_url":"https://api.github.com/repos/matplotlib/matplotlib/assignees{/user}","branches_url":"https://api.github.com/repos/matplotlib/matplotlib/branches{/branch}","tags_url":"https://api.github.com/repos/matplotlib/matplotlib/tags","blobs_url":"https://api.github.com/repos/matplotlib/matplotlib/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/matplotlib/matplotlib/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/matplotlib/matplotlib/git/refs{/sha}","trees_url":"https://api.github.com/repos/matplotlib/matplotlib/git/trees{/sha}","statuses_url":"https://api.github.com/repos/matplotlib/matplotlib/statuses/{sha}","languages_url":"https://api.github.com/repos/matplotlib/matplotlib/languages","stargazers_url":"https://api.github.com/repos/matplotlib/matplotlib/stargazers","contributors_url":"https://api.github.com/repos/matplotlib/matplotlib/contributors","subscribers_url":"https://api.github.com/repos/matplotlib/matplotlib/subscribers","subscription_url":"https://api.github.com/repos/matplotlib/matplotlib/subscription","commits_url":"https://api.github.com/repos/matplotlib/matplotlib/commits{/sha}","git_commits_url":"https://api.github.com/repos/matplotlib/matplotlib/git/commits{/sha}","comments_url":"https://api.github.com/repos/matplotlib/matplotlib/comments{/number}","issue_comment_url":"https://api.github.com/repos/matplotlib/matplotlib/issues/comments{/number}","contents_url":"https://api.github.com/repos/matplotlib/matplotlib/contents/{+path}","compare_url":"https://api.github.com/repos/matplotlib/matplotlib/compare/{base}...{head}","merges_url":"https://api.github.com/repos/matplotlib/matplotlib/merges","archive_url":"https://api.github.com/repos/matplotlib/matplotlib/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/matplotlib/matplotlib/downloads","issues_url":"https://api.github.com/repos/matplotlib/matplotlib/issues{/number}","pulls_url":"https://api.github.com/repos/matplotlib/matplotlib/pulls{/number}","milestones_url":"https://api.github.com/repos/matplotlib/matplotlib/milestones{/number}","notifications_url":"https://api.github.com/repos/matplotlib/matplotlib/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/matplotlib/matplotlib/labels{/name}","releases_url":"https://api.github.com/repos/matplotlib/matplotlib/releases{/id}","deployments_url":"https://api.github.com/repos/matplotlib/matplotlib/deployments","created_at":"2011-02-19T03:17:12Z","updated_at":"2018-09-18T17:37:24Z","pushed_at":"2018-09-18T17:49:22Z","git_url":"git://github.com/matplotlib/matplotlib.git","ssh_url":"git@github.com:matplotlib/matplotlib.git","clone_url":"https://github.com/matplotlib/matplotlib.git","svn_url":"https://github.com/matplotlib/matplotlib","homepage":"http://matplotlib.org/","size":334123,"stargazers_count":7916,"watchers_count":7916,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":3636,"mirror_url":null,"archived":false,"open_issues_count":1401,"license":null,"forks":3636,"open_issues":1401,"watchers":7916,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/matplotlib/matplotlib/pulls/12151"},"html":{"href":"https://github.com/matplotlib/matplotlib/pull/12151"},"issue":{"href":"https://api.github.com/repos/matplotlib/matplotlib/issues/12151"},"comments":{"href":"https://api.github.com/repos/matplotlib/matplotlib/issues/12151/comments"},"review_comments":{"href":"https://api.github.com/repos/matplotlib/matplotlib/pulls/12151/comments"},"review_comment":{"href":"https://api.github.com/repos/matplotlib/matplotlib/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/matplotlib/matplotlib/pulls/12151/commits"},"statuses":{"href":"https://api.github.com/repos/matplotlib/matplotlib/statuses/8abe9f61d31d84c881197fe8c71b529d823486c7"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"timhoffm"}}