Repository: launchbadge/sqlx
File: sqlx-postgres/src/type_checking.rs (Rust)

Code before:
        Vec<sqlx::postgres::types::PgRange<i32>> | &[sqlx::postgres::types::PgRange<i32>],
        Vec<sqlx::postgres::types::PgRange<i64>> | &[sqlx::postgres::types::PgRange<i64>],

        #[cfg(feature = "bigdecimal")]
        Vec<sqlx::postgres::types::PgRange<sqlx::types::BigDecimal>> |
            &[sqlx::postgres::types::PgRange<sqlx::types::BigDecimal>],

        #[cfg(feature = "rust_decimal")]
        Vec<sqlx::postgres::types::PgRange<sqlx::types::Decimal>> |
            &[sqlx::postgres::types::PgRange<sqlx::types::Decimal>],

        #[cfg(feature = "chrono")]
        Vec<sqlx::postgres::types::PgRange<sqlx::types::chrono::NaiveDate>> |
            &[sqlx::postgres::types::PgRange<sqlx::types::chrono::NaiveDate>],

        #[cfg(feature = "chrono")]
        Vec<sqlx::postgres::types::PgRange<sqlx::types::chrono::NaiveDateTime>> |
            &[sqlx::postgres::types::PgRange<sqlx::types::chrono::NaiveDateTime>],

        #[cfg(feature = "chrono")]
        Vec<sqlx::postgres::types::PgRange<sqlx::types::chrono::DateTime<sqlx::types::chrono::Utc>>> |
            Vec<sqlx::postgres::types::PgRange<sqlx::types::chrono::DateTime<_>>>,

        #[cfg(feature = "chrono")]
        Vec<sqlx::postgres::types::PgRange<sqlx::types::chrono::DateTime<sqlx::types::chrono::Utc>>> |
            &[sqlx::postgres::types::PgRange<sqlx::types::chrono::DateTime<_>>],

        #[cfg(feature = "time")]
        Vec<sqlx::postgres::types::PgRange<sqlx::types::time::Date>> |
            &[sqlx::postgres::types::PgRange<sqlx::types::time::Date>],

        #[cfg(feature = "time")]
        Vec<sqlx::postgres::types::PgRange<sqlx::types::time::PrimitiveDateTime>> |
            &[sqlx::postgres::types::PgRange<sqlx::types::time::PrimitiveDateTime>],

        #[cfg(feature = "time")]
        Vec<sqlx::postgres::types::PgRange<sqlx::types::time::OffsetDateTime>> |
            &[sqlx::postgres::types::PgRange<sqlx::types::time::OffsetDateTime>],
    },
    ParamChecking::Strong,
    feature-types: info => info.__type_feature_gate(),
);


Review comment (suggestion):
This is theoretically a breaking change but this only affects code that wouldn't have compiled anyways as `&[PgRange<DateTime<Utc>>]`  doesn't implement `Decode`.

Code after:

        Vec<sqlx::postgres::types::PgRange<i32>> | &[sqlx::postgres::types::PgRange<i32>],
        Vec<sqlx::postgres::types::PgRange<i64>> | &[sqlx::postgres::types::PgRange<i64>],

        #[cfg(feature = "bigdecimal")]
        Vec<sqlx::postgres::types::PgRange<sqlx::types::BigDecimal>> |
            &[sqlx::postgres::types::PgRange<sqlx::types::BigDecimal>],

        #[cfg(feature = "rust_decimal")]
        Vec<sqlx::postgres::types::PgRange<sqlx::types::Decimal>> |
            &[sqlx::postgres::types::PgRange<sqlx::types::Decimal>],

        #[cfg(all(feature = "chrono", not(feature = "time")))]
        Vec<sqlx::postgres::types::PgRange<sqlx::types::chrono::NaiveDate>> |
            &[sqlx::postgres::types::PgRange<sqlx::types::chrono::NaiveDate>],

        #[cfg(all(feature = "chrono", not(feature = "time")))]
        Vec<sqlx::postgres::types::PgRange<sqlx::types::chrono::NaiveDateTime>> |
            &[sqlx::postgres::types::PgRange<sqlx::types::chrono::NaiveDateTime>],

        #[cfg(all(feature = "chrono", not(feature = "time")))]
        Vec<sqlx::postgres::types::PgRange<sqlx::types::chrono::DateTime<sqlx::types::chrono::Utc>>> |
            &[sqlx::postgres::types::PgRange<sqlx::types::chrono::DateTime<_>>],

        #[cfg(all(feature = "chrono", not(feature = "time")))]
        Vec<sqlx::postgres::types::PgRange<sqlx::types::chrono::DateTime<sqlx::types::chrono::Utc>>> |
            &[sqlx::postgres::types::PgRange<sqlx::types::chrono::DateTime<_>>],

        #[cfg(feature = "time")]
        Vec<sqlx::postgres::types::PgRange<sqlx::types::time::Date>> |
            &[sqlx::postgres::types::PgRange<sqlx::types::time::Date>],

        #[cfg(feature = "time")]
        Vec<sqlx::postgres::types::PgRange<sqlx::types::time::PrimitiveDateTime>> |
            &[sqlx::postgres::types::PgRange<sqlx::types::time::PrimitiveDateTime>],

        #[cfg(feature = "time")]
        Vec<sqlx::postgres::types::PgRange<sqlx::types::time::OffsetDateTime>> |
            &[sqlx::postgres::types::PgRange<sqlx::types::time::OffsetDateTime>],
    },
    ParamChecking::Strong,
    feature-types: info => info.__type_feature_gate(),
);