[fix] better handle sbcl version if it can't be parsed as X.Y.Z&rest #138
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
on: [push, pull_request] | |
jobs: | |
test: | |
name: ${{ matrix.lisp }} | |
strategy: | |
matrix: | |
lisp: [sbcl, ccl, ecl] | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Update $PATH | |
run: | | |
echo $PATH | |
echo "PATH=$HOME/bin:$PATH" >> $GITHUB_ENV | |
- name: Check $PATH | |
run: echo $PATH | |
- name: Download implementation | |
env: | |
LISP: ${{ matrix.lisp }} | |
run: | | |
pwd | |
ls -l | |
bash <(curl -s https://raw.githubusercontent.com/digikar99/lisp-travis-lite/master/run.sh) | |
- name: Download download-dependencies | |
run: | | |
git clone https://github.com/digikar99/download-dependencies $HOME/quicklisp/local-projects/download-dependencies | |
- name: Download dependencies | |
run: | | |
cl --eval '(ql:quickload "download-dependencies")' \ | |
--eval '(push "~/" ql:*local-project-directories*)' \ | |
--eval '(in-package :download-dependencies)' \ | |
--eval '(let ((*dependencies-home* (first ql:*local-project-directories*))) (ensure-system "polymorphic-functions"))'\ | |
--eval '(ql:register-local-projects)' | |
ls -l ~/ | |
- name: Lite - Run Tests | |
run: | | |
cl --eval '(progn | |
(push "~/" ql:*local-project-directories*) | |
(push :travis *features*) | |
(ql:quickload "polymorphic-functions-lite") | |
(asdf:test-system "polymorphic-functions-lite") | |
(uiop:quit 0))' | |
- name: Full - Compile Tests | |
run: | | |
cl --eval '(progn | |
(push "~/" ql:*local-project-directories*) | |
(print ql:*local-project-directories*) | |
(print (ql:where-is-system "polymorphic-functions")) | |
(push :travis *features*) | |
(ql:quickload "polymorphic-functions") | |
(uiop:quit 0))' | |
# Testing it on the second load confirms that functionalities do not | |
# solely eval-when compile-toplevel, and that they persist across multiple loads. | |
- name: Full - Run Tests | |
run: | | |
cl --eval '(progn | |
(push "~/" ql:*local-project-directories*) | |
(push :travis *features*) | |
(ql:quickload "polymorphic-functions") | |
(asdf:test-system "polymorphic-functions") | |
(uiop:quit 0))' | |