From 3e3581d2c7d16000d2ee9bf0be9c520b4626f532 Mon Sep 17 00:00:00 2001 From: Francois-Rene Rideau <tunes@google.com> Date: Sat, 2 Mar 2013 13:58:52 -0500 Subject: [PATCH] 2.31.6: disable deferred warnings check by default, until a smooth upgrade solution is found. --- asdf.asd | 2 +- doc/index.html | 107 ++++++++++++++--------------- header.lisp | 2 +- interface.lisp | 2 +- lisp-build.lisp | 9 ++- operation.lisp | 2 +- test/test-deferred-warnings.script | 2 + test/test8.script | 24 +++---- upgrade.lisp | 2 +- version.lisp-expr | 2 +- 10 files changed, 79 insertions(+), 75 deletions(-) diff --git a/asdf.asd b/asdf.asd index 5737d576..abaea87c 100644 --- a/asdf.asd +++ b/asdf.asd @@ -74,7 +74,7 @@ :licence "MIT" :description "Another System Definition Facility" :long-description "ASDF builds Common Lisp software organized into defined systems." - :version "2.31.5" ;; to be automatically updated by make bump-version + :version "2.31.6" ;; 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. diff --git a/doc/index.html b/doc/index.html index 6a51a32f..c177ea3e 100644 --- a/doc/index.html +++ b/doc/index.html @@ -40,19 +40,19 @@ </p> <a id="what_it_is"></a> <h3>What it is</h3> - <p>ASDF 3 contains two parts: ASDF/DEFSYSTEM and ASDF/DRIVER. + <p>ASDF 3 contains two parts: <tt>asdf/defsystem</tt> and <tt>asdf/driver</tt>. </p> - <p>ASDF/DEFSYSTEM, + <p><tt>asdf/defsystem</tt>, is a tool to describe how Lisp source code is organized in systems, and how to build a system in term of actions that depend on previous actions. </p> <p>It is roughly what Common Lisp hackers use to build software - where C hackers might use GNU Make. + where C hackers might use GNU <tt>Make</tt>. </p> <p>ASDF stands for <em>A</em>nother <em>S</em>ystem <em>D</em>efinition <em>F</em>acility, - in the continuity of the Lisp DEFSYSTEM of yore. + in the continuity of the Lisp <tt>DEFSYSTEM</tt> of yore. </p> - <p>ASDF/DRIVER is a Common Lisp portability library and runtime support system + <p><tt>asdf/driver</tt> is a Common Lisp portability library and runtime support system that helps you write Common Lisp software in a portable way. </p> <p>In addition to many general-purpose Lisp utilities, @@ -66,36 +66,36 @@ <a id="what_it_is_not"></a> <h3>What it is not</h3> <p>ASDF will <em>not</em> download missing software components for you. - For that, you want <a href="http://quicklisp.org/">Quicklisp</a>, + For that, you want <a href="http://quicklisp.org/"><tt>Quicklisp</tt></a>, that builds upon ASDF, and is great for pulling and installing tarballs of packages you may depend upon; - we also recommend <a href="http://common-lisp.net/project/clbuild/">clbuild</a>, + we also recommend <a href="http://common-lisp.net/project/clbuild/"><tt>clbuild</tt></a>, that now builds upon Quicklisp, as a great tool for pulling from version control packages you need to modify or want to contribute to. - We recommend you should <em>not</em> use ASDF-Install anymore, + We recommend you should <em>not</em> use <tt>asdf-install</tt> anymore, as it is an older similar piece of software that is both unmaintained and obsolete. </p><p> If you're unsatisfied with ASDF, other actively maintained build systems for Common-Lisp that may or may not satisfy you include: François-René Rideau's - <a href="http://common-lisp.net/project/xcvb/">XCVB</a> + <a href="http://common-lisp.net/project/xcvb/"><tt>XCVB</tt></a> (trying to build object and image files deterministically and in parallel), or its polar opposite, Drew McDermott's - <a href="http://cs-www.cs.yale.edu/homes/dvm/">YTools</a> + <a href="http://cs-www.cs.yale.edu/homes/dvm/"><tt>YTools</tt></a> (trying to maintain coherence of the current Lisp image at a fine grain), the newcomer - <a href="http://lisp.ystok.ru/asdlite/">ASDlite</a> + <a href="http://lisp.ystok.ru/asdlite/"><tt>ASDlite</tt></a> (a somewhat improved incompatible variant of ASDF 1, less featureful than ASDF 3), - or Alastair Bridgewater's interesting quick-build (unreleased, similar to faslpath below). + or Alastair Bridgewater's interesting <tt>quick-build</tt> (unreleased, similar to <tt>faslpath</tt> below). Older systems that are not maintained anymore include - Mark Kantrowitz's <a href="http://www.cliki.net/mk-defsystem">mk-defsystem</a> + Mark Kantrowitz's <a href="http://www.cliki.net/mk-defsystem"><tt>mk-defsystem</tt></a> (free software successor of the old proprietary DEFSYSTEM's and predecessor of ASDF, obsolete), - Sean Ross's <a href="http://sean-ross.blogspot.com/search/label/mudballs">mudballs</a> + Sean Ross's <a href="http://sean-ross.blogspot.com/search/label/mudballs"><tt>mudballs</tt></a> (an attempt at making things cleaner than in ASDF, aborted), - Peter Etter's <a href="http://www.cliki.net/faslpath">faslpath</a> + Peter Etter's <a href="http://www.cliki.net/faslpath"><tt>faslpath</tt></a> (a much simpler system establishing a mapping between packages and files) - Alexander Kahl's <a href="http://www.cliki.net/evol">evol</a> + Alexander Kahl's <a href="http://www.cliki.net/evol"><tt>evol</tt></a> (a reimplementation of the GNU autotools stack in Lisp, abandoned), and probably more. However, none of these systems seems to ever have had the traction of ASDF. @@ -105,16 +105,17 @@ <p>ASDF 3 now supports all CL implementations that seem to have any current user base, and then some. </p><p> - Most implementations provide ASDF 2 as a module, + Most implementations provide ASDF as a module, and you can simply <tt>(require "asdf")</tt>. (All of them but CLISP also accept <tt>:asdf</tt>, <tt>"ASDF"</tt> or <tt>'asdf</tt> as an argument.) - </p><p> - They will hopefully soon all provide ASDF 3, + All of these implementations provide at least ASDF 2, + and a few of them aready provide ASDF 3 (<tt>allegro</tt>, <tt>ccl</tt>, <tt>cmucl</tt>, <tt>ecl</tt>). + Hopefully soon all will follow suit; but in the meantime, you can download ASDF 3, and use <tt>(asdf:load-system :asdf)</tt> from a properly configured ASDF 2 to upgrade to the latest, - which you should before you use ASDF for anything else. + which you should do before you use ASDF for anything else. </p><p> A few implementations don't provide ASDF yet, but have announced they will in their next release. @@ -130,13 +131,13 @@ <th align="left">Will provide it</th> <th align="left">Obsolete</th></tr> <tr><th align="left">Free</th> - <td align="left">abcl ccl clisp cmucl ecl mkcl sbcl xcl</td> + <td align="left"><tt>abcl ccl clisp cmucl ecl mkcl sbcl xcl</tt></td> <td> </td> - <td align="left">gcl mcl</td></tr> + <td align="left"><tt>gcl mcl</tt></td></tr> <tr><th align="left">Proprietary</th> - <td align="left">allegro lispworks</td> - <td align="left">scl</td> - <td align="left">cormanlisp genera</td></tr> + <td align="left"><tt>allegro lispworks</tt></td> + <td align="left"><tt>scl</tt></td> + <td align="left"><tt>cormanlisp genera</tt></td></tr> </table> <!-- Note to self: The maintainers of the following implementations follow asdf-announce: @@ -208,13 +209,11 @@ Peter Graves <gnooth@gmail.com> <a href="http://common-lisp.net/project/asdf/asdf.tar.gz">tarball</a> to get all bells and whistles; </li> - <li>download just the latest <em>development</em> source from our git repository: - <a href="http://common-lisp.net/gitweb?p=projects/asdf/asdf.git;a=blob_plain;f=asdf.lisp;hb=HEAD">asdf.lisp</a> - </li> <li>pull the latest <em>development</em> tree from our git repository <pre>git clone git://common-lisp.net/projects/asdf/asdf.git</pre> (note that our "master" branch is for current development; - get our "release" branch for the latest stable release.); + get our "release" branch for the latest stable release. + Run <tt>make</tt> to create <tt>build/asdf.lisp</tt>); </li> <li>browse the latest <em>development</em> tree from our git repository: <a href="http://common-lisp.net/gitweb?p=projects/asdf/asdf.git">gitweb</a> @@ -228,53 +227,53 @@ Peter Graves <gnooth@gmail.com> <p>Known extensions to ASDF include:</p> <ul> <li><a href="http://common-lisp.net/gitweb?p=projects/asdf/asdf-contrib.git" - >asdf-contrib</a>, + ><tt>asdf-contrib</tt></a>, a collection of most of the below.</li> <li><a href="http://common-lisp.net/gitweb?p=projects/asdf/asdf-encodings.git" - >asdf-encodings</a>, + ><tt>asdf-encodings</tt></a>, to compile Lisp source files with character encodings other than UTF-8.</li> <li><a href="http://common-lisp.net/gitweb?p=projects/asdf/asdf-finalizers.git" - >asdf-finalizers</a>, + ><tt>asdf-finalizers</tt></a>, to allow macros to include code to be evaluated at the end of a file being compiled.</li> <li><a href="http://common-lisp.net/gitweb?p=projects/xcvb/asdf-dependency-grovel.git" - >asdf-dependency-grovel</a>, + ><tt>asdf-dependency-grovel</tt></a>, to compute the actual dependencies in a big ASDF system.</li> <li><a href="http://common-lisp.net/project/qitab/" - >poiu</a>, + ><tt>poiu</tt></a>, to compile a system in parallel.</li> <li><a href="http://common-lisp.net/project/asdf-system-connections/" - >asdf-system-connections</a>, + ><tt>asdf-system-connections</tt></a>, lets you specify systems that are automatically loaded when two other systems are loaded, to connect them.</li> <li><a href="http://www.lrde.epita.fr/~didier/software/lisp/misc.php#asdf-flv" - >asdf-flv</a>, + ><tt>asdf-flv</tt></a>, to bind file-local variables around the compilation of some files.</li> </ul> <p>Former extensions, now superseded, include:</p> <ul> - <li>ASDF-BINARY-LOCATIONS allowed one to redirect where ASDF creates its output files, + <li><tt>asdf-binary-locations</tt> allowed one to redirect where ASDF creates its output files, so they don't clash between implementations and don't pollute source directories. - It is superseded by ASDF/DEFSYSTEM's builtin ASDF-OUTPUT-TRANSLATIONS mechanism; + It is superseded by <tt>asdf/defsystem</tt> builtin <tt>asdf-output-translations</tt> mechanism; a limited compatibility mode is available to easily convert your former ABL configuration into an AOT configuration. - COMMON-LISP-CONTROLLER and CL-LAUNCH used to provide similar mechanisms, - and have also been superseded by ASDF-OUTPUT-TRANSLATIONS. + <tt>common-lisp-controller</tt> and <tt>cl-launch</tt> used to provide similar mechanisms, + and have also been superseded by <tt>asdf-output-translations</tt>. </li> - <li>ASDF-BUNDLE, née ASDF-ECL, + <li><tt>asdf-bundle</tt>, née <tt>asdf-ecl</tt>, allowed you to create a single-file bundle out of a system, for easier delivery. - It is now a builtin part of ASDF/DEFSYSTEM, + It is now a builtin part of <tt>asdf/defsystem</tt>, and allows to deliver a single FASL for a system, or (on supported implementations), a standalone executable program. </li> - <li>ASDF-UTILS was a collection of utilities that originated with ASDF. - It is now superseded by ASDF/DRIVER, which is part of ASDF, - and exports its functionality in its own package ASDF/DRIVER. + <li><tt>asdf-utils</tt> was a collection of utilities that originated with ASDF. + It is now superseded by <tt>asdf/driver</tt>, which is part of ASDF, + and exports its functionality in its own package <tt>asdf/driver</tt>. </li> - <li>ASDF-CONDITION-CONTROL, initially part of XCVB's XCVB-DRIVER, + <li><tt>asdf-condition-control</tt>, initially part of XCVB's <tt>xcvb-driver</tt>, allowed you to muffle uninteresting conditions during compilation. - Is now superseded by equivalent functionality in ASDF/DRIVER. + Is now superseded by equivalent functionality in <tt>asdf/driver</tt>. </li> </ul> @@ -316,12 +315,12 @@ Peter Graves <gnooth@gmail.com> <dl> <dt>In February 2013</dt> <dd> - ASDF 3 now includes both the traditional ASDF/DEFSYSTEM - and a formalized portability library ASDF/DRIVER. - ASDF/DEFSYSTEM is a backward-compatible reimplementation of ASDF + ASDF 3 now includes both the traditional <tt>asdf/defsystem</tt> + and a formalized portability library <tt>asdf/driver</tt>. + <tt>asdf/defsystem</tt> is a backward-compatible reimplementation of ASDF with correct timestamp propagation based on a consistent dependency model, - and featuring support for bundle output, deferred warnings, and more. - ASDF/DRIVER provides many abstractions to write portable Common Lisp programs. + and featuring support for bundle output, deferred warnings check, and more. + <tt>asdf/driver</tt> provides many abstractions to write portable Common Lisp programs. </dd> <dt>In April 2012</dt> <dd> @@ -363,7 +362,7 @@ Peter Graves <gnooth@gmail.com> <dt>August 2001 to May 2004</dt> <dd>Developed by Daniel Barlow, with notable contributions from Christophe Rhodes, Kevin Rosenberg, Edi Weitz, Rahul Jain. - Last version: 1.37. + Last version: 1.85. <dt>August 2001</dt> <dd>Created by Daniel Barlow</dd> </dl> @@ -375,7 +374,7 @@ Peter Graves <gnooth@gmail.com> <a class="nav" href="http://common-lisp.net/" title="Common-Lisp.net"> <img src="http://common-lisp.net/project/cl-containers/shared/buttons/lisp-lizard.png" width="80" height="15" title="Common-Lisp.net" alt="Common-Lisp.net button" /></a> <p><span class="copyright"Copyright © 2001-2013 Daniel Barlow and contributors</span></p> <p>ASDF has an <a href="http://www.opensource.org/licenses/mit-license.php">MIT style</a> license</p> - <div id="timestamp">Last updated 2013-02-16</div> + <div id="timestamp">Last updated 2013-03-02</div> </div> </body> </html> diff --git a/header.lisp b/header.lisp index c182617f..7695337e 100644 --- a/header.lisp +++ b/header.lisp @@ -1,5 +1,5 @@ ;;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp -*- -;;; This is ASDF 2.31.5: Another System Definition Facility. +;;; This is ASDF 2.31.6: Another System Definition Facility. ;;; ;;; Feedback, bug reports, and patches are all welcome: ;;; please mail to <asdf-devel@common-lisp.net>. diff --git a/interface.lisp b/interface.lisp index 23e280f3..efaf6681 100644 --- a/interface.lisp +++ b/interface.lisp @@ -134,7 +134,7 @@ #:apply-output-translations #:compile-file* #:compile-file-pathname* - #:*warnings-file-type* + #:*warnings-file-type* #:enable-deferred-warnings-check #:disable-deferred-warnings-check #:enable-asdf-binary-locations-compatibility #:*default-source-registries* #:*source-registry-parameter* diff --git a/lisp-build.lisp b/lisp-build.lisp index 5153fd5e..bdbafcbe 100644 --- a/lisp-build.lisp +++ b/lisp-build.lisp @@ -22,6 +22,7 @@ #:reify-deferred-warnings #:reify-undefined-warning #:unreify-deferred-warnings #:reset-deferred-warnings #:save-deferred-warnings #:check-deferred-warnings #:with-saved-deferred-warnings #:warnings-file-p #:warnings-file-type #:*warnings-file-type* + #:enable-deferred-warnings-check #:disable-deferred-warnings-check #:current-lisp-file-pathname #:load-pathname #:lispize-pathname #:compile-file-type #:call-around-hook #:compile-file* #:compile-file-pathname* @@ -446,9 +447,15 @@ possibly in a different process." ((:clozure :ccl) "ccl-warnings") ((:scl) "scl-warnings"))) - (defvar *warnings-file-type* (warnings-file-type) + (defvar *warnings-file-type* nil "Type for warnings files") + (defun enable-deferred-warnings-check () + (setf *warnings-file-type* (warnings-file-type))) + + (defun disable-deferred-warnings-check () + (setf *warnings-file-type* nil)) + (defun warnings-file-p (file &optional implementation-type) (if-let (type (if implementation-type (warnings-file-type implementation-type) diff --git a/operation.lisp b/operation.lisp index 85547aa2..ae4972ad 100644 --- a/operation.lisp +++ b/operation.lisp @@ -2,7 +2,7 @@ ;;;; Operations (asdf/package:define-package :asdf/operation - (:recycle :asdf/operation :asdf) + (:recycle :asdf/operation :asdf/action :asdf) ;; asdf/action for FEATURE pre 2.31.5. (:use :asdf/common-lisp :asdf/driver :asdf/upgrade) (:export #:operation diff --git a/test/test-deferred-warnings.script b/test/test-deferred-warnings.script index 1624b3c9..3ec10ff3 100644 --- a/test/test-deferred-warnings.script +++ b/test/test-deferred-warnings.script @@ -2,6 +2,8 @@ (in-package :asdf-test) +(enable-deferred-warnings-check) + (def-test-system :unintern-foo :components ((:file "unintern-foo"))) (def-test-system :use-foo-only diff --git a/test/test8.script b/test/test8.script index eb01c6bd..3857f50e 100644 --- a/test/test8.script +++ b/test/test8.script @@ -2,19 +2,15 @@ ;;; make sure we get a missing-component error - - (in-package :asdf-test) -(progn - (trace operate) - (handler-case - (asdf:oos 'asdf:load-op 'system-does-not-exist) - (asdf:missing-component-of-version (c) - (declare (ignore c)) - (error "Should not have gotten 'missing-component-of-version, dang")) - (asdf:missing-component (c) - (format t "got missing-component as expected: - ~%~A~%" c)) - (:no-error (c) - (declare (ignore c)) - (error "should have failed, oops")))) +(handler-case + (asdf:oos 'asdf:load-op 'system-does-not-exist) + (asdf:missing-component-of-version (c) + (declare (ignore c)) + (error "Should not have gotten 'missing-component-of-version, dang")) + (asdf:missing-component (c) + (format t "got missing-component as expected: - ~%~A~%" c)) + (:no-error (c) + (declare (ignore c)) + (error "should have failed, oops"))) diff --git a/upgrade.lisp b/upgrade.lisp index b83ac422..88356cfd 100644 --- a/upgrade.lisp +++ b/upgrade.lisp @@ -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.31.5") + (asdf-version "2.31.6") (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 072de5e3..173f1f81 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -1 +1 @@ -"2.31.5" +"2.31.6" -- GitLab