From 7191b16f571663b1c4972b5d378702b830f937c7 Mon Sep 17 00:00:00 2001 From: "Robert P. Goldman" Date: Tue, 5 Jul 2022 19:21:48 -0500 Subject: [PATCH 1/6] Fix roswell for new SBCL. SBCL has changed the library it uses for core compression, causing build failures if that library is not installed. --- .github/workflows/main.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index d73fb38..a88441a 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -31,6 +31,11 @@ jobs: # - abcl ABCL install from Roswell does not work steps: + - name: Collect prerequisites + shell: bash + run: | + apt-get update && apt-get install -y zlib1g-dev + - uses: actions/checkout@v2 - name: Checkout submodules From 92c9ceaabfe964d8a76a8e9febcd6f462c3029b6 Mon Sep 17 00:00:00 2001 From: "Robert P. Goldman" Date: Tue, 5 Jul 2022 19:33:22 -0500 Subject: [PATCH 2/6] Install library only when needed. The compression library is only needed when we are using SBCL. Otherwise, we don't need to install it. --- .github/workflows/main.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index a88441a..55cc392 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -33,6 +33,7 @@ jobs: steps: - name: Collect prerequisites shell: bash + if: ${{ $lisp == "sbcl" }} run: | apt-get update && apt-get install -y zlib1g-dev From cbd40d07aa5958eb521aa20c5b10ce89429f9d31 Mon Sep 17 00:00:00 2001 From: "Robert P. Goldman" Date: Tue, 5 Jul 2022 19:36:44 -0500 Subject: [PATCH 3/6] Fix conditional. --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 55cc392..754f25f 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -33,7 +33,7 @@ jobs: steps: - name: Collect prerequisites shell: bash - if: ${{ $lisp == "sbcl" }} + if: ${{ matrix.lisp == 'sbcl' }} run: | apt-get update && apt-get install -y zlib1g-dev From 37d28b7f42da3d5143fd3b0bb2afe710262f0466 Mon Sep 17 00:00:00 2001 From: "Robert P. Goldman" Date: Tue, 5 Jul 2022 22:31:02 -0500 Subject: [PATCH 4/6] Fix apt-get. --- .github/workflows/main.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 754f25f..b2b5321 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -35,7 +35,8 @@ jobs: shell: bash if: ${{ matrix.lisp == 'sbcl' }} run: | - apt-get update && apt-get install -y zlib1g-dev + sudo apt-get update + sudo apt-get install -y zlib1g-dev - uses: actions/checkout@v2 From 771ca59b27d962ef30b1858f7cb0f520570e457f Mon Sep 17 00:00:00 2001 From: "Robert P. Goldman" Date: Wed, 6 Jul 2022 09:45:38 -0500 Subject: [PATCH 5/6] Another attempt to fix roswell dependency. --- .github/workflows/main.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index b2b5321..ed01dcb 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -22,13 +22,13 @@ jobs: os: [ubuntu-latest] lisp: - ccl - - sbcl # - allegro Allegro from Roswell can't load FiveAM from quicklisp - ecl - cmu # - clisp clisp install from Roswell does not work. # - mkcl Tests not implemented on mkcl # - abcl ABCL install from Roswell does not work + - sbcl steps: - name: Collect prerequisites @@ -36,7 +36,7 @@ jobs: if: ${{ matrix.lisp == 'sbcl' }} run: | sudo apt-get update - sudo apt-get install -y zlib1g-dev + sudo apt-get install -y zlib1g-dev nlibzstd-dev - uses: actions/checkout@v2 From b8fa9ded294761cda0e97b7ad16ab378d66babff Mon Sep 17 00:00:00 2001 From: "Robert P. Goldman" Date: Wed, 6 Jul 2022 10:09:36 -0500 Subject: [PATCH 6/6] Use 40ants/setup-lisp@v2; don't hand-install roswell. --- .github/workflows/main.yml | 62 ++++++++++++++++++++------------------ 1 file changed, 33 insertions(+), 29 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index ed01dcb..43e81f3 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -21,22 +21,27 @@ jobs: matrix: os: [ubuntu-latest] lisp: - - ccl + - ccl-bin # - allegro Allegro from Roswell can't load FiveAM from quicklisp - ecl - cmu # - clisp clisp install from Roswell does not work. # - mkcl Tests not implemented on mkcl # - abcl ABCL install from Roswell does not work - - sbcl + - sbcl-bin + + env: + LISP: ${{ matrix.lisp }} steps: - - name: Collect prerequisites - shell: bash - if: ${{ matrix.lisp == 'sbcl' }} - run: | - sudo apt-get update - sudo apt-get install -y zlib1g-dev nlibzstd-dev + - name: prepare + uses: 40ants/setup-lisp@v2 + # - name: Collect prerequisites + # shell: bash + # if: ${{ matrix.lisp == 'sbcl' }} + # run: | + # sudo apt-get update + # sudo apt-get install -y zlib1g-dev nlibzstd-dev - uses: actions/checkout@v2 @@ -46,29 +51,28 @@ jobs: git submodule update --init --recursive # Lisp setup copied from here: https://github.com/3b/ci-example/blob/master/.github/workflows/CI.yml - - name: cache .roswell - id: cache-dot-roswell - uses: actions/cache@v1 - with: - path: ~/.roswell - key: ${{ runner.os }}-dot-roswell-${{ matrix.lisp }}-${{ hashFiles('**/*.asd') }} - restore-keys: | - ${{ runner.os }}-dot-roswell-${{ matrix.lisp }}- - ${{ runner.os }}-dot-roswell- + # - name: cache .roswell + # id: cache-dot-roswell + # uses: actions/cache@v1 + # with: + # path: ~/.roswell + # key: ${{ runner.os }}-dot-roswell-${{ matrix.lisp }}-${{ hashFiles('**/*.asd') }} + # restore-keys: | + # ${{ runner.os }}-dot-roswell-${{ matrix.lisp }}- + # ${{ runner.os }}-dot-roswell- - - name: install roswell - shell: bash - # always run install, since it does some global installs and setup that isn't cached - env: - LISP: ${{ matrix.lisp }} - # Use a previous release of Roswell to avoid error encountered - # due to libcurl3 not being available. - # Source of fix: https://github.com/avodonosov/drakma/commit/fbba29181ba2962f5031da581bd2de4dac98733d - run: | - sudo apt-get install -y libcurl4 - curl -L https://raw.githubusercontent.com/roswell/roswell/a8fd8a3c33078d6f06e6cda9d099dcba6fbefcb7/scripts/install-for-ci.sh | sh + # - name: install roswell + # shell: bash + # # always run install, since it does some global installs and setup that isn't cached + # env: + # LISP: ${{ matrix.lisp }} + # # Use a previous release of Roswell to avoid error encountered + # # due to libcurl3 not being available. + # # Source of fix: https://github.com/avodonosov/drakma/commit/fbba29181ba2962f5031da581bd2de4dac98733d + # run: | + # sudo apt-get install -y libcurl4 + # curl -L https://raw.githubusercontent.com/roswell/roswell/a8fd8a3c33078d6f06e6cda9d099dcba6fbefcb7/scripts/install-for-ci.sh | sh - # Compile first in a separate step to make the test output more readable - name: tests shell: bash run: |