Loading asdf.asd +1 −1 Original line number Diff line number Diff line Loading @@ -74,7 +74,7 @@ :licence "MIT" :description "Another System Definition Facility" :long-description "ASDF builds Common Lisp software organized into defined systems." :version "2.32.24" ;; to be automatically updated by make bump-version :version "2.32.25" ;; to be automatically updated by make bump-version :depends-on () #+asdf3 :encoding #+asdf3 :utf-8 ;; For most purposes, asdf itself specially counts as a builtin system. Loading header.lisp +1 −1 Original line number Diff line number Diff line ;;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp -*- ;;; This is ASDF 2.32.24: Another System Definition Facility. ;;; This is ASDF 2.32.25: Another System Definition Facility. ;;; ;;; Feedback, bug reports, and patches are all welcome: ;;; please mail to <asdf-devel@common-lisp.net>. Loading test/test-utilities.script +3 −2 Original line number Diff line number Diff line Loading @@ -216,7 +216,8 @@ (assert (not (base-string-p (make-string 10 :element-type 'character)))) (assert (not (base-string-p "abc"))) (assert (base-string-p (basify "abc"))) (assert (not (base-string-p (strcat "a" NIL "b" "cd")))) (assert (not (base-string-p (strcat "a" NIL #\b "cd")))) (assert (base-string-p (reduce/strcat (mapcar 'basify '("a" "b" NIL "cd"))))) (assert (base-string-p (strcat (basify "ab") (basify "cd")))) (assert (not (base-string-p (strcat (basify "ab") "cd"))))) (assert (not (base-string-p (strcat (basify "ab") #\c "d")))) (assert (base-string-p (strcat (basify "ab") #\c #\d)))) uiop/utility.lisp +9 −6 Original line number Diff line number Diff line Loading @@ -201,19 +201,22 @@ Returns two values: \(A B C\) and \(1 2 3\)." (declare (ignorable strings)) #-non-base-chars-exist-p 'character #+non-base-chars-exist-p (if (loop :for s :in strings :always (or (null s) (base-string-p s))) (if (loop :for s :in strings :always (or (null s) (typep s 'base-char) (base-string-p s))) 'base-char 'character)) (defun reduce/strcat (strings &key key start end) "Reduce a list as if by STRCAT, accepting KEY START and END keywords like REDUCE" "Reduce a list as if by STRCAT, accepting KEY START and END keywords like REDUCE. NIL is interpreted as an empty string. A character is interpreted as a string of length one." (when (or start end) (setf strings (subseq strings start end))) (when key (setf strings (mapcar key strings))) (loop :with output = (make-string (loop :for s :in strings :sum (length s)) (loop :with output = (make-string (loop :for s :in strings :sum (if (characterp s) 1 (length s))) :element-type (strings-common-element-type strings)) :with pos = 0 :for input :in strings :for pos = 0 :then (+ pos l) :for l = (length input) :do (replace output input :start1 pos) :do (etypecase input (null) (character (setf (char output pos) input) (incf pos)) (string (replace output input :start1 pos) (incf pos (length input)))) :finally (return output))) (defun strcat (&rest strings) Loading upgrade.lisp +1 −1 Original line number Diff line number Diff line Loading @@ -52,7 +52,7 @@ You can compare this string with e.g.: (ASDF:VERSION-SATISFIES (ASDF:ASDF-VERSIO ;; "3.4.5.67" would be a development version in the official upstream of 3.4.5. ;; "3.4.5.0.8" would be your eighth local modification of official release 3.4.5 ;; "3.4.5.67.8" would be your eighth local modification of development version 3.4.5.67 (asdf-version "2.32.24") (asdf-version "2.32.25") (existing-version (asdf-version))) (setf *asdf-version* asdf-version) (when (and existing-version (not (equal asdf-version existing-version))) Loading Loading
asdf.asd +1 −1 Original line number Diff line number Diff line Loading @@ -74,7 +74,7 @@ :licence "MIT" :description "Another System Definition Facility" :long-description "ASDF builds Common Lisp software organized into defined systems." :version "2.32.24" ;; to be automatically updated by make bump-version :version "2.32.25" ;; to be automatically updated by make bump-version :depends-on () #+asdf3 :encoding #+asdf3 :utf-8 ;; For most purposes, asdf itself specially counts as a builtin system. Loading
header.lisp +1 −1 Original line number Diff line number Diff line ;;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp -*- ;;; This is ASDF 2.32.24: Another System Definition Facility. ;;; This is ASDF 2.32.25: Another System Definition Facility. ;;; ;;; Feedback, bug reports, and patches are all welcome: ;;; please mail to <asdf-devel@common-lisp.net>. Loading
test/test-utilities.script +3 −2 Original line number Diff line number Diff line Loading @@ -216,7 +216,8 @@ (assert (not (base-string-p (make-string 10 :element-type 'character)))) (assert (not (base-string-p "abc"))) (assert (base-string-p (basify "abc"))) (assert (not (base-string-p (strcat "a" NIL "b" "cd")))) (assert (not (base-string-p (strcat "a" NIL #\b "cd")))) (assert (base-string-p (reduce/strcat (mapcar 'basify '("a" "b" NIL "cd"))))) (assert (base-string-p (strcat (basify "ab") (basify "cd")))) (assert (not (base-string-p (strcat (basify "ab") "cd"))))) (assert (not (base-string-p (strcat (basify "ab") #\c "d")))) (assert (base-string-p (strcat (basify "ab") #\c #\d))))
uiop/utility.lisp +9 −6 Original line number Diff line number Diff line Loading @@ -201,19 +201,22 @@ Returns two values: \(A B C\) and \(1 2 3\)." (declare (ignorable strings)) #-non-base-chars-exist-p 'character #+non-base-chars-exist-p (if (loop :for s :in strings :always (or (null s) (base-string-p s))) (if (loop :for s :in strings :always (or (null s) (typep s 'base-char) (base-string-p s))) 'base-char 'character)) (defun reduce/strcat (strings &key key start end) "Reduce a list as if by STRCAT, accepting KEY START and END keywords like REDUCE" "Reduce a list as if by STRCAT, accepting KEY START and END keywords like REDUCE. NIL is interpreted as an empty string. A character is interpreted as a string of length one." (when (or start end) (setf strings (subseq strings start end))) (when key (setf strings (mapcar key strings))) (loop :with output = (make-string (loop :for s :in strings :sum (length s)) (loop :with output = (make-string (loop :for s :in strings :sum (if (characterp s) 1 (length s))) :element-type (strings-common-element-type strings)) :with pos = 0 :for input :in strings :for pos = 0 :then (+ pos l) :for l = (length input) :do (replace output input :start1 pos) :do (etypecase input (null) (character (setf (char output pos) input) (incf pos)) (string (replace output input :start1 pos) (incf pos (length input)))) :finally (return output))) (defun strcat (&rest strings) Loading
upgrade.lisp +1 −1 Original line number Diff line number Diff line Loading @@ -52,7 +52,7 @@ You can compare this string with e.g.: (ASDF:VERSION-SATISFIES (ASDF:ASDF-VERSIO ;; "3.4.5.67" would be a development version in the official upstream of 3.4.5. ;; "3.4.5.0.8" would be your eighth local modification of official release 3.4.5 ;; "3.4.5.67.8" would be your eighth local modification of development version 3.4.5.67 (asdf-version "2.32.24") (asdf-version "2.32.25") (existing-version (asdf-version))) (setf *asdf-version* asdf-version) (when (and existing-version (not (equal asdf-version existing-version))) Loading