Skip to content

v0.8: Prepare for the next release#1050

Merged
taiki-e merged 25 commits intov0.8from
v0.8-next
Dec 13, 2023
Merged

v0.8: Prepare for the next release#1050
taiki-e merged 25 commits intov0.8from
v0.8-next

Conversation

@taiki-e
Copy link
Member

@taiki-e taiki-e commented Dec 13, 2023

Closes #1048

skiplist is in the master branch, so I'll release it in another PR.

taiki-e and others added 23 commits December 13, 2023 10:25
```
error: incorrect implementation of `clone` on a `Copy` type
    --> crossbeam-epoch/src/atomic.rs:1171:29
     |
1171 |       fn clone(&self) -> Self {
     |  _____________________________^
1172 | |         Self {
1173 | |             data: self.data,
1174 | |             _marker: PhantomData,
1175 | |         }
1176 | |     }
     | |_____^ help: change this to: `{ *self }`
     |
     = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incorrect_clone_impl_on_copy_type
     = note: `#[deny(clippy::incorrect_clone_impl_on_copy_type)]` on by default

error: incorrect implementation of `clone` on a `Copy` type
  --> crossbeam-deque/src/deque.rs:82:34
   |
82 |       fn clone(&self) -> Buffer<T> {
   |  __________________________________^
83 | |         Buffer {
84 | |             ptr: self.ptr,
85 | |             cap: self.cap,
86 | |         }
87 | |     }
   | |_____^ help: change this to: `{ *self }`
   |
   = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incorrect_clone_impl_on_copy_type
   = note: `#[deny(clippy::incorrect_clone_impl_on_copy_type)]` on by default
```
```
error: call to `.clone()` on a reference in this situation does nothing
  --> crossbeam-epoch/src/guard.rs:451:38
   |
14 |     let dummy = &epoch::unprotected().clone();
   |                                      ^^^^^^^^ help: remove this redundant call
   |
   = note: the type `Guard` does not implement `Clone`, so calling `clone` on `&Guard` copies the reference, which does not do anything and can be removed
note: the lint level is defined here
  --> crossbeam-epoch/src/guard.rs:438:9
   |
1  | #![deny(warnings, rust_2018_idioms)]
   |         ^^^^^^^^
   = note: `#[deny(noop_method_call)]` implied by `#[deny(warnings)]`
```
The perf c2c data shows lots of cacheline contention were caused by
false sharing between epoch and other field in "Local" struct. So
use CachePadded class to align it to another cacheline to resolve
this issue.
core::panic::{,Ref}UnwindSafe is available on Rust 1.56+.
Replaces #724.

Co-authored-by: Enkelmann <nils-edvin.enkelmann@fkie.fraunhofer.de>
sticnarf and others added 2 commits December 13, 2023 22:24
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
- crossbeam-channel 0.5.8 -> 0.5.9
- crossbeam-deque 0.8.3 -> 0.8.4
- crossbeam-epoch 0.9.15 -> 0.9.16
- crossbeam-queue 0.3.8 -> 0.3.9
- crossbeam-utils 0.8.16 -> 0.8.17
@taiki-e taiki-e merged commit 62024f1 into v0.8 Dec 13, 2023
@taiki-e taiki-e deleted the v0.8-next branch December 13, 2023 14:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

4 participants