Is your feature request related to a problem or challenge?
The datafusion-cli crate currently pulls in S3, GCS and generic HTTP support unconditionally. This functionality pulls in a number of other crates whose transitive closure of dependencies is quite large. When tracking dependency vulnerabilities for all of these, this can lead to quite a lot of false positives when the cloud functionality is not actually used. Additionally, this increases binary size with effectively dead code.
Describe the solution you'd like
Add features (enabled by default for backward compatibility) that can be used to omit the cloud functionality and associated dependencies.
Describe alternatives you've considered
- Build your own CLI from scratch to have precise control over dependencies.
- Modularise the CLI into smaller library parts to make building your own easier.
Additional context
No response
Is your feature request related to a problem or challenge?
The
datafusion-clicrate currently pulls in S3, GCS and generic HTTP support unconditionally. This functionality pulls in a number of other crates whose transitive closure of dependencies is quite large. When tracking dependency vulnerabilities for all of these, this can lead to quite a lot of false positives when the cloud functionality is not actually used. Additionally, this increases binary size with effectively dead code.Describe the solution you'd like
Add features (enabled by default for backward compatibility) that can be used to omit the cloud functionality and associated dependencies.
Describe alternatives you've considered
Additional context
No response