Skip to content

Improve documentation briefs and misc. details #1311

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

Merged
merged 5 commits into from
Jan 6, 2025

Conversation

eramongodb
Copy link
Contributor

Miscellaneous improvements to API documentation following #1309. Primarily targets cleanup of the brief descriptions displayed on the "Class List" page.

Note

Doxygen seems to fail to generate a class description for a member of a using-declared class. Filed doxygen/doxygen#11326.

The current brief descriptions on the Class List page are not consistently "brief", often unnecessarily including parts of what should be a detailed description instead:

image

image

The changes in this PR update all brief descriptions to be more consistent in their format and be properly "brief" in their length:

image

image

When able, brief descriptions of auxiliary class types (e.g. "options") simply refer to their primary interface with which they are meant to be used to avoid redundancy and verbosity (e.g. "Used by X"). Redundant leads (e.g. "Class representing...", "Class used to...", etc.) are omitted to improve brevity of descriptions.

Some notable changes that go beyond brief description updates include:

  • Adding or updating references to the MongoDB Manual, C++ Driver Manual, and the MongoDB (Drivers) Specification (note: ReadTheDocs; can revert to GitHub file references instead if preferable).
  • Add MONGOCXX_DEPRECATED + @deprecated to authentication_exception, which is not used anywhere.
  • Notes disambiguating interfaces pertaining to MongoDB server indexes vs. Atlas Search Indexes.
  • Add @important to mongocxx::v_noabi::pool documenting it does not conform to the CMAP specification.
  • Deferred bulk of read/write concern descriptions (mostly outdated references to pre-3.6 behavior) to the MongoDB Manual.
  • Add @deprecated to mongocxx::v_noabi::validation_criteria given there is mostly unused + its primary interfaces (conversion to BSON) are already deprecated as well.

@eramongodb eramongodb requested a review from kevinAlbs January 6, 2025 17:26
@eramongodb eramongodb self-assigned this Jan 6, 2025
@eramongodb eramongodb changed the title doxygen: improve documentation briefs and misc. details Improve documentation briefs and misc. details Jan 6, 2025
Copy link
Collaborator

@kevinAlbs kevinAlbs left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. I like the briefer "brief" sections.

note: ReadTheDocs; can revert to GitHub file references instead if preferable

No strong preference. The rendered ReadTheDocs pages seem easier to navigate, but do not appear to have a version history or refer to the Github repo.

Copy link
Contributor Author

@eramongodb eramongodb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The rendered ReadTheDocs pages seem easier to navigate, but do not appear to have a version history or refer to the Github repo.

I felt comfortable linking to the ReadTheDocs pages since most of the original references lacked pinning to specific commit versions, blindly tracking the latest commit. I suspect it is sufficient to link to the related page so the relevant content (in whatever position/section they happen to be in at the time) can be found as needed.

@eramongodb eramongodb merged commit 23eee67 into mongodb:master Jan 6, 2025
1 of 2 checks passed
@eramongodb eramongodb deleted the cxx-docs branch January 6, 2025 20:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants