{"push_id":810918057,"size":3,"distinct_size":1,"ref":"refs/heads/develop","head":"a39b80903f4fd50f2f0760bc6cd9a17a0a4a3d13","before":"1adc2107221b2a92bbbc6274707db91ecc3e4c15","commits":[{"sha":"2842aecd1af734f266f9a60f8af64400a5f898fd","author":{"email":"f4b726eb4428c94ec1239af9e3b06d73d64a2f9c@gmail.com","name":"Jason Lokerson"},"message":"Enhance autowiring::signal and provide strong sequentiality guarantees\n\nWe need a major refactor to the internals of `autowiring::signal` to allow it to behave more predictably when clients use handlers that either invoke other signals or register/unregister other signal handlers.  The newly refactored `autowiring::signal` should have the following improvements and design choices:\n\n* Make use of a lock-free dispatch queue concept to allow us to relax the constraint that all locks are released before handing controls to clients.\n* Introduce an image guarantee which ensures that all signal handlers registered at the time of a call are actually invoked, even if some of them are unregistered.\n* Improve efficiency by only taking copies of input arguments when it is absolutely necessary for concurrency reasons\n* If a user passes an argument as an rvalue reference or by value, move that argument into the dispatch queue rather than taking a copy--but only do so if it is necessary","distinct":false,"url":"https://api.github.com/repos/leapmotion/autowiring/commits/2842aecd1af734f266f9a60f8af64400a5f898fd"},{"sha":"01ce16bddf772b3466d88f404fffadf9fd1c3320","author":{"email":"f4b726eb4428c94ec1239af9e3b06d73d64a2f9c@gmail.com","name":"Jason Lokerson"},"message":"Add missing include headers, fix Linux errors","distinct":false,"url":"https://api.github.com/repos/leapmotion/autowiring/commits/01ce16bddf772b3466d88f404fffadf9fd1c3320"},{"sha":"a39b80903f4fd50f2f0760bc6cd9a17a0a4a3d13","author":{"email":"30a978347cdb68a3db7516fa63afb823ca569ef3@gmail.com","name":"Walter"},"message":"Merge pull request #757 from leapmotion/feature-sequencedsignal\n\nEnhance autowiring::signal and provide strong sequentiality guarantees","distinct":true,"url":"https://api.github.com/repos/leapmotion/autowiring/commits/a39b80903f4fd50f2f0760bc6cd9a17a0a4a3d13"}]}