From 1466e8438a9b0b004c5f77b671a3d4ba36d0dedc Mon Sep 17 00:00:00 2001 From: James Mitchell Date: Fri, 20 Mar 2026 17:17:30 +0000 Subject: [PATCH 01/11] Attempt to resolve #1059 --- .github/workflows/workspaces.yml | 98 ++++++++++++++++---------------- 1 file changed, 50 insertions(+), 48 deletions(-) diff --git a/.github/workflows/workspaces.yml b/.github/workflows/workspaces.yml index 87216643d..a6f54a7a9 100644 --- a/.github/workflows/workspaces.yml +++ b/.github/workflows/workspaces.yml @@ -12,7 +12,7 @@ on: - "stable-*.*" schedule: # Every day at 3:15 AM UTC - - cron: '15 3 * * *' + - cron: "15 3 * * *" concurrency: # Group by workflow and ref; the last component ensures that for pull requests @@ -23,51 +23,53 @@ concurrency: jobs: workspaces: - env: - GAP_VERSION: "4.12.2" - name: "GAP 4.12.2 / ubuntu / 64-bit" - runs-on: ubuntu-latest - container: - image: jamesdbmitchell/gap-docker-minimal:version-4.12.2 - options: --user root - volumes: - - ${{ github.workspace }}:/home/gap/inst/gap-4.12.2/pkg/Semigroups - steps: - - name: "Checkout the Semigroups GAP package" + env: + GAP_VERSION: "4.14.0" + GAP_USER_HOME: "/opt/gap" + GAP: "gap -A -T --quitonbreak" + name: "GAP 4.14.0 / ubuntu / 64-bit" + runs-on: ubuntu-latest + container: + image: ghcr.io/gap-system/gap:4.14.0-bare + options: --user gap + volumes: + - ${{ github.workspace }}:${{ eng.GAP_USER_HOME}}/gap-${{ env.GAP_VERSION }}/pkg/Semigroups + steps: + - name: "Checkout the Semigroups GAP package" - uses: actions/checkout@v6 - - name: "Install git + autotools" - run: | - sudo apt-get --yes update - sudo apt-get install git --yes - sudo apt-get install pkg-config m4 libtool automake autoconf --yes - sudo apt-get install libtool-bin --yes - - name: "Setup ccache" - uses: Chocobo1/setup-ccache-action@v1 - with: - update_packager_index: false - override_cache_key: ${{ runner.os }}-v4.12.2-64-${{ github.ref }} - override_cache_key_fallback: ${{ runner.os }}-v4.12.2-64 - - name: "Build the Semigroups GAP package" - run: | - cd /home/gap/inst/gap-4.12.2/pkg/Semigroups - ./prerequisites.sh - ./autogen.sh - ./configure --disable-hpcombi - make -j4 - - name: "Install Semigroups GAP package dependencies" - run: | - echo "LoadPackage(\"PackageManager\"); QuitGap(InstallPackage(\"autodoc\", false));" | gap -A -T --quitonbteak - echo "LoadPackage(\"PackageManager\"); QuitGap(InstallPackage(\"datastructures\", false));" | gap -A -T --quitonbteak - echo "LoadPackage(\"PackageManager\"); QuitGap(InstallPackage(\"digraphs\", false));" | gap -A -T --quitonbteak - echo "LoadPackage(\"PackageManager\"); QuitGap(InstallPackage(\"genss\", false));" | gap -A -T --quitonbteak - echo "LoadPackage(\"PackageManager\"); QuitGap(InstallPackage(\"images\", false));" | gap -A -T --quitonbteak - echo "LoadPackage(\"PackageManager\"); QuitGap(InstallPackage(\"orb\", false) and CompilePackage(\"orb\"));" | gap -A -T --quitonbteak - - name: "Run tst/workspaces/save.g" - run: | - cd /home/gap/inst/gap-4.12.2/pkg/Semigroups - gap -A -T --quitonbreak tst/workspaces/save.g - - name: "Run tst/workspaces/load.g" - run: | - cd /home/gap/inst/gap-4.12.2/pkg/Semigroups - gap -A -T --quitonbreak -L tst/workspaces/test-output.w tst/workspaces/load.g + uses: actions/checkout@v6 + - name: "Install git + autotools" + run: | + sudo apt-get --yes update + sudo apt-get install git --yes + sudo apt-get install pkg-config m4 libtool automake autoconf --yes + sudo apt-get install libtool-bin --yes + - name: "Setup ccache" + uses: Chocobo1/setup-ccache-action@v1 + with: + update_packager_index: false + override_cache_key: ${{ runner.os }}-v${{ env.GAP_VERSION }}-64-${{ github.ref }} + override_cache_key_fallback: ${{ runner.os }}-v${{ env.GAP_VERSION }}-64 + - name: "Build the Semigroups GAP package" + run: | + cd "$GAP_USER_HOME/gap-$GAP_VERSION/pkg/Semigroups" + ./prerequisites.sh + ./autogen.sh + ./configure --disable-hpcombi + make -j4 + - name: "Install Semigroups GAP package dependencies" + run: | + echo "LoadPackage(\"PackageManager\"); QuitGap(InstallPackage(\"autodoc\", false));" | $GAP + echo "LoadPackage(\"PackageManager\"); QuitGap(InstallPackage(\"datastructures\", false));" | $GAP + echo "LoadPackage(\"PackageManager\"); QuitGap(InstallPackage(\"digraphs\", false));" | $GAP + echo "LoadPackage(\"PackageManager\"); QuitGap(InstallPackage(\"genss\", false));" | $GAP + echo "LoadPackage(\"PackageManager\"); QuitGap(InstallPackage(\"images\", false));" | $GAP + echo "LoadPackage(\"PackageManager\"); QuitGap(InstallPackage(\"orb\", false) and CompilePackage(\"orb\"));" | $GAP + - name: "Run tst/workspaces/save.g" + run: | + cd "$GAP_USER_HOME/gap-$GAP_VERSION/pkg/Semigroups" + $GAP tst/workspaces/save.g + - name: "Run tst/workspaces/load.g" + run: | + cd "$GAP_USER_HOME/gap-$GAP_VERSION/pkg/Semigroups" + $GAP tst/workspaces/test-output.w tst/workspaces/load.g From ce8e736e08f42c3884ce266cdee3aacbece388c3 Mon Sep 17 00:00:00 2001 From: James Mitchell Date: Fri, 20 Mar 2026 17:22:22 +0000 Subject: [PATCH 02/11] ci: remove old comment from workspace file --- .github/workflows/workspaces.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.github/workflows/workspaces.yml b/.github/workflows/workspaces.yml index a6f54a7a9..82e8c80b0 100644 --- a/.github/workflows/workspaces.yml +++ b/.github/workflows/workspaces.yml @@ -1,7 +1,3 @@ -# This is temporary until/if: -# https://github.com/gap-actions/run-pkg-tests/pull/24 -# is merged, or something equivalent, then remove the script ci/run-tests.sh, -# and use the save/load.g files as commented out below name: "Workspaces" on: workflow_dispatch: From 34b9b51f8d5fe129006079be633435d07da22511 Mon Sep 17 00:00:00 2001 From: James Mitchell Date: Fri, 20 Mar 2026 17:25:26 +0000 Subject: [PATCH 03/11] fixup --- .github/workflows/workspaces.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/workspaces.yml b/.github/workflows/workspaces.yml index 82e8c80b0..6786f6c02 100644 --- a/.github/workflows/workspaces.yml +++ b/.github/workflows/workspaces.yml @@ -29,7 +29,7 @@ jobs: image: ghcr.io/gap-system/gap:4.14.0-bare options: --user gap volumes: - - ${{ github.workspace }}:${{ eng.GAP_USER_HOME}}/gap-${{ env.GAP_VERSION }}/pkg/Semigroups + - ${{ github.workspace }}:${{ env.GAP_USER_HOME}}/gap-${{ env.GAP_VERSION }}/pkg/Semigroups steps: - name: "Checkout the Semigroups GAP package" From 0c0b424a701a25b0699f1cbb344b27af50ddc0a5 Mon Sep 17 00:00:00 2001 From: James Mitchell Date: Fri, 20 Mar 2026 17:27:06 +0000 Subject: [PATCH 04/11] fixup --- .github/workflows/workspaces.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/workspaces.yml b/.github/workflows/workspaces.yml index 6786f6c02..85e805917 100644 --- a/.github/workflows/workspaces.yml +++ b/.github/workflows/workspaces.yml @@ -29,7 +29,7 @@ jobs: image: ghcr.io/gap-system/gap:4.14.0-bare options: --user gap volumes: - - ${{ github.workspace }}:${{ env.GAP_USER_HOME}}/gap-${{ env.GAP_VERSION }}/pkg/Semigroups + - ${{ github.workspace }}:/opt/gap/gap-4.14.0/pkg/Semigroups steps: - name: "Checkout the Semigroups GAP package" From e0ac1c6c0d802b723e3a91534e8b39fb49b8ecf8 Mon Sep 17 00:00:00 2001 From: James Mitchell Date: Fri, 20 Mar 2026 17:28:53 +0000 Subject: [PATCH 05/11] fixup --- .github/workflows/workspaces.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/workspaces.yml b/.github/workflows/workspaces.yml index 85e805917..8aada660d 100644 --- a/.github/workflows/workspaces.yml +++ b/.github/workflows/workspaces.yml @@ -27,7 +27,7 @@ jobs: runs-on: ubuntu-latest container: image: ghcr.io/gap-system/gap:4.14.0-bare - options: --user gap + options: --user root volumes: - ${{ github.workspace }}:/opt/gap/gap-4.14.0/pkg/Semigroups steps: From 6520958452d289bf700a89805e7e8bfe1d3abfca Mon Sep 17 00:00:00 2001 From: James Mitchell Date: Fri, 20 Mar 2026 17:29:46 +0000 Subject: [PATCH 06/11] fixup --- .github/workflows/workspaces.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/workspaces.yml b/.github/workflows/workspaces.yml index 8aada660d..ed95f891a 100644 --- a/.github/workflows/workspaces.yml +++ b/.github/workflows/workspaces.yml @@ -36,10 +36,10 @@ jobs: uses: actions/checkout@v6 - name: "Install git + autotools" run: | - sudo apt-get --yes update - sudo apt-get install git --yes - sudo apt-get install pkg-config m4 libtool automake autoconf --yes - sudo apt-get install libtool-bin --yes + apt-get --yes update + apt-get install git --yes + apt-get install pkg-config m4 libtool automake autoconf --yes + apt-get install libtool-bin --yes - name: "Setup ccache" uses: Chocobo1/setup-ccache-action@v1 with: From 1ec4e1dad5b919d6a04e31a4f67b66f9e01bac9a Mon Sep 17 00:00:00 2001 From: James Mitchell Date: Fri, 20 Mar 2026 17:31:21 +0000 Subject: [PATCH 07/11] fixup --- .github/workflows/workspaces.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/workspaces.yml b/.github/workflows/workspaces.yml index ed95f891a..fcc56294e 100644 --- a/.github/workflows/workspaces.yml +++ b/.github/workflows/workspaces.yml @@ -32,14 +32,13 @@ jobs: - ${{ github.workspace }}:/opt/gap/gap-4.14.0/pkg/Semigroups steps: - name: "Checkout the Semigroups GAP package" - uses: actions/checkout@v6 - name: "Install git + autotools" run: | apt-get --yes update apt-get install git --yes apt-get install pkg-config m4 libtool automake autoconf --yes - apt-get install libtool-bin --yes + apt-get install libtool-bin build-essentials --yes - name: "Setup ccache" uses: Chocobo1/setup-ccache-action@v1 with: From 987bdf80ec7e73e6f7b0abd94f9d674dffd67459 Mon Sep 17 00:00:00 2001 From: James Mitchell Date: Fri, 20 Mar 2026 17:32:29 +0000 Subject: [PATCH 08/11] fixup --- .github/workflows/workspaces.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/workspaces.yml b/.github/workflows/workspaces.yml index fcc56294e..fda6b7f02 100644 --- a/.github/workflows/workspaces.yml +++ b/.github/workflows/workspaces.yml @@ -38,7 +38,7 @@ jobs: apt-get --yes update apt-get install git --yes apt-get install pkg-config m4 libtool automake autoconf --yes - apt-get install libtool-bin build-essentials --yes + apt-get install libtool-bin build-essential --yes - name: "Setup ccache" uses: Chocobo1/setup-ccache-action@v1 with: From 560581fed9f4938017eb213a3358e8c5fbb015b0 Mon Sep 17 00:00:00 2001 From: James Mitchell Date: Mon, 23 Mar 2026 11:03:10 +0000 Subject: [PATCH 09/11] fixup --- .github/workflows/workspaces.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/workspaces.yml b/.github/workflows/workspaces.yml index fda6b7f02..5ae33425a 100644 --- a/.github/workflows/workspaces.yml +++ b/.github/workflows/workspaces.yml @@ -54,6 +54,7 @@ jobs: make -j4 - name: "Install Semigroups GAP package dependencies" run: | + echo "LoadPackage(\"PackageManager\"); QuitGap(InstallPackage(\"gapdoc\", false));" | $GAP --bare echo "LoadPackage(\"PackageManager\"); QuitGap(InstallPackage(\"autodoc\", false));" | $GAP echo "LoadPackage(\"PackageManager\"); QuitGap(InstallPackage(\"datastructures\", false));" | $GAP echo "LoadPackage(\"PackageManager\"); QuitGap(InstallPackage(\"digraphs\", false));" | $GAP From 93e2329272a3321b02a4346404c3a665a10533bf Mon Sep 17 00:00:00 2001 From: James Mitchell Date: Mon, 23 Mar 2026 12:10:34 +0000 Subject: [PATCH 10/11] fixup --- .github/workflows/workspaces.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/workspaces.yml b/.github/workflows/workspaces.yml index 5ae33425a..d8b4409f5 100644 --- a/.github/workflows/workspaces.yml +++ b/.github/workflows/workspaces.yml @@ -26,7 +26,7 @@ jobs: name: "GAP 4.14.0 / ubuntu / 64-bit" runs-on: ubuntu-latest container: - image: ghcr.io/gap-system/gap:4.14.0-bare + image: ghcr.io/gap-system/gap:4.14.0-slim options: --user root volumes: - ${{ github.workspace }}:/opt/gap/gap-4.14.0/pkg/Semigroups From 04c52dd1191d6848025b111035cb14787927d8d9 Mon Sep 17 00:00:00 2001 From: James Mitchell Date: Mon, 23 Mar 2026 12:23:25 +0000 Subject: [PATCH 11/11] fixup --- .github/workflows/workspaces.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/workspaces.yml b/.github/workflows/workspaces.yml index d8b4409f5..1554ada54 100644 --- a/.github/workflows/workspaces.yml +++ b/.github/workflows/workspaces.yml @@ -68,4 +68,4 @@ jobs: - name: "Run tst/workspaces/load.g" run: | cd "$GAP_USER_HOME/gap-$GAP_VERSION/pkg/Semigroups" - $GAP tst/workspaces/test-output.w tst/workspaces/load.g + $GAP -L tst/workspaces/test-output.w tst/workspaces/load.g