-
Notifications
You must be signed in to change notification settings - Fork 3.6k
Add "available since" message for C API additions since v1.10.0. #10348
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
Conversation
| * | ||
| * \snippet{doc} snippets.dox OrtStatus Return Value | ||
| * | ||
| * \version New in version 1.11. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think we want to say 'New in version 1.11' since that might sound weird after we're on 1.12.
Maybe even just \version 1.11 would be enough? I tried it locally and it looked clear and concise.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Another idea is to adopt a word used in other code documentation systems: "since" e.g. javadoc (https://www.baeldung.com/javadoc-version-since)
It would become \since version 1.11
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What should we do when we remove APIs in the future? Looks like \since isn't setup to have an ending.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I suppose that text would have to go elsewhere, as the API being documented wouldn't be there anymore right?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we ever remove APIs? ie how far back does our backwards compatibility commitment go?
| * | ||
| * \snippet{doc} snippets.dox OrtStatus Return Value | ||
| * | ||
| * \version New in version 1.11. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since we never remove functions from the c_api, could this be Available since version 1.11 or Since Version 1.11?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since we never remove functions from the c_api, could this be
Available since version 1.11orSince Version 1.11?
@gwang-msft We do plan on removing functions in the c_api, but only for newer versions of the API, not older ones.
|
@RyanUnderhill @gwang-msft Not attached to a particular wording but we should be consistent. |
| * | ||
| * \snippet{doc} snippets.dox OrtStatus Return Value | ||
| * | ||
| * \version New in version 1.11. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Another idea is to adopt a word used in other code documentation systems: "since" e.g. javadoc (https://www.baeldung.com/javadoc-version-since)
It would become \since version 1.11
pranavsharma
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks like an additional burden for adding new APIs and can be easily forgotten. Would it be easier to have documentation based on the version?
@pranavsharma Since the issue was with stuff added to docs that were not in the latest release, perhaps we could have a temporary prerelease blurb instead? Something that explains "Checked into source but not in latest published release" that we then remove on release. Easy to remove these on release vs try to find which ones we're missing on release. And this avoids having versions per function that might just be extra work. |
|
Ok, I guess we don't have an option now. It would be good to have docs versioned to begin with. Then there's just no confusion. |
Some examples with both versioned documentation and version-specific text within the documentation are CMake and Python. I think the version-specific text lets users more easily find something without having to go to the docs for their exact version. And given that we don't have versioned documentation, this is the only indicator. |
I like being able to improve the documentation of any version out of band with the releases. If we generated the docs from a release branch of a particular version, then we are stuck with whatever docs annotations we had at the time of the release. We could continue to update the docs on the release branch, but then that would put the docs generation commit out of sync with the released commit. Also, if you do improve the docs of a particular release then do you cherry pick changes to all relevant versions? (I have done this in a past life and it was very onerous). |
Agree on the consistency. I like the convention in the Python docs that you have used. |
Description
Add "available since" message for C API additions since v1.10.0.
Motivation and Context
The C API docs may be updated with new APIs before they are available in a release. Adding a "new in version x" message indicates when they can be used.
#10298