{"push_id":1304286940,"size":4,"distinct_size":4,"ref":"refs/heads/master","head":"f2e46d5d2d8c02c90de0f933e9a0c71a3c24e41e","before":"784bfcd22136fb43dd8f0ae0ea5eab7b127892e7","commits":[{"sha":"d0fe7ec0716538109876648cb14fd5222e10bd89","author":{"name":"Matt Snider","email":"ab3a11676f2b6c0e55bd8144c9750a52ce42c1ad@alum.utoronto.ca"},"message":"Inherit from bytes in AuthMethod enum to allow concatenation without Enum.value","distinct":true,"url":"https://api.github.com/repos/matt-snider/socks5/commits/d0fe7ec0716538109876648cb14fd5222e10bd89"},{"sha":"374281d0124fea4d7f96fabc0f51c14966525305","author":{"name":"Matt Snider","email":"ab3a11676f2b6c0e55bd8144c9750a52ce42c1ad@alum.utoronto.ca"},"message":"Extract request reading logic to protocol.py","distinct":true,"url":"https://api.github.com/repos/matt-snider/socks5/commits/374281d0124fea4d7f96fabc0f51c14966525305"},{"sha":"56e06c618cb0ee0e8c12a54b4b0f2a5e9bf5569b","author":{"name":"Matt Snider","email":"ab3a11676f2b6c0e55bd8144c9750a52ce42c1ad@alum.utoronto.ca"},"message":"Clean up error handling and response writing","distinct":true,"url":"https://api.github.com/repos/matt-snider/socks5/commits/56e06c618cb0ee0e8c12a54b4b0f2a5e9bf5569b"},{"sha":"f2e46d5d2d8c02c90de0f933e9a0c71a3c24e41e","author":{"name":"Matt Snider","email":"ab3a11676f2b6c0e55bd8144c9750a52ce42c1ad@alum.utoronto.ca"},"message":"Move exceptions to exceptions.py and remove unneeded classes","distinct":true,"url":"https://api.github.com/repos/matt-snider/socks5/commits/f2e46d5d2d8c02c90de0f933e9a0c71a3c24e41e"}]}
{"actor":{"display_login":"matt-snider"}}