From f8b18013bd2a07a090054f687d50d7801a599774 Mon Sep 17 00:00:00 2001 From: Sam Gardner Date: Tue, 2 Jul 2024 02:35:13 -0500 Subject: [PATCH 01/10] all I did was specify the default values... --- tests/test_flash.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/test_flash.py b/tests/test_flash.py index c20968b..c3a4597 100644 --- a/tests/test_flash.py +++ b/tests/test_flash.py @@ -7,14 +7,14 @@ from pyxlma.lmalib.flash.properties import * -def compare_dataarrays(tocheck, truth, var): +def compare_dataarrays(tocheck, truth, var, rtol=1.e-5, atol=1.e-8): """Compare two dataarrays""" if truth[var].data.dtype == 'datetime64[ns]' or truth[var].data.dtype == 'timedelta64[ns]': if tocheck[var].data.dtype == 'float64': truth[var].data = truth[var].data.astype(float)/1e9 - np.testing.assert_allclose(tocheck[var].data.astype(float), truth[var].data.astype(float)) + np.testing.assert_allclose(tocheck[var].data.astype(float), truth[var].data.astype(float), rtol=rtol, atol=atol, equal_nan=True) else: - np.testing.assert_allclose(tocheck[var].data, truth[var].data) + np.testing.assert_allclose(tocheck[var].data, truth[var].data, rtol=rtol, atol=atol, equal_nan=True) def test_cluster_flashes(): From 9439d3d58e81359e06ed236479b869ffb6c8d9a0 Mon Sep 17 00:00:00 2001 From: Sam Gardner Date: Tue, 2 Jul 2024 02:45:45 -0500 Subject: [PATCH 02/10] update actions versions --- .github/workflows/python-package.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 3187904..a5d091d 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -19,9 +19,9 @@ jobs: python-version: ["3.9", "3.10", "3.11", "3.12"] steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v3 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - name: Install dependencies @@ -38,12 +38,12 @@ jobs: coverage run --source=pyxlma -m pytest --mpl --mpl-baseline-path=tests/truth/images/ --mpl-generate-summary=html,json --mpl-results-path=tests/mpl-results/ tests/ coverage xml - name: Upload coverage reports to Codecov - uses: codecov/codecov-action@v3 + uses: codecov/codecov-action@v4 env: CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} - name: Upload matplotlib test results if: always() - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: matplotlib-results path: tests/mpl-results/ From c9a7ce3187a1f42f003800187e3c10e5eae69253 Mon Sep 17 00:00:00 2001 From: Sam Gardner Date: Tue, 2 Jul 2024 02:48:45 -0500 Subject: [PATCH 03/10] unique artifact names --- .github/workflows/python-package.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index a5d091d..3c0575f 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -45,5 +45,5 @@ jobs: if: always() uses: actions/upload-artifact@v4 with: - name: matplotlib-results + name: matplotlib-results-${{ matrix.python-version }} path: tests/mpl-results/ From bbb117f7b364748291c7cf2756d9c77c1c0fe8e8 Mon Sep 17 00:00:00 2001 From: Sam Gardner Date: Mon, 8 Jul 2024 17:07:10 -0700 Subject: [PATCH 04/10] maybe do that more proper? --- .github/workflows/python-package.yml | 12 +++++------- tests/test-env.yml | 18 ++++++++++++++++++ 2 files changed, 23 insertions(+), 7 deletions(-) create mode 100644 tests/test-env.yml diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 3c0575f..e62f3d6 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -24,13 +24,11 @@ jobs: uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - - name: Install dependencies - run: | - "${SHELL}" <(curl -L micro.mamba.pm/install.sh) - eval "$(micromamba shell hook --shell bash)" - micromamba activate base - micromamba install pytest-cov pytest-mpl xarray netcdf4 pandas numpy scikit-learn scipy pyproj cartopy metpy ipywidgets python=${{ matrix.python-version }} -c conda-forge - python -m pip install . + - name: Install environment with micromamba + - uses: mamba-org/setup-micromamba@v1 + with: + environment-file: tests/test-env.yml + create-args: python=${{ matrix.python-version }} - name: Test with pytest run: | eval "$(micromamba shell hook --shell bash)" diff --git a/tests/test-env.yml b/tests/test-env.yml new file mode 100644 index 0000000..632eb82 --- /dev/null +++ b/tests/test-env.yml @@ -0,0 +1,18 @@ +name: pyxlma-tests +channels: +- conda-forge +dependencies: +- pytest-cov +- pytest-mpl +- xarray +- netcdf4 +- pandas +- numpy +- scipy +- scikit-learn +- pyproj +- metpy +- ipywidgets +- pip: + - git+https://github.com/deeplycloudy/lmatools + - -e . \ No newline at end of file From ef0fd0129fe2e418f5fd5e59c3d3727bf3b69025 Mon Sep 17 00:00:00 2001 From: Sam Gardner Date: Mon, 8 Jul 2024 17:13:16 -0700 Subject: [PATCH 05/10] yml is obnoxious --- .github/workflows/python-package.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index e62f3d6..0d6a341 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -25,10 +25,10 @@ jobs: with: python-version: ${{ matrix.python-version }} - name: Install environment with micromamba - - uses: mamba-org/setup-micromamba@v1 - with: - environment-file: tests/test-env.yml - create-args: python=${{ matrix.python-version }} + uses: mamba-org/setup-micromamba@v1 + with: + environment-file: tests/test-env.yml + create-args: python=${{ matrix.python-version }} - name: Test with pytest run: | eval "$(micromamba shell hook --shell bash)" From f49a409000cf883476193e08af0b4363190bfbef Mon Sep 17 00:00:00 2001 From: Sam Gardner Date: Mon, 8 Jul 2024 17:14:04 -0700 Subject: [PATCH 06/10] make names better --- .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 0d6a341..33af3e4 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.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: Run pytests on: push: @@ -10,7 +10,7 @@ on: branches: [ "master" ] jobs: - build: + test: runs-on: ubuntu-latest strategy: From bbc23aeabc8af085bd9059b2ffc3570d0b8c1928 Mon Sep 17 00:00:00 2001 From: Sam Gardner Date: Mon, 8 Jul 2024 17:15:57 -0700 Subject: [PATCH 07/10] path fix, init bash --- .github/workflows/python-package.yml | 1 + tests/test-env.yml | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 33af3e4..5103e31 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -29,6 +29,7 @@ jobs: with: environment-file: tests/test-env.yml create-args: python=${{ matrix.python-version }} + init-shell: bash - name: Test with pytest run: | eval "$(micromamba shell hook --shell bash)" diff --git a/tests/test-env.yml b/tests/test-env.yml index 632eb82..1eb95c5 100644 --- a/tests/test-env.yml +++ b/tests/test-env.yml @@ -15,4 +15,4 @@ dependencies: - ipywidgets - pip: - git+https://github.com/deeplycloudy/lmatools - - -e . \ No newline at end of file + - -e ../ \ No newline at end of file From 2614c1e7c9884ed0af787bc5dbc47f3cfeda7a39 Mon Sep 17 00:00:00 2001 From: Sam Gardner Date: Mon, 8 Jul 2024 17:16:36 -0700 Subject: [PATCH 08/10] dont double init bash --- .github/workflows/python-package.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 5103e31..330bbbd 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -32,7 +32,6 @@ jobs: init-shell: bash - name: Test with pytest run: | - eval "$(micromamba shell hook --shell bash)" micromamba activate base coverage run --source=pyxlma -m pytest --mpl --mpl-baseline-path=tests/truth/images/ --mpl-generate-summary=html,json --mpl-results-path=tests/mpl-results/ tests/ coverage xml From e6363b65e4d4cc88c1f7c763c2bf1a8c58b59526 Mon Sep 17 00:00:00 2001 From: Sam Gardner Date: Mon, 8 Jul 2024 17:17:18 -0700 Subject: [PATCH 09/10] activate test env --- .github/workflows/python-package.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 330bbbd..e359f78 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -32,7 +32,7 @@ jobs: init-shell: bash - name: Test with pytest run: | - micromamba activate base + micromamba activate pyxlma-tests coverage run --source=pyxlma -m pytest --mpl --mpl-baseline-path=tests/truth/images/ --mpl-generate-summary=html,json --mpl-results-path=tests/mpl-results/ tests/ coverage xml - name: Upload coverage reports to Codecov From 8a28cf2c246980e6be65bb93f3679c39779a38cd Mon Sep 17 00:00:00 2001 From: Sam Gardner Date: Mon, 8 Jul 2024 17:19:47 -0700 Subject: [PATCH 10/10] do double init bash --- .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 e359f78..1e65269 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -32,6 +32,7 @@ jobs: init-shell: bash - name: Test with pytest run: | + eval "$(micromamba shell hook --shell bash)" micromamba activate pyxlma-tests coverage run --source=pyxlma -m pytest --mpl --mpl-baseline-path=tests/truth/images/ --mpl-generate-summary=html,json --mpl-results-path=tests/mpl-results/ tests/ coverage xml