1. 17 Oct, 2022 1 commit
    • Mike Henry's avatar
      Feat/add host envs (#3808) · 48885911
      Mike Henry authored
      * add guide for dev builds
      
      * hosted env file for openmm-8 beta
      
      * explain how to host an env
      
      * add a namespace to support different os
      
      * pin all the versions
      
      * add version pins and env name
      
      * Added pytest
      48885911
  2. 20 Sep, 2022 1 commit
  3. 30 Jun, 2022 1 commit
    • Peter Eastman's avatar
      Use PocketFFT (#3667) · 1dac981a
      Peter Eastman authored
      * Use PocketFFT instead of FFTW
      
      * Minor cleanup
      
      * Use PocketFFT instead of fftpack for reference platform
      
      * Remove FFTW as a dependency
      
      * Converted a test case to use PocketFFT
      
      * Fixed an incorrect comment
      1dac981a
  4. 04 May, 2022 1 commit
  5. 18 Mar, 2022 1 commit
  6. 03 Dec, 2021 1 commit
  7. 23 Nov, 2021 1 commit
    • Mike Henry's avatar
      Add M1 build testing to GHA (#3335) · c28ae903
      Mike Henry authored
      * lets see what blows up!
      
      * need to add env file, different name than normal
      
      * lets see if setting an env will help it find the base
      
      * try forcing the use of mamba
      
      * this should break everything, but might make osx work
      
      * lets see if this fixes the issue with the extension
      
      * ci bump
      
      * lets see if a different installer will work
      
      * single thread build to see error better
      
      * ci bump
      
      * ci bump
      
      * can't build opencl on m1
      
      * add salt to url to prevent caching
      
      * rename to reflect that we can just build CPU
      
      * going to add a M1 x86_64 buld and an arm64 build
      
      * lets see if I broke 86
      
      * now lets see what happens with arm
      
      * forgot to add new build files
      
      * try older python version
      
      * newer python?
      
      * try mini forge
      
      * ci bump
      
      * unpin doxygen and remove gromacs as a dep
      
      * double check where x86_64 libs are getting pulled in
      
      * ci bump
      
      * try and use conda compiler toolchain and set arch
      
      * weird things happend with setting arch
      
      * lets see what the arch the runner thinks it is using
      
      * try printing arch again
      
      * undo shell change
      
      * remove changes to shell
      
      * make sure I don't break other buikds
      
      * fix syntax issue and add new label to actionlint
      
      * ci bump
      
      * ci bump
      
      * lets focus on arm64 builds for now
      
      * ci bump
      
      * ci bump
      
      * try setting arch to build with arch command
      
      * split steps up so other builds don't break
      
      * see if the cmake step is the only one we need to arch-ify
      
      * cleaning things up
      
      * cleaning things up
      
      * set -j2 for make
      
      * we can use the same build step as the otehr builds
      
      * now lets see if it can install gromacs
      
      * no gromacs, no problem?
      
      * remove bit of logic stopping the build
      
      * pin doxygen to 1.9.1
      
      * try building openCL
      
      * ci bump
      
      * ci bump
      c28ae903
  8. 05 Nov, 2021 1 commit
  9. 03 Nov, 2021 1 commit
  10. 26 Oct, 2021 1 commit
    • Peter Eastman's avatar
      Added AMOEBA 2018 force field (#3299) · 06767dde
      Peter Eastman authored
      * Adding support for new AMOEBA features
      
      * Support modern method of specifying in-plane angles
      
      * Implemented stretch-torsions
      
      * Implemented angle-torsions
      
      * More AMOEBA fixes
      
      * Bug fix
      
      * Converted AMOEBA 2018 force field
      
      * Added documentation for AMOEBA 2018
      
      * Added a missing file for tests
      06767dde
  11. 11 Aug, 2021 1 commit
    • Josh A. Mitchell's avatar
      Move to actively maintained dependencies for API docs (#3201) · ae2fe2fd
      Josh A. Mitchell authored
      * 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
      ae2fe2fd
  12. 15 Jun, 2021 1 commit
  13. 03 May, 2021 1 commit
  14. 14 Apr, 2021 1 commit
  15. 11 Feb, 2021 1 commit
  16. 10 Feb, 2021 1 commit
    • Jaime Rodríguez-Guerra's avatar
      Migrate CI to GH Actions (#2964) · 6f8534dc
      Jaime Rodríguez-Guerra authored
      * Add draft GHA-based CI for Linux
      
      * Fix events
      
      * Dup key
      
      * Fix path
      
      * Update env vars
      
      * More fixes
      
      * Fix env vars again
      
      * add doxygen
      
      * add sudo
      
      * Typo
      
      * upgrade CUDA
      
      * escape newlines
      
      * more backslashes
      
      * fix CUDA_APT
      
      * more env vars fixes
      
      * fix missing file
      
      * acumulate env_vars
      
      * build python wrappers only if requested
      
      * add pytest
      
      * use $GITHUB_ENV
      
      https://docs.github.com/en/free-pro-team@latest/actions/reference/workflow-commands-for-github-actions#environment-files
      
      * use ${GITHUB_WORKSPACE}
      
      * Pin older gromacs
      
      * add windows
      
      * Provide default values for unbound vars
      
      * fixes
      
      * this is powershell not cmd
      
      * update envs
      
      * win fix
      
      * make windows use cmd
      
      * Change install prefix
      
      * fixes
      
      * better env files
      
      * Increase timeout threshold
      
      * set xcode to 10.x
      
      * specify action version
      
      * fix sdk in macos
      
      * split jobs a bit more
      
      * build wrappers even if tests failed for c...
      6f8534dc
  17. 09 Feb, 2021 1 commit
  18. 01 Feb, 2021 1 commit
  19. 24 Jul, 2020 1 commit
  20. 29 Mar, 2020 1 commit
    • Rasmus Wriedt Larsen's avatar
      Minor Python tweaks (#2616) · c87b96fb
      Rasmus Wriedt Larsen authored
      * Use list-comprehension in Python code
      
      A minor change, but slighly easier to understand the initialization of
      `parent_exclude_list` in my opinion.
      
      * Implement __ne__ in Python classes that has __eq__
      
      In Python 3, `__ne__` is automatically implemented as `not __eq__`.
      
      However, in Python 2 it seems to be implemented as `not is` (so based on object
      identity).
      
      Based on setup.py [0] which says that "OpenMM requires Python 2.7 or better", it
      should be useful to have better support for Python 2 :)
      
      This was already done in 4 of the 12 classes that implements `__eq__`
      
      ```
      >>> class WildCard(object):
      ...     def __eq__(self, other): return True
      
      >>> w = WildCard()
      
      >>> w == 42
      True
      
      >>> w != 42
      True
      
      >>> w != w
      False
      ```
      
      [0]: https://github.com/openmm/openmm/blob/5cef29ce8d4e17b6d0f9fd8a3c6cc1669ca0ba2b/wrappers/python/setup.py#L237
      
      * Use umambiguous floor division for index calculations in Python
      
      This makes the code work as intended if run...
      c87b96fb
  21. 05 Sep, 2019 1 commit
  22. 04 Sep, 2019 2 commits
  23. 30 Aug, 2019 2 commits
  24. 29 Aug, 2019 2 commits
  25. 08 Aug, 2019 1 commit
  26. 12 Jul, 2019 1 commit
  27. 10 Jun, 2019 1 commit
  28. 05 Mar, 2019 2 commits
    • Jason Swails's avatar
      4ec26e2f
    • Jason Swails's avatar
      Enable docker for GPU builds · a150d570
      Jason Swails authored
      I finally got nvidia-docker2 installed and actually working on my Gentoo
      machine (I had to disable their restriction of using GPU devices to
      users in the 'video' group, since the nvidia container runtime hook
      didn't run as a user with those privileges, and I can't figure out what
      user it was running as).
      
      The other GPU-enabled node I added to the Jenkins array runs Ubuntu, and
      that one already has nvidia-docker2 installed and running correctly on
      it.
      a150d570
  29. 28 Nov, 2018 1 commit
    • Jason Swails's avatar
      Use Jenkinsfile to drive the pipeline job (#2198) · 6aeccb40
      Jason Swails authored
      * Add a Jenkinsfile to drive a pipeline
      
      * Also tweaks the installation script for Jenkins to be more amenable to
      running other variants in parallel
      * Restrict packaging script to only accept Python 2.7, since I think
      that's long been the minimum supported Python version
      * Allow run-ctest.py to run tests in parallel (and take advantage of
      that in the Jenkins tests).
      
      * CUDA -> CUDA_VERSION
      
      * Jenkins will automatically post result back to GitHub.
      
      Not need to have a separate step do that explicitly.
      
      * Run as a login shell.
      
      * Force looking for CUDA node.
      
      * Make sure we load conda module.
      
      * Start building in a docker slave -- much nicer!
      
      * Try to fix up the installation a little.
      
      * Fix more build issues.
      
      * More build debugging.
      
      * Oops -- recursive :-o
      
      * Put opencl lib in library path
      
      * Try 9.2
      
      * Fix library path
      
      * More updates to Jenkins build recipes.
      
      * Try a new (simpler?) approach with building
      
      * Oops...
      6aeccb40
  30. 27 Nov, 2018 1 commit
  31. 08 Oct, 2018 1 commit
  32. 28 Aug, 2018 1 commit
  33. 05 Apr, 2018 1 commit
    • Jason Swails's avatar
      Use g++ instead of clang and fix PythonInstall · ec4344c7
      Jason Swails authored
      clang is tested everywhere else, and it's not as routinely up-to-date on
      my Jenkins machine.
      
      PythonInstall failed on Linux machines where the build/install
      directories had paths with spaces in them.
      ec4344c7
  34. 14 Dec, 2017 1 commit
  35. 12 Nov, 2017 1 commit
  36. 12 May, 2017 1 commit