Fix clippy::redundant_clone lint violations (#36558)

This removes around 900 unnecessary clones, ranging from cloning a few
ints all the way to large data structures and images.

A lot of these were fixed using `cargo clippy --fix --workspace
--all-targets`, however it often breaks other lints and needs to be run
again. This was then followed up with some manual fixing.

I understand this is a large diff, but all the changes are pretty
trivial. Rust is doing some heavy lifting here for us. Once I get it up
to speed with main, I'd appreciate this getting merged rather sooner
than later.

Release Notes:

- N/A
This commit is contained in:
tidely 2025-08-20 13:20:13 +03:00 committed by GitHub
parent cf7c64d77f
commit 7bdc99abc1
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
306 changed files with 805 additions and 1102 deletions

View file

@ -168,7 +168,7 @@ impl RemoteBufferStore {
.with_context(|| {
format!("no worktree found for id {}", file.worktree_id)
})?;
buffer_file = Some(Arc::new(File::from_proto(file, worktree.clone(), cx)?)
buffer_file = Some(Arc::new(File::from_proto(file, worktree, cx)?)
as Arc<dyn language::File>);
}
Buffer::from_proto(replica_id, capability, state, buffer_file)
@ -591,7 +591,7 @@ impl LocalBufferStore {
else {
return Task::ready(Err(anyhow!("no such worktree")));
};
self.save_local_buffer(buffer, worktree, path.path.clone(), true, cx)
self.save_local_buffer(buffer, worktree, path.path, true, cx)
}
fn open_buffer(
@ -845,7 +845,7 @@ impl BufferStore {
) -> Task<Result<()>> {
match &mut self.state {
BufferStoreState::Local(this) => this.save_buffer(buffer, cx),
BufferStoreState::Remote(this) => this.save_remote_buffer(buffer.clone(), None, cx),
BufferStoreState::Remote(this) => this.save_remote_buffer(buffer, None, cx),
}
}
@ -1138,7 +1138,7 @@ impl BufferStore {
envelope: TypedEnvelope<proto::UpdateBuffer>,
mut cx: AsyncApp,
) -> Result<proto::Ack> {
let payload = envelope.payload.clone();
let payload = envelope.payload;
let buffer_id = BufferId::new(payload.buffer_id)?;
let ops = payload
.operations