- 19 Feb, 2019 2 commits
-
-
Robert Goldman authored
-
Robert Goldman authored
Don't test older versions with CMUCL. Doesn't work, and unnecessary.
-
- 15 Dec, 2018 3 commits
-
-
Francois-Rene Rideau authored
Instead of a lisp of primary system names that are valid prefixes, have a set of names of primary systems that are known to define secondary systems with bad system names.
-
Hugo Ishimaru authored
as in some cases FIND-SYSTEM incorrectly found the cl-ppcre.asd instead of the official .asd file
-
Robert Goldman authored
-
- 05 Oct, 2018 1 commit
-
-
Robert P. Goldm an authored
Marius Gerbershagen suggests replacing :RT by :SOCKETS, because :RT is being removed from ECL.
-
- 02 Aug, 2018 2 commits
-
-
Robert Goldman authored
-
Robert P. Goldman authored
This test will be enabled when the bugfix is pushed.
-
- 31 Jul, 2018 1 commit
-
-
Robert P. Goldman authored
Breaks my Jenkins job with a segfault, which Fare attributes to possible GC issue. This is not an ASDF problem, so just pruning the test.
-
- 08 Apr, 2018 2 commits
-
-
Francois-Rene Rideau authored
-
Francois-Rene Rideau authored
-
- 01 Mar, 2018 1 commit
-
-
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.
-
- 20 Feb, 2018 1 commit
-
-
Robert Goldman authored
-
- 03 Jan, 2018 1 commit
-
-
Francois-Rene Rideau authored
Test whether ASDF is still confused by misnamed secondary systems: https://bugs.launchpad.net/asdf/+bug/1739514
-
- 05 Dec, 2017 2 commits
-
-
Francois-Rene Rideau authored
Test more versions during upgrade tests.
-
Francois-Rene Rideau authored
-
- 20 Oct, 2017 3 commits
-
-
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.
-
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.
-
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.
-
- 12 Oct, 2017 1 commit
-
-
Francois-Rene Rideau authored
-
- 01 Sep, 2017 1 commit
-
-
Robert Goldman authored
This has never worked, so am just disabling it until we add an "expected failure" feature to our script-support.
-
- 24 Jul, 2017 2 commits
-
-
Francois-Rene Rideau authored
Group the commands in ( parentheses ) including the optional chdir. Update the test-run-program.script.
-
Francois-Rene Rideau authored
Fix upgrade on ABCL, that failed to properly process the fact that initialize-source-registry had moved from asdf/find-system to asdf/source-registry, yet was called in a cleanup function. Fix upgrade on ECL, that failed to correctly process that find-component was fmakunbound. It also seems to clear *central-registry* in some upgrade scenarios (that also moved from find-system to system-registry). Tweak script-support to not unconditionally frob-packages when ASDF isn't loaded yet, and to not include the asdf directory when loading and testing only UIOP.
-
- 23 Jul, 2017 1 commit
-
-
Francois-Rene Rideau authored
This provides for backward compatibility with ECL, whose current maintainer Daniel K. has decided to keep supporting the make-build interface and has forked ASDF for that.
-
- 21 Jul, 2017 2 commits
-
-
Francois-Rene Rideau authored
Update some packages so #+ecl forms can see symbols they need. Make sure uiop and/or asdf have linkable output before to link them. Fix test-program to account for recent asdf changes.
-
Francois-Rene Rideau authored
-
- 20 Jul, 2017 14 commits
-
-
Robert Goldman authored
Previously, if one bumped a version number that was included into a system definition using :READ-FILE-FORM or :READ-FILE-LINE, ASDF would not notice the change (so it could, for example, fail to recognize that a depended-on system has had its version number bumped and now satisfies a new :VERSION requirement). This was fixed by adding ADDITIONAL-INPUT-FILES to the object model. These serve the purpose of giving a place other than INPUT-FILES for ASDF to stash input files that it "notices" on its own (e.g., when processing :READ-FILE-<FOO>). ASDF can't stash such files in INPUT-FILES, because it must leave the INPUT-FILES primary methods open for users to override.
-
Robert Goldman authored
In some cases the backtraces aren't useful, and obscure more important information. Now the user can disable them with lisp variable or environment variable. (cherry picked from commit 99422ff9238f72fbad557e8d716bee9df2e84d7c)
-
Francois-Rene Rideau authored
-
Francois-Rene Rideau authored
I noticed that some systems, e.g. fast-io, will cause UIOP, CFFI, and everything that depends on it, to be constantly recompiled. Interestingly, this doesn't happen with any of the systems that fast-io directly depends on: alexandria, trivial-gray-streams, and static-vectors. And interestingly, the test case, once reduced, is exactly isomorphic to the test case already in test-defsystem-depends-on-phase-overlap.script: fast-io => main-system, alexandria => overlapping-dependency, static-vectors => intermediate-dependency, bazel => defsystem-dependency And indeed, adding a test for it detects the failure.
-
Francois-Rene Rideau authored
Track at which level of nested calls to OPERATE a not-done action is needed; if it is needed at a higher level than previously traversed, then traverse again to schedule it (and its transitive dependencies) to be done in the higher level. This fixes cases, such as in (test-system "cl-protobufs-tests"), where a library was already marked as needed at a low level of OPERATE, but if actually needed at higher level due to a defsystem-depends-on, and was previously not loaded early enough (after this plan refactoring).
-
Francois-Rene Rideau authored
Add test case in test-defsystem-depends-on-phase-overlap.script for a failure observed when running (test-system "cl-protobufs"): the action (test-op "cl-protobufs") depends on (load-op "cl-protobufs"), which gets staged at level 0; it then depends on (test-op "cl-protobufs-tests") which defsystem-depends-on (load-op "cl-protobufs"), but it has already been staged, so traverse-action fails to re-stage it at higher priority for level 1, and fails to perform it before we're back to defsystem "cl-protobufs-tests".
-
Francois-Rene Rideau authored
A DEFINE-OP "asdf" shouldn't depend on a DEFINE-OP "uiop", or a circular dependency may be introduced by the "always load asdf first" behavior. Instead, have asdf/driver do a low-level copy of the components in uiop, rather than a transclusion of a system defined in a separate file.
-
Francois-Rene Rideau authored
TODO: understand what's going on there...
-
Francois-Rene Rideau authored
Do not perform an action twice in a session. Introduce three status bits that every action has in a given session, in addition to the stamp: KEEP-P (from previous session), DONE-P (and up-to-date, in this image), NEED-P (needed in this image as part of this session). BACKWARD INCOMPATIBILITY: Invert the meaning of NIL and T for STAMP, so that NIL means out-of-date. This makes our code conceptually nicer, and no one in Quicklisp uses our stamps, anyway. Still, beware.
-
Francois-Rene Rideau authored
-
Francois-Rene Rideau authored
-
Francois-Rene Rideau authored
Add test-defsystem-depends-on-phase-overlap.script (currently failing) to check that an action present in multiple phases will only be performed once.
-
Francois-Rene Rideau authored
Use a simple table *registered-systems* mapping name to system, and remember timestamps in the COMPONENT-OPERATION-TIME for DEFINE-OP, instead of the original *defined-systems* table mapping name to cons of timestamp and system.
-
Francois-Rene Rideau authored
Move forcing into its own file. Include forcing, not plan, among session slots. Share a toplevel forcing for all performable plans. Have REQUIRE use load-system, not require-system, so as not to conflict with session forcing options. Don't call with-asdf-session outside the test scripts themselves. Cleanup a few scripts accordingly, and beyond.
-