Commits (74)
-
Robert Goldman authored
Add a period to make 'makeinfo' happy.
373cafd2 -
Robert Goldman authoredb83f0b6d
-
Francois-Rene Rideau authored05ef8fea
-
Robert Goldman authoredc5651786
-
Robert Goldman authored70236d3a
-
Robert Goldman authoreded03671a
-
Robert Goldman authored361d218f
-
Francois-Rene Rideau authored9a4203dc
-
Francois-Rene Rideau authored
ASDF 3.3.0 introduced an unwanted discrepancy from 3.2.1, whereby the readtable and print-pprint-dispatch table were not preserved while loading a .asd file, which caused bad libraries like puri to try to corrupt the standard readtable when loaded as defsystem-depends-on dependency or equivalent. See bug report on the asdf-devel mailing-list. The real solution is to redo the syntax-control branch.
4e75d4d0 -
Robert Goldman authored
Preserve syntax tables in perform define-op See merge request !85
5cddb7a2 -
Robert Goldman authoredeac85efa
-
Robert Goldman authored8b0376d1
-
Francois-Rene Rideau authoreda62ceed5
-
Francois-Rene Rideau authored
UIOP 3.3.0 loaded on top of an earlier ASDF 3 would cause everything to be spuriously rebuilt, because of a change of representation of stamp< arguments. This test evidences the breakage, and the fix.
40020f7d -
Francois-Rene Rideau authored
Restore backward compatibility with older versions of ASDF (before 3.3.0) by renaming stamp< and its friends to timestamp<, etc. Sometime in the lead-up to ASDF 3.3.0, I changed the encoding of infinities from NIL is -infinity and T is +infinity to T is -infinity and T is +infinity which made the code notably nicer on the ASDF side, because file-write-date would return directly the correct result instead of having to constantly switch between inverse conventions. However --- big mistake --- I kept the same function name, after checking that the functions had no user in Quicklisp, no one who had ever discussed them but me, and no documentation before 3.2.0 except a single comment line for the entire family of functions. This doesn't matter as long as ASDF and UIOP are kept in synch, but such is not the case with Quicklisp, where Xach both welcomes recent UIOP releases but refuses to include updates to ASDF itself. Then, loading a new UIOP with reverse conventions totally confuses the old ASDF, and causes spurious rebuilds of everything after UIOP is loaded -- multiple times if present in multiple phases (that and slower build times is how Xach noticed the bug). The solution adopted is to give a new name to the functions with a different convention -- timestamp< instead of stamp<, and so on. Therefore, the new ASDF 3.3.1 will expect the new convention from UIOP 3.3.1, that will no longer overwrite the functions from ASDF 3.2.1 and older with backward-incompatible variants. If an old ASDF 3.2.1 or earlier loads a newer UIOP 3.3.1 or later, it will keep using the old functions: the symbols for these functions will be uninterned, but the values for these functions which won't be clobbered anymore. Backward compatibility is a strong requirement not to to break lightly, not even in a subtle way, not even if "nobody else is using it" --- an older version of ASDF is already "somebody else" with respect to UIOP.
c6654583 -
Francois-Rene Rideau authored
A recent manual test found a bug upgrading from 3.2.1. So include that in the test set. New policy: include first and last of the last few ASDF series, not just last.
bfbefcec -
Francois-Rene Rideau authored
A when-upgrading form had an improper version.
432061d7 -
Robert Goldman authored
Extend the set of versions from which to test upgrade See merge request asdf/asdf!88
c380acd1 -
Robert Goldman authored
Rename stamp to timestamp in uiop/utility See merge request asdf/asdf!87
50b839d3 -
Elias Pipping authored61c57d2b
-
Robert Goldman authored11ac23d6
-
Rommel MARTINEZ authoreda105c14c
-
Robert Goldman authored
Best practices: add table of contents See merge request asdf/asdf!75
6e885c38 -
Robert Goldman authoredd5f7ee04
-
Robert Goldman authoredbc6e481e
-
Robert Goldman authoredb7c4e023
-
Robert Goldman authoredd8b3a3e2
-
Francois-Rene Rideau authoredb87470e6
-
Francois-Rene Rideau authored249d9822
-
Francois-Rene Rideau authored652d1c08
-
Francois-Rene Rideau authored
Test more versions during upgrade tests.
c54265da -
Francois-Rene Rideau authored
Change implementation strategy for operation metadata methods bundle-type, gather-operation and gather-type. Upgrading from 3.1.7 or earlier yielded incorrect values for the metadata slots of the bundle operation classes, e.g. (gather-type (make-operation 'monolithic-lib-op))) was stuck to :STATIC-LIBRARY instead of its correct value :OBJECT since 3.2.0. The reason was that we were storing the value for this method in the :initform for the slot gather-type, which started as clever way of defining it as part of the DEFCLASS form for the class itself; however, this usage pattern does not work well with hot code upgrade: if the :initform changes during ASDF upgrade, the slot is already initialized, so its value isn't updated. That would require a method on UPDATE-INSTANCE-FOR-REDEFINED-CLASS, which hopefully should be invoked despite the fact that the shape of the class hasn't changed. A new slot won't be allocated because (a) we ensure that our operation classes are singleton classes using an *operations* cache, so objects are not reallocated, and (b) we define our slots with an :allocation :class, anyway. Remarkably, at least *some* of our changes in :initform have worked anyway, because when we transitioned allocation from :instance (default) to :class, that transition did force the computation of the new :initform, so the problem was hidden. But we're already out of luck with this upgrade from 3.1.7, and we must find a real solution. The Right Thing(tm) to do is to use DEFMETHOD to define specialized values. This commit does exactly that for the slots defined in bundle.lisp (and also used in concatenate-source.lisp). Ideally, we'd also do that for the slots defined in action.lisp and used in lisp-action.lisp, bundle.lisp and concatenate-source.lisp --- but there might or might not be clients in Quicklisp (or beyond Quicklisp) that this change would break. We must check backward compatibility, make sufficient announcement, etc. Sigh.
8e68ac22 -
Francois-Rene Rideau authored6a8eecc0
-
Francois-Rene Rideau authored95fea698
-
Francois-Rene Rideau authored38c405cf
-
Francois-Rene Rideau authoredcdb843e8
-
Robert Goldman authoreddb7193cc
-
Robert Goldman authoredcd68bc39
-
Francois-Rene Rideau authored
Enhance define-package so SBCL can locate the source-location of the package.
8281e011 -
Robert Goldman authored
Add package location information on SBCL See merge request !90
e3e985d0 -
Robert Goldman authored0d1797cc
-
Francois-Rene Rideau authored53f72684
-
Francois-Rene Rideau authored
Test whether ASDF is still confused by misnamed secondary systems: https://bugs.launchpad.net/asdf/+bug/1739514
5397c994 -
Francois-Rene Rideau authored
Distinguish between "syntactic" primariness ("foo" vs "foo/bar" names) and "semantic" primariness (system foo in foo.asd vs system foo in bar.asd), and use the right one at all right place: when checking if a system is up-to-date, what matters is that the old primary system is at the same place as before, and is up-to-date. Thinking about it, there is a lingering bug in case a definition-dependency are up-to-date, but were modified after the definition was read. What is really needed is a prepare-define-op. Sigh.
069cd2a6 -
Robert Goldman authored
Misnamed secondary See merge request asdf/asdf!91
bb89039c -
Robert Goldman authored2a5bc3be
-
Eric Timmons authored
Tested on SBCL 1.4.4. If sb-c:source-location is evaluated during macro expansion, then the source location will always point to asdf.lisp (inside the define-package macro). If it is evaluated after macro expansion, it points to the right place.
ed0f4d5e -
Eric Timmons authored
SBCL has been getting aggresive with checking arguments to functions. For some reason (as of SBCL 1.4.1), setting the package source location in define-package seems to trigger a source translation for the apply form that ends up producing (many) compilation notes that the arguments to ensure-package in the keyword positions are not constant, weakening keyword argument checking. We can get around that, however, by using a funcall directly.
21e3a85b -
Robert Goldman authored
Define package fixes See merge request asdf/asdf!92
8a80cbc5 -
Robert Goldman authored6cba911f
-
Robert Goldman authored
Add DEPENDENCY-NOT-DONE condition. Refine the printing of such warnings. Later we may wish to export this condition, if we can identify when it should be muffled.
42986b56 -
Robert Goldman authored761ef33e
-
Robert Goldman authored245e2cfb
-
Peter Housel authored
These changes add support for the Mezzano operating system and its Common Lisp implementation. They are based on changes originally developed by Henry Harrington against ASDF 3.1.7.
3a4e2407 -
Eric Timmons authored
This ensures that primary-system-name gives the name of the primary system when passed a package-inferred-system object. Add test to catch this regression in the future.
a0a4d93f -
Peter Housel authored84f36ab9
-
Robert Goldman authored
Add support for the Mezzano Common Lisp operating system See merge request asdf/asdf!94
eade9642 -
Robert Goldman authoredc44e68fa
-
Robert Goldman authored5424cec2
-
Robert Goldman authored
Set source file of package-inferred-systems to source file of primary system See merge request asdf/asdf!93
e271fb89 -
Robert Goldman authoredbcb69b41
-
Francois-Rene Rideau authored773fface
-
Francois-Rene Rideau authored7a0ad82f
-
Robert P. Goldman authorede2b714e8
-
Francois-Rene Rideau authored5f9fb47e
-
Robert P. Goldman authored
Merged together my draft of the Changelog with Fare's. * 'master' of common-lisp.net:asdf/asdf: Create changelog entry for 3.3.2
767ac2a4 -
Robert P. Goldman authorede589bffe
-
Robert P. Goldman authored52b57dd4
-
Robert P. Goldman authored66d7f62c
-
Robert P. Goldman authored
REIFY-UNDEFINED-WARNING uses SB-C internals to "dehydrate" SB-C::COMPILER-ERROR-CONTEXT structures, but those structures have changed. Merge (squashed) of topic branch fix-sbcl-deferred-warnings Eric Timmons found the bug, and Fare and Attila Lendvai improved the initial fix substantially.
1cb16802 -
Robert P. Goldman authored9eb3c56d
-
Robert P. Goldman authored387af8c5
-
Robert P. Goldman authoredadcaad53
-
Jan Moringen authored
Before this commit, ill-formed DEFSYSTEM options of the form :perform ((op ...)) instead of :perform (op ...) caused %DEFINE-COMPONENT-INLINE-METHODS to infinite-loop.
581ebd0d
Showing