{"action":"created","issue":{"url":"https://api.github.com/repos/prometheus/client_python/issues/77","repository_url":"https://api.github.com/repos/prometheus/client_python","labels_url":"https://api.github.com/repos/prometheus/client_python/issues/77/labels{/name}","comments_url":"https://api.github.com/repos/prometheus/client_python/issues/77/comments","events_url":"https://api.github.com/repos/prometheus/client_python/issues/77/events","html_url":"https://github.com/prometheus/client_python/issues/77","id":148425445,"number":77,"title":"Decorators break function signatures","user":{"login":"hynek","id":41240,"avatar_url":"https://avatars.githubusercontent.com/u/41240?v=3","gravatar_id":"","url":"https://api.github.com/users/hynek","html_url":"https://github.com/hynek","followers_url":"https://api.github.com/users/hynek/followers","following_url":"https://api.github.com/users/hynek/following{/other_user}","gists_url":"https://api.github.com/users/hynek/gists{/gist_id}","starred_url":"https://api.github.com/users/hynek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hynek/subscriptions","organizations_url":"https://api.github.com/users/hynek/orgs","repos_url":"https://api.github.com/users/hynek/repos","events_url":"https://api.github.com/users/hynek/events{/privacy}","received_events_url":"https://api.github.com/users/hynek/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":6,"created_at":"2016-04-14T17:07:17Z","updated_at":"2016-04-18T10:38:31Z","closed_at":null,"body":"The client does a common anti-pattern of doing a closure with `*args,**kwargs` but that sadly breaks introspection of wrapped methods.\r\n\r\nThis is a concrete problem e.g. if you wrap Pyramid views that get different arguments depending on how many arguments are present (either `context, request` or just `request`).\r\n\r\nYou can find more information on this in these blog posts: https://github.com/GrahamDumpleton/wrapt/tree/master/blog\r\n\r\nSolutions to it is to either use or copy/paste from the [wrapt](http://wrapt.readthedocs.org/en/latest/) (better) or [decorator](http://pythonhosted.org/decorator/documentation.html) (OK-ish) packages.\r\n"},"comment":{"url":"https://api.github.com/repos/prometheus/client_python/issues/comments/211321800","html_url":"https://github.com/prometheus/client_python/issues/77#issuecomment-211321800","issue_url":"https://api.github.com/repos/prometheus/client_python/issues/77","id":211321800,"user":{"login":"hynek","id":41240,"avatar_url":"https://avatars.githubusercontent.com/u/41240?v=3","gravatar_id":"","url":"https://api.github.com/users/hynek","html_url":"https://github.com/hynek","followers_url":"https://api.github.com/users/hynek/followers","following_url":"https://api.github.com/users/hynek/following{/other_user}","gists_url":"https://api.github.com/users/hynek/gists{/gist_id}","starred_url":"https://api.github.com/users/hynek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hynek/subscriptions","organizations_url":"https://api.github.com/users/hynek/orgs","repos_url":"https://api.github.com/users/hynek/repos","events_url":"https://api.github.com/users/hynek/events{/privacy}","received_events_url":"https://api.github.com/users/hynek/received_events","type":"User","site_admin":false},"created_at":"2016-04-18T10:38:31Z","updated_at":"2016-04-18T10:38:31Z","body":"I‘m fine with if you just skip the test on OS X (and mostly likely all BSDs? at least FreeBSD breaks too).\r\n\r\nI just need a way to run tests locally.  Once that’s fixed, I can do the tox/Travis CI/codecov integration for you too if you wish.  By not being able to run the test suite on all BSDs you’re limiting the set of contributors quite a bit."}}