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

Documentation using Sphinx+Exhale+Doxygen (revised) #197

Merged
merged 43 commits into from
May 18, 2020

Conversation

msmk0
Copy link
Contributor

@msmk0 msmk0 commented May 15, 2020

This moves the documentation build to use Sphinx with the Breathe/Exhale extensions. Doxygen is called automatically by Sphinx and is used only to extract the existing source code documentation.

  • The documentation now integrates auto-generated API documentation and manually written texts in a single website with the ability to interlink.
  • Most of the documentation that is currently on the website is imported back into the docs directory in this repository.
  • The README.md is streamlined and contains mostly usage and code organization information and provides links to other sources to avoid duplication.

Please note:

  • The local documentation build, e.g. via make docs, uses a fixed path in-source build (in contrast to the configurable out-of-source build directory for the code) to be compatible with https://readthedocs.org. You might need to remove docs/{_build,api} manually for a clean build.
  • The Sphinx build with API generation takes O(10min). For faster iteration a make docs-without-doxygen target is available that only builds the manually written parts. A make run-doxygen target is available to run doxygen standalone to simplify debugging the Doxygen config.

This is an updated versions of https://gitlab.cern.ch/acts/acts-core/-/merge_requests/614.

Closes #44 and supersedes/closes #96.

@msmk0 msmk0 added Component - Documentation Affects the documentation Impact - Major Significant bug and/or affects a lot of modules Improvement Changes to an existing feature labels May 15, 2020
@acts-issue-bot acts-issue-bot bot removed the Triage label May 15, 2020
@msmk0
Copy link
Contributor Author

msmk0 commented May 15, 2020

@paulgessinger I still need to do a few content fixes but you can already start to have a look.

@codecov
Copy link

codecov bot commented May 15, 2020

Codecov Report

Merging #197 into master will increase coverage by 0.44%.
The diff coverage is 58.22%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #197      +/-   ##
==========================================
+ Coverage   44.22%   44.66%   +0.44%     
==========================================
  Files         365      369       +4     
  Lines       18239    18454     +215     
  Branches     8691     8782      +91     
==========================================
+ Hits         8066     8243     +177     
+ Misses       4928     4874      -54     
- Partials     5245     5337      +92     
Impacted Files Coverage Δ
...clude/Acts/Vertexing/AdaptiveMultiVertexFinder.hpp 78.57% <ø> (ø)
...include/Acts/Vertexing/FullBilloirVertexFitter.hpp 75.00% <ø> (ø)
...e/include/Acts/Vertexing/IterativeVertexFinder.hpp 76.92% <ø> (ø)
...e/include/Acts/Vertexing/IterativeVertexFinder.ipp 20.86% <0.00%> (ø)
...nclude/Acts/Vertexing/TrackDensityVertexFinder.hpp 75.00% <ø> (ø)
...nclude/Acts/Vertexing/TrackDensityVertexFinder.ipp 100.00% <ø> (ø)
Core/include/Acts/Vertexing/ZScanVertexFinder.hpp 81.81% <ø> (ø)
Core/include/Acts/Vertexing/ZScanVertexFinder.ipp 64.70% <ø> (ø)
...clude/Acts/Vertexing/AdaptiveMultiVertexFinder.ipp 44.59% <42.85%> (+11.49%) ⬆️
...include/Acts/Vertexing/GridDensityVertexFinder.ipp 45.45% <45.45%> (ø)
... and 10 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 445df71...445df71. Read the comment docs.

@msmk0 msmk0 changed the title Build the documentation with Sphinx Documentation using Sphinx+Exhale+Doxygen (revised) May 15, 2020
AUTHORS.md Outdated Show resolved Hide resolved
docs/core/material.rst Outdated Show resolved Hide resolved
docs/getting_started.md Outdated Show resolved Hide resolved
@msmk0 msmk0 marked this pull request as ready for review May 18, 2020 12:54
@msmk0
Copy link
Contributor Author

msmk0 commented May 18, 2020

@paulgessinger @HadrienG2 @asalzburger This is now ready to go in. I updated the content a bit and streamlined the README.md to remove duplicate/obsolete information. The PR description has also been updated to reflect the final set of changes.

@paulgessinger paulgessinger removed the Improvement Changes to an existing feature label May 18, 2020
@paulgessinger paulgessinger added Improvement Changes to an existing feature and removed Triage labels May 18, 2020
@paulgessinger
Copy link
Member

Codecov seems not to post the results, and I'm not sure what's wrong with the review check. I'm overriding this.

@paulgessinger paulgessinger merged commit 0d15cb5 into acts-project:master May 18, 2020
@msmk0 msmk0 deleted the documentation branch June 26, 2020 10:58
paulgessinger added a commit to paulgessinger/acts that referenced this pull request Jul 13, 2020
* cmake: add FindSphinx

* cmake: doc requires sphinx

* doc: doxygen builds only xml

* doc: build w/ Sphinx

* doc: add layout and move existing content

* doc: build full api doc with exhale

* doc: do not build doxygen html

* doc: add authors and license

* doc: update logo

* doc: import modules and integration content

* doc: simplify navbar

* doc: add unit documentation

* doc: move utilities into sub-folder

* doc: fixes to units

* doc: adjust doc cmakelists

* cmake: split doc generation into separate commands

* doc: update some paths

* doc: update doxygen config

* doc: update requirements

* move the getting started guide to docs

* doc: remove doxygen layout

* doc: simplify cmake config

* doc: reorganize files

* move docs

* doc: add pip requirements file

* cmake: add run-doxygen debug target

* docs: update Doxygen config

* docs: import truth tracking howto from framework

* docs: use consistent rst format

* docs: re-use AUTHORS file

* Update docs/core/material.rst

Co-authored-by: Paul Gessinger <hello@paulgessinger.com>

* docs: add filesystem to boost packages

* move authors to docs

* ci: add docs build job

* gitignore: do not ignore github configs

* docs: always enable doxygen on RTD

* docs: exclude build directory

* add readthedocs config

* Examples: minor README fixes

* Fatras: minor README fixes

* thirdparty: consistent README formatting

* docs: streamline index text

* streamline README

Co-authored-by: Paul Gessinger <hello@paulgessinger.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Component - Documentation Affects the documentation Impact - Major Significant bug and/or affects a lot of modules Improvement Changes to an existing feature
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Restructure documentation
3 participants