1. 01 Jun, 2017 8 commits
  2. 23 May, 2017 1 commit
  3. 22 May, 2017 1 commit
    • mevenson@1c010e3e-69d0-11dd-93a8-456734b0d56f's avatar
      Rework ABCL-BUILD as a contrib · f8592464
      ABCL-BUILD now more usefully installs necessary build machinery.
      
      Refactor the ABCL-BUILD Lisp based build to use use Ant, which allows
      us to canonicalize the build instructions in a much more configurable
      manner, restoring the cross-implementation build of ABCL for CL users
      who really do want to know about Java tooling.
      
      Since we want to use ASDF/UIOP anyways, this code is best expressed as
      an abcl contrib where such behavior can profitably take place.
      
      TODO: does not pass all tests
      
      TODO: API compatibility so that build-from-lisp.bash works
      
      TODO: If an invocable Ant cannot be found, then offer to install one via restart
      
      TODO: work backwards to the scenario that we are booting in pure
      interepreted mode without access to compilers.
      f8592464
  4. 15 May, 2017 3 commits
  5. 27 Apr, 2017 1 commit
    • mevenson@1c010e3e-69d0-11dd-93a8-456734b0d56f's avatar
      Fix signalling simple error with #\~ in format string · 6a866834
      (Alan Ruttenberg)
      
      Signaling an simple error would signal another error if the message
      happened to have a ~ in it, since in simple cases there are no format
      args, but format is called with the message string.
      
      We fix this by changing all cases in the source where there were calls
      to setFormatControl(x) are followed by setFormatArguments(NIL). In
      such cases we changed setFormatControl(x) ->
      setFormatControl(x.replaceAll("~","~~")), which is the CL:FORMAT
      recipe for escaping a #\~ character.
      
      To replicate this error, place the following in a file
      <file:~/work/abcl/double-error.lisp>.
      
          (defun foo (x) (funcall x))
      
      then
      
          CL-USER> (compile-file "~/work/abcl/double-error")
          ; Compiling /Users/evenson/work/abcl/double-error.lisp ...
          ; (DEFUN FOO ...)
          ; Wrote /Users/evenson/work/abcl/double-error.abcl (0.015 seconds)
          #P"/Users/evenson/work/abcl/double-error.abcl"
          NIL
          NIL
          CL-USER> (foo '~)
      
      gives
      
          Error (FORMAT-ERROR) during printing: #<PROGRAM-ERROR {264F63C5}>
             [Condition of type PROGRAM-ERROR]
      
      Merges <https://github.com/armedbear/abcl/pull/41>.
      6a866834
  6. 17 Apr, 2017 2 commits
  7. 16 Apr, 2017 2 commits
  8. 07 Apr, 2017 1 commit
  9. 30 Mar, 2017 2 commits
  10. 28 Mar, 2017 2 commits
  11. 23 Feb, 2017 1 commit
  12. 12 Feb, 2017 1 commit
  13. 08 Feb, 2017 1 commit
  14. 03 Feb, 2017 1 commit
  15. 02 Feb, 2017 1 commit
    • mevenson@1c010e3e-69d0-11dd-93a8-456734b0d56f's avatar
      Standardize use CL:*LOAD-VERBOSE* to control loading verbosity · 5992ced7
      Normalize logging output to a Lisp comment prefix (#\;) with a single tag
      that identifies the "subsystem" emitting the diagnostic.
      
      ABCL-ASDF:*MAVEN-VERBOSE* SYS:*ABCL-CONTRIB-VERBOSE* have been removed; use
      CL:*LOAD-VERBOSE* to control them.
      
      ASDF::*VERBOSE-OUT* and QUICKLISP-CLIENT::*QUICKLOAD-VERBOSE* cannot
      be easily modified while keeping in-sync with upstream, but they both
      seem to respect setting CL:*LOAD-VERBOSE* to nil to muffle output.
      
      EXT::*WARN-ON-REDEFINITION* signals conditions rather than just
      emitting error messages, so it has not been touched as theoretically
      some compiler tooling may be somehow be depending on its SIGNAL
      behavior.  As such, once an implementation that signals the same
      warnings as EXT::*WARN-ON-REDEFINITION* based on CL:*COMPILE-VERBOSE*
      setting should be maintained during a deprecation phase.
      
      ------------------------------------------------------------------------
      # From <https://github.com/armedbear/abcl/commit/6cc94a54cf9256b2a0f13857d4c448d3b5c044fc>
      
      ## Alan Ruttenberg
      
      Really this should just respect load-verbose. If you really want to
      fix this properly, do that. There are a proliferation of settings one
      has to know about if one wants ABCL to shut up while starting up, and
      any beginner will have a hell of a time accomplishing this. There
      ought to be a single variable that indicates you don't want these
      messages.
      
      - *load-verbose*
      - system::*verbose*
      - asdf::*verbose-out*
      - abcl-asdf::*maven-verbose
      - quicklisp-client::*quickload-verbose*
      - ext::*warn-on-redefinition*
      
      ## Mark Evenson
      
      Using CL:LOAD-VERBOSE to unify the control of all this logging
      behavior for ABCL is an excellent way forward here.
      
      This wouldn't help with quicklisp-client::quickload-verbose (not our code).
      
      An alternative would be to have some sort of "categorical logging
      system" (ala log4j) which would allow one to selectively enable
      classes of logging output ("show me all diagnostic from loading
      ABCL-CONTRIB"), but a basic boolean predicate here, unified into the
      standardized mechanism would go a long ways.
      
      ------------------------------------------------------------------------
      
      Originated with <https://github.com/armedbear/abcl/pull/37>.
      5992ced7
  16. 01 Feb, 2017 1 commit
  17. 24 Jan, 2017 1 commit
  18. 23 Jan, 2017 1 commit
  19. 19 Jan, 2017 2 commits
  20. 18 Jan, 2017 2 commits
  21. 17 Jan, 2017 4 commits
  22. 16 Jan, 2017 1 commit