From 50e59e98bfac08ace8f963416bdc2423f4c0ee82 Mon Sep 17 00:00:00 2001 From: Felix Date: Fri, 21 Apr 2023 11:50:08 +0900 Subject: [PATCH 01/13] Add python requirements file to install pytest --- tests/test_requirements.txt | 1 + 1 file changed, 1 insertion(+) create mode 100644 tests/test_requirements.txt diff --git a/tests/test_requirements.txt b/tests/test_requirements.txt new file mode 100644 index 0000000..e079f8a --- /dev/null +++ b/tests/test_requirements.txt @@ -0,0 +1 @@ +pytest From bc29fe5624537041fb02d8ff0e70e2892aa4889c Mon Sep 17 00:00:00 2001 From: Felix Date: Fri, 21 Apr 2023 11:51:53 +0900 Subject: [PATCH 02/13] Add continuous integration test for python --- .github/workflows/ci_test.yml | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 .github/workflows/ci_test.yml diff --git a/.github/workflows/ci_test.yml b/.github/workflows/ci_test.yml new file mode 100644 index 0000000..ac86fe1 --- /dev/null +++ b/.github/workflows/ci_test.yml @@ -0,0 +1,25 @@ +name: CI Test + +on: [push, pull_request] + +jobs: + + test-python: + runs-on: ubuntu-22.04 + + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Set up Python + uses: actions/setup-python@v4 + with: + python-version: 3.11 + cache: "pip" + + - name: Install fCWT + run: python setup.py install + + - name: Run PyTest + run: pytest + working-directory: ./tests From 74920d016ed80b48d77daa22951a23b007d766f1 Mon Sep 17 00:00:00 2001 From: Felix Date: Fri, 21 Apr 2023 11:53:58 +0900 Subject: [PATCH 03/13] Add numpy as requirement --- tests/test_requirements.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/test_requirements.txt b/tests/test_requirements.txt index e079f8a..1cc18fc 100644 --- a/tests/test_requirements.txt +++ b/tests/test_requirements.txt @@ -1 +1,2 @@ +numpy pytest From e33e9e6fddbba7a447258b258d1449cdfabb71ae Mon Sep 17 00:00:00 2001 From: Felix Date: Fri, 21 Apr 2023 11:54:19 +0900 Subject: [PATCH 04/13] Add python requirements install step --- .github/workflows/ci_test.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/ci_test.yml b/.github/workflows/ci_test.yml index ac86fe1..4b40916 100644 --- a/.github/workflows/ci_test.yml +++ b/.github/workflows/ci_test.yml @@ -17,6 +17,9 @@ jobs: python-version: 3.11 cache: "pip" + - name: Install dependencies + run: pip install -r ./tests/test_requirements.txt + - name: Install fCWT run: python setup.py install From daf482739a0508de10537f73ba46f305d4f46bdb Mon Sep 17 00:00:00 2001 From: Felix Date: Fri, 21 Apr 2023 12:23:41 +0900 Subject: [PATCH 05/13] Add actions for windows, linux and macOS (x86,arm) --- .github/workflows/ci_test.yml | 89 +++++++++++++++++++++++++++++++++++ 1 file changed, 89 insertions(+) diff --git a/.github/workflows/ci_test.yml b/.github/workflows/ci_test.yml index 4b40916..508e7da 100644 --- a/.github/workflows/ci_test.yml +++ b/.github/workflows/ci_test.yml @@ -4,6 +4,95 @@ on: [push, pull_request] jobs: +# ------------------------------------------------------------ + test-windows: + runs-on: windows-2022 + + steps: + - name: Clone Repository + uses: actions/checkout@v3 + + - name: Add msbuild to PATH + uses: microsoft/setup-msbuild@v1.1 + + - name: Compile Tests for Windows x86 + run: | + cmake -B %GITHUB_WORKSPACE%\build_test -G "Visual Studio 17 2022" -DCMAKE_SYSTEM_VERSION=10.0.22000.0 -S %GITHUB_WORKSPACE% + cmake --build %GITHUB_WORKSPACE%\build_test --config Release --parallel 4 + %GITHUB_WORKSPACE%/build/fCWT_example.exe + shell: cmd + +# ------------------------------------------------------------ + + test-macos: + runs-on: macos-11 + + steps: + - name: Clone Repository + uses: actions/checkout@v3 + + - name: Setup Cmake + uses: jwlawson/actions-setup-cmake@v1.13 + with: + cmake-version: '3.21' + + - name: Compile Tests for MacOS x86_64 + run: | + cmake -B $GITHUB_WORKSPACE/build -DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 -DCMAKE_BUILD_TYPE=Release -S $GITHUB_WORKSPACE + cmake --build $GITHUB_WORKSPACE/build --config Release --parallel 4 + $GITHUB_WORKSPACE/build/fCWT_example + +# ------------------------------------------------------------ + + test-macos: + runs-on: macos-12 + + steps: + - name: Clone Repository + uses: actions/checkout@v3 + + - name: Setup Cmake + uses: jwlawson/actions-setup-cmake@v1.13 + with: + cmake-version: '3.21' + + - name: Compile Tests for MacOS arm64 + run: | + cmake -B $GITHUB_WORKSPACE/build_test -DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 -DCMAKE_BUILD_TYPE=Release -S $GITHUB_WORKSPACE + cmake --build $GITHUB_WORKSPACE/build_test --config Release --parallel 4 + $GITHUB_WORKSPACE/build/fCWT_example + +# ------------------------------------------------------------ + + test-linux: + runs-on: ubuntu-22.04 + + steps: + - name: Clone Repository + uses: actions/checkout@v3 + + - name: Install Dependencies + env: + DEBIAN_FRONTEND: noninteractive + run: | + sudo -H apt-get update -y + sudo -H apt-get install -y python3-dev + sudo -H pip3 install -r $GITHUB_WORKSPACE/tests/test_requirements.txt + + - name: Setup Cmake + uses: jwlawson/actions-setup-cmake@v1.13 + with: + cmake-version: '3.21' + + - name: Compile Tests for Linux + run: | + cmake -B $GITHUB_WORKSPACE/build_test -DCMAKE_BUILD_TYPE=Release -S $GITHUB_WORKSPACE + cmake --build $GITHUB_WORKSPACE/build_test --config Release --parallel 4 + $GITHUB_WORKSPACE/build/fCWT_example + + +# ------------------------------------------------------------ + test-python: runs-on: ubuntu-22.04 From c431f3fd44b13a7076274a00369e67a53db20893 Mon Sep 17 00:00:00 2001 From: Felix Date: Fri, 21 Apr 2023 12:27:31 +0900 Subject: [PATCH 06/13] Fix yaml syntax --- .github/workflows/ci_test.yml | 74 +++++++++++++++++------------------ 1 file changed, 37 insertions(+), 37 deletions(-) diff --git a/.github/workflows/ci_test.yml b/.github/workflows/ci_test.yml index 508e7da..05d03bd 100644 --- a/.github/workflows/ci_test.yml +++ b/.github/workflows/ci_test.yml @@ -10,17 +10,17 @@ jobs: steps: - name: Clone Repository - uses: actions/checkout@v3 + uses: actions/checkout@v3 - name: Add msbuild to PATH - uses: microsoft/setup-msbuild@v1.1 + uses: microsoft/setup-msbuild@v1.1 - name: Compile Tests for Windows x86 - run: | - cmake -B %GITHUB_WORKSPACE%\build_test -G "Visual Studio 17 2022" -DCMAKE_SYSTEM_VERSION=10.0.22000.0 -S %GITHUB_WORKSPACE% - cmake --build %GITHUB_WORKSPACE%\build_test --config Release --parallel 4 - %GITHUB_WORKSPACE%/build/fCWT_example.exe - shell: cmd + run: | + cmake -B %GITHUB_WORKSPACE%\build_test -G "Visual Studio 17 2022" -DCMAKE_SYSTEM_VERSION=10.0.22000.0 -S %GITHUB_WORKSPACE% + cmake --build %GITHUB_WORKSPACE%\build_test --config Release --parallel 4 + %GITHUB_WORKSPACE%/build/fCWT_example.exe + shell: cmd # ------------------------------------------------------------ @@ -29,18 +29,18 @@ jobs: steps: - name: Clone Repository - uses: actions/checkout@v3 + uses: actions/checkout@v3 - name: Setup Cmake - uses: jwlawson/actions-setup-cmake@v1.13 - with: - cmake-version: '3.21' + uses: jwlawson/actions-setup-cmake@v1.13 + with: + cmake-version: '3.21' - name: Compile Tests for MacOS x86_64 - run: | - cmake -B $GITHUB_WORKSPACE/build -DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 -DCMAKE_BUILD_TYPE=Release -S $GITHUB_WORKSPACE - cmake --build $GITHUB_WORKSPACE/build --config Release --parallel 4 - $GITHUB_WORKSPACE/build/fCWT_example + run: | + cmake -B $GITHUB_WORKSPACE/build -DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 -DCMAKE_BUILD_TYPE=Release -S $GITHUB_WORKSPACE + cmake --build $GITHUB_WORKSPACE/build --config Release --parallel 4 + $GITHUB_WORKSPACE/build/fCWT_example # ------------------------------------------------------------ @@ -49,18 +49,18 @@ jobs: steps: - name: Clone Repository - uses: actions/checkout@v3 + uses: actions/checkout@v3 - name: Setup Cmake - uses: jwlawson/actions-setup-cmake@v1.13 - with: - cmake-version: '3.21' + uses: jwlawson/actions-setup-cmake@v1.13 + with: + cmake-version: '3.21' - name: Compile Tests for MacOS arm64 - run: | - cmake -B $GITHUB_WORKSPACE/build_test -DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 -DCMAKE_BUILD_TYPE=Release -S $GITHUB_WORKSPACE - cmake --build $GITHUB_WORKSPACE/build_test --config Release --parallel 4 - $GITHUB_WORKSPACE/build/fCWT_example + run: | + cmake -B $GITHUB_WORKSPACE/build_test -DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 -DCMAKE_BUILD_TYPE=Release -S $GITHUB_WORKSPACE + cmake --build $GITHUB_WORKSPACE/build_test --config Release --parallel 4 + $GITHUB_WORKSPACE/build/fCWT_example # ------------------------------------------------------------ @@ -69,26 +69,26 @@ jobs: steps: - name: Clone Repository - uses: actions/checkout@v3 + uses: actions/checkout@v3 - name: Install Dependencies - env: - DEBIAN_FRONTEND: noninteractive - run: | - sudo -H apt-get update -y - sudo -H apt-get install -y python3-dev - sudo -H pip3 install -r $GITHUB_WORKSPACE/tests/test_requirements.txt + env: + DEBIAN_FRONTEND: noninteractive + run: | + sudo -H apt-get update -y + sudo -H apt-get install -y python3-dev + sudo -H pip3 install -r $GITHUB_WORKSPACE/tests/test_requirements.txt - name: Setup Cmake - uses: jwlawson/actions-setup-cmake@v1.13 - with: - cmake-version: '3.21' + uses: jwlawson/actions-setup-cmake@v1.13 + with: + cmake-version: '3.21' - name: Compile Tests for Linux - run: | - cmake -B $GITHUB_WORKSPACE/build_test -DCMAKE_BUILD_TYPE=Release -S $GITHUB_WORKSPACE - cmake --build $GITHUB_WORKSPACE/build_test --config Release --parallel 4 - $GITHUB_WORKSPACE/build/fCWT_example + run: | + cmake -B $GITHUB_WORKSPACE/build_test -DCMAKE_BUILD_TYPE=Release -S $GITHUB_WORKSPACE + cmake --build $GITHUB_WORKSPACE/build_test --config Release --parallel 4 + $GITHUB_WORKSPACE/build/fCWT_example # ------------------------------------------------------------ From 2e4a5fe84818b19144b0c124d78aff8292bc72fe Mon Sep 17 00:00:00 2001 From: Felix Date: Fri, 21 Apr 2023 12:28:21 +0900 Subject: [PATCH 07/13] Fix dubplicated job name --- .github/workflows/ci_test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci_test.yml b/.github/workflows/ci_test.yml index 05d03bd..efcfdca 100644 --- a/.github/workflows/ci_test.yml +++ b/.github/workflows/ci_test.yml @@ -44,7 +44,7 @@ jobs: # ------------------------------------------------------------ - test-macos: + test-macos-arm: runs-on: macos-12 steps: From ed62fc3ae2d7d2fcf3f754dcecdb07fd04aba1e3 Mon Sep 17 00:00:00 2001 From: Felix Date: Fri, 21 Apr 2023 12:43:10 +0900 Subject: [PATCH 08/13] Fix windows build folder --- .github/workflows/ci_test.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci_test.yml b/.github/workflows/ci_test.yml index efcfdca..4b9ecd3 100644 --- a/.github/workflows/ci_test.yml +++ b/.github/workflows/ci_test.yml @@ -17,9 +17,9 @@ jobs: - name: Compile Tests for Windows x86 run: | - cmake -B %GITHUB_WORKSPACE%\build_test -G "Visual Studio 17 2022" -DCMAKE_SYSTEM_VERSION=10.0.22000.0 -S %GITHUB_WORKSPACE% - cmake --build %GITHUB_WORKSPACE%\build_test --config Release --parallel 4 - %GITHUB_WORKSPACE%/build/fCWT_example.exe + cmake -B %GITHUB_WORKSPACE%\build -G "Visual Studio 17 2022" -DCMAKE_SYSTEM_VERSION=10.0.22000.0 -S %GITHUB_WORKSPACE% + cmake --build %GITHUB_WORKSPACE%\build --config Release --parallel 4 + %GITHUB_WORKSPACE%/build/Release/fCWT_example.exe shell: cmd # ------------------------------------------------------------ From 109f27e88fcfcfff9c2a4a305ef4997726630804 Mon Sep 17 00:00:00 2001 From: Felix Date: Fri, 21 Apr 2023 12:44:13 +0900 Subject: [PATCH 09/13] Fix build paths for linux and macOS arm --- .github/workflows/ci_test.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci_test.yml b/.github/workflows/ci_test.yml index 4b9ecd3..8034a15 100644 --- a/.github/workflows/ci_test.yml +++ b/.github/workflows/ci_test.yml @@ -58,8 +58,8 @@ jobs: - name: Compile Tests for MacOS arm64 run: | - cmake -B $GITHUB_WORKSPACE/build_test -DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 -DCMAKE_BUILD_TYPE=Release -S $GITHUB_WORKSPACE - cmake --build $GITHUB_WORKSPACE/build_test --config Release --parallel 4 + cmake -B $GITHUB_WORKSPACE/build -DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 -DCMAKE_BUILD_TYPE=Release -S $GITHUB_WORKSPACE + cmake --build $GITHUB_WORKSPACE/build --config Release --parallel 4 $GITHUB_WORKSPACE/build/fCWT_example # ------------------------------------------------------------ @@ -86,8 +86,8 @@ jobs: - name: Compile Tests for Linux run: | - cmake -B $GITHUB_WORKSPACE/build_test -DCMAKE_BUILD_TYPE=Release -S $GITHUB_WORKSPACE - cmake --build $GITHUB_WORKSPACE/build_test --config Release --parallel 4 + cmake -B $GITHUB_WORKSPACE/build -DCMAKE_BUILD_TYPE=Release -S $GITHUB_WORKSPACE + cmake --build $GITHUB_WORKSPACE/build --config Release --parallel 4 $GITHUB_WORKSPACE/build/fCWT_example From d583222354da0d369065991d915fbf924dab6f33 Mon Sep 17 00:00:00 2001 From: Felix Date: Fri, 21 Apr 2023 12:59:20 +0900 Subject: [PATCH 10/13] Attempt to fix missing library by cd into build folder --- .github/workflows/ci_test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci_test.yml b/.github/workflows/ci_test.yml index 8034a15..90cfec2 100644 --- a/.github/workflows/ci_test.yml +++ b/.github/workflows/ci_test.yml @@ -88,7 +88,7 @@ jobs: run: | cmake -B $GITHUB_WORKSPACE/build -DCMAKE_BUILD_TYPE=Release -S $GITHUB_WORKSPACE cmake --build $GITHUB_WORKSPACE/build --config Release --parallel 4 - $GITHUB_WORKSPACE/build/fCWT_example + cd $GITHUB_WORKSPACE/build && fCWT_example # ------------------------------------------------------------ From dded5ba8ae902030fabc1c61f95593ab230dfd08 Mon Sep 17 00:00:00 2001 From: Felix Date: Fri, 21 Apr 2023 13:00:53 +0900 Subject: [PATCH 11/13] Try to fix cmd not found --- .github/workflows/ci_test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci_test.yml b/.github/workflows/ci_test.yml index 90cfec2..5e20f0e 100644 --- a/.github/workflows/ci_test.yml +++ b/.github/workflows/ci_test.yml @@ -88,7 +88,7 @@ jobs: run: | cmake -B $GITHUB_WORKSPACE/build -DCMAKE_BUILD_TYPE=Release -S $GITHUB_WORKSPACE cmake --build $GITHUB_WORKSPACE/build --config Release --parallel 4 - cd $GITHUB_WORKSPACE/build && fCWT_example + cd $GITHUB_WORKSPACE/build && ./fCWT_example # ------------------------------------------------------------ From 8b1cf1d5a5bc918f108f46348c96a639375fbcc0 Mon Sep 17 00:00:00 2001 From: Felix Date: Fri, 21 Apr 2023 13:07:07 +0900 Subject: [PATCH 12/13] Export library path on linux before running test --- .github/workflows/ci_test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci_test.yml b/.github/workflows/ci_test.yml index 5e20f0e..a0c0c65 100644 --- a/.github/workflows/ci_test.yml +++ b/.github/workflows/ci_test.yml @@ -88,7 +88,7 @@ jobs: run: | cmake -B $GITHUB_WORKSPACE/build -DCMAKE_BUILD_TYPE=Release -S $GITHUB_WORKSPACE cmake --build $GITHUB_WORKSPACE/build --config Release --parallel 4 - cd $GITHUB_WORKSPACE/build && ./fCWT_example + export LD_LIBRARY_PATH=$GITHUB_WORKSPACE/libs:$LD_LIBRARY_PATH && $GITHUB_WORKSPACE/build/fCWT_example # ------------------------------------------------------------ From b29de269b72d85503bc42f0a9555b7fa7cfb0161 Mon Sep 17 00:00:00 2001 From: Felix Date: Fri, 21 Apr 2023 13:11:24 +0900 Subject: [PATCH 13/13] Remove export linker path (was wrong anyway) and install libfftw on linux --- .github/workflows/ci_test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci_test.yml b/.github/workflows/ci_test.yml index a0c0c65..51c47e0 100644 --- a/.github/workflows/ci_test.yml +++ b/.github/workflows/ci_test.yml @@ -76,7 +76,7 @@ jobs: DEBIAN_FRONTEND: noninteractive run: | sudo -H apt-get update -y - sudo -H apt-get install -y python3-dev + sudo -H apt-get install -y libfftw3-3 python3-dev sudo -H pip3 install -r $GITHUB_WORKSPACE/tests/test_requirements.txt - name: Setup Cmake @@ -88,7 +88,7 @@ jobs: run: | cmake -B $GITHUB_WORKSPACE/build -DCMAKE_BUILD_TYPE=Release -S $GITHUB_WORKSPACE cmake --build $GITHUB_WORKSPACE/build --config Release --parallel 4 - export LD_LIBRARY_PATH=$GITHUB_WORKSPACE/libs:$LD_LIBRARY_PATH && $GITHUB_WORKSPACE/build/fCWT_example + $GITHUB_WORKSPACE/build/fCWT_example # ------------------------------------------------------------