ALL: Make dependencies optional where possible
- Dominant language
- C#
- Stars
- 83
- Forks
- 50
- Avg merge
- 4d 8h
- Merged PRs (30d)
- 7
Description
All dependencies are currently required in existing language implementations (Java and C# as of this writing). For example, if someone uses the RDBMS metastore implementation, the SDK will still pull in the AWS DynamoDB SDK and all its transitive dependencies.
We can make pluggable external integrations and optional features only use optional dependencies so the user doesn't have to pull in dependency chains for unused parts.
An alternative approach we had discussed a while back was breaking out the external dependencies into separate projects/modules. The optional dependency approach seems like it will have less overhead in the SDK repo itself, and it shouldn't have much of a negative impact from an end user perspective.
Can discuss which approach seems best. Regardless of which approach is taken, we'll need to update documentation accordingly.
Contributor guide
Assessment
This issue has not been assessed yet.