From 74fa59517122f643e8c246912809c8ab33880e5b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pablo=20G=C3=B3mez?= Date: Mon, 2 Jan 2023 11:10:57 +0100 Subject: [PATCH 1/6] updated workflow script --- .github/workflows/run_tests.yml | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/.github/workflows/run_tests.yml b/.github/workflows/run_tests.yml index 7afd53a8..a7a3012e 100644 --- a/.github/workflows/run_tests.yml +++ b/.github/workflows/run_tests.yml @@ -43,12 +43,17 @@ jobs: 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: Install dependencies - run: | - $CONDA/bin/conda env update --file environment_all_backends.yml --name base + - name: provision-with-micromamba + uses: mamba-org/provision-with-micromamba@main + with: + environment-file: environment.yml + environment-name: torchquad + cache-downloads: true - name: Test with pytest + shell: bash -l {0} run: | + micromamba activate torchquad cd torchquad/tests - conda install pytest - $CONDA/bin/pip3 install pytest-error-for-skips - $CONDA/bin/pytest -ra --error-for-skips + micromamba install pytest + micromamba install pytest-error-for-skips + pytest -ra --error-for-skips \ No newline at end of file From b34f1e62e44cd6ca5d0add8866bbdd12becc9f15 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pablo=20G=C3=B3mez?= Date: Mon, 2 Jan 2023 11:16:59 +0100 Subject: [PATCH 2/6] fixing workflow errors --- .github/workflows/run_tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/run_tests.yml b/.github/workflows/run_tests.yml index a7a3012e..763b7bd8 100644 --- a/.github/workflows/run_tests.yml +++ b/.github/workflows/run_tests.yml @@ -55,5 +55,5 @@ jobs: micromamba activate torchquad cd torchquad/tests micromamba install pytest - micromamba install pytest-error-for-skips + pip install pytest-error-for-skips pytest -ra --error-for-skips \ No newline at end of file From 0d6b392a53fba872424bfee330b4a64bb860ca68 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pablo=20G=C3=B3mez?= Date: Mon, 2 Jan 2023 11:25:28 +0100 Subject: [PATCH 3/6] try to use same pytest --- .github/workflows/run_tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/run_tests.yml b/.github/workflows/run_tests.yml index 763b7bd8..2811df15 100644 --- a/.github/workflows/run_tests.yml +++ b/.github/workflows/run_tests.yml @@ -54,6 +54,6 @@ jobs: run: | micromamba activate torchquad cd torchquad/tests - micromamba install pytest + pip install pytest pip install pytest-error-for-skips pytest -ra --error-for-skips \ No newline at end of file From 06e6c0c0ebfc5ce0090eda913ee6da35272fd52b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pablo=20G=C3=B3mez?= Date: Mon, 2 Jan 2023 11:29:11 +0100 Subject: [PATCH 4/6] switched to correct env file --- .github/workflows/run_tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/run_tests.yml b/.github/workflows/run_tests.yml index 2811df15..3ea30bab 100644 --- a/.github/workflows/run_tests.yml +++ b/.github/workflows/run_tests.yml @@ -46,7 +46,7 @@ jobs: - name: provision-with-micromamba uses: mamba-org/provision-with-micromamba@main with: - environment-file: environment.yml + environment-file: environment_all_backends.yml environment-name: torchquad cache-downloads: true - name: Test with pytest From b6af718bc158fc52ef8a3e1e273e00c59b3f180d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pablo=20G=C3=B3mez?= Date: Mon, 2 Jan 2023 11:43:58 +0100 Subject: [PATCH 5/6] installing jax for tests --- .github/workflows/run_tests.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/run_tests.yml b/.github/workflows/run_tests.yml index 3ea30bab..0a48a306 100644 --- a/.github/workflows/run_tests.yml +++ b/.github/workflows/run_tests.yml @@ -56,4 +56,5 @@ jobs: cd torchquad/tests pip install pytest pip install pytest-error-for-skips + pip install --upgrade "jax[cpu]" pytest -ra --error-for-skips \ No newline at end of file From afe0ae5a16c41bda91e7b8548b4344a5c585132f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pablo=20G=C3=B3mez?= Date: Tue, 3 Jan 2023 15:22:39 +0100 Subject: [PATCH 6/6] Changing build env to recommended --- .github/workflows/run_tests.yml | 77 ++++++++++++++++----------------- environment_all_backends.yml | 41 +++++++++--------- 2 files changed, 58 insertions(+), 60 deletions(-) diff --git a/.github/workflows/run_tests.yml b/.github/workflows/run_tests.yml index 0a48a306..4b173353 100644 --- a/.github/workflows/run_tests.yml +++ b/.github/workflows/run_tests.yml @@ -6,55 +6,52 @@ name: Running tests on: push: branches: - - main - - develop + - main + - develop pull_request: workflow_dispatch: jobs: lint_flake8: - runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 - - name: Set up Python 3.9 - uses: actions/setup-python@v2 - with: - python-version: 3.9 - - name: Lint with flake8 - run: | - pip install flake8 - flake8 . --count --show-source --statistics + - uses: actions/checkout@v2 + - name: Set up Python 3.9 + uses: actions/setup-python@v2 + with: + python-version: 3.9 + - name: Lint with flake8 + run: | + pip install flake8 + flake8 . --count --show-source --statistics build: - runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 - - name: Set up Python 3.9 - uses: actions/setup-python@v2 - with: - python-version: 3.9 - - name: Search for severe code errors with flake8 - run: | - # stop the build if there are Python syntax errors or undefined names - pip install flake8 - 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: provision-with-micromamba - uses: mamba-org/provision-with-micromamba@main - with: - environment-file: environment_all_backends.yml - environment-name: torchquad - cache-downloads: true - - name: Test with pytest - shell: bash -l {0} - run: | - micromamba activate torchquad - cd torchquad/tests - pip install pytest - pip install pytest-error-for-skips - pip install --upgrade "jax[cpu]" - pytest -ra --error-for-skips \ No newline at end of file + - uses: actions/checkout@v2 + - name: Set up Python 3.9 + uses: actions/setup-python@v2 + with: + python-version: 3.9 + - name: Search for severe code errors with flake8 + run: | + # stop the build if there are Python syntax errors or undefined names + pip install flake8 + 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: provision-with-micromamba + uses: mamba-org/provision-with-micromamba@main + with: + environment-file: environment_all_backends.yml + environment-name: torchquad + cache-downloads: true + - name: Test with pytest + shell: bash -l {0} + run: | + micromamba activate torchquad + cd torchquad/tests + pip install pytest + pip install pytest-error-for-skips + pytest -ra --error-for-skips diff --git a/environment_all_backends.yml b/environment_all_backends.yml index a902b61e..52995ee8 100644 --- a/environment_all_backends.yml +++ b/environment_all_backends.yml @@ -1,24 +1,25 @@ # A conda environment file to install all supported numerical backends name: torchquad channels: -- conda-forge -- pytorch + - conda-forge + - pytorch dependencies: -- autoray>=0.2.5 -- loguru>=0.5.3 -- matplotlib>=3.3.3 -- pytest>=6.2.1 -- python>=3.8 -- scipy>=1.6.0 -- sphinx>=3.4.3 -- sphinx_rtd_theme>=0.5.1 -- tqdm>=4.56.0 -# Numerical backend installations with CUDA support where possible: -- numpy>=1.19.5 -- cudatoolkit>=11.1 -- pytorch>=1.9=*cuda* -- tensorflow-gpu>=2.6.0 -# jaxlib with CUDA support is not available for conda -- pip: - - --find-links https://storage.googleapis.com/jax-releases/jax_releases.html - - jax[cuda]>=0.2.22 # this will only work on linux. for win see e.g. https://github.com/cloudhan/jax-windows-builder + - autoray>=0.2.5 + - loguru>=0.5.3 + - matplotlib>=3.3.3 + - pytest>=6.2.1 + - python>=3.8 + - scipy>=1.6.0 + - sphinx>=3.4.3 + - sphinx_rtd_theme>=0.5.1 + - tqdm>=4.56.0 + # Numerical backend installations with CUDA support where possible: + - numpy>=1.19.5 + - cudatoolkit>=11.1 + - pytorch>=1.9 # CPU version + - tensorflow>=2.10.0 # CPU version + # jaxlib with CUDA support is not available for conda + - pip: + - --find-links https://storage.googleapis.com/jax-releases/jax_releases.html + - jax[cpu]>=0.2.22 # this will only work on linux. for win see e.g. https://github.com/cloudhan/jax-windows-builder + # CPU version