- Mar 05, 2014
-
-
Francois-Rene Rideau authored
Add regression tests for the feature. Change the meaning of :force-not t to mean "anything but current system".
-
- Mar 01, 2014
-
-
Francois-Rene Rideau authored
Testing the latest cl-launch with ECL showed massive bitrot in the bundle support for ECL. * Make better use of ASDF3's class hierarchy in redefining asdf/bundle, by removing and adding the mixins: goodbye bundle-compile-op and monolithic-, hello link-op and gather-op. Also, reinstate bundle-system as a class to hold prologue and epilogue (but do we need these, now with portable ASDF3 image support?) * rename binary-op to deliver-asd-op, same for monolithic- * Introduce image-op as a superclass of program-op, for dumping an executable image with the regular top-level. * Redo the way operation flags are or aren't propagated: gather-op explicitly does not pass the flags, so toplevel options are for the toplevel build only -- though they belong to the system, not the operation. Therefore get rid of no-ld-flags-op -- if there are flags to pass, they should be passed explicitly in gather-op; or more likely, they might be slots in the system, or the plan, or special variables for the current session. OPERATE tries harder to preserve the original-initargs, which are not clobbered by asdf/bundle's initialize-instance anymore. * Punt for command-line-arguments on LispWorks, so the user has a slight chance of setting them.
-
- Feb 21, 2014
-
-
Robert P. Goldman authored
Ensure that SYSTEM-DEFSYSTEM-DEPENDS-ON never gets SLOT-UNBOUND error. Also cache DEPENDS-ON and WEAKLY-DEPENDS-ON info from DEFSYSTEM.
-
- Feb 19, 2014
-
-
Robert P. Goldman authored
Ensure that SYSTEM-DEFSYSTEM-DEPENDS-ON never gets SLOT-UNBOUND error. Also cache DEPENDS-ON and WEAKLY-DEPENDS-ON info from DEFSYSTEM.
-
- Jan 27, 2014
-
-
Francois-Rene Rideau authored
For backward compatibility with ASDF 2, an operation that doesn't explicitly inherit from one of the propagation classes or non-propagating-operation will be downward- and sideway- propagating, with a warning at instantiation. Inheriting from non-propagating and a propagating class at the same time yields an error, not a warning. Update packages and tests.
-
Francois-Rene Rideau authored
* load-op needn't be sideway, its sideway dependencies are already provided by prepare-op * compile-op should use compile-op (default) not load-op as its downward-operation. * no need for an input-files method for prepare-op, nil is the global default. * Some documentation for compute-action-stamp. * Don't skip upgrade from 1.x on Allegro anymore, since we now correctly punt. * Instead of asdf/package:define-package, use the canonical name uiop/package:define-package
-
- Jan 21, 2014
-
-
Robert P. Goldman authored
-
Robert P. Goldman authored
Added INITIALIZE-INSTANCE that checks for operations that have no specified dependency propagations. Also added NON-PROPAGATING-OPERATION as a way to specify that an OPERATION subclass /intentionally/ performs no dependency propagation.
-
- Jan 05, 2014
-
-
Francois-Rene Rideau authored
-
- Jan 03, 2014
-
-
Francois-Rene Rideau authored
This bug was found while testing with ECL, which somehow evaluated the .asd twice during test-bundle.script when other implementations evaluated it only once; which revealed that the second time around, the package-system would override the explicit secondary definitions of test-asdf/dll-test and test-asdf/dll-user, and then would fail ungracefully due to the absence of defpackage in these files. That latent bug was present in all implementations, but not stressed by the test system.
-
- Oct 23, 2013
-
-
Francois-Rene Rideau authored
This is quick-build compatible and fixes lp#1230368. To use package-system, just have foo.asd containing (defsystem foo :class package-system) at the top of your quick-build hierarchy $FOODIR for packages whose name start with "FOO/" and ASDF will thereafter look for system "foo/bar/baz" in $FOODIR/bar/baz.lisp. Such a file will implicitly have its own system defined; its dependencies are computed by scanning the file, extracting its first defpackage form, and using the packages it uses or imports from as a as a specification of what systems it depends on. You can register packages as belonging to a system with (asdf:register-system-packages my-system '(package1 package2)) Using or importing from a package registered to a given system will generate a dependency to the registered system. Using or importing from a packages registered to the constant symbol T will not generate any dependency. Using or importing from a packages that is not registered will generate a dependency on a system the name of which is the package name downcased. All packages that exist at the time ASDF is initially loaded are registered to constant symbol T. Also, for convenience, introduce :use-reexport and :mix-reexport in uiop/package.lisp (of course, no one can rely on it until it's mainstream, but better late than never). To use this style in a way compatible with older versions of ASDF 3, you may use the asdf-package-system extension. See lisp-interface-library for a system that uses this style this way. Push :asdf-package-system to *features*
-
- Oct 09, 2013
-
-
Francois-Rene Rideau authored
-
- Sep 23, 2013
-
-
Francois-Rene Rideau authored
-
- Jun 09, 2013
-
-
Francois-Rene Rideau authored
-
- Apr 16, 2013
-
-
Francois-Rene Rideau authored
export sequential-plan; recognize original-initargs as exported but not defined (slot name); don't error while testing for not-defined-yet type (helps POIU when symbol exists but not type); reindent a clause of compute-action-stamp.
-
- Mar 29, 2013
-
-
Francois-Rene Rideau authored
-
Francois-Rene Rideau authored
-
- Mar 18, 2013
-
-
Francois-Rene Rideau authored
-
- Mar 17, 2013
-
-
Francois-Rene Rideau authored
Rename sibling-operation sideway-operation, sibling-dependencies sideway-dependencies. No one in quicklisp was using the old name. Introduce selfward-operation for the common pattern. Have a prepare-fasl-op to gracefully propagate fasl-op. Reset component-depends-on when upgrading. Refactor concatenate-source-op in a likewise fashion.
-
- Mar 05, 2013
-
-
Francois-Rene Rideau authored
-
- Mar 02, 2013
-
-
Francois-Rene Rideau authored
-
- Feb 22, 2013
-
-
Francois-Rene Rideau authored
Export component-loaded-p. Update some docstrings.
-
- Feb 18, 2013
-
-
Francois-Rene Rideau authored
-
- Feb 01, 2013
-
-
Francois-Rene Rideau authored
:website-url ==> :homepage :developers-email ==> :mailto :bug-tracker-url ==> :bug-tracker
-
- Jan 31, 2013
-
-
Francois-Rene Rideau authored
Add :website-url :bug-tracker-url :developers-email :long-name :source-control Remove unused symbols from some packages. Update some comments. Example uses in defsystem asdf/defsystem.
-
Francois-Rene Rideau authored
Reinstantiate the component-property interface, for backward-compatibility. Also for backward compatibility, be ready to survive missing warnings-file; CFFI notably fails to use compile-file*.
-
- Jan 30, 2013
-
-
Francois-Rene Rideau authored
Had to refactor the asdf-pathname-test by decomposing it into small bits before I could understand what was going on. Some more robustness in find-system. Also, no build-report output-file when no *warnings-file-type*, and ABL support for build-report. Deprecate *asdf-verbose*. Have *verbose-out* be NIL (which is testable) rather than (make-broadcast-stream), which isn't quite, to signal no verbosity. That's both more useful while remaining backward-compatible.
-
- Jan 29, 2013
-
-
Francois-Rene Rideau authored
Also, load .asd files in a with-standard-io-syntax. Export and tweak required-components. CMUCL now can hot upgrade from ASDF 2.018 and later. Simple documentation updates.
-
- Jan 27, 2013
-
-
Francois-Rene Rideau authored
We were checking it all the time in forced-p. Also cache nil-pathname and root-pathname.
-
Francois-Rene Rideau authored
Between 2.26 and 2.26.152, ASDF had gotten ~37 times slower at traversing iolib. Now trying to restore some performance. This commit: 1- generalizes the cache to cover input-files and output-files as well as get-file-stamp. 2- removes the probe-file before file-write-date.
-
Francois-Rene Rideau authored
Introduce some backward incompatibility with features unused in quicklisp: * Don't create a temporary package every time you load a .asd; instead, load everything from same package ASDF-USER, that :use's asdf/common-lisp asdf/package asdf/interface That's the Common Lisp way, what with COMMON-LISP-USER. If you want a private package, use DEFPACKAGE or DEFINE-PACKAGE. * operation-description is renamed action-description. No one was using it in quicklisp, and no one was specializing it except cl-protobufs, which I'll fix. * component-properties and component-property are gone. If you want a new property, create your own subclass of component. Also, have a load-asd function with name in keyword arguments, rather than load-sysdef function that requires the name.
-
- Jan 26, 2013
-
-
Francois-Rene Rideau authored
Also, cleanup and documentation of deferred-warnings support.
-
- Jan 24, 2013
-
-
Francois-Rene Rideau authored
enhance plan consistency and make testing easier.
-
Francois-Rene Rideau authored
A better asdf.asd. Refactor the preloaded system mechanism, use it for cl-launch 3.21.2. Rename bundle-pathname to build-pathname, move it from bundle-system to system. Rename the gcl<2.7 feature gcl2.6. Die on gcl2.5 and earlier. Don't even try to compile-file asdf using gcl 2.6, just load the .lisp. Rename asdf/compatibility to asdf/common-lisp, exporting only CL symbols. Fix define-package to correctly handle exporting of NIL. Also, make it work with Genera, with #'(lambda instead of (lambda, and using lisp:loop (via a macro loop*) when destructuring is required. Document more 2.27 changes in changelog. If there is no :pathname and no load-pathname, do NOT have a system pathname take defaults from *default-pathname-defaults*, but make it NIL.
-
- Jan 21, 2013
-
-
Francois-Rene Rideau authored
Rename RUN-PROGRAM/ to RUN-PROGRAM. Can't export it from ASDF because it causes a clash in SB-GROVEL. Rename SUB-OBJECT and :PATH to ACCESS-AT and :AT. Get rid of TRANSLATE-OUTPUT-P. Instead, check whether the component's BUILD-OPERATION is the same as the current operation.
-
- Jan 20, 2013
-
-
Francois-Rene Rideau authored
Don't key upgrade attempt on source-registry, since things can also change in the central-registry, etc. Also rename required-files to direct-dependency-files Improve the new convenience function pattern to work with operation initargs. Implement getcwd on all platforms. Actually catch sb-grovel messages. Tests: make u l=ecl instead of make test-upgrade lisp=ecl Tests: put the setup around the script, not inside; Tests: start using globals, much easier for debugging
-
- Jan 18, 2013
-
-
Francois-Rene Rideau authored
-
Francois-Rene Rideau authored
A system named foo/bar will be looked up in a registered file foo.asd. This makes it possible to sensibly name several systems in a .asd file and still have asdf find them all by name. We now use it to not have the asdf header be part of asdf-driver. A new generic operation build-op makes it possible to deal with the fact that the default operation for systems need not be load-op, yet that the end-user does not want to have to know the exact operation for each of the system he uses. ensure-pathname has been improved again, and its clients tweaked. remove-keys was made more sensible by using EQL rather than STRING-EQUAL. :version need not take the first form in a file, but can take a path to a subform. This makes it possible to get the exact subform in a Lisp source file that has the string. See SUB-OBJECT for how these paths work. Cleanup of the semantics of ENSURE-FUNCTION on CONSes: use APPLY, not EVAL.
-
- Jan 16, 2013
-
-
Francois-Rene Rideau authored
* Pathname support has been cleaned up, yet again, extending and renaming COERCE-PATHNAME into PARSE-UNIX-NAMESTRING, also ENSURE-PATHNAME, many docstrings, and plenty of small enhancements. * Bundles were refactored to take advantage of the new, more sensible, component-depends-on semantics. * Image support was cleaned up again, and program-op was implemented to produce a standalone executable on supported platforms; a working hello-world-example is included amongst tests. * The *compile-file-function* indirection was removed, with the ECL and MKCL object file support being folded into compile-file* instead. * systems now can have NIL as component-pathname, instead of providing a non-sensible bogus pathname when no sensible pathname was determined. Most of our pathname functions have sensible default behavior when provided NIL instead of a pathname as an argument.
-
- Jan 14, 2013
-
-
Francois-Rene Rideau authored
Package cleanup: every file in asdf itself now :use's asdf/driver asdf/upgrade. Test script fix: Allegro, like ECL *really* hates that we close *standard-input*, so stop trying at all. Tweak some utilities and debug utilities.
-