From 174c046377257137943e2ad0da49eb08540eb2cc Mon Sep 17 00:00:00 2001 From: Hagen Wierstorf Date: Fri, 27 Nov 2020 08:34:50 +0100 Subject: [PATCH 01/14] TST: use Github Action for executing CI jobs --- .github/workflows/test.yml | 47 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 .github/workflows/test.yml diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 00000000..f60a3c06 --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,47 @@ +name: Test + +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +jobs: + build: + + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ ubuntu-latest, macOS-latest ] + python-version: [3.5, 3.6, 3.7, 3.8] + + steps: + - uses: actions/checkout@v2 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v2 + with: + python-version: ${{ matrix.python-version }} + - name: Prepare Ubuntu + run: | + sudo apt-get update + sudo apt-get install -y pandoc ffmpeg + if: matrix.os == 'ubuntu-latest' + - name: Prepare OSX + run: | + brew install pandoc ffmpeg + if: matrix.os == 'macOS-latest' + - name: Install dependencies + run: | + python3 -m pip install --upgrade pip + python3 -m pip install . + python3 -m pip install -r tests/requirements.txt + python3 -m pip install -r doc/requirements.txt + # This is needed in example scripts: + python3 -m pip install pillow + - name: Test + run: python3 -m pytest + - name: Test documentation + run: | + python3 doc/examples/run_all.py + # This executes the example notebooks and runs the doctests: + python3 -m sphinx doc/ _build/ -b doctest From 70b8657cad5b924ba4f3d2f76314ec520e6b7fdf Mon Sep 17 00:00:00 2001 From: Hagen Wierstorf Date: Fri, 27 Nov 2020 08:35:13 +0100 Subject: [PATCH 02/14] TST: remove travis CI jobs --- .travis.yml | 33 --------------------------------- 1 file changed, 33 deletions(-) delete mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 11dc995a..00000000 --- a/.travis.yml +++ /dev/null @@ -1,33 +0,0 @@ -language: python -dist: bionic -matrix: - include: - - python: "3.5" - - python: "3.6" - - python: "3.7" - - python: "3.8" - - os: osx - language: generic - python: "" -addons: - apt: - packages: - - pandoc - - ffmpeg - homebrew: - packages: - - pandoc - - ffmpeg -install: - - python3 --version - - python3 -m pip --version - - python3 -m pip install . - - python3 -m pip install -r tests/requirements.txt - - python3 -m pip install -r doc/requirements.txt - # This is needed in example scripts: - - python3 -m pip install pillow -script: - - python3 -m pytest - - python3 doc/examples/run_all.py - # This executes the example notebooks and runs the doctests: - - python3 -m sphinx doc/ _build/ -b doctest From 824a89218ea07c8b99f5f04421e9e425bab6bfea Mon Sep 17 00:00:00 2001 From: Hagen Wierstorf Date: Fri, 27 Nov 2020 08:43:03 +0100 Subject: [PATCH 03/14] TST: remove support for Python 3.5 --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index f60a3c06..2b3d92dc 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -13,7 +13,7 @@ jobs: strategy: matrix: os: [ ubuntu-latest, macOS-latest ] - python-version: [3.5, 3.6, 3.7, 3.8] + python-version: [3.6, 3.7, 3.8] steps: - uses: actions/checkout@v2 From 77d1a61dcd935f381c4d9da208992acb60b04dfc Mon Sep 17 00:00:00 2001 From: Hagen Wierstorf Date: Sat, 28 Nov 2020 14:41:11 +0100 Subject: [PATCH 04/14] Split tests --- .github/workflows/test.yml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 2b3d92dc..e8ec6678 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -40,8 +40,7 @@ jobs: python3 -m pip install pillow - name: Test run: python3 -m pytest + - name: Test examples + run: python3 doc/examples/run_all.py - name: Test documentation - run: | - python3 doc/examples/run_all.py - # This executes the example notebooks and runs the doctests: - python3 -m sphinx doc/ _build/ -b doctest + run: python3 -m sphinx doc/ _build/ -b doctest From fab121da71c4238708ef32e389e302c872b23bf9 Mon Sep 17 00:00:00 2001 From: Hagen Wierstorf Date: Sat, 28 Nov 2020 14:43:05 +0100 Subject: [PATCH 05/14] Remove Python 3.5 in setup.py --- setup.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/setup.py b/setup.py index fc2bee52..9a7d8701 100644 --- a/setup.py +++ b/setup.py @@ -24,14 +24,13 @@ keywords="audio SFS WFS Ambisonics".split(), url="http://github.com/sfstoolbox/", platforms='any', - python_requires='>=3.5', + python_requires='>=3.6', classifiers=[ "Development Status :: 3 - Alpha", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3 :: Only", From e8ca561a4ccab1dd625042a184c11f05796da48b Mon Sep 17 00:00:00 2001 From: Hagen Wierstorf Date: Sat, 28 Nov 2020 14:45:45 +0100 Subject: [PATCH 06/14] Trigger test on every push and pull request --- .github/workflows/test.yml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index e8ec6678..b2b30f14 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -1,10 +1,6 @@ name: Test -on: - push: - branches: [ master ] - pull_request: - branches: [ master ] +on: [push, pull_request] jobs: build: From 1dd9faf84e8657cf5ea17f5c7ca840418d49bdc1 Mon Sep 17 00:00:00 2001 From: Hagen Wierstorf Date: Sat, 28 Nov 2020 14:54:59 +0100 Subject: [PATCH 07/14] Testing Windows --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index b2b30f14..1dbd48de 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -8,7 +8,7 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: [ ubuntu-latest, macOS-latest ] + os: [ubuntu-latest, macOS-latest, windows-latest] python-version: [3.6, 3.7, 3.8] steps: From 2e25a0113a545b70ba3c9975e78b36df8f83f4d0 Mon Sep 17 00:00:00 2001 From: Hagen Wierstorf Date: Sat, 28 Nov 2020 14:57:53 +0100 Subject: [PATCH 08/14] Remove apt-get update --- .github/workflows/test.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 1dbd48de..04973f2d 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -19,7 +19,6 @@ jobs: python-version: ${{ matrix.python-version }} - name: Prepare Ubuntu run: | - sudo apt-get update sudo apt-get install -y pandoc ffmpeg if: matrix.os == 'ubuntu-latest' - name: Prepare OSX From be7b71a26f4b59ff8fd2d58cb301139aab03d2ce Mon Sep 17 00:00:00 2001 From: Hagen Wierstorf Date: Sat, 28 Nov 2020 14:58:20 +0100 Subject: [PATCH 09/14] Add --no-install-recommends to apt-get install --- .github/workflows/test.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 04973f2d..cf1eaef6 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -18,12 +18,10 @@ jobs: with: python-version: ${{ matrix.python-version }} - name: Prepare Ubuntu - run: | - sudo apt-get install -y pandoc ffmpeg + run: sudo apt-get install --no-install-recommends -y pandoc ffmpeg if: matrix.os == 'ubuntu-latest' - name: Prepare OSX - run: | - brew install pandoc ffmpeg + run: brew install pandoc ffmpeg if: matrix.os == 'macOS-latest' - name: Install dependencies run: | From 0cc8e2c956082d951cb4aa852eac1ce33caa6fa4 Mon Sep 17 00:00:00 2001 From: Hagen Wierstorf Date: Sat, 28 Nov 2020 15:02:03 +0100 Subject: [PATCH 10/14] Revert "Remove apt-get update" This reverts commit 2e25a0113a545b70ba3c9975e78b36df8f83f4d0. --- .github/workflows/test.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index cf1eaef6..287fedf8 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -18,7 +18,9 @@ jobs: with: python-version: ${{ matrix.python-version }} - name: Prepare Ubuntu - run: sudo apt-get install --no-install-recommends -y pandoc ffmpeg + run: | + sudo apt-get update + sudo apt-get install --no-install-recommends -y pandoc ffmpeg if: matrix.os == 'ubuntu-latest' - name: Prepare OSX run: brew install pandoc ffmpeg From 803513e1c781bafd0c35f6e2c070cecef1123b56 Mon Sep 17 00:00:00 2001 From: Hagen Wierstorf Date: Sat, 28 Nov 2020 15:05:25 +0100 Subject: [PATCH 11/14] Try to execute Python under Windows --- .github/workflows/test.yml | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 287fedf8..c730f6e8 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -27,15 +27,16 @@ jobs: if: matrix.os == 'macOS-latest' - name: Install dependencies run: | - python3 -m pip install --upgrade pip - python3 -m pip install . - python3 -m pip install -r tests/requirements.txt - python3 -m pip install -r doc/requirements.txt + python -V + python -m pip install --upgrade pip + python -m pip install . + python -m pip install -r tests/requirements.txt + python -m pip install -r doc/requirements.txt # This is needed in example scripts: - python3 -m pip install pillow + python -m pip install pillow - name: Test - run: python3 -m pytest + run: python -m pytest - name: Test examples - run: python3 doc/examples/run_all.py + run: python doc/examples/run_all.py - name: Test documentation - run: python3 -m sphinx doc/ _build/ -b doctest + run: python -m sphinx doc/ _build/ -b doctest From 88bbb7b8c4c0e49a3cce9270f5af6fe6c389c1e1 Mon Sep 17 00:00:00 2001 From: Hagen Wierstorf Date: Sat, 28 Nov 2020 15:34:18 +0100 Subject: [PATCH 12/14] Debug installation under Windows --- .github/workflows/test.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index c730f6e8..dc6d4d52 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -8,7 +8,8 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: [ubuntu-latest, macOS-latest, windows-latest] + # os: [ubuntu-latest, macOS-latest, windows-latest] + os: [windows-latest] python-version: [3.6, 3.7, 3.8] steps: @@ -25,6 +26,8 @@ jobs: - name: Prepare OSX run: brew install pandoc ffmpeg if: matrix.os == 'macOS-latest' + - name: prepare Windows + run: choco install pandoc ffmpeg - name: Install dependencies run: | python -V From 88845fc0dd7553427f153f2169a9dfa995070031 Mon Sep 17 00:00:00 2001 From: Hagen Wierstorf Date: Sat, 28 Nov 2020 15:38:17 +0100 Subject: [PATCH 13/14] Debug only under 3.6 --- .github/workflows/test.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index dc6d4d52..cd50d265 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -10,7 +10,8 @@ jobs: matrix: # os: [ubuntu-latest, macOS-latest, windows-latest] os: [windows-latest] - python-version: [3.6, 3.7, 3.8] + # python-version: [3.6, 3.7, 3.8] + python-version: [3.6] steps: - uses: actions/checkout@v2 From 3ed848cc2fbecbcea4d39c886800d6b22589454d Mon Sep 17 00:00:00 2001 From: Hagen Wierstorf Date: Sat, 28 Nov 2020 15:52:55 +0100 Subject: [PATCH 14/14] Re-enable all tests --- .github/workflows/test.yml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index cd50d265..22d7f47c 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -8,10 +8,8 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - # os: [ubuntu-latest, macOS-latest, windows-latest] - os: [windows-latest] - # python-version: [3.6, 3.7, 3.8] - python-version: [3.6] + os: [ubuntu-latest, macOS-latest, windows-latest] + python-version: [3.6, 3.7, 3.8] steps: - uses: actions/checkout@v2 @@ -29,6 +27,7 @@ jobs: if: matrix.os == 'macOS-latest' - name: prepare Windows run: choco install pandoc ffmpeg + if: matrix.os == 'windows-latest' - name: Install dependencies run: | python -V