{"push_id":3119675930,"size":55,"distinct_size":0,"ref":"refs/heads/master","head":"1e2787380a1565c0defba93a2d20f01b8849a80a","before":"e5ffd6fec09d39b01124e73f26164ad97a28e929","commits":[{"sha":"b2162a220e698674f35d1676d8fc5b5d38a367f6","author":{"name":"Stjepan Glavina","email":"bc98c78cd179235740d1fec979353ee484048905@gmail.com"},"message":"Optimize channel disconnection","distinct":false,"url":"https://api.github.com/repos/stjepang/crossbeam/commits/b2162a220e698674f35d1676d8fc5b5d38a367f6"},{"sha":"d627067bc0d88eaaaeabd89e9d4db1cb94398326","author":{"name":"bors[bot]","email":"31e8831a045c193c917fdcb487f388eedbd9ad8e@users.noreply.github.com"},"message":"Merge #233\n\n233: Optimize channel disconnection r=stjepang a=stjepang\n\nJust a small tweak.\n\nCo-authored-by: Stjepan Glavina <stjepang@gmail.com>","distinct":false,"url":"https://api.github.com/repos/stjepang/crossbeam/commits/d627067bc0d88eaaaeabd89e9d4db1cb94398326"},{"sha":"4cbbb7fb649c0ac24242dfb7810932ece5befb34","author":{"name":"Ralf Jung","email":"9b466094ec991a03cb95c489c19c4d75635f0ae5@ralfj.de"},"message":"document technical UB","distinct":false,"url":"https://api.github.com/repos/stjepang/crossbeam/commits/4cbbb7fb649c0ac24242dfb7810932ece5befb34"},{"sha":"fdc168f0994b2450ba9d549a7380b45bf84dba5f","author":{"name":"Ralf Jung","email":"9b466094ec991a03cb95c489c19c4d75635f0ae5@ralfj.de"},"message":"point out that using a CAS for a fence is somewhat dubious","distinct":false,"url":"https://api.github.com/repos/stjepang/crossbeam/commits/fdc168f0994b2450ba9d549a7380b45bf84dba5f"},{"sha":"c291a1b4fb2e05a300c4e29fce4f96dbf9099bb2","author":{"name":"Ralf Jung","email":"9b466094ec991a03cb95c489c19c4d75635f0ae5@ralfj.de"},"message":"mention inline assembly as possible alternative","distinct":false,"url":"https://api.github.com/repos/stjepang/crossbeam/commits/c291a1b4fb2e05a300c4e29fce4f96dbf9099bb2"},{"sha":"8bb816714030b45c112affa0c6e70be491aa31f5","author":{"name":"Stjepan Glavina","email":"bc98c78cd179235740d1fec979353ee484048905@gmail.com"},"message":"Add Parker for thread parking","distinct":false,"url":"https://api.github.com/repos/stjepang/crossbeam/commits/8bb816714030b45c112affa0c6e70be491aa31f5"},{"sha":"d94e5eeb5253c05f8b94b0aa07c09fd28bb3b1e1","author":{"name":"Ralf Jung","email":"9b466094ec991a03cb95c489c19c4d75635f0ae5@ralfj.de"},"message":"add a compiler fence","distinct":false,"url":"https://api.github.com/repos/stjepang/crossbeam/commits/d94e5eeb5253c05f8b94b0aa07c09fd28bb3b1e1"},{"sha":"9943a93f621f654d45dfe741784b25f269784b0f","author":{"name":"bors[bot]","email":"31e8831a045c193c917fdcb487f388eedbd9ad8e@users.noreply.github.com"},"message":"Merge #234\n\n234: Document some places where crossbeam tests the limits of the C++ memory model -- or crosses them r=stjepang a=RalfJung\n\nThanks to @jeehoonkang for some early feedback.\n\nCo-authored-by: Ralf Jung <post@ralfj.de>","distinct":false,"url":"https://api.github.com/repos/stjepang/crossbeam/commits/9943a93f621f654d45dfe741784b25f269784b0f"},{"sha":"12f53d7d7dcfc361ac4cca84a1969e2eef0f531f","author":{"name":"Stjepan Glavina","email":"bc98c78cd179235740d1fec979353ee484048905@gmail.com"},"message":"Export Parker in crossbeam","distinct":false,"url":"https://api.github.com/repos/stjepang/crossbeam/commits/12f53d7d7dcfc361ac4cca84a1969e2eef0f531f"},{"sha":"f798fc172383e886718c8f403a8b88835793fae1","author":{"name":"Stjepan Glavina","email":"bc98c78cd179235740d1fec979353ee484048905@gmail.com"},"message":"Split into parker and unparker","distinct":false,"url":"https://api.github.com/repos/stjepang/crossbeam/commits/f798fc172383e886718c8f403a8b88835793fae1"},{"sha":"e1e1bb72b50acda55c568e6e2bc6b9d789b3bc4f","author":{"name":"Stjepan Glavina","email":"bc98c78cd179235740d1fec979353ee484048905@gmail.com"},"message":"Add tests for parker","distinct":false,"url":"https://api.github.com/repos/stjepang/crossbeam/commits/e1e1bb72b50acda55c568e6e2bc6b9d789b3bc4f"},{"sha":"bdb760b3c04c6c3c421db6cd05e9ae4e2318fd6a","author":{"name":"Bastien Orivel","email":"c2ec3cad619ef238ae0f0cb1199219a0595f5e67@bananium.fr"},"message":"Bump parking_lot","distinct":false,"url":"https://api.github.com/repos/stjepang/crossbeam/commits/bdb760b3c04c6c3c421db6cd05e9ae4e2318fd6a"},{"sha":"f3400255c5619a8d2bc95ee8511ddcab0057558d","author":{"name":"bors[bot]","email":"31e8831a045c193c917fdcb487f388eedbd9ad8e@users.noreply.github.com"},"message":"Merge #241\n\n241: Bump parking_lot r=stjepang a=Eijebong\n\n\n\nCo-authored-by: Bastien Orivel <eijebong@bananium.fr>","distinct":false,"url":"https://api.github.com/repos/stjepang/crossbeam/commits/f3400255c5619a8d2bc95ee8511ddcab0057558d"},{"sha":"f664d2c34720be5021d9958e62a7d65aae8829bb","author":{"name":"Bastien Orivel","email":"c2ec3cad619ef238ae0f0cb1199219a0595f5e67@bananium.fr"},"message":"Update rand","distinct":false,"url":"https://api.github.com/repos/stjepang/crossbeam/commits/f664d2c34720be5021d9958e62a7d65aae8829bb"},{"sha":"c09d3617fc7122092820f8f9a058a80391272d8f","author":{"name":"bors[bot]","email":"31e8831a045c193c917fdcb487f388eedbd9ad8e@users.noreply.github.com"},"message":"Merge #242\n\n242: Update rand r=stjepang a=Eijebong\n\n\n\nCo-authored-by: Bastien Orivel <eijebong@bananium.fr>","distinct":false,"url":"https://api.github.com/repos/stjepang/crossbeam/commits/c09d3617fc7122092820f8f9a058a80391272d8f"},{"sha":"a19808a413eba4b45da1e52061734028ef490f93","author":{"name":"bors[bot]","email":"31e8831a045c193c917fdcb487f388eedbd9ad8e@users.noreply.github.com"},"message":"Merge #235\n\n235: Add Parker for thread parking r=stjepang a=stjepang\n\nThis is just an extracted copy of the current implementation of `thread::park()` and `thread::unpark()`.\r\n\r\n`Parker` is a low-level thread synchronization primitive useful for building others (like locks etc.). It would be useful in https://github.com/tokio-rs/tokio/pull/528 and might remove some cruft and unnecessary TLS access from `context.rs` in `crossbeam-channel`.\r\n\r\nI've also added a fast-path check for `timeout == Duration::from_secs(0)`, which Tokio relies on.\r\n\r\nAn interesting peculiarity of `Parker` is that it's not split into `Parker` and `Unparker`, which means any thread can call `park()` at any time. However, if multiple threads call `park()` at the same time, expect deadlocks or panics - that is the user's problem. Splitting the primitive into an owned `Parker` and shared `Unparker` would require us to wrap the inner structure into an `Arc`, which comes at a cost of allocation and indirection. Since this is a very low-level primitive, I chose not to do that.\r\n\r\nThe reason why this is in `crossbeam-utils` is because it's a really simple primitive with no dependencies. Also, `tokio-executor` and `tokio-threadpool` really don't want to pull in the whole `crossbeam` in order to use this.\r\n\r\ncc @carllerche\n\nCo-authored-by: Stjepan Glavina <stjepang@gmail.com>","distinct":false,"url":"https://api.github.com/repos/stjepang/crossbeam/commits/a19808a413eba4b45da1e52061734028ef490f93"},{"sha":"f1fc95bc81d965d92dbb3469d65d155ad6143589","author":{"name":"Stjepan Glavina","email":"bc98c78cd179235740d1fec979353ee484048905@gmail.com"},"message":"Use a bounded channel for signals","distinct":false,"url":"https://api.github.com/repos/stjepang/crossbeam/commits/f1fc95bc81d965d92dbb3469d65d155ad6143589"},{"sha":"9a2ff4c2f4d75848d1b21e9bbdb74f9847c066e0","author":{"name":"bors[bot]","email":"31e8831a045c193c917fdcb487f388eedbd9ad8e@users.noreply.github.com"},"message":"Merge #243\n\n243: Use a bounded channel for signals r=stjepang a=stjepang\n\n\n\nCo-authored-by: Stjepan Glavina <stjepang@gmail.com>","distinct":false,"url":"https://api.github.com/repos/stjepang/crossbeam/commits/9a2ff4c2f4d75848d1b21e9bbdb74f9847c066e0"},{"sha":"bdd9e77da7f0055338a9ba6805a13e2ff9b857ea","author":{"name":"Simon Sapin","email":"cca99684d893888d01a53127bf515d97ac84478d@exyr.org"},"message":"Use std::ops::Bound in crossbeam-skiplist\n\nIt’s stable since 1.17","distinct":false,"url":"https://api.github.com/repos/stjepang/crossbeam/commits/bdd9e77da7f0055338a9ba6805a13e2ff9b857ea"},{"sha":"e7d9c298317fa985ae8ca39bc108457d57e9b8ad","author":{"name":"bors[bot]","email":"31e8831a045c193c917fdcb487f388eedbd9ad8e@users.noreply.github.com"},"message":"Merge #244\n\n244: Use std::ops::Bound in crossbeam-skiplist r=stjepang a=SimonSapin\n\nIt’s stable since 1.17\n\nCo-authored-by: Simon Sapin <simon.sapin@exyr.org>","distinct":false,"url":"https://api.github.com/repos/stjepang/crossbeam/commits/e7d9c298317fa985ae8ca39bc108457d57e9b8ad"}]}
{"actor":{"display_login":"stjepang"}}