vectordotdev / vector

A high-performance observability data pipeline.
https://vector.dev
Mozilla Public License 2.0
17.61k stars 1.55k forks source link

opaque_hidden_inferred_bound warning when compiling with rust 1.66 #15627

Closed tjni closed 1 year ago

tjni commented 1 year ago

A note for the community

Problem

When compiling using Rust 1.66, I see the following error:

error: opaque type `impl warp::Filter + Clone + warp::filter::FilterBase<Extract = impl Reply, Error = Infallible>` does not satisfy its associated type bounds
  --> src/sources/aws_kinesis_firehose/filters.rs:31:18
   |
31 | ) -> impl Filter<Extract = impl warp::Reply, Error = Infallible> + Clone {
   |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
  ::: /private/tmp/nix-build-vector-0.26.0.drv-0/vector-0.26.0-vendor.tar.gz/warp/src/filter/mod.rs:40:19
   |
40 |     type Extract: Tuple; // + Send;
   |                   ----- this associated type bound is unsatisfied for `impl Reply`
   |
note: the lint level is defined here
  --> src/lib.rs:7:9
   |
7  | #![deny(warnings)]
   |         ^^^^^^^^
   = note: `#[deny(opaque_hidden_inferred_bound)]` implied by `#[deny(warnings)]`
help: add this bound
   |
31 | ) -> impl Filter<Extract = impl warp::Reply + warp::generic::Tuple, Error = Infallible> + Clone {
   |                                             ++++++++++++++++++++++

This looks like a new lint that was introduced in https://github.com/rust-lang/rust/pull/102568.

Configuration

No response

Version

0.26.0

Debug Output

No response

Example Data

No response

Additional Context

No response

References

No response

spencergilbert commented 1 year ago

👋 I think we're working through that as part of https://github.com/vectordotdev/vector/pull/15093!

jszwedko commented 1 year ago

Indeed, closing this in-lieu of https://github.com/vectordotdev/vector/pull/15093