
New patches:

[serror
langstefan@gmx.at**20070506132653] {
hunk ./errors.lisp 9
+(defun serror (condition-name &rest args)
+  "Signal a simple-condition of type condition-name. The first
+non-keyword argument in args is used as :format-control and the
+remaining arguments as :format-arguments."
+  (loop with kw-args = nil
+        for (k . rest) on args by #'cddr
+        do (cond
+             ((and (keywordp k) rest)
+              (push (car rest) kw-args)
+              (push k kw-args))
+             (k
+              (apply #'error condition-name
+                     `(,@kw-args :format-control ,k :format-arguments ,rest)))))
+  (error "Missing format-control argument to serror."))
+
hunk ./package.lisp 87
+   #:serror
hunk ./tests.lisp 1041
+;;;; errors
+
+(define-condition my-simple-error (simple-error)
+  ((arg
+    :initarg :arg
+    :initform nil
+    :reader my-simple-error-arg)))
+
+(deftest serror.1
+    (handler-case
+        (serror 'my-simple-error "message")
+      (my-simple-error (e)
+        (list (my-simple-error-arg e)
+              (simple-condition-format-control e)
+              (simple-condition-format-arguments e))))
+  (nil "message" nil))
+
+(deftest serror.2
+    (handler-case
+        (serror 'my-simple-error "message ~A ~A" 1 2)
+      (my-simple-error (e)
+        (list (my-simple-error-arg e)
+              (simple-condition-format-control e)
+              (simple-condition-format-arguments e))))
+  (nil "message ~A ~A" (1 2)))
+
+(deftest serror.3
+    (handler-case
+        (serror 'my-simple-error :arg "foo"
+                "message ~A" 1)
+      (my-simple-error (e)
+        (list (my-simple-error-arg e)
+              (simple-condition-format-control e)
+              (simple-condition-format-arguments e))))
+  ("foo" "message ~A" (1)))
+
}

Context:

[Added a faster loop based remove-from-plist
attila.lendvai@gmail.com**20070501144915] 
[Added a REMOVE-FROM-PLIST (same as SANS)
attila.lendvai@gmail.com**20070501143706] 
[Docstring typo
attila.lendvai@gmail.com**20070501143516] 
[Fix when-let documentation string.
langstefan@gmx.at**20070318132238] 
[Patch by Tayssin John Gabbour, fixing two typos.
Nikodemus Siivola <nikodemus@random-state.net>**20070318015005] 
[with-gensyms
Nikodemus Siivola <nikodemus@random-state.net>**20070225160042] 
[required-argument
Nikodemus Siivola <nikodemus@random-state.net>**20070225160010] 
[IF-LET, IF-LET*, WHEN-LET, and WHEN-LET*
Nikodemus Siivola <nikodemus@sb-studio.net>**20061107104944] 
[Extended parse-body with a :whole arg, report multiple docstring error.
attila.lendvai@gmail.com**20061022105744] 
[Added (declare (ignore sub)) for type=
attila.lendvai@gmail.com**20061017155937] 
[SETF-functions for lastcar, first-elt, and last-elt. :KEY and :TEST for starts-with and ends-with
Nikodemus Siivola <nikodemus@sb-studio.net>**20061017155126] 
[new: flatten, map-product, setp. fixed: set-equal
Nikodemus Siivola <nikodemus@sb-studio.net>**20061016150600] 
[REMOVE-KEYS renamed to SANS, with new --arguably better-- argument order
Nikodemus Siivola <nikodemus@sb-studio.net>**20061016125413] 
[ROTATE-RIGHT and ROTATE-LEFT replaced by a single function ROTATE
Nikodemus Siivola <nikodemus@sb-studio.net>**20061016123238] 
[variance and standard-deviation biased by default, documentation fixes for both
Nikodemus Siivola <nikodemus@sb-studio.net>**20061016114618] 
[documentation
Nikodemus Siivola <nikodemus@sb-studio.net>**20061015215052] 
[Added .boring and added public_html to it, so you can darcs get it into your local alexandria repo
attila.lendvai@gmail.com**20061015170133] 
[tests passing
Nikodemus Siivola <nikodemus@sb-studio.net>**20061015160607] 
[initial version
Nikodemus Siivola <nikodemus@sb-studio.net>**20061015154202] 
Patch bundle hash:
539b80991f51580dfc32ed65a0607ed8bf4ce444
