1. 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 as Python 3
      
      ```
      $ python2 -c 'print(3/2, 3//2)'
      (1, 1)
      $ python3 -c 'print(3/2, 3//2)'
      1.5 1
      ```
      
      * Use `with` for file handling in Python
      
      * Use `is None` instead of `== None` in Python
      
      This is recommended in PEP8:
      
      > Comparisons to singletons like None should always be done with is or is not, never the equality operators.
      > - https://www.python.org/dev/peps/pep-0008/#programming-recommendations
      c87b96fb
  2. 05 Sep, 2019 1 commit
  3. 04 Sep, 2019 2 commits
  4. 30 Aug, 2019 2 commits
  5. 29 Aug, 2019 2 commits
  6. 08 Aug, 2019 1 commit
  7. 12 Jul, 2019 1 commit
  8. 10 Jun, 2019 1 commit
  9. 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
  10. 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
  11. 27 Nov, 2018 1 commit
  12. 08 Oct, 2018 1 commit
  13. 28 Aug, 2018 1 commit
  14. 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
  15. 14 Dec, 2017 1 commit
  16. 12 Nov, 2017 1 commit
  17. 12 May, 2017 1 commit
  18. 15 Mar, 2017 1 commit
  19. 28 Feb, 2017 8 commits
  20. 18 Jan, 2017 1 commit
  21. 24 Dec, 2016 6 commits
  22. 23 Dec, 2016 1 commit
  23. 15 Dec, 2016 1 commit
  24. 09 Dec, 2016 1 commit