{"push_id":814474541,"size":16,"distinct_size":16,"ref":"refs/heads/master","head":"a2db00cc70a3a84a6d18e44ec3cd479ada1b7284","before":"286b102a6c4809fe84ff88b2b2a3de9e975288f3","commits":[{"sha":"c2cc55477e2b66b7bd6db35a59a48ad0afd9a0f3","author":{"email":"a258628049eacac557a914daaa103cd86f47a9d6@linkedin.com","name":"Sheng-Dean Chang"},"message":"Add dummy publish files so that IDE can open a brand new project.","distinct":true,"url":"https://api.github.com/repos/littledot/Permission-Nanny/commits/c2cc55477e2b66b7bd6db35a59a48ad0afd9a0f3"},{"sha":"e0b89bab9f841c11252a818c41f0e3c7f17404a4","author":{"email":"a258628049eacac557a914daaa103cd86f47a9d6@linkedin.com","name":"Sheng-Dean Chang"},"message":"Refactor AppControlActivity to adopt MVP.","distinct":true,"url":"https://api.github.com/repos/littledot/Permission-Nanny/commits/e0b89bab9f841c11252a818c41f0e3c7f17404a4"},{"sha":"b44edaeccceeac39c982b3b54c83a0d849c6e494","author":{"email":"a258628049eacac557a914daaa103cd86f47a9d6@linkedin.com","name":"Sheng-Dean Chang"},"message":"Rename 'PermissionConfig' to 'AppPermission'.\nMove data classes from package 'missioncontrol' to 'data'.\nMake AppPermission immutable.\nUse Objenesis's instantiator strategy when empty constructor is not available.","distinct":true,"url":"https://api.github.com/repos/littledot/Permission-Nanny/commits/b44edaeccceeac39c982b3b54c83a0d849c6e494"},{"sha":"6ee3760b98161451503dd56c10c0f7f51f051bd5","author":{"email":"a258628049eacac557a914daaa103cd86f47a9d6@linkedin.com","name":"Sheng-Dean Chang"},"message":"Fix #65: Remove direct access to SnapDB.","distinct":true,"url":"https://api.github.com/repos/littledot/Permission-Nanny/commits/6ee3760b98161451503dd56c10c0f7f51f051bd5"},{"sha":"1543c4f7907b930d71d4b46330339a9dfff1203c","author":{"email":"a258628049eacac557a914daaa103cd86f47a9d6@linkedin.com","name":"Sheng-Dean Chang"},"message":"Refactor registration of recurring resources to pair with unregister.","distinct":true,"url":"https://api.github.com/repos/littledot/Permission-Nanny/commits/1543c4f7907b930d71d4b46330339a9dfff1203c"},{"sha":"d30ca40b668f60e378465cf10db5974c81261b58","author":{"email":"a258628049eacac557a914daaa103cd86f47a9d6@linkedin.com","name":"Sheng-Dean Chang"},"message":"Fix #60: Send 400s to clients when bad request parameters are given to ongoing requests.","distinct":true,"url":"https://api.github.com/repos/littledot/Permission-Nanny/commits/d30ca40b668f60e378465cf10db5974c81261b58"},{"sha":"83a6aff9acb549864ac7d71a612fc6d6d0b168cc","author":{"email":"a258628049eacac557a914daaa103cd86f47a9d6@linkedin.com","name":"Sheng-Dean Chang"},"message":"Refactor ProxyListener.newResponseIntent() -> okResponse()","distinct":true,"url":"https://api.github.com/repos/littledot/Permission-Nanny/commits/83a6aff9acb549864ac7d71a612fc6d6d0b168cc"},{"sha":"9e2624c382adf2df23182314a2aae7e25823fc95","author":{"email":"a258628049eacac557a914daaa103cd86f47a9d6@linkedin.com","name":"Sheng-Dean Chang"},"message":"Fix #61: Server will send a 408 Request Timeout when clients don't send ACKs for ongoing requests.","distinct":true,"url":"https://api.github.com/repos/littledot/Permission-Nanny/commits/9e2624c382adf2df23182314a2aae7e25823fc95"},{"sha":"8b94a0b9bc67f772359c94b41859eb230754caeb","author":{"email":"a258628049eacac557a914daaa103cd86f47a9d6@linkedin.com","name":"Sheng-Dean Chang"},"message":"Fix ongoing requests' timeout mechanism.","distinct":true,"url":"https://api.github.com/repos/littledot/Permission-Nanny/commits/8b94a0b9bc67f772359c94b41859eb230754caeb"},{"sha":"8e9e63082c32cb13d3d8f955463b233b3dd03ded","author":{"email":"a258628049eacac557a914daaa103cd86f47a9d6@linkedin.com","name":"Sheng-Dean Chang"},"message":"Rename 'recurring' to 'ongoing'.","distinct":true,"url":"https://api.github.com/repos/littledot/Permission-Nanny/commits/8e9e63082c32cb13d3d8f955463b233b3dd03ded"},{"sha":"7a6897a240e40e4bdb4b25cc998648c8f7bd1ebf","author":{"email":"a258628049eacac557a914daaa103cd86f47a9d6@linkedin.com","name":"Sheng-Dean Chang"},"message":"Fix #71: Do not delete permission configs when clients remove permissions from the manifest receiver.","distinct":true,"url":"https://api.github.com/repos/littledot/Permission-Nanny/commits/7a6897a240e40e4bdb4b25cc998648c8f7bd1ebf"},{"sha":"188dcf470abf11a60181660f2d381d9ce2b3c286","author":{"email":"a258628049eacac557a914daaa103cd86f47a9d6@linkedin.com","name":"Sheng-Dean Chang"},"message":"Integrate with Crashlytics.","distinct":true,"url":"https://api.github.com/repos/littledot/Permission-Nanny/commits/188dcf470abf11a60181660f2d381d9ce2b3c286"},{"sha":"8fac2c83b9e82370693cbbc3ee11966003a60913","author":{"email":"a258628049eacac557a914daaa103cd86f47a9d6@linkedin.com","name":"Sheng-Dean Chang"},"message":"Rename 'body' to 'entity'.","distinct":true,"url":"https://api.github.com/repos/littledot/Permission-Nanny/commits/8fac2c83b9e82370693cbbc3ee11966003a60913"},{"sha":"74dc8d8d37d190088718e82bf4deaf8e04655d50","author":{"email":"a258628049eacac557a914daaa103cd86f47a9d6@linkedin.com","name":"Sheng-Dean Chang"},"message":"Return 200 for ongoing requests only after the request has been successfully registered with the appropriate manager.","distinct":true,"url":"https://api.github.com/repos/littledot/Permission-Nanny/commits/74dc8d8d37d190088718e82bf4deaf8e04655d50"},{"sha":"eaf4f1f91201a5f2408fbbdd3cb9f14a1de84efc","author":{"email":"a258628049eacac557a914daaa103cd86f47a9d6@linkedin.com","name":"Sheng-Dean Chang"},"message":"Implement LocationManager's requestLocationUpdates() and requestSingleUpdate().","distinct":true,"url":"https://api.github.com/repos/littledot/Permission-Nanny/commits/eaf4f1f91201a5f2408fbbdd3cb9f14a1de84efc"},{"sha":"a2db00cc70a3a84a6d18e44ec3cd479ada1b7284","author":{"email":"83bd45ce57155c703dd8f3822aa165283fce3df0@gmail.com","name":"Brown Smith"},"message":"Add instructions to prevent keys from being checked into the repository.","distinct":true,"url":"https://api.github.com/repos/littledot/Permission-Nanny/commits/a2db00cc70a3a84a6d18e44ec3cd479ada1b7284"}]}