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

Initial logic for Sphinx build of API docs - replacing epydoc #3641

Merged
merged 7 commits into from
Jun 9, 2020

Conversation

mwichmann
Copy link
Collaborator

@mwichmann mwichmann commented May 6, 2020

General setup for Sphinx build - config, style, etc.

A few regular scons files are updated to address build errors/warnings.

TODO:

Specific errors:

  • modules containing ++ in filename cause errors (and, indeed, syntactically this is not legal in Python). SCons has a remapping mechanism, but it's not quite that simple. aixc++, c++, g++, hpc++, sgic++, sunc++
  • index.rst:9: WARNING: toctree contains reference to nonexisting document 'SCons.Tool.packaging.'
  • WARNING: autodoc: failed to determine Null(0x7F706BF19210) to be documented.the following exception was raised: cannot unpack non-iterable Null object (SCons' Null is a hack - no checkers like it either)

Fixes #3604 #3121

Signed-off-by: Mats Wichmann mats@linux.com

Contributor Checklist:

  • I have created a new test or updated the unit tests to cover the new/changed functionality.
  • I have updated src/CHANGES.txt (and read the README.txt in that directory)
  • I have updated the appropriate documentation

@mwichmann mwichmann force-pushed the wip-sphinx-apidocs branch 2 times, most recently from cfd6519 to 9e61bf3 Compare May 27, 2020 14:12
mwichmann added 7 commits May 30, 2020 06:27
First cut includes a Makefile as generated by Sphinx plumbling,
needs to be wired into sconscripts instead.

A few regular scons files are updated to address build errors/warnings.

Signed-off-by: Mats Wichmann <mats@linux.com>
Signed-off-by: Mats Wichmann <mats@linux.com>
autoclasstoc enabled, but not particularly used yet.

Signed-off-by: Mats Wichmann <mats@linux.com>
Signed-off-by: Mats Wichmann <mats@linux.com>
Signed-off-by: Mats Wichmann <mats@linux.com>
Opinion time - when special members are included in the docs,
the output isn't really readable, it's too cluttered. Don't
seem to be able to get the autoclasstoc stuff working, which
was supposed to help with that.

Signed-off-by: Mats Wichmann <mats@linux.com>
Split this patchset so it contains only the Sphinx-build configuration
itself, and not any docstring changes suggested by running Sphinx.

Signed-off-by: Mats Wichmann <mats@linux.com>
@mwichmann mwichmann force-pushed the wip-sphinx-apidocs branch from 6c92a77 to 261f1d1 Compare May 30, 2020 17:01
@bdbaddog bdbaddog self-requested a review June 7, 2020 21:14
@bdbaddog
Copy link
Contributor

bdbaddog commented Jun 7, 2020

Re: docstring style. Didn't we discuss using Googles style?

@bdbaddog
Copy link
Contributor

bdbaddog commented Jun 7, 2020

RE: "++" modules, can we get Sphinx to ignore them?

@mwichmann
Copy link
Collaborator Author

RE: "++" modules, can we get Sphinx to ignore them?

in a way... by not looking deeper in Tools, they do get ignored, but I can't call them out by name to be ignored for the same reason they cause trouble if processed.

@mwichmann
Copy link
Collaborator Author

Re: docstring style. Didn't we discuss using Googles style?

Yes, and that's what I've been using recently.

@bdbaddog
Copy link
Contributor

bdbaddog commented Jun 7, 2020

I think if you add a blurb to the wiki page and assuming I can just do make somearg I'd be ready to merge this one.

@bdbaddog bdbaddog changed the title [WIP] Add Sphinx build of API docs Initial logic for Sphinx build of API docs - replacing epydoc Jun 9, 2020
@bdbaddog bdbaddog merged commit 07ba471 into SCons:master Jun 9, 2020
@mwichmann mwichmann deleted the wip-sphinx-apidocs branch September 23, 2020 18:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Switch SCons APIDOCS from epydoc to Sphinx
2 participants