-
Notifications
You must be signed in to change notification settings - Fork 84
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Narrow down kedro-datasets public API #139
Comments
Love this idea, and I've thought similar things in the past. Actually I think similar arguments could be made to parts of framework too (e.g. The one thing that's put me off this in the past is that the only way I could think of doing it is as you suggest, by prepending underscores, which I just find looks a bit weird even though. But it's Python convention I know, so that's not a strong argument against it... Also I actually don't know if there's a problem using autocomplete imports at the moment? In PyCharm if I try to automatically import |
I think the IDE might work this out by seeing the To me the underscore convention looks natural, but that's a matter of taste I guess 😄 |
Technically a breaking change, but no objections (so far), so need to migrate to the core Kedro repo and add to the 0.19 milestone. |
Does this have to be on 0.19 though? Since kedro-datasets is its own package, I was thinking that maybe this would belong to kedro-datasets 2.0. |
Description
Right now there are more or less two ways of importing any given dataset:
I think we should communicate to users that only the former belongs to the public API.
Context
Reasons to do this:
__all__
or similar https://sphinx-autodoc2.readthedocs.io/en/latest/quickstart.html#documenting-only-the-public-api-via-allPossible Implementation
Renaming the appropriate submodules to prepend an underscore. For example,
kedro_datasets/biosequence/biosequence_dataset.py
would becomekedro_datasets/biosequence/_biosequence_dataset.py
.Possible Alternatives
Haven't considered any alternatives.
The text was updated successfully, but these errors were encountered: