Replace features libfuse2,libfuse3 with a dedicated build cfg value #313
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
From Rust v1.80, cfg values will be checked to ensure they match all known possible values. https://blog.rust-lang.org/2024/05/06/check-cfg.html
fuser makes use of the features libfuse2 and libfuse3 when conditionally compiling code for each implementation of libfuse. This leads to a lot of warnings when building fuser with newer versions of Rust (v1.80+).
This change moves this conditional logic to be a new dedicated cfg field (not features) which are declared so that Rust is aware of the possible values.
An alternative to this would be to just declare libfuse2 and libfuse3 as features however this doesn't seem right, as these aren't meant to be customer-facing features.
This change was originally proposed in #311.
Fixes #311