Skip to content

Make SwapMatrixColumns and SwapMatrixRows faster for classic matrices (lists-of-lists) #256

Make SwapMatrixColumns and SwapMatrixRows faster for classic matrices (lists-of-lists)

Make SwapMatrixColumns and SwapMatrixRows faster for classic matrices (lists-of-lists) #256

Workflow file for this run

name: CI with GAP.jl
on:
workflow_dispatch:
pull_request:
push:
branches:
- "master"
- "stable-*.*"
concurrency:
# group by workflow and ref; the last slightly strange component ensures that for pull
# requests, we limit to 1 concurrent job, but for the default repository branch we don't
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.ref_name != github.event.repository.default_branch || github.run_number }}
# Cancel intermediate builds, but only if it is a pull request build.
cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }}
jobs:
test:
name: Julia ${{ matrix.julia-version }} - GAP.jl ${{ matrix.gapjl-version }} - ${{ matrix.os }}
runs-on: ${{ matrix.os }}
timeout-minutes: 20
continue-on-error: ${{ matrix.julia-version == 'nightly' }}
strategy:
fail-fast: false
matrix:
gapjl-version:
- 'latest-release'
- 'master'
julia-version:
- '1.6'
- '1' # latest stable release
- 'nightly'
os:
- ubuntu-latest
include:
# Add a few macOS jobs (the number we can run in parallel is limited)
- gapjl-version: 'latest-release'
julia-version: '1'
os: macOS-latest
- gapjl-version: 'master'
julia-version: '1'
os: macOS-latest
steps:
- name: Checkout GAP
uses: actions/checkout@v4
with:
path: 'GAPROOT'
- name: "Set up Julia"
uses: julia-actions/setup-julia@v2
with:
version: ${{ matrix.julia-version }}
- name: Install GAP.jl
shell: julia --color=yes {0}
run: |
using Pkg
if "${{ matrix.gapjl-version }}" == "latest-release"
Pkg.add("GAP")
else
Pkg.add(;name="GAP", rev="${{ matrix.gapjl-version }}")
end
path = dirname(dirname(Base.find_package("GAP")))
open(ENV["GITHUB_ENV"], "a") do io
println(io, "GAPJLPATH=$path")
end
- name: "Install dependencies (for macOS)"
if: runner.os == 'macOS'
run: |
brew install autoconf zlib # gmp pkg-config
- name: "Build GAP"
run: |
mv GAPROOT /tmp/GAPROOT
cd /tmp/GAPROOT
./autogen.sh
./configure --enable-Werror
make -j`nproc`
- name: "Override bundled GAP"
run: |
julia --proj=override $GAPJLPATH/etc/setup_override_dir.jl /tmp/GAPROOT /tmp/gap_jll_override --enable-Werror
- name: "Run tests"
run: |
julia --proj=override $GAPJLPATH/etc/run_with_override.jl /tmp/gap_jll_override --depwarn=error -e "using Pkg; Pkg.test(\"GAP\")"