From d55de982695813ad4216d35fdcb38a25f1a4dcd6 Mon Sep 17 00:00:00 2001 From: Jason Christopherson Date: Thu, 21 May 2026 07:16:19 -0500 Subject: [PATCH 01/10] Update version --- CMakeLists.txt | 2 +- fpm.toml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index d3369b6..043ce0a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.24) project( fplot LANGUAGES Fortran - VERSION 1.8.3 + VERSION 1.8.4 ) # Confgiure everything diff --git a/fpm.toml b/fpm.toml index 8a3d9c4..c5d3a27 100644 --- a/fpm.toml +++ b/fpm.toml @@ -1,5 +1,5 @@ name = "fplot" -version = "1.8.3" +version = "1.8.4" license = "GPL-3.0" author = "Jason Christopherson" maintainer = "Jason Christopherson" From f2426a8bb3293b683304f19f182553f334a0e4d6 Mon Sep 17 00:00:00 2001 From: Jason Christopherson Date: Thu, 21 May 2026 07:16:25 -0500 Subject: [PATCH 02/10] Update CI --- .github/workflows/cmake.yml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 1fdb8e7..bee743c 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -17,11 +17,18 @@ jobs: matrix: os: [ubuntu-latest, macos-latest] toolchain: - - {compiler: gcc, version: 11} + - {compiler: gcc, version: 12} + - {compiler: gcc, version: 13} + - {compiler: gcc, version: 14} + - {compiler: gcc, version: 15} + - {compiler: gcc, version: 16} - {compiler: intel-classic, version: '2021.9'} include: - os: ubuntu-latest toolchain: {compiler: intel, version: '2023.2'} + exclude: + - os: macos-latest + toolchain: {compiler: gcc, version: 16} steps: - uses: fortran-lang/setup-fortran@v1.6.1 From f0f42fdf348903f0dc039ccd0c801c856396558c Mon Sep 17 00:00:00 2001 From: Jason Christopherson Date: Thu, 21 May 2026 07:20:02 -0500 Subject: [PATCH 03/10] Update CI --- .github/workflows/fpm.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/fpm.yml b/.github/workflows/fpm.yml index 7977703..159569c 100644 --- a/.github/workflows/fpm.yml +++ b/.github/workflows/fpm.yml @@ -9,7 +9,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest] - gcc_v: [12] # Version of GFortran we want to use. + gcc_v: [15] # Version of GFortran we want to use. include: - os: ubuntu-latest os-arch: linux-x86_64 From 736d0fedaeb4248e8dba117f30a07eedf26a02a7 Mon Sep 17 00:00:00 2001 From: Jason Christopherson Date: Thu, 21 May 2026 08:07:38 -0500 Subject: [PATCH 04/10] Update --- .github/workflows/cmake.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index bee743c..c496fe0 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -17,9 +17,6 @@ jobs: matrix: os: [ubuntu-latest, macos-latest] toolchain: - - {compiler: gcc, version: 12} - - {compiler: gcc, version: 13} - - {compiler: gcc, version: 14} - {compiler: gcc, version: 15} - {compiler: gcc, version: 16} - {compiler: intel-classic, version: '2021.9'} From f9757f654b9567a7395feb1bdb859cb24861e8a4 Mon Sep 17 00:00:00 2001 From: Jason Christopherson Date: Thu, 21 May 2026 11:07:13 -0500 Subject: [PATCH 05/10] Add compilers --- .github/workflows/cmake.yml | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index c496fe0..826f08b 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -19,13 +19,25 @@ jobs: toolchain: - {compiler: gcc, version: 15} - {compiler: gcc, version: 16} - - {compiler: intel-classic, version: '2021.9'} + - {compiler: intel, version: '2021.1'} + - {compiler: intel, version: '2022.0'} + - {compiler: intel, version: '2023.0'} + - {compiler: intel, version: '2024.0'} + - {compiler: intel, version: '2025.0'} include: - os: ubuntu-latest toolchain: {compiler: intel, version: '2023.2'} exclude: - os: macos-latest toolchain: {compiler: gcc, version: 16} + - os: macos-latest + toolchain: {compiler: intel, version: '2022.0'} + - os: macos-latest + toolchain: {compiler: intel, version: '2023.0'} + - os: macos-latest + toolchain: {compiler: intel, version: '2024.0'} + - os: macos-latest + toolchain: {compiler: intel, version: '2025.0'} steps: - uses: fortran-lang/setup-fortran@v1.6.1 From bc4da83f0de93b1a2c7fdeceb9faa75c3d48759f Mon Sep 17 00:00:00 2001 From: Jason Christopherson Date: Thu, 21 May 2026 11:15:41 -0500 Subject: [PATCH 06/10] Clean up --- .github/workflows/cmake.yml | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 826f08b..2b4b354 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -23,21 +23,15 @@ jobs: - {compiler: intel, version: '2022.0'} - {compiler: intel, version: '2023.0'} - {compiler: intel, version: '2024.0'} - - {compiler: intel, version: '2025.0'} - include: - - os: ubuntu-latest - toolchain: {compiler: intel, version: '2023.2'} exclude: - os: macos-latest toolchain: {compiler: gcc, version: 16} - os: macos-latest - toolchain: {compiler: intel, version: '2022.0'} - - os: macos-latest - toolchain: {compiler: intel, version: '2023.0'} - - os: macos-latest - toolchain: {compiler: intel, version: '2024.0'} - - os: macos-latest - toolchain: {compiler: intel, version: '2025.0'} + toolchain: + - {compiler: intel, version: '2022.0'} + - {compiler: intel, version: '2023.0'} + - {compiler: intel, version: '2024.0'} + - {compiler: intel, version: '2025.0'} steps: - uses: fortran-lang/setup-fortran@v1.6.1 From 6865ee082df2ce312a45bf644f62e3e72f459f4e Mon Sep 17 00:00:00 2001 From: Jason Christopherson Date: Thu, 21 May 2026 11:33:24 -0500 Subject: [PATCH 07/10] Clean up --- .github/workflows/cmake.yml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 2b4b354..7708ac2 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -23,15 +23,16 @@ jobs: - {compiler: intel, version: '2022.0'} - {compiler: intel, version: '2023.0'} - {compiler: intel, version: '2024.0'} - exclude: - - os: macos-latest - toolchain: {compiler: gcc, version: 16} + exclude: - os: macos-latest toolchain: + - {compiler: gcc, version: 16} - {compiler: intel, version: '2022.0'} - {compiler: intel, version: '2023.0'} - {compiler: intel, version: '2024.0'} - {compiler: intel, version: '2025.0'} + - os: ubuntu-latest + toolchain: {compiler: intel, version: 2021.1} steps: - uses: fortran-lang/setup-fortran@v1.6.1 From 69f6f735ea5203d75128736ffdd0588860f131fd Mon Sep 17 00:00:00 2001 From: Jason Christopherson Date: Thu, 21 May 2026 11:48:57 -0500 Subject: [PATCH 08/10] More CI Clean Up --- .github/workflows/fpm.yml | 104 ++++++++++++++++++++++++++------------ 1 file changed, 72 insertions(+), 32 deletions(-) diff --git a/.github/workflows/fpm.yml b/.github/workflows/fpm.yml index 159569c..ee09447 100644 --- a/.github/workflows/fpm.yml +++ b/.github/workflows/fpm.yml @@ -3,43 +3,83 @@ name: fpm on: [push, pull_request] jobs: - gcc-build: + test_fpm: + if: ${{ !contains(github.event.head_commit.message, '[skip ci]') }} + name: ${{ matrix.os }}_${{ matrix.compiler }}_fpm runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: - os: [ubuntu-latest] - gcc_v: [15] # Version of GFortran we want to use. include: - - os: ubuntu-latest - os-arch: linux-x86_64 + - {os: ubuntu-latest, compiler: gfortran } + - {os: ubuntu-latest, compiler: ifx } + # - {os: ubuntu-latest, compiler: flang-new} see: https://github.com/llvm/llvm-project/issues/180374 + - {os: ubuntu-latest, compiler: nvfortran} + - {os: windows-latest, compiler: gfortran } + - {os: windows-latest, compiler: ifx, fpm-version: "0.12.0"} + # - {os: windows-latest, compiler: flang-new} + - {os: macos-latest, compiler: gfortran } + steps: + - name: Setup Fortran + uses: gha3mi/setup-fortran-conda@latest + with: + compiler: ${{ matrix.compiler }} + fpm-version: ${{ matrix.fpm-version }} - env: - FC: gfortran - GCC_V: ${{ matrix.gcc_v }} + - name: fpm test (debug) + if: always() + run: fpm test --profile debug --compiler ${{ matrix.compiler }} --verbose - steps: - - name: Checkout code - uses: actions/checkout@v1 - - - name: Install GFortran Linux - if: contains(matrix.os, 'ubuntu') - run: | - sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-${GCC_V} 100 \ - --slave /usr/bin/gfortran gfortran /usr/bin/gfortran-${GCC_V} \ - --slave /usr/bin/gcov gcov /usr/bin/gcov-${GCC_V} + - name: fpm test (release) + if: always() + run: fpm test --profile release --compiler ${{ matrix.compiler }} --verbose + + - name: fpm example (debug) + if: always() + run: fpm run --example --all --profile debug --compiler ${{ matrix.compiler }} --verbose + + - name: fpm example (release) + if: always() + run: fpm run --example --all --profile release --compiler ${{ matrix.compiler }} --verbose + +# jobs: +# gcc-build: +# runs-on: ${{ matrix.os }} +# strategy: +# fail-fast: false +# matrix: +# os: [ubuntu-latest] +# gcc_v: [15] # Version of GFortran we want to use. +# include: +# - os: ubuntu-latest +# os-arch: linux-x86_64 + +# env: +# FC: gfortran +# GCC_V: ${{ matrix.gcc_v }} + +# steps: +# - name: Checkout code +# uses: actions/checkout@v1 + +# - name: Install GFortran Linux +# if: contains(matrix.os, 'ubuntu') +# run: | +# sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-${GCC_V} 100 \ +# --slave /usr/bin/gfortran gfortran /usr/bin/gfortran-${GCC_V} \ +# --slave /usr/bin/gcov gcov /usr/bin/gcov-${GCC_V} - - name: Install fpm - uses: fortran-lang/setup-fpm@v5 - with: - fpm-version: 'v0.10.1' - - - name: Build FPLOT - run: | - gfortran --version - fpm build - - - name: Run tests - run: | - gfortran --version - fpm test \ No newline at end of file +# - name: Install fpm +# uses: fortran-lang/setup-fpm@v5 +# with: +# fpm-version: 'v0.10.1' + +# - name: Build FPLOT +# run: | +# gfortran --version +# fpm build + +# - name: Run tests +# run: | +# gfortran --version +# fpm test \ No newline at end of file From 7458b84b1d79fd1405d85009f702cd63fb7a72a5 Mon Sep 17 00:00:00 2001 From: Jason Christopherson Date: Thu, 21 May 2026 11:52:00 -0500 Subject: [PATCH 09/10] More CI Clean Up --- .github/workflows/cmake.yml | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 7708ac2..655e6ba 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -25,12 +25,15 @@ jobs: - {compiler: intel, version: '2024.0'} exclude: - os: macos-latest - toolchain: - - {compiler: gcc, version: 16} - - {compiler: intel, version: '2022.0'} - - {compiler: intel, version: '2023.0'} - - {compiler: intel, version: '2024.0'} - - {compiler: intel, version: '2025.0'} + toolchain: {compiler: gcc, version: 16} + - os: macos-latest + toolchain: {compiler: intel, version: '2022.0'} + - os: macos-latest + toolchain: {compiler: intel, version: '2023.0'} + - os: macos-latest + toolchain: {compiler: intel, version: '2024.0'} + - os: macos-latest + toolchain: {compiler: intel, version: '2025.0'} - os: ubuntu-latest toolchain: {compiler: intel, version: 2021.1} From 9bcb5dab10474fa290b35e98b98e80ce6867fad0 Mon Sep 17 00:00:00 2001 From: Jason Christopherson Date: Thu, 21 May 2026 12:01:13 -0500 Subject: [PATCH 10/10] A bit more clean up --- .github/workflows/fpm.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.github/workflows/fpm.yml b/.github/workflows/fpm.yml index ee09447..7b9464b 100644 --- a/.github/workflows/fpm.yml +++ b/.github/workflows/fpm.yml @@ -13,11 +13,8 @@ jobs: include: - {os: ubuntu-latest, compiler: gfortran } - {os: ubuntu-latest, compiler: ifx } - # - {os: ubuntu-latest, compiler: flang-new} see: https://github.com/llvm/llvm-project/issues/180374 - - {os: ubuntu-latest, compiler: nvfortran} - {os: windows-latest, compiler: gfortran } - {os: windows-latest, compiler: ifx, fpm-version: "0.12.0"} - # - {os: windows-latest, compiler: flang-new} - {os: macos-latest, compiler: gfortran } steps: - name: Setup Fortran