diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 132a3575ed..50125f30ed 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -47,6 +47,34 @@ jobs: - run: cargo run -p systest - run: cargo run -p systest --features unstable-sha256 + clippy: + name: Clippy + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + build: [stable, beta, windows] + include: + - build: stable + os: ubuntu-latest + rust: stable + - build: beta + os: ubuntu-latest + rust: beta + - build: windows + os: windows-2022 + rust: stable + steps: + - uses: actions/checkout@master + with: + submodules: true + - name: Install Rust (rustup) + run: rustup update ${{ matrix.rust }} --no-self-update && rustup default ${{ matrix.rust }} + shell: bash + - name: Install Clippy (rustup) + run: rustup component add clippy + - run: cargo clippy --all-targets --all-features -- -Dwarnings + rustfmt: name: Rustfmt runs-on: ubuntu-latest diff --git a/examples/add.rs b/examples/add.rs index 57c9bb10a9..82f988147f 100644 --- a/examples/add.rs +++ b/examples/add.rs @@ -14,6 +14,7 @@ #![deny(warnings)] #![allow(trivial_casts)] +#![allow(clippy::needless_borrows_for_generic_args)] use clap::Parser; use git2::Repository; diff --git a/examples/clone.rs b/examples/clone.rs index f6d00b14b6..0511b75655 100644 --- a/examples/clone.rs +++ b/examples/clone.rs @@ -13,6 +13,8 @@ */ #![deny(warnings)] +#![allow(clippy::explicit_auto_deref)] +#![allow(clippy::manual_checked_ops)] use clap::Parser; use git2::build::{CheckoutBuilder, RepoBuilder}; diff --git a/examples/diff.rs b/examples/diff.rs index 87f9da5c11..23792abff9 100644 --- a/examples/diff.rs +++ b/examples/diff.rs @@ -13,6 +13,9 @@ */ #![deny(warnings)] +#![allow(clippy::explicit_auto_deref)] +#![allow(clippy::needless_borrows_for_generic_args)] +#![allow(clippy::redundant_closure)] use clap::Parser; use git2::{Blob, Diff, DiffOptions, Error, Object, ObjectType, Oid, Repository}; diff --git a/examples/init.rs b/examples/init.rs index 6a3bf2ed53..5a4a1ad7dd 100644 --- a/examples/init.rs +++ b/examples/init.rs @@ -13,6 +13,7 @@ */ #![deny(warnings)] +#![allow(clippy::manual_strip)] use clap::Parser; use git2::ObjectFormat; diff --git a/examples/log.rs b/examples/log.rs index 22c7a5d785..a5059fc6b7 100644 --- a/examples/log.rs +++ b/examples/log.rs @@ -13,6 +13,8 @@ */ #![deny(warnings)] +#![allow(clippy::manual_strip)] +#![allow(clippy::needless_borrowed_reference)] use clap::Parser; use git2::{Commit, DiffOptions, ObjectType, Repository, Signature, Time}; diff --git a/examples/pull.rs b/examples/pull.rs index ac1b4b7e0e..5bc66ac431 100644 --- a/examples/pull.rs +++ b/examples/pull.rs @@ -12,6 +12,9 @@ * . */ +#![allow(clippy::needless_borrow)] +#![allow(clippy::needless_question_mark)] + use clap::Parser; use git2::Repository; use std::io::{self, Write}; diff --git a/examples/rev-list.rs b/examples/rev-list.rs index 2eaed78e9a..be0987fc85 100644 --- a/examples/rev-list.rs +++ b/examples/rev-list.rs @@ -14,6 +14,7 @@ */ #![deny(warnings)] +#![allow(clippy::manual_strip)] use clap::Parser; use git2::{Error, Oid, Repository, Revwalk}; diff --git a/examples/tag.rs b/examples/tag.rs index 86fa9aca11..e8c64ae4ee 100644 --- a/examples/tag.rs +++ b/examples/tag.rs @@ -13,6 +13,7 @@ */ #![deny(warnings)] +#![allow(clippy::explicit_auto_deref)] use clap::Parser; use git2::{Commit, Error, Repository, Tag}; diff --git a/libgit2-sys/build.rs b/libgit2-sys/build.rs index 8407f114b7..6a31eb7bc0 100644 --- a/libgit2-sys/build.rs +++ b/libgit2-sys/build.rs @@ -1,3 +1,6 @@ +#![allow(clippy::needless_borrows_for_generic_args)] +#![allow(clippy::unnecessary_map_or)] + use std::env; use std::fs; use std::io; diff --git a/libgit2-sys/lib.rs b/libgit2-sys/lib.rs index 40de36c54e..a6703d26bf 100644 --- a/libgit2-sys/lib.rs +++ b/libgit2-sys/lib.rs @@ -1,5 +1,6 @@ #![doc(html_root_url = "https://docs.rs/libgit2-sys/0.18")] #![allow(non_camel_case_types, unused_extern_crates)] +#![allow(clippy::legacy_numeric_constants)] // This is required to link libz when libssh2-sys is not included. extern crate libz_sys as libz; diff --git a/src/apply.rs b/src/apply.rs index 34dc811a01..406e96286f 100644 --- a/src/apply.rs +++ b/src/apply.rs @@ -1,6 +1,9 @@ //! git_apply support //! see original: +#![allow(clippy::missing_safety_doc)] +#![allow(clippy::new_without_default)] + use crate::{panic, raw, util::Binding, DiffDelta, DiffHunk}; use libc::c_int; use std::{ffi::c_void, mem}; @@ -149,6 +152,7 @@ impl<'cb> ApplyOptions<'cb> { } #[cfg(test)] +#[allow(clippy::needless_borrows_for_generic_args)] mod tests { use super::*; use std::{fs::File, io::Write, path::Path}; diff --git a/src/blame.rs b/src/blame.rs index 52c0255198..8290c176ea 100644 --- a/src/blame.rs +++ b/src/blame.rs @@ -1,3 +1,5 @@ +#![allow(clippy::redundant_closure)] + use crate::util::{self, Binding}; use crate::{raw, signature, Error, Oid, Repository, Signature}; use libc::c_char; @@ -388,6 +390,9 @@ impl<'blame> FusedIterator for BlameIter<'blame> {} impl<'blame> ExactSizeIterator for BlameIter<'blame> {} #[cfg(test)] +#[allow(clippy::bool_assert_comparison)] +#[allow(clippy::needless_borrow)] +#[allow(clippy::needless_borrows_for_generic_args)] mod tests { use std::fs::{self, File}; use std::path::Path; diff --git a/src/blob.rs b/src/blob.rs index 68cc72c294..c73862ddd9 100644 --- a/src/blob.rs +++ b/src/blob.rs @@ -1,3 +1,5 @@ +#![allow(clippy::io_other_error)] + use std::io; use std::marker; use std::mem; diff --git a/src/branch.rs b/src/branch.rs index b0a3cb470a..ffcccecfb6 100644 --- a/src/branch.rs +++ b/src/branch.rs @@ -1,3 +1,5 @@ +#![allow(clippy::missing_safety_doc)] + use std::ffi::CString; use std::marker; use std::ptr; diff --git a/src/buf.rs b/src/buf.rs index 4e40cc91bb..754fd93ad5 100644 --- a/src/buf.rs +++ b/src/buf.rs @@ -1,3 +1,5 @@ +#![allow(clippy::explicit_auto_deref)] + use std::ops::{Deref, DerefMut}; use std::ptr; use std::slice; diff --git a/src/build.rs b/src/build.rs index c1c9cfd227..0b27006718 100644 --- a/src/build.rs +++ b/src/build.rs @@ -1,5 +1,8 @@ //! Builder-pattern objects for configuration various git operations. +#![allow(clippy::manual_non_exhaustive)] +#![allow(clippy::missing_safety_doc)] + use libc::{c_char, c_int, c_uint, c_void, size_t}; use std::ffi::{CStr, CString}; use std::mem; @@ -767,6 +770,8 @@ impl TreeUpdateBuilder { } #[cfg(test)] +#[allow(clippy::needless_borrow)] +#[allow(clippy::needless_borrows_for_generic_args)] mod tests { use super::{CheckoutBuilder, RepoBuilder, TreeUpdateBuilder}; use crate::{CheckoutNotificationType, FileMode, Repository}; diff --git a/src/call.rs b/src/call.rs index 9aa3ae667f..210d5e3409 100644 --- a/src/call.rs +++ b/src/call.rs @@ -1,3 +1,4 @@ +#![allow(clippy::needless_lifetimes)] #![macro_use] use crate::Error; diff --git a/src/cherrypick.rs b/src/cherrypick.rs index 51005264ba..81e11e94a2 100644 --- a/src/cherrypick.rs +++ b/src/cherrypick.rs @@ -1,3 +1,5 @@ +#![allow(clippy::new_without_default)] + use std::mem; use crate::build::CheckoutBuilder; diff --git a/src/commit.rs b/src/commit.rs index 860bbc2d66..7acaaddbc3 100644 --- a/src/commit.rs +++ b/src/commit.rs @@ -1,3 +1,5 @@ +#![allow(clippy::redundant_closure)] + use std::iter::FusedIterator; use std::marker; use std::mem; @@ -413,6 +415,8 @@ impl<'repo> Drop for Commit<'repo> { } #[cfg(test)] +#[allow(clippy::bool_assert_comparison)] +#[allow(clippy::let_and_return)] mod tests { #[test] fn smoke() { diff --git a/src/config.rs b/src/config.rs index 68729abfd6..f4ab82dd64 100644 --- a/src/config.rs +++ b/src/config.rs @@ -1,3 +1,5 @@ +#![allow(clippy::should_implement_trait)] + use std::ffi::CString; use std::marker; use std::path::{Path, PathBuf}; @@ -639,6 +641,7 @@ impl<'cfg> Drop for ConfigEntry<'cfg> { } #[cfg(test)] +#[allow(clippy::bool_assert_comparison)] mod tests { use std::fs::File; use tempfile::TempDir; diff --git a/src/cred.rs b/src/cred.rs index cfec9d9d7a..999570fdaa 100644 --- a/src/cred.rs +++ b/src/cred.rs @@ -1,3 +1,10 @@ +#![allow(clippy::manual_strip)] +#![allow(clippy::match_result_ok)] +#![allow(clippy::missing_safety_doc)] +#![allow(clippy::needless_borrowed_reference)] +#![allow(clippy::needless_borrows_for_generic_args)] +#![allow(clippy::should_implement_trait)] + #[cfg(feature = "cred")] use log::{debug, trace}; use std::ffi::CString; @@ -495,6 +502,8 @@ impl CredentialHelper { #[cfg(test)] #[cfg(feature = "cred")] +#[allow(clippy::unused_io_amount)] +#[allow(clippy::useless_conversion)] mod test { use std::env; use std::fs::File; diff --git a/src/diff.rs b/src/diff.rs index 13c35c29da..ad74a2696a 100644 --- a/src/diff.rs +++ b/src/diff.rs @@ -1,3 +1,7 @@ +#![allow(clippy::empty_docs)] +#![allow(clippy::missing_safety_doc)] +#![allow(clippy::new_without_default)] + use libc::{c_char, c_int, c_void, size_t}; use std::ffi::CString; use std::iter::FusedIterator; @@ -1588,6 +1592,9 @@ impl DiffPatchidOptions { } #[cfg(test)] +#[allow(clippy::assign_op_pattern)] +#[allow(clippy::needless_borrows_for_generic_args)] +#[allow(clippy::while_let_on_iterator)] mod tests { #[cfg(feature = "unstable-sha256")] use crate::Diff; diff --git a/src/email.rs b/src/email.rs index 8b5f46f9f4..14218b06d7 100644 --- a/src/email.rs +++ b/src/email.rs @@ -1,3 +1,5 @@ +#![allow(clippy::too_many_arguments)] + use std::ffi::CString; use std::{mem, ptr}; diff --git a/src/error.rs b/src/error.rs index 01e2742c1f..ba4d3afb8f 100644 --- a/src/error.rs +++ b/src/error.rs @@ -1,3 +1,5 @@ +#![allow(clippy::should_implement_trait)] + use libc::c_int; use std::env::JoinPathsError; use std::error; diff --git a/src/index.rs b/src/index.rs index 8972cb9492..01ed103402 100644 --- a/src/index.rs +++ b/src/index.rs @@ -882,6 +882,8 @@ impl Binding for IndexEntry { } #[cfg(test)] +#[allow(clippy::needless_borrow)] +#[allow(clippy::needless_borrows_for_generic_args)] mod tests { use std::fs::{self, File}; use std::path::Path; diff --git a/src/indexer.rs b/src/indexer.rs index 72984582a7..045d22cf90 100644 --- a/src/indexer.rs +++ b/src/indexer.rs @@ -1,3 +1,5 @@ +#![allow(clippy::io_other_error)] + use std::ffi::CStr; use std::path::Path; use std::{io, marker, mem, ptr}; @@ -242,6 +244,7 @@ impl Drop for Indexer<'_> { } #[cfg(test)] +#[allow(clippy::unused_io_amount)] mod tests { use crate::{Buf, Indexer}; use std::io::prelude::*; diff --git a/src/lib.rs b/src/lib.rs index 91f253611d..e44b4a39c3 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -70,6 +70,9 @@ #![deny(missing_docs)] #![warn(rust_2018_idioms)] #![cfg_attr(test, deny(warnings))] +#![allow(clippy::needless_lifetimes)] +#![allow(clippy::should_implement_trait)] +#![allow(clippy::unnecessary_cast)] use bitflags::bitflags; use libgit2_sys as raw; diff --git a/src/mailmap.rs b/src/mailmap.rs index affb0b2f1a..1166d01a55 100644 --- a/src/mailmap.rs +++ b/src/mailmap.rs @@ -93,6 +93,7 @@ impl Mailmap { } #[cfg(test)] +#[allow(clippy::needless_borrow)] mod tests { use super::*; diff --git a/src/merge.rs b/src/merge.rs index 75264315ca..7263bfa3a2 100644 --- a/src/merge.rs +++ b/src/merge.rs @@ -1,3 +1,6 @@ +#![allow(clippy::missing_safety_doc)] +#![allow(clippy::redundant_closure)] + use libc::{c_char, c_uint, c_ushort, size_t}; use std::ffi::CString; use std::marker; diff --git a/src/message.rs b/src/message.rs index 3edfd4e5f0..cbd929fffd 100644 --- a/src/message.rs +++ b/src/message.rs @@ -1,3 +1,7 @@ +#![allow(clippy::len_without_is_empty)] +#![allow(clippy::needless_borrow)] +#![allow(clippy::redundant_closure)] + use core::ops::Range; use std::ffi::CStr; use std::ffi::CString; @@ -237,6 +241,7 @@ fn to_bytes_tuple(trailers: &MessageTrailers, index: usize) -> (&[u8], &[u8]) { } #[cfg(test)] +#[allow(clippy::char_lit_as_u8)] mod tests { #[test] diff --git a/src/odb.rs b/src/odb.rs index f6af9c5c13..d854093159 100644 --- a/src/odb.rs +++ b/src/odb.rs @@ -1,3 +1,8 @@ +#![allow(clippy::io_other_error)] +#![allow(clippy::len_without_is_empty)] +#![allow(clippy::single_match)] +#![allow(clippy::should_implement_trait)] + use std::io; use std::marker; use std::ptr; @@ -579,6 +584,8 @@ pub(crate) extern "C" fn write_pack_progress_cb( } #[cfg(test)] +#[allow(clippy::bool_assert_comparison)] +#[allow(clippy::unused_io_amount)] mod tests { use crate::{Buf, ObjectType, Oid, Repository}; use std::io::prelude::*; diff --git a/src/oid_array.rs b/src/oid_array.rs index 0d87ce9954..87abef2974 100644 --- a/src/oid_array.rs +++ b/src/oid_array.rs @@ -1,5 +1,7 @@ //! Bindings to libgit2's raw `git_oidarray` type +#![allow(clippy::extra_unused_lifetimes)] + use std::ops::Deref; use crate::oid::Oid; diff --git a/src/opts.rs b/src/opts.rs index 232d81e996..facf5896e5 100644 --- a/src/opts.rs +++ b/src/opts.rs @@ -1,5 +1,7 @@ //! Bindings to libgit2's git_libgit2_opts function. +#![allow(clippy::missing_safety_doc)] + use std::ffi::CString; use std::ptr; diff --git a/src/packbuilder.rs b/src/packbuilder.rs index 4f673957c4..8d4c3279d2 100644 --- a/src/packbuilder.rs +++ b/src/packbuilder.rs @@ -1,3 +1,5 @@ +#![allow(clippy::redundant_closure)] + use libc::{c_int, c_uint, c_void, size_t}; use std::marker; use std::path::Path; @@ -296,6 +298,7 @@ extern "C" fn progress_c( } #[cfg(test)] +#[allow(clippy::bool_assert_comparison)] mod tests { use crate::Buf; diff --git a/src/pathspec.rs b/src/pathspec.rs index 19939ecac6..3ba0594267 100644 --- a/src/pathspec.rs +++ b/src/pathspec.rs @@ -337,6 +337,7 @@ impl<'list> FusedIterator for PathspecFailedEntries<'list> {} impl<'list> ExactSizeIterator for PathspecFailedEntries<'list> {} #[cfg(test)] +#[allow(clippy::needless_borrows_for_generic_args)] mod tests { use super::Pathspec; use crate::PathspecFlags; diff --git a/src/rebase.rs b/src/rebase.rs index 9c89b1133a..1020812110 100644 --- a/src/rebase.rs +++ b/src/rebase.rs @@ -1,3 +1,7 @@ +#![allow(clippy::len_without_is_empty)] +#![allow(clippy::needless_option_take)] +#![allow(clippy::redundant_closure)] + use std::ffi::CString; use std::{marker, mem, ptr, str}; diff --git a/src/reference.rs b/src/reference.rs index 1c51873d2a..f69f9b6b10 100644 --- a/src/reference.rs +++ b/src/reference.rs @@ -1,3 +1,5 @@ +#![allow(clippy::redundant_closure)] + use std::cmp::Ordering; use std::ffi::CString; use std::marker; @@ -517,6 +519,7 @@ impl<'repo, 'references> Iterator for ReferenceNames<'repo, 'references> { } #[cfg(test)] +#[allow(clippy::octal_escapes)] mod tests { use crate::{ObjectType, Reference, ReferenceType}; diff --git a/src/reflog.rs b/src/reflog.rs index 919234ba6f..69d971e7af 100644 --- a/src/reflog.rs +++ b/src/reflog.rs @@ -1,3 +1,5 @@ +#![allow(clippy::redundant_closure)] + use libc::size_t; use std::iter::FusedIterator; use std::marker; diff --git a/src/remote.rs b/src/remote.rs index 290b5517da..377e66a068 100644 --- a/src/remote.rs +++ b/src/remote.rs @@ -1,3 +1,8 @@ +#![allow(clippy::derivable_impls)] +#![allow(clippy::empty_line_after_doc_comments)] +#![allow(clippy::redundant_closure)] +#![allow(clippy::unwrap_or_default)] + use raw::git_strarray; use std::iter::FusedIterator; use std::marker; @@ -825,6 +830,8 @@ impl RemoteRedirect { } #[cfg(test)] +#[allow(clippy::needless_borrow)] +#[allow(clippy::octal_escapes)] mod tests { use crate::{AutotagOption, PushOptions, RemoteUpdateFlags}; use crate::{Direction, FetchOptions, ObjectFormat, Remote, RemoteCallbacks, Repository}; diff --git a/src/remote_callbacks.rs b/src/remote_callbacks.rs index e4b39b0b85..1d988bb7f7 100644 --- a/src/remote_callbacks.rs +++ b/src/remote_callbacks.rs @@ -1,3 +1,5 @@ +#![allow(clippy::doc_overindented_list_items)] + use libc::{c_char, c_int, c_uint, c_void, size_t}; use std::ffi::CStr; use std::mem; diff --git a/src/repo.rs b/src/repo.rs index 072a622455..e7af75b5c8 100644 --- a/src/repo.rs +++ b/src/repo.rs @@ -1,3 +1,11 @@ +#![allow(clippy::explicit_auto_deref)] +#![allow(clippy::missing_safety_doc)] +#![allow(clippy::needless_borrow)] +#![allow(clippy::new_without_default)] +#![allow(clippy::redundant_closure)] +#![allow(clippy::too_many_arguments)] +#![allow(clippy::zero_ptr)] + use libc::{c_char, c_int, c_uint, c_void, size_t}; use std::env; use std::ffi::{CStr, CString, OsStr}; @@ -3654,6 +3662,9 @@ impl RepositoryInitOptions { } #[cfg(test)] +#[allow(clippy::assertions_on_constants)] +#[allow(clippy::bool_assert_comparison)] +#[allow(clippy::needless_borrows_for_generic_args)] mod tests { use crate::build::CheckoutBuilder; use crate::AttrCheckFlags; diff --git a/src/revert.rs b/src/revert.rs index 55d702600e..78bfe5d7cc 100644 --- a/src/revert.rs +++ b/src/revert.rs @@ -1,3 +1,5 @@ +#![allow(clippy::new_without_default)] + use std::mem; use crate::build::CheckoutBuilder; diff --git a/src/stash.rs b/src/stash.rs index cd9ee36f58..74f375e568 100644 --- a/src/stash.rs +++ b/src/stash.rs @@ -1,3 +1,5 @@ +#![allow(clippy::missing_safety_doc)] + use crate::build::CheckoutBuilder; use crate::util::{self, Binding}; use crate::{panic, raw, IntoCString, Oid, Signature, StashApplyProgress, StashFlags}; @@ -210,6 +212,7 @@ extern "C" fn stash_apply_progress_cb( } #[cfg(test)] +#[allow(clippy::needless_borrow)] mod tests { use crate::stash::{StashApplyOptions, StashSaveOptions}; use crate::test::repo_init; diff --git a/src/status.rs b/src/status.rs index a8a1bf4f0b..5da7253fb2 100644 --- a/src/status.rs +++ b/src/status.rs @@ -1,3 +1,5 @@ +#![allow(clippy::missing_safety_doc)] + use libc::{c_char, c_uint, size_t}; use std::ffi::CString; use std::iter::FusedIterator; @@ -364,6 +366,7 @@ impl<'statuses> Binding for StatusEntry<'statuses> { } #[cfg(test)] +#[allow(clippy::needless_borrows_for_generic_args)] mod tests { use super::StatusOptions; use std::fs::File; diff --git a/src/string_array.rs b/src/string_array.rs index d320193ac3..7ac04cf70d 100644 --- a/src/string_array.rs +++ b/src/string_array.rs @@ -1,5 +1,7 @@ //! Bindings to libgit2's raw `git_strarray` type +#![allow(clippy::redundant_closure)] + use std::iter::FusedIterator; use std::ops::Range; use std::str; diff --git a/src/submodule.rs b/src/submodule.rs index 20b0b4532e..878a74fa85 100644 --- a/src/submodule.rs +++ b/src/submodule.rs @@ -1,3 +1,7 @@ +#![allow(clippy::empty_line_after_doc_comments)] +#![allow(clippy::let_and_return)] +#![allow(clippy::redundant_closure)] + use std::marker; use std::mem; use std::os::raw::c_int; @@ -329,6 +333,8 @@ impl<'cb> Default for SubmoduleUpdateOptions<'cb> { } #[cfg(test)] +#[allow(clippy::needless_borrows_for_generic_args)] +#[allow(clippy::unnecessary_to_owned)] mod tests { use std::fs; use std::path::Path; diff --git a/src/tag.rs b/src/tag.rs index dfa2a78242..a82ec2441c 100644 --- a/src/tag.rs +++ b/src/tag.rs @@ -1,3 +1,6 @@ +#![allow(clippy::from_over_into)] +#![allow(clippy::redundant_closure)] + use std::ffi::CString; use std::marker; use std::mem; @@ -153,6 +156,8 @@ impl<'repo> Drop for Tag<'repo> { } #[cfg(test)] +#[allow(clippy::bool_assert_comparison)] +#[allow(clippy::octal_escapes)] mod tests { use crate::Tag; diff --git a/src/test.rs b/src/test.rs index a1a303d6cc..7ff69c4978 100644 --- a/src/test.rs +++ b/src/test.rs @@ -1,3 +1,5 @@ +#![allow(clippy::needless_borrows_for_generic_args)] + use std::fs::File; use std::io; use std::path::{Path, PathBuf}; diff --git a/src/transport.rs b/src/transport.rs index 085f5397db..a105f71bd6 100644 --- a/src/transport.rs +++ b/src/transport.rs @@ -1,5 +1,8 @@ //! Interfaces for adding custom transports to libgit2 +#![allow(clippy::missing_safety_doc)] +#![allow(clippy::missing_transmute_annotations)] + use libc::{c_char, c_int, c_uint, c_void, size_t}; use std::ffi::{CStr, CString}; use std::io; @@ -369,6 +372,7 @@ extern "C" fn stream_free(stream: *mut raw::git_smart_subtransport_stream) { } #[cfg(test)] +#[allow(clippy::needless_borrow)] mod tests { use super::*; use crate::{ErrorClass, ErrorCode}; diff --git a/src/tree.rs b/src/tree.rs index f6953ffe20..6b72390032 100644 --- a/src/tree.rs +++ b/src/tree.rs @@ -1,3 +1,6 @@ +#![allow(clippy::from_over_into)] +#![allow(clippy::manual_unwrap_or)] + use libc::{c_char, c_int, c_void}; use std::cmp::Ordering; use std::ffi::{CStr, CString}; @@ -401,6 +404,9 @@ impl<'tree> FusedIterator for TreeIter<'tree> {} impl<'tree> ExactSizeIterator for TreeIter<'tree> {} #[cfg(test)] +#[allow(clippy::needless_borrows_for_generic_args)] +#[allow(clippy::redundant_field_names)] +#[allow(clippy::single_match)] mod tests { use super::{TreeWalkMode, TreeWalkResult}; use crate::{Object, ObjectType, Repository, Tree, TreeEntry}; diff --git a/src/util.rs b/src/util.rs index c9cfaa6740..5460d1e727 100644 --- a/src/util.rs +++ b/src/util.rs @@ -1,3 +1,8 @@ +#![allow(clippy::missing_safety_doc)] +#![allow(clippy::needless_lifetimes)] +#![allow(clippy::needless_range_loop)] +#![allow(clippy::needless_return)] + use libc::{c_char, c_int, size_t}; use std::cmp::Ordering; use std::ffi::{CString, OsStr, OsString}; diff --git a/src/worktree.rs b/src/worktree.rs index 0a328124e1..b99731c4e1 100644 --- a/src/worktree.rs +++ b/src/worktree.rs @@ -1,3 +1,6 @@ +#![allow(clippy::new_without_default)] +#![allow(clippy::redundant_closure)] + use crate::buf::Buf; use crate::reference::Reference; use crate::repo::Repository; diff --git a/tests/end_to_end.rs b/tests/end_to_end.rs index 1a8b0f45da..086e538d7c 100644 --- a/tests/end_to_end.rs +++ b/tests/end_to_end.rs @@ -1,4 +1,8 @@ //! Tests for some end-to-end logic about certain operations + +#![allow(clippy::needless_borrow)] +#![allow(unused_variables)] + use git2::{ Error, ReferenceType, Repository, RepositoryInitOptions, StashFlags, Status, StatusOptions, }; diff --git a/tests/global_state.rs b/tests/global_state.rs index 192acdbd3a..04275ed085 100644 --- a/tests/global_state.rs +++ b/tests/global_state.rs @@ -1,6 +1,8 @@ //! Test for some global state set up by libgit2's `git_libgit2_init` function //! that need to be synchronized within a single process. +#![allow(clippy::needless_borrows_for_generic_args)] + use git2::opts; use git2::{ConfigLevel, IntoCString};