{"push_id":766391201,"size":75,"distinct_size":1,"ref":"refs/heads/master","head":"7eb681c69549d5d1d600f8adac4bb69944bedb03","before":"876837047ccbae950a223a3bef5c0efa23d599c8","commits":[{"sha":"8cb6d491c0d6707243ee0906447b881953949e7a","author":{"email":"f68de01ff83697c4a297e4c2789def66c17105fa@gmail.com","name":"Emmett Butler"},"message":"start work on async producer\n\noutstanding: this needs to properly batch messages based on configured batch size","distinct":false,"url":"https://api.github.com/repos/Parsely/pykafka/commits/8cb6d491c0d6707243ee0906447b881953949e7a"},{"sha":"626f74c1b00d4d9b889b8928c075ff63c4573867","author":{"email":"f68de01ff83697c4a297e4c2789def66c17105fa@gmail.com","name":"Emmett Butler"},"message":"consolidate OwnedBroker that was not sure why it existed\n\nfix batching","distinct":false,"url":"https://api.github.com/repos/Parsely/pykafka/commits/626f74c1b00d4d9b889b8928c075ff63c4573867"},{"sha":"6ee229cb7eaa70a943bf8eb68c2b3f6c56db6832","author":{"email":"f68de01ff83697c4a297e4c2789def66c17105fa@gmail.com","name":"Emmett Butler"},"message":"add asyncproducer to topic","distinct":false,"url":"https://api.github.com/repos/Parsely/pykafka/commits/6ee229cb7eaa70a943bf8eb68c2b3f6c56db6832"},{"sha":"d0b4633f4813bdce42747ba83f40625e1df8366e","author":{"email":"f68de01ff83697c4a297e4c2789def66c17105fa@gmail.com","name":"Emmett Butler"},"message":"simplify separation between sync and async producer implementations via inheritance","distinct":false,"url":"https://api.github.com/repos/Parsely/pykafka/commits/d0b4633f4813bdce42747ba83f40625e1df8366e"},{"sha":"b6f5f986634090747f02141cff25a9b0393bc781","author":{"email":"f68de01ff83697c4a297e4c2789def66c17105fa@gmail.com","name":"Emmett Butler"},"message":"repair some incorrect diffs, write docs","distinct":false,"url":"https://api.github.com/repos/Parsely/pykafka/commits/b6f5f986634090747f02141cff25a9b0393bc781"},{"sha":"abd9b34253ab29b49ef62fa7be53da4f818d8393","author":{"email":"f68de01ff83697c4a297e4c2789def66c17105fa@gmail.com","name":"Emmett Butler"},"message":"sleep before continue to avoid crazy spinning","distinct":false,"url":"https://api.github.com/repos/Parsely/pykafka/commits/abd9b34253ab29b49ef62fa7be53da4f818d8393"},{"sha":"70782ac5bb2243b58c314d54d541b0d94cbf0830","author":{"email":"f68de01ff83697c4a297e4c2789def66c17105fa@gmail.com","name":"Emmett Butler"},"message":"better name for callback","distinct":false,"url":"https://api.github.com/repos/Parsely/pykafka/commits/70782ac5bb2243b58c314d54d541b0d94cbf0830"},{"sha":"c6e7db45af3a2a03bd34ea5d6dd9c4193ce348fd","author":{"email":"f68de01ff83697c4a297e4c2789def66c17105fa@gmail.com","name":"Emmett Butler"},"message":"duplicate args in async producer for clarity","distinct":false,"url":"https://api.github.com/repos/Parsely/pykafka/commits/c6e7db45af3a2a03bd34ea5d6dd9c4193ce348fd"},{"sha":"7b0b2d02a2523277a832f730fd20e3e82bbd7e2d","author":{"email":"f68de01ff83697c4a297e4c2789def66c17105fa@gmail.com","name":"Emmett Butler"},"message":"use handler queue to take advantage of different parallelism implementations","distinct":false,"url":"https://api.github.com/repos/Parsely/pykafka/commits/7b0b2d02a2523277a832f730fd20e3e82bbd7e2d"},{"sha":"6e69dc259c9223e20d332746987dfa5ff6531bdc","author":{"email":"f68de01ff83697c4a297e4c2789def66c17105fa@gmail.com","name":"Emmett Butler"},"message":"don't explode when max retry count is reached","distinct":false,"url":"https://api.github.com/repos/Parsely/pykafka/commits/6e69dc259c9223e20d332746987dfa5ff6531bdc"},{"sha":"d8b9944c818e84132160db699dfbe3a7ce9030c8","author":{"email":"f68de01ff83697c4a297e4c2789def66c17105fa@gmail.com","name":"Emmett Butler"},"message":"block until queue has space available","distinct":false,"url":"https://api.github.com/repos/Parsely/pykafka/commits/d8b9944c818e84132160db699dfbe3a7ce9030c8"},{"sha":"0c83a776bf6058ad08fa622fd72174cd3cd50087","author":{"email":"f68de01ff83697c4a297e4c2789def66c17105fa@gmail.com","name":"Emmett Butler"},"message":"combine try/except blocks","distinct":false,"url":"https://api.github.com/repos/Parsely/pykafka/commits/0c83a776bf6058ad08fa622fd72174cd3cd50087"},{"sha":"cff64efbed3be61151fea358c86c6023fa23298e","author":{"email":"0ccc0848a69a0c9f60128cfc9721e973b7acd43f@parsely.com","name":"Keith Bourgoin"},"message":"leader, not leader.id","distinct":false,"url":"https://api.github.com/repos/Parsely/pykafka/commits/cff64efbed3be61151fea358c86c6023fa23298e"},{"sha":"23e3c59c662f51df7347a0dd1436984ff40dafbf","author":{"email":"f68de01ff83697c4a297e4c2789def66c17105fa@gmail.com","name":"Emmett Butler"},"message":"rethink queueing design to allow smarter batching","distinct":false,"url":"https://api.github.com/repos/Parsely/pykafka/commits/23e3c59c662f51df7347a0dd1436984ff40dafbf"},{"sha":"cdb141c7adc85f471bfb0a0fe25a676521aba459","author":{"email":"f68de01ff83697c4a297e4c2789def66c17105fa@gmail.com","name":"Emmett Butler"},"message":"set up basic thread interactions using events","distinct":false,"url":"https://api.github.com/repos/Parsely/pykafka/commits/cdb141c7adc85f471bfb0a0fe25a676521aba459"},{"sha":"83dd4271941ce7fc59bb2e46dbb4490766e02084","author":{"email":"f68de01ff83697c4a297e4c2789def66c17105fa@gmail.com","name":"Emmett Butler"},"message":"fix some naming, add some explanatory comments","distinct":false,"url":"https://api.github.com/repos/Parsely/pykafka/commits/83dd4271941ce7fc59bb2e46dbb4490766e02084"},{"sha":"eba9150fc12afd65af623541f1dae881c6433194","author":{"email":"f68de01ff83697c4a297e4c2789def66c17105fa@gmail.com","name":"Emmett Butler"},"message":"support a few configuration kwargs that help flesh out the design a bit","distinct":false,"url":"https://api.github.com/repos/Parsely/pykafka/commits/eba9150fc12afd65af623541f1dae881c6433194"},{"sha":"271d4be9537811524c4a6cdd00bdc8306b5a4e0f","author":{"email":"f68de01ff83697c4a297e4c2789def66c17105fa@gmail.com","name":"Emmett Butler"},"message":"no more old-style class;","distinct":false,"url":"https://api.github.com/repos/Parsely/pykafka/commits/271d4be9537811524c4a6cdd00bdc8306b5a4e0f"},{"sha":"1979c7cd8f0966ff7ca5d9d00106ffd0e7991a54","author":{"email":"f68de01ff83697c4a297e4c2789def66c17105fa@gmail.com","name":"Emmett Butler"},"message":"support the context management protocol using a counting semaphore that allows the main thread to block until all produce()d messages have been sent","distinct":false,"url":"https://api.github.com/repos/Parsely/pykafka/commits/1979c7cd8f0966ff7ca5d9d00106ffd0e7991a54"},{"sha":"02917bf766aabeabffab0b119176732e7b4bf107","author":{"email":"f68de01ff83697c4a297e4c2789def66c17105fa@gmail.com","name":"Emmett Butler"},"message":"revise hacky use of a semaphore to something a bit smarter\n\ndocumentation","distinct":false,"url":"https://api.github.com/repos/Parsely/pykafka/commits/02917bf766aabeabffab0b119176732e7b4bf107"}]}