diff --git a/asdf.asd b/asdf.asd index cacb0c8a4780ebbd3e5f2701e096c7210cbee5ff..c6694ef65e1b5ff1b25476d06565b39eaf82631c 100644 --- a/asdf.asd +++ b/asdf.asd @@ -75,7 +75,7 @@ :licence "MIT" :description "Another System Definition Facility" :long-description "ASDF builds Common Lisp software organized into defined systems." - :version "3.1.3.1" ;; to be automatically updated by make bump-version + :version "3.1.3.2" ;; to be automatically updated by make bump-version :depends-on () #+asdf3 :encoding #+asdf3 :utf-8 :class #.(if (find-class 'package-inferred-system nil) 'package-inferred-system 'system) diff --git a/contrib/fasl-op.lisp b/contrib/fasl-op.lisp new file mode 100644 index 0000000000000000000000000000000000000000..acbd5cdf9975f05bb2af0f82436e66f0e0b541da --- /dev/null +++ b/contrib/fasl-op.lisp @@ -0,0 +1,31 @@ +(uiop:define-package :asdf/contrib/fasl-op + (:use :common-lisp :uiop + :asdf :asdf/component :asdf/operation :asdf/lisp-action :asdf/bundle)) + +(in-package :asdf/contrib/fasl-op) + +;;; Backward compatibility with pre-3.1.2 names + +(eval-when (:compile-toplevel :load-toplevel :execute) + (defun frob-symbol (sym) + (loop :for dest :in '(:asdf/bundle :asdf/interface) :do + (uiop/package::ensure-import + (symbol-name sym) (find-package dest) (symbol-package sym) + (make-hash-table :test 'equal) (make-hash-table :test 'equal))))) + +(defmacro declare-ops (&rest ops) + `(progn + ,@(loop :for (compat-name current-name) :in ops :append + `((defclass ,compat-name (selfward-operation) + ((selfward-operation :initform ',current-name :allocation :class))) + (defmethod output-files ((o ,compat-name) (c component)) + (output-files (find-operation o ',current-name) c)) + (frob-symbol ',compat-name))))) + +(declare-ops + (fasl-op compile-bundle-op) + (load-fasl-op load-bundle-op) + (binary-op deliver-asd-op) + (monolithic-fasl-op monolithic-compile-bundle-op) + (monolithic-load-fasl-op monolithic-load-bundle-op) + (monolithic-binary-op monolithic-deliver-asd-op)) diff --git a/header.lisp b/header.lisp index e4e298c5d3536965ab4f3b662f4dcc12a5ca9578..53e2e064f934c6cb68ee2b1a83c44c1a8c6efb71 100644 --- a/header.lisp +++ b/header.lisp @@ -1,5 +1,5 @@ ;;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp ; buffer-read-only: t; -*- -;;; This is ASDF 3.1.3.1: Another System Definition Facility. +;;; This is ASDF 3.1.3.2: Another System Definition Facility. ;;; ;;; Feedback, bug reports, and patches are all welcome: ;;; please mail to <asdf-devel@common-lisp.net>. diff --git a/uiop/os.lisp b/uiop/os.lisp index 522f4a388e3684ed2b8be4a45ae2713db45854b2..86ed3ba558b655b73b0f567d6deff79f4fb47ac7 100644 --- a/uiop/os.lisp +++ b/uiop/os.lisp @@ -262,7 +262,7 @@ suitable for use as a directory name to segregate Lisp FASLs, C dynamic librarie #+ecl (ext:getcwd) #+gcl (let ((*default-pathname-defaults* #p"")) (truename #p"")) #+genera *default-pathname-defaults* ;; on a Lisp OS, it *is* canonical! - #+lispworks (system:current-directory) + #+lispworks (hcl:get-working-directory) #+mkcl (mk-ext:getcwd) #+sbcl (sb-ext:parse-native-namestring (sb-unix:posix-getcwd/)) #+xcl (extensions:current-directory) diff --git a/uiop/stream.lisp b/uiop/stream.lisp index 7103dbdf800c33e88ad65c26939363ca80748db7..db7ae94e892f6b62b23fa5dea75dff9a8b268a4e 100644 --- a/uiop/stream.lisp +++ b/uiop/stream.lisp @@ -12,7 +12,7 @@ #:encoding-external-format #:*encoding-external-format-hook* #:default-encoding-external-format #:*default-encoding* #:*utf-8-external-format* #:with-safe-io-syntax #:call-with-safe-io-syntax #:safe-read-from-string - #:with-output #:output-string #:with-input + #:with-output #:output-string #:with-input #:input-string #:with-input-file #:call-with-input-file #:with-output-file #:call-with-output-file #:null-device-pathname #:call-with-null-input #:with-null-input #:call-with-null-output #:with-null-output @@ -263,8 +263,14 @@ Otherwise, signal an error." (defmacro with-input ((input-var &optional (value input-var)) &body body) "Bind INPUT-VAR to an input stream, coercing VALUE (default: previous binding of INPUT-VAR) as per CALL-WITH-INPUT, and evaluate BODY within the scope of this binding." - `(call-with-input ,value #'(lambda (,input-var) ,@body)))) - + `(call-with-input ,value #'(lambda (,input-var) ,@body))) + + (defun input-string (&optional input) + "If the desired INPUT is a string, return that string; otherwise slurp the INPUT into a string +and return that" + (if (stringp input) + input + (with-input (input) (funcall 'slurp-stream-string input))))) ;;; Null device (with-upgradability () diff --git a/upgrade.lisp b/upgrade.lisp index f5b97a524931d8c3339dd1fe9f1e6f2d90d28604..69499d02cca0af1d38e929aaf700c87f7e341f05 100644 --- a/upgrade.lisp +++ b/upgrade.lisp @@ -67,7 +67,7 @@ previously-loaded version of ASDF." ;; "3.4.5.67" would be a development version in the official branch, on top 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 "3.1.3.1") + (asdf-version "3.1.3.2") (existing-version (asdf-version))) (setf *asdf-version* asdf-version) (when (and existing-version (not (equal asdf-version existing-version))) diff --git a/version.lisp-expr b/version.lisp-expr index f5ed7d57659935b85b74b99c5fbbd3681548fbf1..0fff27f200244cc0ccd580c47b8ceffe12845396 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -1,2 +1,2 @@ -"3.1.3.1" +"3.1.3.2"