* Initial implementation of PythonForce
* Continuing implementation of PythonForce
* Tests for PythonForce
* Fix memory leaks
* Documentation for PythonForce
* Fixed incorrect return type
* Fix compilation error on Python older than 3.12
* Handle all dtypes
* Optimizations to PythonForce
* Optimized getPositions()
* Test all platforms
* Fix test failures
* Replace C++ code examples in Python API docs
* Use newer Python for building docs
* Remove sphinx version pin
* Add Python versions of code examples
* Minor edit
* Add Python version of one more code example
* Proof of concept matching current behaviour with Breathe
* Reorganise C++ API docs to work without autosummary
* Revert to Sphinx-native search
* Move remaining pip deps to conda
* Remove unnecessary lunrsearch templates
* Remove lunrsearch from cmake
* Tidy up layout of API docs
* Get code blocks to work with Breathe
Breathe doesn't seem to support the Doxygen <preformatted> tag.
It does support the <code> tag, but better yet it supports using
<verbatim> tags to embed rst into docstrings. This commit changes
all <pre> tags to use RST verbatim, and updates the Python
documentation machinery to support it too.
* Clarified some language
* Have doxygen exclude undocumented classes and have sphinx fail on warnings for C++ API docs
* List custom forces and integrators last
* Add breathe to documentation CI
* Typo
* Fix link to custom forces in extras.rst
* Have Breathe process only public classes
* Strip OpenMM:: prefix from rst files to avoid colons in links
* Remove existing private classes from EXCLUDE_SYMBOLS
* Add comment to C++ cmake describing why we promote warnings to errors
* Revise documentation build instructions for new dependencies
* Break user guide into parts
* Break up file I missed
* Add basic .gitignore to suit out-of-tree builds in build, build1, build2 ... build9
* Small changes to autonumber.py for doc compilation
This is a small change designed not to fix the incorrect logic of
autonumber.py, but just to get the docs compiling. While assigning
numbers, the code now just ignores the autonumber_by_chapter
setting for a particular object if it can't find the appropriate
section in section_numbers. This is a temporary fix!
* Include part and chapter in autonumbered objects
* Fix autonumber.py to correctly reference autonumber roles in file-level sections
* Unify and simplify styling across documentation
* Break dev docs down into individual chapter-files
* Correct absolute links to relative
* Disable browser suggestions for lunrsearch box in API docs
* Remove part name from chapter 2.1
* Rename ambiguous 'Home' link to OpenMM.org
* Typo
* Minor fixes and reversions
Reverts some changes I had made and later thought better of,
and fixes some recurring typos across the documentation.
* Number developers guide chapters
* Fix responsiveness
* Remove header.rst and center captions
* Add a level of depth to main TOC and styling to accomodate
* Add third level to Part-level TOCs
* Use :numref: instead of :ref: to number links to sections
* Continuously number chapters in user guide
* navbar links to other docs relative, not absolute
* Improve navbar spacing with new template
* Fix sidebar while allowing it to scroll
* Hard -> Soft links for navigation.html template
* Add navigation.html template to cmakelists
* Add another level of .. to relative links
* Fix flex on C++ and remove layer of ..
* Top level Python module is now "openmm"
* Updated module names in examples
* Updated module names in documentation
* Updated module in CI scripts
* Added deprecation warning