From 87d855f86226207724e4a5cba0696c798d820b8b Mon Sep 17 00:00:00 2001 From: rpgoldman Date: Sat, 19 Aug 2023 10:49:18 -0500 Subject: [PATCH 1/3] Update GitHub actions Update the versions of the actions we use: cache and checkout. Specify the lisp versions to install with roswell. --- .github/workflows/test.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 07ace4a..cc805e3 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -12,17 +12,17 @@ jobs: strategy: matrix: # clisp doesn't run on ubuntu VMs currently - lisp: [sbcl-bin,sbcl,ccl,ccl32,ecl,allegro,cmucl,abcl] + lisp: [sbcl-bin,ccl-bin/1.12.2,ecl,allegro/10.1express,cmu-bin/21e,abcl/1.9.2] os: [ubuntu-latest] fail-fast: false runs-on: ${{ matrix.os }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: cache .roswell id: cache-dot-roswell - uses: actions/cache@v1 + uses: actions/cache@v3 with: path: ~/.roswell key: ${{ runner.os }}-dot-roswell-${{ matrix.lisp }}-${{ hashFiles('**/*.asd') }} From cffb7ae5313d7eded43410cbc98bb1ae7fce721a Mon Sep 17 00:00:00 2001 From: rpgoldman Date: Sat, 19 Aug 2023 10:53:11 -0500 Subject: [PATCH 2/3] Use 40ants/setup-lisp to install roswell This has worked better than my by-hand version in the tests for XMLS. --- .github/workflows/test.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index cc805e3..d7cfed5 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -18,6 +18,11 @@ jobs: runs-on: ${{ matrix.os }} steps: + - name: prepare + uses: 40ants/setup-lisp@v2 + with: + roswell-version: v22.12.14.113 + asdf-version: 3.3.6 - uses: actions/checkout@v3 - name: cache .roswell @@ -30,11 +35,6 @@ jobs: ${{ runner.os }}-dot-roswell-${{ matrix.lisp }}- ${{ runner.os }}-dot-roswell- - - name: install roswell - env: - LISP: ${{ matrix.lisp }} - run: curl -L https://raw.githubusercontent.com/roswell/roswell/master/scripts/install-for-ci.sh | sh -x - - name: install parachute run: | ros install parachute From fa45af5e5d02bda374c126a4d107a773a5983ba1 Mon Sep 17 00:00:00 2001 From: "Robert P. Goldman" Date: Fri, 18 Aug 2023 17:41:54 -0500 Subject: [PATCH 3/3] Remove `notinline` declaration in CCL. CCL errors out when I declare `random` (as yet undefined) to be `notinline`. > ; In HISTOGRAM: INLINE declaration for unknown function RANDOM --- toolkit.lisp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/toolkit.lisp b/toolkit.lisp index 83ad773..2f4a2cd 100644 --- a/toolkit.lisp +++ b/toolkit.lisp @@ -77,7 +77,7 @@ :initial-contents thing)) (defun histogram (rng bins &key (samples (floor 1e8)) (width 80) (stream *standard-output*)) - (declare (notinline random)) + #-ccl(declare (notinline random)) (check-type samples (unsigned-byte 64)) (let ((histogram (make-array bins)) (sample-contribution (/ samples))