From ef9ef8d72eeae339b56252bcf27a231007e9f6b6 Mon Sep 17 00:00:00 2001 From: vindarel Date: Sat, 11 Mar 2023 15:07:27 +0100 Subject: [PATCH] CI: we want the latest cl-str --- .gitlab-ci.yml | 9 +++++++-- README.md | 4 ++-- repl.lisp | 2 +- src/scripts/simpleHTTPserver.lisp | 8 +++++--- 4 files changed, 15 insertions(+), 8 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 61ec68c..cb17403 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -6,15 +6,20 @@ image: clfoundation/sbcl before_script: - apt-get update -qy - apt-get install -y git-core tar libmagic-dev + # The image doesn't have Quicklisp installed by default. - QUICKLISP_ADD_TO_INIT_FILE=true /usr/local/bin/install-quicklisp - # clone libraries not in Quicklisp or if we need the latest version. - # - make install / git clone + # Upgrade ASDF (UIOP) to 3.3.5 because we want package-local-nicknames. - mkdir -p ~/common-lisp/asdf/ - ( cd ~/common-lisp/ && wget https://asdf.common-lisp.dev/archives/asdf-3.3.5.tar.gz && tar -xvf asdf-3.3.5.tar.gz && mv asdf-3.3.5 asdf ) - echo "Content of ~/common-lisp/asdf/:" && ls ~/common-lisp/asdf/ + # clone libraries not in Quicklisp or if we need the latest version. + # - make install / git clone + # 2023-03: we want str:ensure-suffix, not yet in Quicklisp. + - git clone https://github.com/vindarel/cl-str ~/quicklisp/local-projects/ + build: # stage: build script: diff --git a/README.md b/README.md index 18f7c4f..3c8db18 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ Issues | Discussions | Support us! | - Buy me a coffee! | + Buy me a coffee!

# CIEL Is an Extended Lisp @@ -28,7 +28,7 @@ It comes in 3 forms: - a binary, to run CIEL **scripts**: fast start-up times, standalone image, built-in utilities. - a simple full-featured **REPL** for the terminal. -- a **Lisp library** and **core image**. +- a **Lisp library** and a **core image**. Questions, doubts? See the [FAQ](docs/FAQ.md). diff --git a/repl.lisp b/repl.lisp index 073e200..9d6614b 100755 --- a/repl.lisp +++ b/repl.lisp @@ -135,7 +135,7 @@ *special*) ;; (write-line "Currently defined:") ;; (print-currently-defined) - (write-line "Press CTRL-D or type :q to exit")) + (write-line "Press CTRL-D or type %q to exit")) (defun symbol-documentation (symbol) "Print the available documentation for this symbol." diff --git a/src/scripts/simpleHTTPserver.lisp b/src/scripts/simpleHTTPserver.lisp index 470e188..a5ce169 100755 --- a/src/scripts/simpleHTTPserver.lisp +++ b/src/scripts/simpleHTTPserver.lisp @@ -31,13 +31,15 @@ (defun file-or-directory-namestring (path) "Return the name of this file or of this directory. XXX: we want the name of the directory, not the full path." + (unless (fboundp 'str:ensure-suffix) + (print "WARN: str:ensure-suffix is in the latest cl-str. You'll need to clone it into ~/quicklisp/local-projects/")) (if (uiop:file-pathname-p path) (file-namestring path) ;; How to simply get the directory name, not full path? ;; pathname-directory -> (:relative "path" "to" "dir") - ;; TODO: this is not yet merged in cl-str, sorry. - (str:ensure-end "/" - (first (last (pathname-directory path)))))) + ;; INFO: this is merged in cl-str but not in Quicklisp yet. + (str:ensure-suffix "/" + (first (last (pathname-directory path)))))) (defun show-file-list (file-list &key title) (with-page (:title title)