-
Notifications
You must be signed in to change notification settings - Fork 129
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
Refine scope of Augur's Python Development API #1011
Comments
To clarify, I'm not sure it's settled that the "Python Development API" section of docs corresponds to what we consider to be Augur's public Python API. What's in and out is a long-standing open question that we haven't really nailed down. I do agree that ultimately using the docs is a good way to list what's public and what's not, but I'm not sure that care has been taken yet. Input from @huddlej in particular would be good as he's in the past had many thoughts/suggestions here from his own perspective of both developer and user. |
We just discussed this over a call. Action items:
|
I used another GitHub search to look more widely and then quickly tallied up the results:
Underlying data at https://gist.github.com/tsibley/d2266ca5f9d1fb9948195532795824d7. This includes our own usage as well as external usage (both novel and in forks-of-our-usage), but excludes usage within Augur itself (naturally). |
Context
The doc page on Python Development API converts the docstrings of each class/function.
There has also been some ongoing efforts to modularize large files in this project. Some examples:
I was just made aware of the unintended side effects of these changes on their respective doc pages:
augur.io
: before, afteraugur.measurements
: before, after (latest)augur.filter
: before, after (PR preview)Discussion
Note that in the change to
augur.io
, the docs are inaccurate because everything is still exposed at a higher level (i.e. doc generation could be improved).However, I think the wide net casted by the publicizing of this API should be retracted a bit so we don't create so many "breaking changes" like this from internal refactoring.
This can be achieved with more underscore-prefixed names like augur.filter._calculate_total_sequences which indicates a "private" function (not actually private, mostly just a naming convention, but at least our docs parser seems to follow this convention since
augur.filter._calculate_total_sequences
is not shown on the doc page).https://github.com/nextstrain/augur/labels/request%20for%20comments
The text was updated successfully, but these errors were encountered: