{"action":"created","issue":{"url":"https://api.github.com/repos/gitpython-developers/GitPython/issues/312","labels_url":"https://api.github.com/repos/gitpython-developers/GitPython/issues/312/labels{/name}","comments_url":"https://api.github.com/repos/gitpython-developers/GitPython/issues/312/comments","events_url":"https://api.github.com/repos/gitpython-developers/GitPython/issues/312/events","html_url":"https://github.com/gitpython-developers/GitPython/issues/312","id":94327103,"number":312,"title":"Document string types used by GitPython","user":{"login":"rholy","id":5390407,"avatar_url":"https://avatars.githubusercontent.com/u/5390407?v=3","gravatar_id":"","url":"https://api.github.com/users/rholy","html_url":"https://github.com/rholy","followers_url":"https://api.github.com/users/rholy/followers","following_url":"https://api.github.com/users/rholy/following{/other_user}","gists_url":"https://api.github.com/users/rholy/gists{/gist_id}","starred_url":"https://api.github.com/users/rholy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rholy/subscriptions","organizations_url":"https://api.github.com/users/rholy/orgs","repos_url":"https://api.github.com/users/rholy/repos","events_url":"https://api.github.com/users/rholy/events{/privacy}","received_events_url":"https://api.github.com/users/rholy/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/gitpython-developers/GitPython/labels/acknowledged","name":"acknowledged","color":"02e10c"}],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/gitpython-developers/GitPython/milestones/10","html_url":"https://github.com/gitpython-developers/GitPython/milestones/v1.0.2%20-%20Fixes","labels_url":"https://api.github.com/repos/gitpython-developers/GitPython/milestones/10/labels","id":1078407,"number":10,"title":"v1.0.2 - Fixes","description":"","creator":{"login":"Byron","id":63622,"avatar_url":"https://avatars.githubusercontent.com/u/63622?v=3","gravatar_id":"","url":"https://api.github.com/users/Byron","html_url":"https://github.com/Byron","followers_url":"https://api.github.com/users/Byron/followers","following_url":"https://api.github.com/users/Byron/following{/other_user}","gists_url":"https://api.github.com/users/Byron/gists{/gist_id}","starred_url":"https://api.github.com/users/Byron/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Byron/subscriptions","organizations_url":"https://api.github.com/users/Byron/orgs","repos_url":"https://api.github.com/users/Byron/repos","events_url":"https://api.github.com/users/Byron/events{/privacy}","received_events_url":"https://api.github.com/users/Byron/received_events","type":"User","site_admin":false},"open_issues":8,"closed_issues":15,"state":"open","created_at":"2015-04-22T07:27:35Z","updated_at":"2015-07-14T07:50:14Z","due_on":null,"closed_at":null},"comments":3,"created_at":"2015-07-10T15:18:09Z","updated_at":"2015-07-14T09:15:31Z","closed_at":null,"body":"I noticed that starting with GitPython 0.3.4 hexadecimal SHAs are no longer `str`s but `unicode`s. Since the expected type is not documented anywhere (assuming that changelog is not a documentation), users have to guess. A wrong guess may lead to errors in programs. E.g. GitPython 0.3.4 + Python 2.7:\r\n\r\n```python\r\n>>> commit.hexsha + '\\xc5\\x99'\r\nTraceback (most recent call last):\r\n  File \"<stdin>\", line 1, in <module>\r\nUnicodeDecodeError: 'ascii' codec can't decode byte 0xc5 in position 0: ordinal not in range(128)\r\n```\r\n\r\n...this used to work before GitPython 0.3.4. This change also complicated writing programs that needs to be compatible with both GitPython < 0.3.4 and GitPython >= 0.3.4."},"comment":{"url":"https://api.github.com/repos/gitpython-developers/GitPython/issues/comments/121175283","html_url":"https://github.com/gitpython-developers/GitPython/issues/312#issuecomment-121175283","issue_url":"https://api.github.com/repos/gitpython-developers/GitPython/issues/312","id":121175283,"user":{"login":"Byron","id":63622,"avatar_url":"https://avatars.githubusercontent.com/u/63622?v=3","gravatar_id":"","url":"https://api.github.com/users/Byron","html_url":"https://github.com/Byron","followers_url":"https://api.github.com/users/Byron/followers","following_url":"https://api.github.com/users/Byron/following{/other_user}","gists_url":"https://api.github.com/users/Byron/gists{/gist_id}","starred_url":"https://api.github.com/users/Byron/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Byron/subscriptions","organizations_url":"https://api.github.com/users/Byron/orgs","repos_url":"https://api.github.com/users/Byron/repos","events_url":"https://api.github.com/users/Byron/events{/privacy}","received_events_url":"https://api.github.com/users/Byron/received_events","type":"User","site_admin":false},"created_at":"2015-07-14T09:15:31Z","updated_at":"2015-07-14T09:15:31Z","body":"Great to hear. From my point of view, I don't think there will ever be a version 2.0 of GitPython, and as Pypi locked me out by simply not maintaining the oauth-based authentication mode, I don't think there will be an additional patch release either.\r\n\r\nThus it's very safe to assume that v1.0.1 on Pypi is the definitive and last release, whereas the master branch on GitHub may contain some fixes that interested parties can install using `pip` for example."}}