kube super-crate
clux opened this issue ยท 2 comments
Something I've been wanting for a long time, but have been put up because of how it's going to be done.
Raising it again now, because once there's some agreement on delineation in #642, we ought to do this to fix dependabot issues (users get dependabot issues for kube and kube_runtime separately, which is incompatible with our versioning policy).
- Failed attempt:
through exposingApi
as an async trait: see #592 - Likely route: pull
api
andconfig
modules into one or two new crates - Import new crate(s) from
kube
- Can now re-export
kube-runtime
fromkube
under aruntime
feature
=> kube
is a facade crate only the only thing users depend on
๐ for me. One thing that we've ran inte at @stackabletech is that derive macros make facades a bit tricky. Essentially, the macro has no idea about whether to refer to the traits that it interacts with using the original crate (which means that everyone still needs to pull in the direct dependency) or the facade crate (preventing direct imports which allow cargo to optimize compilation slightly).
One way to work around this would be to have an attribute for overriding the path to kube
(and any other crates used).