Skip to content
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

Revise "documentation" standard #34

Open
jtniehof opened this issue Aug 26, 2024 · 1 comment
Open

Revise "documentation" standard #34

jtniehof opened this issue Aug 26, 2024 · 1 comment

Comments

@jtniehof
Copy link
Contributor

(Broader context at the end).

This issue is to discuss a potential PHEP to replace the "documentation" portion of the existing PyHC standards: to lay out what looks like the current standards, and allow for suggested changes.

The existing standard is:

  1. Documentation: All functions, classes, and modules must have documentation strings (docstrings) provided in a standard conventions (e.g. numpydoc). Docstrings must describe the code’s purpose, describe all inputs and outputs, and provide examples. High level documentation must also be provided as guides, tutorials, and developer docs. Documentation must be provided in version control with the code and be made available online in a readable form.

#16 has suggested updates.

Does it make sense to have this as a single PHEP or should it be lumped in with some of the other categories?

Broader context: I envision a process of "patriating the constitution" where we revisit the existing standards documents and incorporate them into PHEPs, potentially updated, that are explicitly noted as replacing the relevant standards. We probably do not want one PHEP per standard. Our previous grouping in the review guidelines seems a good start.

@jtniehof
Copy link
Contributor Author

This is tough one: maybe the standards portion is small, but I can see a lot of scope for best practices, how to get the most out of Sphinx, integrating with RtD, etc. So maybe this would involve a standards-track PHEP with a large "how to teach this" section and a robust reference implementation, perhaps even a reference implementation that's maintained by the community.

As far as the core requirement, changes could be:

I can think of a lot of candidate "shoulds":

  • Sphinx / intersphinx
  • numpydoc
  • autodoc/autosummary
  • Build / check the docs in CI
  • Reference Diátaxis
  • Robust use of cross-references (within the documentation and to other documentation)

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

No branches or pull requests

2 participants
@jtniehof and others