diff --git a/asdf.asd b/asdf.asd index 35971664286c4a9794894e33fa4f09a1697888d5..bbb03027078cd010a79a35bb6ab2b82d981d30ad 100644 --- a/asdf.asd +++ b/asdf.asd @@ -15,7 +15,7 @@ :licence "MIT" :description "Another System Definition Facility" :long-description "ASDF builds Common Lisp software organized into defined systems." - :version "2.26.126" ;; to be automatically updated by bin/bump-revision + :version "2.26.127" ;; to be automatically updated by bin/bump-revision :depends-on () :components ((:module "build" :components ((:file "asdf")))) :in-order-to (#+asdf2.27 (compile-op (monolithic-load-concatenated-source-op asdf/defsystem)))) diff --git a/component.lisp b/component.lisp index fcecc0ac1ffbb72750d9c42ba1c7bc318316229e..0a44ec478d93a568fa3e973d69b7ef3e183125e8 100644 --- a/component.lisp +++ b/component.lisp @@ -29,7 +29,9 @@ ;; Internals we'd like to share with the ASDF package, especially for upgrade purposes #:name #:version #:description #:long-description #:author #:maintainer #:licence - #:defsystem-depends-on + #:components-by-name #:components + #:children #:children-by-name #:default-component-class + #:author #:maintainer #:licence #:source-file #:defsystem-depends-on #:sibling-dependencies #:if-feature #:in-order-to #:inline-methods #:relative-pathname #:absolute-pathname #:operation-times #:around-compile #:%encoding #:properties #:parent)) diff --git a/defsystem.lisp b/defsystem.lisp index 4064947b7e19e381c38d586bf942a15c1646ce7a..fdd181c8d64266675812d8973b060bf550326af3 100644 --- a/defsystem.lisp +++ b/defsystem.lisp @@ -136,7 +136,7 @@ (component-pathname component) ; eagerly compute the absolute pathname (let ((sysdir (system-source-directory (component-system component)))) ;; requires the previous (setf version (normalize-version version sysdir))) - (when (and versionp (not (parse-version version nil))) + (when (and versionp version (not (parse-version version nil))) (warn (compatfmt "~@") version name parent)) (setf (component-version component) version) diff --git a/footer.lisp b/footer.lisp index c188b22f431b8fa671ebe8d82908ec2a53331e4f..2cb277d8b807b3dc7285cb513f7d1e89911aeaba 100644 --- a/footer.lisp +++ b/footer.lisp @@ -12,7 +12,7 @@ ;;;; Configure (setf asdf/utility:*asdf-debug-utility* - '(asdf/interface:system-relative-pathname :asdf "contrib/debug.lisp")) + '(asdf/system:system-relative-pathname :asdf "contrib/debug.lisp")) ;;;; Hook ASDF into the implementation's REQUIRE and other entry points. diff --git a/header.lisp b/header.lisp index 05bc6b652351e94a6b993f2f3578776358020fe5..c1e0b0ebe67813bbbc1e2900247a03ab02c9f055 100644 --- a/header.lisp +++ b/header.lisp @@ -1,5 +1,5 @@ ;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp ; coding: utf-8 -*- -;;; This is ASDF 2.26.126: Another System Definition Facility. +;;; This is ASDF 2.26.127: Another System Definition Facility. ;;; ;;; Feedback, bug reports, and patches are all welcome: ;;; please mail to . diff --git a/package.lisp b/package.lisp index 3874cd468dacec4682f0e4a77d0aa4ec53665312..3764563679ccd32a8e567950b89a8d9af27e2099 100644 --- a/package.lisp +++ b/package.lisp @@ -10,6 +10,8 @@ ;; and reexported in a different package ;; (alternatively the package may be dropped & replaced by one with a new name). +#+clisp (declaim (optimize (speed 1)(safety 3)(debug 3))) + (defpackage :asdf/package (:use :common-lisp) (:export @@ -253,6 +255,10 @@ or when loading the package is optional." (when nuke (do-symbols (s p) (when (home-package-p s p) (nuke-symbol s)))) (ensure-package-unused p) (delete-package package)))) + (defun package-names (package) + (cons (package-name package) (package-nicknames package))) + (defun packages-from-names (names) + (remove-duplicates (remove nil (mapcar #'find-package names)) :from-end t)) (defun fresh-package-name (&key (prefix :%TO-BE-DELETED) separator (index (random most-positive-fixnum))) @@ -260,12 +266,11 @@ or when loading the package is optional." :for n = (format nil "~A~@[~A~D~]" prefix (and (plusp i) (or separator "")) i) :thereis (and (not (find-package n)) n))) (defun rename-package-away (p &rest keys &key prefix &allow-other-keys) - (rename-package - p (apply 'fresh-package-name :prefix (or prefix (format nil "__~A__" (package-name p))) keys))) - (defun package-names (package) - (cons (package-name package) (package-nicknames package))) - (defun packages-from-names (names) - (remove-duplicates (remove nil (mapcar #'find-package names)) :from-end t))) + (let ((new-name + (apply 'fresh-package-name + :prefix (or prefix (format nil "__~A__" (package-name p))) keys))) + (record-fishy (list :rename-away (package-names p) new-name)) + (rename-package p new-name)))) ;;; Communicable representation of symbol and package information diff --git a/system.lisp b/system.lisp index aa0e0d63d42205db6387a6071cd7fe8d0c7494e7..3a85c9faec4ffa318a0bce438a4ecb1e5bd2c6ca 100644 --- a/system.lisp +++ b/system.lisp @@ -4,8 +4,6 @@ (asdf/package:define-package :asdf/system (:recycle :asdf :asdf/system) (:use :common-lisp :asdf/driver :asdf/upgrade :asdf/component) - (:intern #:children #:children-by-name #:default-component-class - #:author #:maintainer #:licence #:source-file #:defsystem-depends-on) (:export #:system #:proto-system #:system-source-file #:system-source-directory #:system-relative-pathname diff --git a/test/run-tests.sh b/test/run-tests.sh index cef03a6b01078e09d2e7e0e4f3d491d4871ef7de..b3cc3ad518c7c0483ddf550fba82443ce03edb52 100755 --- a/test/run-tests.sh +++ b/test/run-tests.sh @@ -249,6 +249,7 @@ upgrade_methods () { echo $ASDF_UPGRADE_TEST_METHODS ; return fi cat <~%") + existing-version asdf-version)) + (loop :for name :in (append #-(or clisp ecl common-lisp) redefined-functions) :for sym = (find-symbol* name :asdf nil) :do (when sym ;;(format t "Undefining ~S~%" sym);XXX @@ -84,13 +86,12 @@ (shadowing-import new asdf)))))) ;; Note that this massive package destruction makes it impossible ;; to use asdf/driver on top of an old ASDF on these implementations - #+(or clisp xcl) + #+(or xcl) (let ((p (find-package :asdf))) (when p (do-symbols (s p) (when (home-package-p s p) (nuke-symbol s))) (rename-package-away p :prefix (format nil "~A-~A" :asdf (or existing-version :1.x)) - :index 0 :separator "-")))) - (setf *asdf-version* asdf-version))) + :index 0 :separator "-")))))) ;;; Upgrade interface diff --git a/utility.lisp b/utility.lisp index d57f2a1e00cdff097d69ea9f37a9be02a06f8ca5..63a363663e1c2f2e4b4d0783764ccc1ffd50f11f 100644 --- a/utility.lisp +++ b/utility.lisp @@ -63,8 +63,7 @@ ;; but we usually try to do it only for the functions that need it, ;; which happens in asdf/upgrade - however, for ECL, we need this hammer, ;; (which causes issues in clisp) - #-ecl ;XXX - ,@(when (or supersede #+(or (and gcl (not gcl-pre2.7))) t) + ,@(when (or #-ecl supersede #+(or (and gcl (not gcl-pre2.7))) t) ; XXX `((undefine-function ',name))) #-gcl ; gcl 2.7.0 notinline functions lose secondary return values :-( ,@(when (and #+ecl (symbolp name)) ; fails for setf functions on ecl diff --git a/version.lisp-expr b/version.lisp-expr index a69540736d6e1b1a59663dc3ca89350336c7f795..70bb2415887b27dcb83812ef38b07d6e72c10b4a 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -1 +1 @@ -"2.26.126" +"2.26.127"