{"action":"created","issue":{"url":"https://api.github.com/repos/uqfoundation/dill/issues/95","labels_url":"https://api.github.com/repos/uqfoundation/dill/issues/95/labels{/name}","comments_url":"https://api.github.com/repos/uqfoundation/dill/issues/95/comments","events_url":"https://api.github.com/repos/uqfoundation/dill/issues/95/events","html_url":"https://github.com/uqfoundation/dill/issues/95","id":75439892,"number":95,"title":"Partial not picklable?","user":{"login":"mrocklin","id":306380,"avatar_url":"https://avatars.githubusercontent.com/u/306380?v=3","gravatar_id":"","url":"https://api.github.com/users/mrocklin","html_url":"https://github.com/mrocklin","followers_url":"https://api.github.com/users/mrocklin/followers","following_url":"https://api.github.com/users/mrocklin/following{/other_user}","gists_url":"https://api.github.com/users/mrocklin/gists{/gist_id}","starred_url":"https://api.github.com/users/mrocklin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mrocklin/subscriptions","organizations_url":"https://api.github.com/users/mrocklin/orgs","repos_url":"https://api.github.com/users/mrocklin/repos","events_url":"https://api.github.com/users/mrocklin/events{/privacy}","received_events_url":"https://api.github.com/users/mrocklin/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-05-12T03:09:47Z","updated_at":"2015-05-12T03:27:59Z","closed_at":null,"body":"The following surprised me. \r\n\r\n```python\r\nIn [1]: from functools import partial\r\n\r\nIn [2]: from operator import add\r\n\r\nIn [3]: import dill\r\n\r\nIn [4]: dill.loads(dill.dumps(partial(add, 1)))\r\nTypeError: type object argument after ** must be a mapping, not NoneType\r\n\r\n\r\n> /home/mrocklin/Software/anaconda/lib/python2.7/pickle.py(1133)load_reduce()\r\n   1132         func = stack[-1]\r\n-> 1133         value = func(*args)\r\n   1134         stack[-1] = value\r\n\r\nipdb> print func\r\n<function _create_ftype at 0x7fc515a16488>\r\nipdb> print args\r\n(<type 'functools.partial'>, <built-in function add>, (1,), None)\r\nipdb> \r\n```\r\n\r\nThis is with 0.2.2"},"comment":{"url":"https://api.github.com/repos/uqfoundation/dill/issues/comments/101116052","html_url":"https://github.com/uqfoundation/dill/issues/95#issuecomment-101116052","issue_url":"https://api.github.com/repos/uqfoundation/dill/issues/95","id":101116052,"user":{"login":"mrocklin","id":306380,"avatar_url":"https://avatars.githubusercontent.com/u/306380?v=3","gravatar_id":"","url":"https://api.github.com/users/mrocklin","html_url":"https://github.com/mrocklin","followers_url":"https://api.github.com/users/mrocklin/followers","following_url":"https://api.github.com/users/mrocklin/following{/other_user}","gists_url":"https://api.github.com/users/mrocklin/gists{/gist_id}","starred_url":"https://api.github.com/users/mrocklin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mrocklin/subscriptions","organizations_url":"https://api.github.com/users/mrocklin/orgs","repos_url":"https://api.github.com/users/mrocklin/repos","events_url":"https://api.github.com/users/mrocklin/events{/privacy}","received_events_url":"https://api.github.com/users/mrocklin/received_events","type":"User","site_admin":false},"created_at":"2015-05-12T03:27:59Z","updated_at":"2015-05-12T03:27:59Z","body":"Well, in `dill`'s defense I'm fairly certain that this is a recent bug; I could swear that it has handled partials in the past.  \r\n\r\nTo the broader point though it would be nice to see a comprehensive and somewhat unbiased shootout between the two to help people decide between them."}}