diff --git a/.github/workflows/pr_nox.yml b/.github/workflows/pr_nox.yml new file mode 100644 index 0000000..2687a94 --- /dev/null +++ b/.github/workflows/pr_nox.yml @@ -0,0 +1,37 @@ +name: PR quality (nox) + +on: + pull_request: + branches: [ "main" ] + +jobs: + nox: + strategy: + fail-fast: false + matrix: + include: + - os: ubuntu-latest + python-version: "3.11" + - os: ubuntu-latest + python-version: "3.12" + - os: ubuntu-latest + python-version: "3.13" + - os: windows-latest + python-version: "3.13" + - os: macos-latest + python-version: "3.13" + runs-on: ${{ matrix.os }} + steps: + - name: Check out repository + uses: actions/checkout@v4 + + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v5 + with: + python-version: ${{ matrix.python-version }} + + - name: Install nox + run: python -m pip install --upgrade pip nox + + - name: Run Nox static checks + run: python -m nox -t static_check diff --git a/src/oet/server_client/server.py b/src/oet/server_client/server.py index 4414106..8d3c2d6 100755 --- a/src/oet/server_client/server.py +++ b/src/oet/server_client/server.py @@ -22,6 +22,7 @@ import logging import os import signal +import sys import threading import time import traceback @@ -542,7 +543,8 @@ def worker_initializer() -> None: """Initialize a worker process by restoring default signal handling.""" signal.signal(signal.SIGTERM, signal.SIG_DFL) signal.signal(signal.SIGINT, signal.SIG_DFL) - signal.signal(signal.SIGHUP, signal.SIG_DFL) + if sys.platform != "win32": + signal.signal(signal.SIGHUP, signal.SIG_DFL) def main() -> None: @@ -616,7 +618,8 @@ def main() -> None: signal.signal(signal.SIGTERM, lambda s, f: cleanup_and_exit(s, f, executor, parser)) signal.signal(signal.SIGINT, lambda s, f: cleanup_and_exit(s, f, executor, parser)) - signal.signal(signal.SIGHUP, lambda s, f: cleanup_and_exit(s, f, executor, parser)) + if sys.platform != "win32": + signal.signal(signal.SIGHUP, lambda s, f: cleanup_and_exit(s, f, executor, parser)) # Create workers workers = args.nthreads diff --git a/tests/mlatom/test_mlatom.py b/tests/mlatom/test_mlatom.py index 7c2aa2c..12eb806 100644 --- a/tests/mlatom/test_mlatom.py +++ b/tests/mlatom/test_mlatom.py @@ -1,4 +1,5 @@ import unittest + import torchani from oet import ROOT_DIR @@ -33,7 +34,7 @@ class MLatomTests(unittest.TestCase): def setUpClass(cls): # Force download / initialization of ANI-1ccx once torchani.models.ANI1ccx(periodic_table_index=True) - + def test_H2O_engrad(self): xyz_file, input_file, engrad_out, output_file = get_filenames("H2O") write_xyz_file(xyz_file, WATER)