diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 6f4393c27f..b8d097c37d 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -160,10 +160,16 @@ jobs: - name: Set search dir for Snowflake Go lib run: echo "ADBC_SNOWFLAKE_GO_LIB_DIR=${{ github.workspace }}/local/lib" >> "$GITHUB_ENV" - name: Clippy - if: ${{ ! matrix.minimal-versions }} + if: runner.os != 'Linux' && ! matrix.minimal-versions working-directory: rust run: | cargo clippy --workspace --all-targets --all-features --locked -- -Dwarnings + - name: Clippy (nightly) + if: runner.os == 'Linux' && ! matrix.minimal-versions + working-directory: rust + run: | + rustup toolchain install nightly --component clippy + cargo +nightly clippy --workspace --all-targets --all-features --locked -- -Dwarnings -Zcrate-attr='feature(non_exhaustive_omitted_patterns_lint)' - name: Test working-directory: rust # TODO: enable snowflake tests on windows diff --git a/rust/core/src/error.rs b/rust/core/src/error.rs index 67d2113f43..3e83a06955 100644 --- a/rust/core/src/error.rs +++ b/rust/core/src/error.rs @@ -24,7 +24,6 @@ use arrow_schema::ArrowError; /// Status of an operation. #[derive(Debug, Copy, Clone, PartialEq, Eq)] -#[non_exhaustive] pub enum Status { /// No error. Ok, diff --git a/rust/core/src/options.rs b/rust/core/src/options.rs index 7e3e443bdc..c07f26e36f 100644 --- a/rust/core/src/options.rs +++ b/rust/core/src/options.rs @@ -232,7 +232,6 @@ impl TryFrom for InfoCode { /// Depth parameter for [get_objects][crate::Connection::get_objects] method. #[derive(Debug)] -#[non_exhaustive] pub enum ObjectDepth { /// Catalogs, schemas, tables, and columns. All, @@ -462,7 +461,6 @@ impl From<&str> for OptionStatement { /// Isolation level value for key [OptionConnection::IsolationLevel]. #[derive(Debug)] -#[non_exhaustive] pub enum IsolationLevel { /// Use database or driver default isolation level. Default, @@ -538,7 +536,6 @@ impl From for OptionValue { /// Ingestion mode value for key [OptionStatement::IngestMode]. #[derive(Debug)] -#[non_exhaustive] pub enum IngestMode { /// Create the table and insert data; error if the table exists. Create, @@ -581,7 +578,6 @@ impl From for OptionValue { /// Statistics about the data distribution. #[derive(Debug, Clone)] -#[non_exhaustive] pub enum Statistics { /// The average byte width statistic. The average size in bytes of a row in /// the column. Value type is `float64`. For example, this is roughly the