Skip to content
Snippets Groups Projects
Commit aa1720f4 authored by Francois-Rene Rideau's avatar Francois-Rene Rideau
Browse files

2.29.2: CCL: punt on upgrade from ASDF2. load-asd: use global readtable.

Package upgrade on CCL still fails due to setf function issues.
Until they are resolved, punt if upgrading from earlier than 2.27.

iolib 0.7.3 modifies the global readtable, and is thus incompatible with
the with-standard-io-syntax in load-asd, unless we re-bind readtable
to preserve this dirty global thing. Until we fix iolib and all clients,
revert to higher compatibility.
parent 4ce09756
No related branches found
No related tags found
No related merge requests found
...@@ -74,7 +74,7 @@ ...@@ -74,7 +74,7 @@
:licence "MIT" :licence "MIT"
:description "Another System Definition Facility" :description "Another System Definition Facility"
:long-description "ASDF builds Common Lisp software organized into defined systems." :long-description "ASDF builds Common Lisp software organized into defined systems."
:version "2.29.1" ;; to be automatically updated by make bump-version :version "2.29.2" ;; to be automatically updated by make bump-version
:depends-on () :depends-on ()
#+asdf3 :encoding #+asdf3 :utf-8 #+asdf3 :encoding #+asdf3 :utf-8
;; For most purposes, asdf itself specially counts as a builtin system. ;; For most purposes, asdf itself specially counts as a builtin system.
......
...@@ -255,11 +255,15 @@ Going forward, we recommend new users should be using the source-registry. ...@@ -255,11 +255,15 @@ Going forward, we recommend new users should be using the source-registry.
(defmacro with-system-definitions ((&optional) &body body) (defmacro with-system-definitions ((&optional) &body body)
`(call-with-system-definitions #'(lambda () ,@body))) `(call-with-system-definitions #'(lambda () ,@body)))
(defun load-asd (pathname &key name (external-format (encoding-external-format (detect-encoding pathname)))) (defun load-asd (pathname &key name (external-format (encoding-external-format (detect-encoding pathname))) &aux (readtable *readtable*))
;; Tries to load system definition with canonical NAME from PATHNAME. ;; Tries to load system definition with canonical NAME from PATHNAME.
(with-system-definitions () (with-system-definitions ()
(with-standard-io-syntax (with-standard-io-syntax
(let ((*package* (find-package :asdf-user)) (let ((*package* (find-package :asdf-user))
;; Note that our backward-compatible readtable is
;; a global readtable that gets globally side-effected. Ouch.
;; We should do something about that for ASDF3 if possible, or else ASDF4.
(*readtable* readtable)
(*print-readably* nil) (*print-readably* nil)
(*default-pathname-defaults* (*default-pathname-defaults*
;; resolve logical-pathnames so they won't wreak havoc in parsing namestrings. ;; resolve logical-pathnames so they won't wreak havoc in parsing namestrings.
......
;;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp -*- ;;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp -*-
;;; This is ASDF 2.29.1: Another System Definition Facility. ;;; This is ASDF 2.29.2: Another System Definition Facility.
;;; ;;;
;;; Feedback, bug reports, and patches are all welcome: ;;; Feedback, bug reports, and patches are all welcome:
;;; please mail to <asdf-devel@common-lisp.net>. ;;; please mail to <asdf-devel@common-lisp.net>.
...@@ -54,7 +54,7 @@ ...@@ -54,7 +54,7 @@
(declaim (optimize (speed 1) (safety 3) (debug 3))) (declaim (optimize (speed 1) (safety 3) (debug 3)))
(setf ext:*gc-verbose* nil)) (setf ext:*gc-verbose* nil))
#+(or abcl clisp cmu ecl xcl) #+(or abcl clisp clozure cmu ecl xcl)
(eval-when (:load-toplevel :compile-toplevel :execute) (eval-when (:load-toplevel :compile-toplevel :execute)
(unless (member :asdf3 *features*) (unless (member :asdf3 *features*)
(let* ((existing-version (let* ((existing-version
...@@ -71,7 +71,8 @@ ...@@ -71,7 +71,8 @@
(existing-version-number (and existing-version (read-from-string existing-major-minor))) (existing-version-number (and existing-version (read-from-string existing-major-minor)))
(away (format nil "~A-~A" :asdf existing-version))) (away (format nil "~A-~A" :asdf existing-version)))
(when (and existing-version (< existing-version-number (when (and existing-version (< existing-version-number
#+abcl 2.25 #+clisp 2.27 #+cmu 2.018 #+ecl 2.21 #+xcl 2.27)) #+abcl 2.25 #+clisp 2.27 #+clozure 2.27
#+cmu 2.018 #+ecl 2.21 #+xcl 2.27))
(rename-package :asdf away) (rename-package :asdf away)
(when *load-verbose* (when *load-verbose*
(format t "; Renamed old ~A package away to ~A~%" :asdf away)))))) (format t "; Renamed old ~A package away to ~A~%" :asdf away))))))
......
...@@ -52,7 +52,7 @@ You can compare this string with e.g.: (ASDF:VERSION-SATISFIES (ASDF:ASDF-VERSIO ...@@ -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.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.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 ;; "3.4.5.67.8" would be your eighth local modification of development version 3.4.5.67
(asdf-version "2.29.1") (asdf-version "2.29.2")
(existing-version (asdf-version))) (existing-version (asdf-version)))
(setf *asdf-version* asdf-version) (setf *asdf-version* asdf-version)
(when (and existing-version (not (equal asdf-version existing-version))) (when (and existing-version (not (equal asdf-version existing-version)))
......
"2.29.1" "2.29.2"
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment