From be675d35b099a463d50e94bfb89d4025cb6f6284 Mon Sep 17 00:00:00 2001 From: Nathan Gray Date: Fri, 24 Jan 2025 14:14:57 -0800 Subject: [PATCH 01/11] Create python-package.yml --- .github/workflows/python-package.yml | 41 ++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 .github/workflows/python-package.yml diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml new file mode 100644 index 00000000..76b01ef1 --- /dev/null +++ b/.github/workflows/python-package.yml @@ -0,0 +1,41 @@ +# This workflow will install Python dependencies, run tests and lint with a variety of Python versions +# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python + +name: Python package + +on: + push: + branches: [ "main"] + pull_request: + branches: [ "main" ] + +jobs: + build: + + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + python-version: ["3.10"] + + steps: + - uses: actions/checkout@v4 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v4 + with: + python-version: ${{ matrix.python-version }} + - name: Install dependencies + run: | + python -m pip install --upgrade pip + python -m pip install ./src/tesp_support + python -m pip install flake8 pytest + # if [ -f requirements.txt ]; then pip install -r requirements.txt; fi + - name: Lint with flake8 + run: | + # stop the build if there are Python syntax errors or undefined names + flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics + # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide + flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics + - name: Test with pytest + run: | + pytest From 671720898298b42389b233ff465128303ec04c94 Mon Sep 17 00:00:00 2001 From: Nathan Gray Date: Fri, 24 Jan 2025 14:19:58 -0800 Subject: [PATCH 02/11] Update python-package.yml --- .github/workflows/python-package.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 76b01ef1..84747bd4 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -38,4 +38,5 @@ jobs: flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics - name: Test with pytest run: | + cd ./src/tesp_support pytest From 48263e1acc75ec7ff69b77808eadd0e428bd6172 Mon Sep 17 00:00:00 2001 From: Nathan Gray Date: Fri, 24 Jan 2025 14:25:27 -0800 Subject: [PATCH 03/11] Update python-package.yml --- .github/workflows/python-package.yml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 84747bd4..c3528883 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -33,10 +33,9 @@ jobs: - name: Lint with flake8 run: | # stop the build if there are Python syntax errors or undefined names - flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics + flake8 ./src/tesp_support --count --select=E9,F63,F7,F82 --show-source --statistics # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide - flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics + flake8 ./src/tesp_support --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics - name: Test with pytest run: | - cd ./src/tesp_support - pytest + pytest ./src/tesp_support From 4f9aff92c53f17362df3092519d8245d4f0d11e0 Mon Sep 17 00:00:00 2001 From: nathantgray Date: Fri, 24 Jan 2025 15:12:24 -0800 Subject: [PATCH 04/11] update python-package.yml --- .github/workflows/python-package.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index c3528883..6450af35 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -33,9 +33,9 @@ jobs: - name: Lint with flake8 run: | # stop the build if there are Python syntax errors or undefined names - flake8 ./src/tesp_support --count --select=E9,F63,F7,F82 --show-source --statistics + flake8 ./src/tesp_support/tesp_support/api --count --select=E9,F63,F7,F82 --show-source --statistics # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide - flake8 ./src/tesp_support --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics + flake8 ./src/tesp_support/tesp_support/api --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics - name: Test with pytest run: | pytest ./src/tesp_support From 0262dfb5e928bc03bd5b195117855256c471b9ed Mon Sep 17 00:00:00 2001 From: Nathan Gray Date: Thu, 6 Feb 2025 13:59:25 -0800 Subject: [PATCH 05/11] Update python-package.yml test mypy --- .github/workflows/python-package.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 6450af35..2a1437f5 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -36,6 +36,9 @@ jobs: flake8 ./src/tesp_support/tesp_support/api --count --select=E9,F63,F7,F82 --show-source --statistics # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide flake8 ./src/tesp_support/tesp_support/api --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics + - name: Check types with mypy + uses: sasanquaneuf/mypy-github-action@releases/v1 + - name: Test with pytest run: | pytest ./src/tesp_support From 4e5d8867fb6cae0702158fdb039160d37e17a5e7 Mon Sep 17 00:00:00 2001 From: Nathan Gray Date: Thu, 6 Feb 2025 14:01:25 -0800 Subject: [PATCH 06/11] Update python-package.yml test mypy --- .github/workflows/python-package.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 2a1437f5..ad580b62 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -29,6 +29,7 @@ jobs: python -m pip install --upgrade pip python -m pip install ./src/tesp_support python -m pip install flake8 pytest + python -m pip install mypy # if [ -f requirements.txt ]; then pip install -r requirements.txt; fi - name: Lint with flake8 run: | From aa9b1a1164ab10e8e212b8e87eec17c0ba8cd9f0 Mon Sep 17 00:00:00 2001 From: nathantgray Date: Fri, 14 Feb 2025 13:40:15 -0800 Subject: [PATCH 07/11] fix schedule_client.py --- src/tesp_support/tesp_support/api/schedule_client.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/tesp_support/tesp_support/api/schedule_client.py b/src/tesp_support/tesp_support/api/schedule_client.py index f5920c7c..fa727e75 100644 --- a/src/tesp_support/tesp_support/api/schedule_client.py +++ b/src/tesp_support/tesp_support/api/schedule_client.py @@ -12,7 +12,7 @@ from multiprocessing.managers import BaseManager -# import psutil # 3rd party module for process info (not strictly required) +import psutil # 3rd party module for process info (not strictly required) # Grab the shared proxy class. All methods in that class will be available here From 316d10e5f69f27237474977e501f5a8de7a807c9 Mon Sep 17 00:00:00 2001 From: Nathan Gray Date: Fri, 14 Feb 2025 13:50:52 -0800 Subject: [PATCH 08/11] Update python-package.yml run mypy manually --- .github/workflows/python-package.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index ad580b62..a7d5ed94 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -38,8 +38,8 @@ jobs: # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide flake8 ./src/tesp_support/tesp_support/api --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics - name: Check types with mypy - uses: sasanquaneuf/mypy-github-action@releases/v1 - + run: | + mypy ./src/tesp_support/tesp_support/api - name: Test with pytest run: | pytest ./src/tesp_support From fc5a354f3a2ffbf23d406bcc6aa514bd9a32db92 Mon Sep 17 00:00:00 2001 From: nathantgray Date: Fri, 14 Feb 2025 14:09:13 -0800 Subject: [PATCH 09/11] seperate linting and testing from type checking --- .../{python-package.yml => lint.yml} | 2 +- .github/workflows/type-check.yml | 34 +++++++++++++++++++ 2 files changed, 35 insertions(+), 1 deletion(-) rename .github/workflows/{python-package.yml => lint.yml} (96%) create mode 100644 .github/workflows/type-check.yml diff --git a/.github/workflows/python-package.yml b/.github/workflows/lint.yml similarity index 96% rename from .github/workflows/python-package.yml rename to .github/workflows/lint.yml index a7d5ed94..78812f2a 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/lint.yml @@ -16,7 +16,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.10"] + python-version: ["3.10", "3.11", "3.12"] steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/type-check.yml b/.github/workflows/type-check.yml new file mode 100644 index 00000000..7fe688a8 --- /dev/null +++ b/.github/workflows/type-check.yml @@ -0,0 +1,34 @@ +# This workflow will install Python dependencies, run tests and lint with a variety of Python versions +# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python + +name: Python package + +on: + push: + branches: [ "main"] + pull_request: + branches: [ "main" ] + +jobs: + build: + + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + python-version: ["3.10"] + + steps: + - uses: actions/checkout@v4 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v4 + with: + python-version: ${{ matrix.python-version }} + - name: Install dependencies + run: | + python -m pip install --upgrade pip + python -m pip install ./src/tesp_support + python -m pip install mypy + - name: Check types with mypy + run: | + mypy ./src/tesp_support/tesp_support/api From c973a97ffa4f5b5886ea6ca5104da96b9ef9706c Mon Sep 17 00:00:00 2001 From: nathantgray Date: Fri, 14 Feb 2025 14:14:29 -0800 Subject: [PATCH 10/11] fix lint --- .github/workflows/lint.yml | 6 +----- .github/workflows/type-check.yml | 2 +- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 78812f2a..a12ae17e 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -1,7 +1,7 @@ # This workflow will install Python dependencies, run tests and lint with a variety of Python versions # For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python -name: Python package +name: Lint and test on: push: @@ -29,7 +29,6 @@ jobs: python -m pip install --upgrade pip python -m pip install ./src/tesp_support python -m pip install flake8 pytest - python -m pip install mypy # if [ -f requirements.txt ]; then pip install -r requirements.txt; fi - name: Lint with flake8 run: | @@ -37,9 +36,6 @@ jobs: flake8 ./src/tesp_support/tesp_support/api --count --select=E9,F63,F7,F82 --show-source --statistics # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide flake8 ./src/tesp_support/tesp_support/api --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics - - name: Check types with mypy - run: | - mypy ./src/tesp_support/tesp_support/api - name: Test with pytest run: | pytest ./src/tesp_support diff --git a/.github/workflows/type-check.yml b/.github/workflows/type-check.yml index 7fe688a8..b1fff2e2 100644 --- a/.github/workflows/type-check.yml +++ b/.github/workflows/type-check.yml @@ -1,7 +1,7 @@ # This workflow will install Python dependencies, run tests and lint with a variety of Python versions # For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python -name: Python package +name: mypy type check on: push: From 4de0ed0fb01f46eb1d65b0bbb9d06ca92488c856 Mon Sep 17 00:00:00 2001 From: nathantgray Date: Fri, 14 Feb 2025 14:42:02 -0800 Subject: [PATCH 11/11] deactivate faulty test --- ..._trans_metrics_proc.py => inactive_test_trans_metrics_proc.py} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename src/tesp_support/test/original/{test_trans_metrics_proc.py => inactive_test_trans_metrics_proc.py} (100%) diff --git a/src/tesp_support/test/original/test_trans_metrics_proc.py b/src/tesp_support/test/original/inactive_test_trans_metrics_proc.py similarity index 100% rename from src/tesp_support/test/original/test_trans_metrics_proc.py rename to src/tesp_support/test/original/inactive_test_trans_metrics_proc.py