{"push_id":930656704,"size":13,"distinct_size":5,"ref":"refs/heads/shalter/lock-write","head":"85269b4da3b5924364887e0200087de4047db21b","before":"aa495480a2360ee4e4e2e106d8f98c65aa109f57","commits":[{"sha":"afe944c053c6c127623f5996c19a99e9fdd1f4ad","author":{"email":"305e969679be75c96765044cabb8eab5f0b130bf@illyriad.co.uk","name":"Ben Adams"},"message":"Simplify SocketInput, remove locks, only use pooled blocks","distinct":false,"url":"https://api.github.com/repos/aspnet/KestrelHttpServer/commits/afe944c053c6c127623f5996c19a99e9fdd1f4ad"},{"sha":"cf77efc2ff82c40233b0737d38751171db187e43","author":{"email":"305e969679be75c96765044cabb8eab5f0b130bf@illyriad.co.uk","name":"Ben Adams"},"message":"Fast path pre-completed Input reads","distinct":false,"url":"https://api.github.com/repos/aspnet/KestrelHttpServer/commits/cf77efc2ff82c40233b0737d38751171db187e43"},{"sha":"f3a39d98dabcef49970aaad909432e197ddd66ed","author":{"email":"14c5c4fd52f930cfb84eb1882a56d9ac8231d823@gmail.com","name":"Stephen Halter"},"message":"Merge branch 'benaadams/socket-input' into dev","distinct":false,"url":"https://api.github.com/repos/aspnet/KestrelHttpServer/commits/f3a39d98dabcef49970aaad909432e197ddd66ed"},{"sha":"b63dd40efbb1a57ea1fd102d97e42650a24f6987","author":{"email":"14c5c4fd52f930cfb84eb1882a56d9ac8231d823@gmail.com","name":"Stephen Halter"},"message":"Protect SocketInput against concurrent consumption","distinct":false,"url":"https://api.github.com/repos/aspnet/KestrelHttpServer/commits/b63dd40efbb1a57ea1fd102d97e42650a24f6987"},{"sha":"2ce28d8f136c8d0e3293ab2731b2947ebbf98f69","author":{"email":"c2595463957d78dd26913a110ae6a8f1799dcff3@microsoft.com","name":"Cesar Blum Silveira"},"message":"Verify OnComplete is called when OnStarting isn't (#470).","distinct":false,"url":"https://api.github.com/repos/aspnet/KestrelHttpServer/commits/2ce28d8f136c8d0e3293ab2731b2947ebbf98f69"},{"sha":"849ff2016c12f4756cbcd5bee1de98adeaa8c876","author":{"email":"14c5c4fd52f930cfb84eb1882a56d9ac8231d823@gmail.com","name":"Stephen Halter"},"message":"Use object.ReferenceEquals when comparing Actions in SocketInput","distinct":false,"url":"https://api.github.com/repos/aspnet/KestrelHttpServer/commits/849ff2016c12f4756cbcd5bee1de98adeaa8c876"},{"sha":"8260e5d93f34925a39eb1f1aa4e0e64e15124812","author":{"email":"55c9ea43e0dd6882e9c8c94f748bf33498885a34@users.noreply.github.com","name":"clrjunkie"},"message":"Remove null-conditional operators and asserts (Blocks must return to pools)","distinct":false,"url":"https://api.github.com/repos/aspnet/KestrelHttpServer/commits/8260e5d93f34925a39eb1f1aa4e0e64e15124812"},{"sha":"63e39a257e9e0cea0d47d2eec719054dc3a407ba","author":{"email":"55c9ea43e0dd6882e9c8c94f748bf33498885a34@users.noreply.github.com","name":"clrjunkie"},"message":"One-time-use allocated blocks keep reference to source pool / Assert that a block is returned to it's source pool / Managed block are only returned to active Slabs","distinct":false,"url":"https://api.github.com/repos/aspnet/KestrelHttpServer/commits/63e39a257e9e0cea0d47d2eec719054dc3a407ba"},{"sha":"e90b61e6c51c0c7c5b05b50466d11f382ce2d563","author":{"email":"14c5c4fd52f930cfb84eb1882a56d9ac8231d823@gmail.com","name":"Stephen Halter"},"message":"Move call to CopyFrom in SocketOutput.WriteAsync inside lock to make writes atomic","distinct":true,"url":"https://api.github.com/repos/aspnet/KestrelHttpServer/commits/e90b61e6c51c0c7c5b05b50466d11f382ce2d563"},{"sha":"df695accb0cabd78c37f453ae3eae7bfffb6bbfc","author":{"email":"14c5c4fd52f930cfb84eb1882a56d9ac8231d823@gmail.com","name":"Stephen Halter"},"message":"Use TryEnter to acquire SocketOutput._contextLock on the libuv event loop","distinct":true,"url":"https://api.github.com/repos/aspnet/KestrelHttpServer/commits/df695accb0cabd78c37f453ae3eae7bfffb6bbfc"},{"sha":"daa2b7e383d22ba0bbd901ef10374fb714c2a952","author":{"email":"14c5c4fd52f930cfb84eb1882a56d9ac8231d823@gmail.com","name":"Stephen Halter"},"message":"Remove _tasksCompleted from SocketOutput\n\n- _tasksCompleted no longer helps avoid locking longer","distinct":true,"url":"https://api.github.com/repos/aspnet/KestrelHttpServer/commits/daa2b7e383d22ba0bbd901ef10374fb714c2a952"},{"sha":"17290f932688db76d8c9d32036bca2591c8b2d18","author":{"email":"14c5c4fd52f930cfb84eb1882a56d9ac8231d823@gmail.com","name":"Stephen Halter"},"message":"Make chunked writes atomic","distinct":true,"url":"https://api.github.com/repos/aspnet/KestrelHttpServer/commits/17290f932688db76d8c9d32036bca2591c8b2d18"},{"sha":"85269b4da3b5924364887e0200087de4047db21b","author":{"email":"14c5c4fd52f930cfb84eb1882a56d9ac8231d823@gmail.com","name":"Stephen Halter"},"message":"Throw for concurrent writes instead of expanding lock.","distinct":true,"url":"https://api.github.com/repos/aspnet/KestrelHttpServer/commits/85269b4da3b5924364887e0200087de4047db21b"}]}