
New patches:

[Fixed :ISOLATE. This has been broken a long time.
drewc@tech.coop**20060309121502] {
hunk ./src/rerl/standard-action.lisp 140
-      (destructuring-bind (args &body body) (cdr rest)
-        (let ((fun (join-strings (list (string name) "-" (string (gensym))))))
-          `(progn
-             (%defaction ,(intern fun) ,args
-               ,@body)
-             (%defaction ,name ,args
-               (run-isolated ,(caar args) #',(intern fun) ,(caar args) ,@(cdr args))))))
+      (with-unique-names (memo-id memo memo-present-p) 
+	`(defaction ,name ,(second rest)
+	  (let ((,memo-id
+		 (strcat (mapcar (rcurry #'funcall *context*)
+				 (list #'find-session-id  
+				       #'find-frame-id
+				       #'find-action-id)))))
+	  (multiple-value-bind (,memo ,memo-present-p)
+	      (gethash ,memo-id (component.isolate-hash ,(caar (second rest))))
+	    (if  ,memo-present-p
+		 ,memo
+		 (setf (gethash ,memo-id (component.isolate-hash ,(caar (second rest))))
+		       (progn ,@ (cddr rest))))))))
hunk ./src/rerl/standard-component/standard-component.lisp 142
-(defmethod run-isolated ((comp standard-component) fun &rest args)
-  "isolate an action so that repeated calls (ie by reloading the page) use a cached value"
-  (let ((memo-id
-         (concatenate 'string
-                      (ucw::find-session-id *context*)
-                      (ucw::find-frame-id *context*)
-                      (ucw::find-action-id *context*))))
-    (multiple-value-bind (memo memo-present-p) (gethash memo-id (component.isolate-hash comp))
-      
-      (format t "looking for memo :~A : found ~A" memo-id memo)
-      (if  memo-present-p
-           memo
-           (setf (gethash memo-id (component.isolate-hash comp)) (apply fun args))))))
-
-
}

Context:

[Since araneida doesn't support multipart/form-data we assume the body is always a string of application/x-www-form-urlencoded
Marco Baringer <mb@bese.it>**20060309104506] 
[*print-base* and *print-radix*'s values were inverted
Marco Baringer <mb@bese.it>**20060308175343] 
[Added (setf value) method for checkboxs
Marco Baringer <mb@bese.it>**20060308174304] 
[Declare the variables introduced by <ucw:select as ignorable
Marco Baringer <mb@bese.it>**20060308172011] 
[Added :value initarg to form-fields
Marco Baringer <mb@bese.it>**20060308161959] 
[Added implement of (setf value) for form-field and integer-field
Marco Baringer <mb@bese.it>**20060308161934] 
[added :port parameter to start-swank
aycan.irican@core.gen.tr**20060307192427] 
[Fix typo in last patch
Marco Baringer <mb@bese.it>**20060307172738] 
[Fix initargs on user-login's form fields. (Patch by: Alexey Antipov <door@lcpi.ru>)
Marco Baringer <mb@bese.it>**20060307164707] 
[Unbreak binary file serving, add slot external-format to httpd-response class.
Maciek Pasternacki <maciekp@japhy.fnord.org>**20060307135017] 
[Change the (alist|hash-table|plist)-select-fields to chose a value based on the key
Marco Baringer <mb@bese.it>**20060306185356
 
 When you chose based on a mapping object (alist, plist, etc.) you
 generally want to see the key in the options and get back the
 corresponding value. If you really wanted to chose a value based on
 the value you'd use a normal select with a simple list of values.
] 
[Typo in QUICKSTART
Marco Baringer <mb@bese.it>**20060306185212] 
[Move form-field's javascript validators into a custom property on the field object (client side)
Marco Baringer <mb@bese.it>**20060304152341
 
 This change makes it much simpler to reuse the validation in other
 places, we no longer have to rewrite all the validation code every
 time we want to call it.
] 
[Updated, and added where missing, copyright info
Marco Baringer <mb@bese.it>**20060305173150] 
[Added find-frame-by-id method specialized on standard-session
Marco Baringer <mb@bese.it>**20060305152609] 
[stadard-classes depends on standard-vars
Marco Baringer <mb@bese.it>**20060305131919] 
[Avoid creating a new binding which we won't use.
Marco Baringer <mb@bese.it>**20060305131907] 
[The :backned parameter to ucw:create-server is now a list of backend + backend initargs
Marco Baringer <mb@bese.it>**20060305131148
 
 Basically i kept forgetting to change the :port parameter when i
 switched from the httpd backend to the mod_lisp backend. With this
 change all the backend specific parameters are in the same parameter
 and it's easier to see that changing ones requires you to change the
 other. This also makes it easier to pass backend specific initargs
 since the entire list is passed unchanged to make-backend.
] 
[typo fix for forms example
aycan.irican@core.gen.tr*-20060305012213] 
[typo fix for forms example
aycan.irican@core.gen.tr**20060305012213] 
[session.frames is no lonnger a hash-table, fix jump-to-component. (Reported by: Attila Lendvai <attila.lendvai@gmail.com>)
Marco Baringer <mb@bese.it>**20060305122721] 
[Exporting alist,hash-table,plist-select-field
matley@muppetslab.org**20060304120617] 
[Allow an empty integer form-field to be valid.
Marco Baringer <mb@bese.it>**20060303193103
 
 If an field must be an integer (iow it's a required parameter) just
 mix an integer-field with a not-empty-validator.
] 
[Added initially-validate slot to form-field
Marco Baringer <mb@bese.it>**20060303193019] 
[When a form-field is valid set itsclass to ucw-form-field-valid
Marco Baringer <mb@bese.it>**20060303190229] 
[Rebind *yaclml-stream* when we clear out the response object.
Marco Baringer <mb@bese.it>**20060302184649
 
 Previously we had the RENDER method rebind *yaclml-stream* each and
 every time it was called. this meant that if html-stream should change
 between one call and the next (whichi is exactly what happens when an
 error occurs) this change was picked up immediatly. We no longer do
 that, so any code which changes html-stream (by calling cleare-context
 or clear-respons) needs to make sure to rebind *yaclml-stream*
] 
[Dropped the in-field-password-field. It's a pretty bad idea and fundamentally broken on explorer.
Marco Baringer <mb@bese.it>**20060302161915] 
[Indentation fixup
Marco Baringer <mb@bese.it>**20060302161825] 
[Make the javascript-invalid methods use css styles, unstead of directly setting the border size and color
Marco Baringer <mb@bese.it>**20060302155730] 
[When sending response, use :iso-8859-1 external format only as fallback.
Maciek Pasternacki <maciekp@japhy.fnord.org>**20060302134956] 
[Only show the inspector component's Ok link when there's a calling-component to answer to.
Marco Baringer <mb@bese.it>**20060228211952] 
[Various fixups required by latest form-field api changes
Marco Baringer <mb@bese.it>**20060228210449] 
[Make the select-field select the current-value
Marco Baringer <mb@bese.it>**20060228210421
 
 previously we were never setting :selected on the generated option
 tags.
] 
[Export generic-html-input (usefull when creating your own form fields)
Marco Baringer <mb@bese.it>**20060227172440] 
[Added file-upload-field
Marco Baringer <mb@bese.it>**20060227172424] 
[Make template-component a standard-class and not a component.
Marco Baringer <mb@bese.it>**20060227172410
 
 There's no reason why the template-component class needs the component
 machinery, making this change allows us to use templates for widget
 components.
] 
[Silly bug in date-field's conversion to encoded-universal-time
Marco Baringer <mb@bese.it>**20060227172327] 
[Fix mod_lisp's handling of form upload data.
Marco Baringer <mb@bese.it>**20060227172300
 
 This is turning into a never ending odyssey :(. hopefully this is the
 last fix and everything will work perfectly now and forever.
] 
[in-field-password-field needs to have type="password" if there's a client-value
Marco Baringer <mb@bese.it>**20060227104603] 
[The default client-value for in-field forms is NIL, not ""
Marco Baringer <mb@bese.it>**20060227104532] 
[Export the dom-id symbol
Marco Baringer <mb@bese.it>**20060227101508] 
[Fix the error-component's initargs (use :javascript and not :inline-javascirpt)
Marco Baringer <mb@bese.it>**20060227101210] 
[Added dom-id slot to simple-form component
Marco Baringer <mb@bese.it>**20060226221437] 
[Implement checkbox-field
Marco Baringer <mb@bese.it>**20060226221349] 
[Added :name attribute to form fields
Marco Baringer <mb@bese.it>**20060226221243
 
 Mainly we want username/password fields to have constant names so that
 browsers will remeber the values. Doesn't hurt to add it to all the fields.
] 
[added trivial-sockets and split-sequence deps
Alberto Santini <albertosantini@tiscali.it>**20060219132421] 
[Template components must not rebind *yaclml-stream*
Marco Baringer <mb@bese.it>**20060226213155] 
[Added in-field-string-field and in-field-password-field form-field classes.
Marco Baringer <mb@bese.it>**20060226213057
 
 If we keep adding things like this it may be better to create a
 seperate ucw-forms library.
] 
[Fix bug in the call to arnesi:extract-argument-names (the logging statement in defaction now works as expected)
Marco Baringer <mb@bese.it>**20060226205211] 
[added validp method specialized on standard-component
Marco Baringer <mb@bese.it>**20060226205054
 
 this method traverses the slots of a generic component and makes sure
 that all form-fields contained therein are valid.
] 
[Added form-field-p test method
Marco Baringer <mb@bese.it>**20060226205018] 
[Added (very simple) e-mail-address-validator
Marco Baringer <mb@bese.it>**20060226172118] 
[Move the binding of yaclml-stream out of the main render :wrapping method and into standard-server's handle-request method
Marco Baringer <mb@bese.it>**20060225142502
 
 Basically there's no need to rebind yaclml-stream each and every time
 we call render. Binding it once in standard-server's handle-request
 method is jsut as good and allows us effectivly to rebind the tsream our selves
 for testing or other purposes.
] 
[Make generic-widget-component a subclass of component
Marco Baringer <mb@bese.it>**20060225134023
 
 We don't actually define anything of the componnet class so this
 doesn't change anything functionally. However, we specify in the docs
 that all objects used to build up the UI are subclasses of COMPONENT.
] 
[Make simple-form a standard-component
Marco Baringer <mb@bese.it>**20060225133649] 
[Make widget-component NOT a subclass of standard-component
Marco Baringer <mb@bese.it>**20060225132810
 
 Widgets are generally used for simple graphical widgets (duh) which
 never call/answer, don't use transactions, don't need to remeber their
 place, etc. This change makes that distinction exlpcit and saves a lot
 of space in terms of what we need to backtracke and what we can safely
 forget.
] 
[Drop transaction-stack slot from standard-component
Marco Baringer <mb@bese.it>**20060225125027] 
[Refactored the transaction stuff out into a seperate mixin class.
Marco Baringer <mb@bese.it>**20060225124255] 
[Make date-field not fail when the user hasn't yet submitted a value
Marco Baringer <mb@bese.it>**20060225123024] 
[Fix session.current-frame handling
Marco Baringer <mb@bese.it>**20060224172850
 
 It is very important that we set the session's current frame before
 servicing the frame. The fact that it took so long to find and correct
 this bug is a sign that there's something really wrong with the
 current rerl api.
] 
[Moved standard-session's print-object method next to its defclass form
Marco Baringer <mb@bese.it>**20060224171119] 
[Make select-field a subclass of generic-html-input and drop its print-object method
Marco Baringer <mb@bese.it>**20060224170321] 
[Merge the frames and frame-queue slot of standard-session-frame into a frame-queue
Marco Baringer <mb@bese.it>**20060224165552
 
 We now use a single object, a sub class of arnesi:lru-queue to manage
 the frames in a session.
] 
[Drop the generating-frame slot
Marco Baringer <mb@bese.it>**20060224164707] 
[Added print-object method for standard-session-frame
Marco Baringer <mb@bese.it>**20060224170341] 
[Added the fail-miserably and try-again restarts to standard-server's handle-request method
Marco Baringer <mb@bese.it>**20060224164759
 
 These two restarts handle those, very rare, cases where even ucw's
 builtin error checking and handling mechanisms fail.
] 
[Avoid keeping empty session-frames
Marco Baringer <mb@bese.it>*-20060223152953
 
 If a frame doesn't generate any actions there's no way we'll ever need
 it again. We now drop these frames just after they've been serviced.
] 
[removing spurious newlines
Marco Baringer <mb@bese.it>**20060223221957] 
[Added contrib directory and get-contrib script
Marco Baringer <mb@bese.it>**20060223195750] 
[Minor docstring fixup
Marco Baringer <mb@bese.it>**20060223154411] 
[Avoid keeping empty session-frames
Marco Baringer <mb@bese.it>**20060223152953
 
 If a frame doesn't generate any actions there's no way we'll ever need
 it again. We now drop these frames just after they've been serviced.
] 
[Don't attempt to parse araneida::request-unparsed-body if its nil
Marco Baringer <mb@bese.it>**20060223102602] 
[Don't attempt to parse the request's body if the content length is 0.
Marco Baringer <mb@bese.it>**20060220170457] 
[Added ignore declaration
Marco Baringer <mb@bese.it>**20060220170227] 
[Fix araneida backend (it hasn't been kept up-to-date with the latest backend changes)
Marco Baringer <mb@bese.it>**20060220170104
 
 This consisted of changing the call in araneida.lisp and, to make
 things esaier, changing parse-request-body's body api (so we needed to
 change the httpd backend as well).
] 
[Notes and download locations regarding ucw's dependencies were waaaaay out of date
Marco Baringer <mb@bese.it>**20060220170026] 
[Instead of checking whether SELF is NIL we moved the logging statement to within the let form, where we're sure it can't be NIL
Marco Baringer <mb@bese.it>**20060220085947] 
[Define (answer-without-caller* null standard-component t) method
Marco Baringer <mb@bese.it>**20060220085916
 
 answer-without-caller* added the source argument, however this
 argument may be null in some cases. when there was only
 answer-without-caller the "null-caller" case was taken care of with an
 if form in the method, so we needed to drop the if form and add this
 second method specialized on null.
] 
[Implement date-field
Marco Baringer <mb@bese.it>**20060219234608] 
[Renamed formx.lisp to form.lisp
Marco Baringer <mb@bese.it>**20060219214308] 
[Removed presentation and interface-element stuff.
Marco Baringer <mb@bese.it>**20060219213319
 
 This code, while very cool, belongs in a seperate library and not
 inside ucw inself. The wall-time stuff has been dropped as well.
 
 The code is now located in the ucw-presentations library located at:
 
 http://common-lisp.net/project/ucw/repos/ucw-presentations
] 
[Deal with logging an action call when SELF is NIL. (Reported by: Aleksandar Bakic <a_bakic@yahoo.com>)
Marco Baringer <mb@bese.it>**20060219213125] 
[Run javascript form checks on keyup, not onchange (onkeyup gives much more immediate feedback)
Marco Baringer <mb@bese.it>**20060219201953] 
[Typo in print-object method
Marco Baringer <mb@bese.it>**20060219191345] 
[Added missing declare ignore declaration
Marco Baringer <mb@bese.it>**20060219191301] 
[Added new form library and reworked examples to use it
Marco Baringer <mb@bese.it>**20060218184011
   
 The new form library (temporarily called formx) is much much simpler
 than the presentation stuff we currently have. This should make it
 easer to use and customize, while it may do a lot less it no longer
 imposes an entire framevork on every form tag.
] 
[Added :script type to window-component's javascript slot.
Marco Baringer <mb@bese.it>**20060218152733
 
 This now option does what :js said it did (but didn't acutally
 do). :js now mentions that its value will be passed to js:js* and then
 to <:script.
] 
[Added :application parametetr to with-dummy-context
Marco Baringer <mb@bese.it>**20060218141602
 
 In the face of TAL templates it is very usefull to be able to supply
 an existing, and properly configured, application to use.
] 
[standard-request-context depends on stadard-component
Marco Baringer <mb@bese.it>**20060218111813
 
 Since standard-request-context now includes the dummy-request-context
 stuff, which includes a dummy-root-component component, we need the defcomponent to be defined when loading/compiling this file.
] 
[Added Trivial Sockets to the list of requirements in the README
matley@muppetslab.org**20060217212114] 
[Added the with-dummy-context macro
Marco Baringer <mb@bese.it>**20060217192237] 
[Changed window-component's javascript handling (only one slot now)
Marco Baringer <mb@bese.it>**20060217142721
 
 Instead of having three different slot for the different ways we might
 want to include javascript we now have exactly one slot and each value
 specifies if it's a file to link to or a bit of javascript code to include.
] 
[ucw.araneida asdf definition was wrong
Marco Baringer <mb@bese.it>**20060217141640] 
[known order of javascripts in window-component
henrik.hjelte@poboxes.com**20060214155856] 
[inline-javascript rendered as-is
henrik.hjelte@poboxes.com**20060214155803] 
[Fix mod-lisp's read/write-line functions
Marco Baringer <mb@bese.it>**20060216083534
 
 We explicitly use string-to-octets here so that we remind ourselves
 that some conversion needs to happen to the string (even though we
 haven't yet decided what).
] 
[Changing set-action-paramter js-macro
Nathan Bird <nathan@acceleration.net>**20060214170907
 
 This code should do the same thing as before, just without introducing a variable which was causing some spurious parenscript behavior.
] 
[bugfix default-encoding-for-uri
henrik.hjelte@poboxes.com**20060214184203] 
[Can make a single-threaded backend if wished
henrik.hjelte@poboxes.com**20060206075815] 
[response parameter removed from range-view
henrik.hjelte@poboxes.com**20060206073151] 
[action-href-body
Nathan Bird <nathan@acceleration.net>**20060207222624] 
[Fix if-bind after changing answer-component.
levente.meszaros@gmail.com**20060213192224] 
[Introduce answer-component* with 3 parameters: source, target and value. It allows the source component to restore dynamic environment when somebody is answering to it. (using around method)
levente.meszaros@gmail.com**20060213190718] 
[mod-lisp reads and writes to a byte-stream
henrik.hjelte@poboxes.com**20060207202335] 
['instance -> :instance (Reported by: Aleksandar Bakic <a_bakic@yahoo.com>)
Marco Baringer <mb@bese.it>**20060216081412] 
[Remove stray :iso-8859-1 (Reported by: Asbjørn Bjørnstad <asbjxrn@bjxrnstad.net>)
Marco Baringer <mb@bese.it>**20060213190957] 
[the class stream-log-appender is no longer instantiable, use brief-stream-log-appender instead.
Marco Baringer <mb@bese.it>**20060213190708] 
[Added list-container
attila.lendvai@gmail.com**20060212155833
 
 It renders its elements in <:ol/<:li tags, and is also a widget-component
 to wrap the contents in a DIV. The default css-class is "list-container" end
 adds "vertical" or "horizontal" to it according to the :orientation initarg.
] 
[Removed unnecessary html-stream accessor from aserve backend (fix endless loop)
attila.lendvai@gmail.com**20060209210316] 
[fix my bug
svg@surnet.ru**20060208200234] 
[redisplay current frame if it was found but action was not instead of threw to entry point
svg@surnet.ru**20060208185635] 
[Drop the dump-application(s) methods.
Marco Baringer <mb@bese.it>**20060210155421
 
 This code hasn't been used for ages (and probably shouldn't have been
 used in the first place). Using compile-file and #. is just begging to
 get bitten.
] 
[limit backtracking depth to resonable size
svg@surnet.ru**20060208105445] 
[utf-8 for url
henrik.hjelte@poboxes.com**20060208091726] 
[query-string decoding ok in mod-lisp and httpd
henrik.hjelte@poboxes.com**20060207202204] 
[query components are decoded cottpd backend
henrik.hjelte@poboxes.com*-20060207200940] 
[query components are decoded cottpd backend
henrik.hjelte@poboxes.com**20060207200940] 
[Fix bug in remove-expired-sessions
Marco Baringer <mb@bese.it>**20060208154248
 
 We were accidentaly removing elements from within a
 hash-table-iterator after we'd iterated over them.
] 
[Changed mod_lisp backend to deal with non-character streams coming from apache.
Marco Baringer <mb@bese.it>**20060208154213] 
[Added :name paramters to <ucw:textarea and <ucw:select tags
Marco Baringer <mb@bese.it>**20060208153848] 
[Avoid calculating tempalte-truename twice
Marco Baringer <mb@bese.it>**20060208153830] 
[Indentation fixup
Marco Baringer <mb@bese.it>**20060208153124] 
[Use mime.types file to send Content-Type: header in :HTTPD backend (adds dependence on SPLIT-SEQUENCE).
Maciek Pasternacki <maciekp@japhy.fnord.org>**20060205233242] 
[Backend debugging tweaks (don't output non-ascii characters, some cosmetics).
Maciek Pasternacki <maciekp@japhy.fnord.org>**20060205231127] 
[Fix handling of POST parameters.
Marco Baringer <mb@bese.it>**20060202122624
 
 POST parameters were being parsed, but ignored, by both the mod_lisp
 and httpd backends. We've also decided the url parameters (if present)
 are placed before POST paramaters and so take precedence (only in the
 case where you ask for one value but multiple values are present).
] 
[Write HTTP response as binary.
Maciek Pasternacki <maciekp@japhy.fnord.org>**20060115163304] 
[Handle lack of Content-Length: header gracefully.
Maciek Pasternacki <maciekp@japhy.fnord.org>**20060115163248] 
[Specify :external-format for served static file as :iso-8859-1, treating it as binary string.
Maciek Pasternacki <maciekp@japhy.fnord.org>**20060115163022] 
[Minor fixs to the debugging statements in the rfc2388 stuff
Marco Baringer <mb@bese.it>**20060112201949] 
[more debugging statements in rfc2388 callback
Marco Baringer <mb@bese.it>**20060111184848] 
[fix form uploading example
Marco Baringer <mb@bese.it>**20060111182836] 
[use mime-part-boy in the form example
Marco Baringer <mb@bese.it>**20060111165301] 
[More rfc2388 (for the httpd and mod_lisp backends) fixs
Marco Baringer <mb@bese.it>**20060110184237] 
[:ucw.araneida system depends on rfc2388
Marco Baringer <mb@bese.it>**20060110173402] 
[Update *httpd-trace-functions*
Marco Baringer <mb@bese.it>**20051221114025] 
[Added debugging statements
Marco Baringer <mb@bese.it>**20051221114011] 
[Added missing :test #'string= in rfc2388-callback
Marco Baringer <mb@bese.it>**20051221113944] 
[Merge with Maciek Pasternacki's last patch (which i'd sadly forgotten to merge earlier)
Marco Baringer <mb@bese.it>**20051219172624] 
[Minor comment touch-ups
Marco Baringer <mb@bese.it>**20051219172518] 
[Unfortuently the examples depend no the new rfc2388
Marco Baringer <mb@bese.it>**20051219172454] 
[Drop unused constants
Marco Baringer <mb@bese.it>**20051219172444] 
[fix examples to use rfc2388:mime-part accessors
Marco Baringer <mb@bese.it>**20051219151740] 
[Fix mod_lisp to use binary http streams
Marco Baringer <mb@bese.it>**20051219151712] 
[Changed make-displaced-array's api
Marco Baringer <mb@bese.it>**20051219151621] 
[Rename http-parser back to common
Marco Baringer <mb@bese.it>**20051218180920] 
[the parse-body function now requires a stream, and not a string, as its first argument
Marco Baringer <mb@bese.it>**20051218180830] 
[Change the httpd backend to treat the input/output streams as binary
Marco Baringer <mb@bese.it>**20051218180757
 and not character streams.
] 
[Renamed shared to http-parser
Marco Baringer <mb@bese.it>**20051218150541] 
[Drop trivial-sockets package prefix to symbols.
Marco Baringer <mb@bese.it>**20051218142247] 
[Missed a call to content-stream. changed to html-stream
Marco Baringer <mb@bese.it>**20051218142116] 
[UCW does not depend on rfc2388, only the httpd backend.
Marco Baringer <mb@bese.it>**20051218141734] 
[Make the UCW package import from trivial-sockets
Marco Baringer <mb@bese.it>**20051218114739] 
[Rename content-stream to html-stream.
Marco Baringer <mb@bese.it>**20051218114657
 
 The CONTENT-STREAM is not intended to be used for sending any random
 data, only html text. The name should reflect this.
] 
[Use trivial-sockets, instead of swank, for the socket compatability layer.
Marco Baringer <mb@bese.it>**20051216150201] 
[add report-error to user-login
svg@surnet.ru**20051224205617] 
[add secure-application-mixin and supplementary login component
svg@surnet.ru**20051224204118] 
[nested components initialization
svg@surnet.ru**20060119124505
 
 `component-class.component-slots' slots of `standard-component'
 can be components only.
 
 Treating non components initargs values for these slots as
 initargs for these components we can easily initialize nested
 components:
 
 (make-instance 'top-component :comp1 '(:comp-slot11
                                         (:comp-slot111
                                           (:slot val1 ...)))...)
  
] 
[Fix some typos in presentation.lisp
attila.lendvai@gmail.com**20060122214222] 
[Added note about jump-to-component's behaviour wrt the session's object pool
Marco Baringer <mb@bese.it>**20060124193634] 
[fix search criteria
svg@surnet.ru**20051224203917] 
[add calling-component slot to backtracking
svg@surnet.ru**20060112183459
 Without backtracking the sequence
 
 call -> answer -> reload (answer again in the same frame)
 
 will cause the called component to replace calling or
 answer to the wrong one in some cases
] 
[fix indirect-value-class typo
svg@surnet.ru**20060112181314] 
[added missing styles
svg@surnet.ru**20051224203827] 
[escape error message
svg@surnet.ru**20051224203741] 
[fix <ucw:input escaping - we can't use macro here
svg@surnet.ru**20051221225134] 
[cleanup calling-component slot at answer
svg@surnet.ru**20051221225043] 
[fix select-element
svg@surnet.ru**20051221224952] 
[fix python-style indentation
svg@surnet.ru**20051221224654] 
[Dummy application.charset method to avoid errors on nil context.application.
Maciek Pasternacki <maciekp@japhy.fnord.org>**20051212005518] 
[return nil if slot is not rendered (client-value is nil)
asbjxrn@bjxrnstad.net**20051219161643] 
[minor documentation work
Marco Baringer <mb@bese.it>**20051218113938] 
[Escape value for <ucw:input
svg@surnet.ru**20051215234258] 
[Bugs and typos fixed
svg@surnet.ru**20051215234155] 
[Make application's www-roots accept cons-cell (url-prefix directory).
Maciek Pasternacki <maciekp@japhy.fnord.org>**20051212012843] 
[Missing dummy encode-string functions for non-sb-unicode lisps.
asbjxrn@bjxrnstad.net**20051210061234] 
[Removed leftover debug line.
Maciek Pasternacki <maciekp@japhy.fnord.org>**20051212005436] 
[Implement unicode stuff for non sbcl lisps
Marco Baringer <mb@bese.it>**20051211144941] 
[Fix ignore declarations in presentation stuff
Marco Baringer <mb@bese.it>**20051211144918] 
[Use the arnesi function extract-argument-names intsead of mapcar #'name
Marco Baringer <mb@bese.it>**20051211135342] 
[form.lisp select-element use ucw:select (Pt 2)
Nathan Bird <nathan@acceleration.net>**20051208015306
 This is the fix to the previous patch that makes it work.
 At issue is what should be done with the key. We set up the relationship that:
 ;;;;   (funcall (test select-element) (funcall (key select-element) an-option) lisp-value) => T
 
 The key is applied to the incoming values in this code before it gets to the <ucw:select beneath,
 so we just pass identity to it.
 
 we switch on multiple in creating lists rather than use ensure-list so as to protect single
 values that happen to be lists.
] 
[Improving multiple handling in ucw:select (Pt 2)
Nathan Bird <nathan@acceleration.net>**20051208013852
 Added some commenting questioning the reasoning behind applying key to the selected value.
 
 Based on multiple create a list or not instead of using ensure list. This helps out in the
 non-multiple case where the option happens to be a cons cell (or full list).
] 
[Increase default maxlength of text-element
Nathan Bird <nathan@acceleration.net>**20051208015710] 
[rel. 0.3 added how to define package, www-roots, js
Alberto Santini <albertosantini@tiscali.it>**20051207190337] 
[Factor out body and parameter parsing from httpd.lisp to shared.lisp; make it recode strings/arrays as necessary; make araneida backend use it.
Maciek Pasternacki <maciekp@japhy.fnord.org>**20051207152439] 
[Make httpd backend send encoded byte sequence instead of a string.
Maciek Pasternacki <maciekp@japhy.fnord.org>**20051207151819] 
[Move parse-urlencoded and parse-form-data-encoded to shared.lisp
Maciek Pasternacki <maciekp@japhy.fnord.org>**20051206230820] 
[New file src/backend/shared.lisp to factor out code shared by multiple backends; Unicode function moved to this file.
Maciek Pasternacki <maciekp@japhy.fnord.org>**20051206224454] 
[Make the form.lisp select-element use <ucw:select
Nathan Bird <nathan@acceleration.net>**20051206182536
 Making the select-element from form.lisp use <ucw:select as the underlying control.
 This is for consistency, similar to input-element and such, and to eliminate 
 redundant code-- all of the option map code that was in here has now been removed 
 as that was already being done by <ucw:select.
 
 
] 
[Fixing multiple values in <ucw:select
Nathan Bird <nathan@acceleration.net>**20051206182350] 
[Typo fix.
Maciek Pasternacki <maciekp@japhy.fnord.org>**20051205231207] 

[rel. 0.4 added http, mod-lisp backend configuration
Alberto Santini <albertosantini@tiscali.it>**20051204120908] 
[Textarea shouldn't render "Nil" on nil values.
Nathan Bird <nathan@acceleration.net>**20051205171753] 
[Recode string from Araneida to current application's default charset; when decoding is not possible, keep value as byte array.
Maciek Pasternacki <maciekp@japhy.fnord.org>**20051201191342] 
[New slot charset in standard-application class, used to render windows-component's content-type if not set statically.
Maciek Pasternacki <maciekp@japhy.fnord.org>**20051201184031] 
[Docstring fix.
Maciek Pasternacki <maciekp@japhy.fnord.org>**20051201160457] 
[Update .boring to exclude generated documentation
Marco Baringer <mb@bese.it>**20051204153555] 
[UCWInputCompleter.js patch
rusabd@gmail.com**20051202055720
 
 This is a small patch which makes work text element with completion under IE. I check it with FF, IE and Mozilla only under windows.
] 
[minor fixs to qbook comments
Marco Baringer <mb@bese.it>**20051201202629] 
[Don't attempt to qbook'ify the backends
Marco Baringer <mb@bese.it>**20051201194905] 
[Removed src/backend/protocol.lisp from the qbook includes
Marco Baringer <mb@bese.it>**20051201183320] 
[Recode strings received from Araneida to sbcl's default format when on Unicode SBCL.
Maciek Pasternacki <maciekp@japhy.fnord.org>**20051129135631] 
[Second half of Aleksandar Bakic's sb-unicode patch.
Maciek Pasternacki <maciekp@japhy.fnord.org>**20051129135412] 
[Regexp dispatching handler for Araneida.
Maciek Pasternacki <maciekp@japhy.fnord.org>**20051128021334] 
[Pushing condition as well as slot to invalid-slots
asbjxrn@bjxrnstad.net**20051127162544
 
 This is to enable ucw to display an error message to the user describing
 why the slot was found to be invalid. I also changed the hardcoded red
 border around invalid slots to use class "ucw-invalid-slot" instead.
] 
[Handle unicode content using the araneida backend
Marco Baringer <mb@bese.it>**20051127110904] 
[Fix Content-Length value when using mod-lisp and UTF-8
binarin@binarin.ru**20051126172518] 
[New note in TODO
Marco Baringer <mb@bese.it>**20051126160826] 
[Remove tabs and reindent the multithread-httpd code
Marco Baringer <mb@bese.it>**20051126153356] 
[Added wwwroot/favincon.ico
Alberto Santini <albertosantini@tiscali.it>**20051126112748] 
[Actually use (external-format-for :slime)
Maciek Pasternacki <maciekp@japhy.fnord.org>**20051126100748] 
[Added a timeout and debugging to the control loop
russ@acceleration.net**20051121161834] 
[adding the logs folder
russ@acceleration.net**20051116221147] 
[Fix for %b %B and 12hour am/pm time-elements. 
Asbjørn Bjørnstad <asbjxrn@bjxrnstad.net>**20051118192715] 
[Intelligent error when slot not found
Nathan Bird <nathan@acceleration.net>**20051115014216
 When trying to access the slot-indirect-value of an object with a given slot name,
 if the object didn't have a slot named as such it was going into an infinite loop
 on (slot-indirect-value obj nil). 
] 
[stop present on set trying to access slots that aren't there
Nathan Bird <nathan@acceleration.net>**20051115013459] 
[splitting out render-slots to be a bit finer grained
Nathan Bird <nathan@acceleration.net>**20051115013007] 
[lisp-value on composite-element initialize
Nathan Bird <nathan@acceleration.net>**20051115012829] 
[Extending slot-elements to filter on ie-type
Nathan Bird <nathan@acceleration.net>**20051115012422] 
[added why Lisp in web application and some minor changes
albertosantini@tiscali.it**20051115221159] 
[minor changes to QUICKSTART
albertosantini@tiscali.it**20051112144827] 
[Allow the CALL macro to accept an already initialized component object.
Marco Baringer <mb@bese.it>**20051117120126
 
 This change allows users to create and initialize a component and then
 call it without having to use another function (call-component) and
 know about the 'magic' SELF variable.
] 
[checkbox returns nil if unchecked, not a string 
Asbjørn Bjørnstad <asbjxrn@bjxrnstad.net>**20051115115410] 
[multithread-httpd in ucw.asd
henrik.hjelte@poboxes.com**20051113105017] 
[Seperating multithread-httpd-backend into its own file
Nathan Bird <nathan@acceleration.net>**20051111162051] 
[Multithreaded-httpd-backend thread pooling
Nathan Bird <nathan@acceleration.net>**20051111160037] 
[visual seperation of ucw style vs regular style
Nathan Bird <nathan@acceleration.net>**20050908232519] 
[Form comment typo
Nathan Bird <nathan@acceleration.net>**20051020181046] 
[Added h-a-e-u-a method for standard-application
Marco Baringer <mb@bese.it>**20051114091738] 
[Removed bedugging relatod code and actually pass the backtrace, instead of nil, to h-a-e-u-a
Marco Baringer <mb@bese.it>**20051114091655] 
[Added Abltero Santini's quickstart for developers
Marco Baringer <mb@bese.it>**20051113114557] 
[Export PARENT from the ucw package (Suggested by: Asbjørn Bjørnstad <asbjxrn@bjxrnstad.net>)
Marco Baringer <mb@bese.it>**20051112125419] 
[Added handle-action-error-using-application. hook for app specific error handling.
Marco Baringer <mb@bese.it>**20051111164530] 
[Set the *current-condition* variable even when *debug-on-error* is nil
Marco Baringer <mb@bese.it>**20051110194104] 
[Update register-callback for make-new-callback's new api (Patch by: Aleksandar Bakic <a_bakic@yahoo.com>)
Marco Baringer <mb@bese.it>**20051110115845] 
[Resolve the conflicts between the two 'thinko in call-as-window' patches
Marco Baringer <mb@bese.it>**20051109160831] 
[Fix thinkos in call-as-window
Jan Rychter <jan@rychter.com>**20051108140057] 
[Make the ucw.backend logger NOT be related to the ucw-logger logger.
Marco Baringer <mb@bese.it>**20051109155743] 
[Fix thinko in handling of ucw:accessor and select tags in TAL templates.
Marco Baringer <mb@bese.it>**20051109154948] 
[Use action-href instead of (print-uri (compute-url ...))
Marco Baringer <mb@bese.it>**20051109151406] 
[fix typo in docstring
Marco Baringer <mb@bese.it>**20051109151355] 
[Added the :name parameter to the <ucw:input tag
Marco Baringer <mb@bese.it>**20051109145620] 
[Make sure both make-new-callback and make-new-callback-using-class return the name of callback.
Marco Baringer <mb@bese.it>**20051109145312] 
[Changed api of make-new-callback to adapt to usage. Added make-new-callback-using-class.
Marco Baringer <mb@bese.it>**20051109143530
 
 In practice the first parameter of make-new-callback was always the
 same thing (the current frame accessed through
 *context*). MAKE-NEW-CALLBACK now takes one required parameter, the
 lambda, and two keyword parameters: the frame and the request
 parameter name of callback to create. In the name of exensability we
 still go through a generic-function, make-new-callback-using-class
 which is specialized on standard-frame.
] 
[Added (again) the window-component. This component now serves only as a way to easily specify the content-type of a response.
Marco Baringer <mb@bese.it>**20051109140233] 
[Added Alberto Santini's quick start guide
Marco Baringer <mb@bese.it>**20051109111249] 
[Allow multiple stylesheets to be specified in a simple-window-component
Marco Baringer <mb@bese.it>**20051109105334] 
[Small typo corrections
Jan Rychter <jan@rychter.com>**20051108140350] 
[Added back action-href (with different API and semantics) and exported the symbol.
Marco Baringer <mb@bese.it>**20051108180155] 
[Drop generate-action-url and action-href, replaced with calls to compute-url
Marco Baringer <mb@bese.it>**20051108175525] 
[Fix thinko in call-as-window
Marco Baringer <mb@bese.it>**20051108175255] 
[adress example render-on fix
henrik.hjelte@poboxes.com**20051107084853] 
[number-element size attribute
asbjxrn@bjxrnstad.net**20051105020117] 
[Presentation checkbox fix
hoan@ton-that.org**20051106030559
 
 Fix the displaying of checkboxes in presentations.
 There is also a misc fix for the server backend.
] 
[Added the CALL-AS-WINDOW component.
Marco Baringer <mb@bese.it>**20051105134902] 
[Added the debug-on-error parameter to ucw:create-server (who knows why i removed it...)
Marco Baringer <mb@bese.it>**20051105133352] 
[Fix LISP vs LISP_LOAD confusion in ucwctl
Marco Baringer <mb@bese.it>**20051104131259] 
[Fix call/answer bugs caused by the 'dropped window-components' patch
Marco Baringer <mb@bese.it>**20051104125719
 
 We had removed the code which handling calling and answering when the
 call-componint was nil (as is the case of etry points) but we hadn't
 put it back into the generic call-component and answer-component
 methods.
] 
[Backtrack components' parent slot
Marco Baringer <mb@bese.it>**20051103184801] 
[Use CALL-REQUEST-PATH in the call, answer and action logging statements
Marco Baringer <mb@bese.it>**20051103184619
 
 CALL-REQUEST-PATH has also been changed to warn if any circularities
 are detected in the component parent chain.  
] 
[added search-element
svg@surnet.ru**20051031182539] 
[added clone-element method, fixed some bugs
svg@surnet.ru**20051031182207] 
[added slot-indirect-boundp method
svg@surnet.ru**20051031182115] 
[export composite-element
svg@surnet.ru**20051030230559] 
[make slot-elements more generic
svg@surnet.ru**20051030203648] 
[log current component path
svg@surnet.ru**20051029184829] 
[Reinstate the ENSURE-SYSTEM function which was accidentaly removed by the previous patch
Marco Baringer <mb@bese.it>**20051029150206] 
[Merge bin/start.lisp and bin/utils.lisp; remove a lot of extra junk.
Marco Baringer <mb@bese.it>**20051029145357
 
 UCW's startup process may be slightly (but just slightly) less newbie
 friendly, on the other hand it is far easier for people who know what
 they're doing to get started.
] 
[Allegroserve backend fixes
hoan@ton-that.org**20051029010435
 
 The backend now uses the wserver slot.
 This makes it possible to shutdown the server.
 Also, unpublishing urls was implemented.
] 
[Dropped the window-component class and the requirement that entry-points call window-components
Marco Baringer <mb@bese.it>**20051028172817] 
[Expert, and document, *debug-on-error*.
Marco Baringer <mb@bese.it>**20051028105018
 
 *debug-on-error* now serves as the system-wide default. Applications
 retain the ability to override this if they want.
] 
[Added ignore declares for unused variables
Marco Baringer <mb@bese.it>**20051027173803] 
[Remove the response parameter from show-status-bar (no longer required by render)
Jan Rychter <jan@rychter.com>**20051027150304] 
[typos
Jan Rychter <jan@rychter.com>**20051027150252] 
[refactoring composite-element from form-element, update examples to show composite-element
svg@surnet.ru**20051027122537] 
[add slot order to definition
svg@surnet.ru**20051026192622] 
[change examples to demonstrate range-set
svg@surnet.ru**20051026114834] 
[added range-set component
svg@surnet.ru**20051026114753] 
[presentation functionality to interface elements
svg@surnet.ru**20051024165152] 
[Fix formats to POSIX, zone and client-value bugs
svg@surnet.ru**20051024164755] 
[Fix unknown url variable (Reported by: Aleksandar Bakic <a_bakic@yahoo.com>)
Marco Baringer <mb@bese.it>**20051024164025] 
[Make the admin repl's textarea bigger
Marco Baringer <mb@bese.it>**20051023150606] 
[Added ignore declaration for unused variable
Marco Baringer <mb@bese.it>**20051023150414] 
[Added jump-to-component method (and jump macro)
Marco Baringer <mb@bese.it>**20051023145524] 
[Fix admin.lisp, complete indirect-value-class
svg@surnet.ru**20051022174742] 
[fix default response values for aserve backend
svg@surnet.ru**20051020174417] 
[fix form-id, action-id generation
svg@surnet.ru**20051019185952] 
[Mention cl-ppcre in the README
Marco Baringer <mb@bese.it>**20051018174649] 
[Make the example app use a regex entry point
Marco Baringer <mb@bese.it>**20051018174547] 
[Added :class parametert to :entry-point option in defcomponent macro
Marco Baringer <mb@bese.it>**20051018174525] 
[Added regexp-entry-point.
Marco Baringer <mb@bese.it>**20051018174422
 
 Currently only the httpd backend supports regexp-entry-point (the
 other backends treat them just like standard entry-points)
] 
[Implement unregister-url-handler for the httpd backend
Marco Baringer <mb@bese.it>**20051018172411] 
[When shuting down an application we need to remeber to unregister all its entry-points
Marco Baringer <mb@bese.it>**20051018172350] 
[register-url-handler now takes an entry-point, and not a sting, as its second argument
Marco Baringer <mb@bese.it>**20051018171732] 
[Merge the backend protocol into the rerl protocol
Marco Baringer <mb@bese.it>**20051018162457
 
 The backend protocol is a core part of ucw internal server mechanisms,
 as such it should be included with the rest of ucw's core protocol.
] 
[Compare headers using #'string-equal, not #'eql (araneida backend)
Marco Baringer <mb@bese.it>**20051018093132] 
[Fix to time-element's handling of zones (Patch by: Mac Chan <emailmac@gmail.com>)
Marco Baringer <mb@bese.it>**20051017021917] 
[Export container.contents
Marco Baringer <mb@bese.it>**20051016184834] 
[The components passed to a container component's :contents initarg should be kept in order (and not reversed)
Marco Baringer <mb@bese.it>**20051016171145] 
[Typo in inspector component's OK link
Marco Baringer <mb@bese.it>**20051016143940] 
[Added element-id and initial-focus slots to interface-element
Marco Baringer <mb@bese.it>**20051016141333
 
 The initial-focus slot specifies whcih part of the form (if any)
 should be focused after a page load. This change required adding an
 element-id slot and the code to output the :id attribute in all the
 various tags.
] 
[Documentation improvement for task-component
Marco Baringer <mb@bese.it>**20051016125641] 
[Another render-on -> render fix (Patch by: Aleksandar Bakic <a_bakic@yahoo.com>)
Marco Baringer <mb@bese.it>**20051016104445] 
[Added caching of the find-entry-point method for standard-applications
Marco Baringer <mb@bese.it>**20051014120322] 
[Store an application's entry-points in a list and not a hash table
Marco Baringer <mb@bese.it>**20051014115306] 
[Dropped the url parameter from register-entry-point and unregister-entry-point. added url and application slots to entry-points
Marco Baringer <mb@bese.it>**20051014115127] 
[Added caching components (this is a first draft, there are still some rough edges)
Marco Baringer <mb@bese.it>**20051013165327] 
[Remove duplicate occurance of render-component in < package's expert list
Marco Baringer <mb@bese.it>**20051013145758] 
[Added a default render method. (it provides a better error than 'no applicable method group')
Marco Baringer <mb@bese.it>**20051013145736] 
[Removed RENDER-ON text in the retry rendering restart
Marco Baringer <mb@bese.it>**20051013143931] 
[change send-backtrace-to-emacs to use swank::eval-in-emacs (swank::evaluate-in-emacs no longer exists)
Marco Baringer <mb@bese.it>**20051013123519] 
[Trivial indentation fixup
Marco Baringer <mb@bese.it>**20051013123008] 
[Added a default-value example in the form example
Marco Baringer <mb@bese.it>**20051013122921] 
[Actually fix time-element's default output-format (previous patch only fixed 50% of the problem)
Marco Baringer <mb@bese.it>**20051011231059] 
[Typo in time-element's default output-format (Patch by: Aleksandar Bakic <a_bakic@yahoo.com>)
Marco Baringer <mb@bese.it>**20051011230551] 
[Rename RENDER-ON to RENDER, drop first argument
Marco Baringer <mb@bese.it>**20051011122512
 
 This patch supersedes (and conflicts violently with) the previous
 render-on patch.
] 
[password and checkbox elements for forms
asbjxrn@bjxrnstad.net**20051010144929] 
[Trivial refactoring in VALIDATE-VALUE
Marco Baringer <mb@bese.it>**20051009184213] 
[Export the symbols related to the completing-text-element
Marco Baringer <mb@bese.it>**20051009181807] 
[Use :after method instead of primary method which calls call-next-method first and then ignores the return value.
Marco Baringer <mb@bese.it>**20051009153050] 
[Added (declare (ignore ...)) forms to keep openmcl quiet.
Marco Baringer <mb@bese.it>**20051009153024] 
[Use nconc method-combination for slot-elements as that seems more appropiate.
Marco Baringer <mb@bese.it>**20051009152858] 
[Fix 'closing-over-something-bound-by-dolist' bug. replaced dolist with dolist*.
Marco Baringer <mb@bese.it>**20051009152809] 
[Bugs fixed, added auxslots-form-element, time-element and examples
svg@surnet.ru**20051008221416] 
[New HTML form API (Patch by: Vladimir Sekissov <svg@surnet.ru>)
Marco Baringer <mb@bese.it>**20051007193513] 
[Fix the httpd backend's static-file serving
Marco Baringer <mb@bese.it>**20051007191117
 
 The way in which we were deteriming the local file name from a url was
 completly broken.
] 
[Export symbols related to the ucw-inspector
Marco Baringer <mb@bese.it>**20051007175929] 
[Remove duplicate occurance of *inspect-componets* from ucw's defpackage form
Marco Baringer <mb@bese.it>**20051007175817] 
[Fix rendering of error-components when the error occurs in the call to RENDER-ON
Marco Baringer <mb@bese.it>**20051005051341] 
[Fix ucwctl's detection of detachtty and attachtty (Suggested by: Asbjørn Bjørnstad <asbjxrn@bjxrnstad.net>)
Marco Baringer <mb@bese.it>**20051001171643] 
[Fix the location of mod-lisp-httpd13.conf in the README
Marco Baringer <mb@bese.it>**20051001092639] 
[Removed unused junk in the upload form example
Marco Baringer <mb@bese.it>**20050927193446] 
[Move the stylesheet and the www-roots for the various apps.
Marco Baringer <mb@bese.it>**20050925164227] 
[Fix silly and stupid bug in parse-form-data-encoded (we were forgetting that dolist always returns NIL)
Marco Baringer <mb@bese.it>**20050925164121] 
[Moved example add to the urls "/" and "/index.ucw" and the admin app to "/admin/index.ucw"
Marco Baringer <mb@bese.it>**20050922152436] 
[Another presentations examples fix (Patch by: Aleksandar Bakic <a_bakic@yahoo.com>)
Marco Baringer <mb@bese.it>**20050921133819] 
[Add :size and :maxlength options to text-field and number-field. Also, allow them to be initialized with values.
Jan Rychter <jan@rychter.com>**20050920200830] 
[standard-application's DEBUG-ON-ERROR method sholud call (debug-on-error nil) if the app hasn't been explicitly told to debug or not
Marco Baringer <mb@bese.it>**20050920174855] 
[*debug-on-error* no longer exists, use (setf debug-on-error) instead.
Marco Baringer <mb@bese.it>**20050920174412] 
[Fixes to the presentation examples (Patch by: Aleksandar Bakic <a_bakic@yahoo.com>)
Marco Baringer <mb@bese.it>**20050920174200] 
[Fix JS error
svg@surnet.ru**20050915193137] 
[Typo fix
svg@surnet.ru**20050915081215] 
[Fix set-action-parameter JS function
svg@surnet.ru**20050914204726] 
[Fix thinko in the timestamp-slot presentation
Marco Baringer <mb@bese.it>**20050914150239] 
[parse-integer fixes (Patch by: Aleksandar Bakic <a_bakic@yahoo.com>)
Marco Baringer <mb@bese.it>**20050913072452] 
[Make the method (debug-on-error null) use an internal variable *debug-on-error* to hold the default value. 
Marco Baringer <mb@bese.it>**20050912073413
 
 This new *debug-on-error* is differente from the old *debug-on-error*
 in that it sholud not be accessed directly and is not part of ucw's
 public api.
] 
[MAke printing of admin-repl's return values robust in the face of print errors
Marco Baringer <mb@bese.it>**20050910141831] 
[Each <UCW:FORM form needs its own set-action-parameter method
Marco Baringer <mb@bese.it>**20050910141720] 
[Added print-object method for standard-application
Marco Baringer <mb@bese.it>**20050910141610] 
[Export DEBUG-ON-ERORR and not *DEBUG-ON-ERROR*
Marco Baringer <mb@bese.it>**20050910112959] 
[Minor docstring fix
Marco Baringer <mb@bese.it>**20050910112948] 
[Removed the global variable *debug-on-error*
Marco Baringer <mb@bese.it>**20050910112229] 
[Make debug-on-error be a method and not a global variable.
Marco Baringer <mb@bese.it>**20050910111732
 
 This change allows to control the value of *debug-on-error* based on
 the current app and not force one value on all the apps in the server.
] 
[Add in ensure-system-for-ucw whcih had been removed in a previous patch but is still neccessary
Marco Baringer <mb@bese.it>**20050910104436] 
[Change the default port back to 8080
Marco Baringer <mb@bese.it>**20050910104407] 
[Load the applications with map
Nathan Bird <nathan@acceleration.net>**20050908234136] 
[Attempt to guess the location of detachtty and attachtty (Patch by: Jamie Border <jamie@jborder.com>)
Marco Baringer <mb@bese.it>**20050909224843] 
[Default host should be 127.0.0.1.
Marco Baringer <mb@bese.it>**20050909080513] 
[Indentation and whitespace fixs to previous patches (no tabs in lisp code)
Marco Baringer <mb@bese.it>**20050909080102] 
[Merge the use-XYZ-backend functions from bin/utils.lisp into src/control.lisp
Marco Baringer <mb@bese.it>**20050909075356] 
[remove duplicate symbol export *ucw-tal-root*
Nathan Bird <nathan@acceleration.net>**20050908231752] 
['Simplify' start.lisp mostly by taking advantage of create-server
Nathan Bird <nathan@acceleration.net>**20050908221901] 
[Remove lispworks note about ASDF. We must eb able to assume that basic setup of ASDF is done before loading UCW.
Marco Baringer <mb@bese.it>**20050909072739] 
[Revert to using the --eval argument to attachtty
Marco Baringer <mb@bese.it>**20050908175755] 
[Fix conflicts in previous patch
Marco Baringer <mb@bese.it>**20050908175308] 
[Small changes to make-image.lisp and control.lisp for Lispworks
asbjxrn@bjxrnstad.net**20050908165654] 
[bin/ucwctl fixes
Craig McDaniel <craigmcd@gmail.com>**20050907190904] 
[THREADED-LISP-P for lispworks (Patch by: Asbjørn Bjørnstad <asbjxrn@bjxrnstad.net>)
Marco Baringer <mb@bese.it>**20050908162753] 
[Added the hello and bye-bye functions
Marco Baringer <mb@bese.it>**20050907212148
 
 these are actually really bady names, but i can't of anything better
 (and for some reason start/stop just doesn't appeal to me now).
 
] 
[Keep list of applications in a server sorted by the length of the url-prefix. This allows applications to 'shadow' other applications' url space.
Marco Baringer <mb@bese.it>**20050907004819] 
[Export the symbols for status-bar
Jan Rychter <jan@rychter.com>**20050906140902] 
[Added status-bar component (Patch by: Vladimir Sekissov <svg@surnet.ru>)
Marco Baringer <mb@bese.it>**20050906091035] 
[Removed "ignore" declaration for two variables which are used.
Peter Scott <sketerpot@gmail.com>**20050904194151] 
[Remove notes regarding tla from the README
Marco Baringer <mb@bese.it>**20050901062836] 
[Added maxlength slot to text-field (Patch by: Friedrich Dominicus <frido@q-software-solutions.de>)
Marco Baringer <mb@bese.it>**20050901062356] 
[added a bunch of docstrings
Marco Baringer <mb@bese.it>**20050831114350] 
[We need to use defmethod/cc, not just defmethod, in the presentations
Marco Baringer <mb@bese.it>**20050831110507] 
[Change the <ucw:form tag to use document.getElementById and not form[element-name] 
Marco Baringer <mb@bese.it>**20050831103142] 
[Change the example app to use initargs and not shared-initialize
Marco Baringer <mb@bese.it>**20050831103127] 
[Fixed typo in CSS mime-type code for httpd backend.
drewc@tech.coop**20050827231400] 
[Fix a lisp-mode typo.
Jan Rychter <jan@rychter.com>**20050829094417] 
[Rework sum example to use loop and backtracking
Marco Baringer <mb@bese.it>**20050828082311] 
[Argument for ucw.backend.dribble was missing
binarin@gmail.com**20050827135018] 
[Add precise control of external format used for url unescaping, slime and http intercommunication
binarin@gmail.com**20050827134632] 
[Fix typo <ucw:form tag. (Patch by: Aleksandar Bakic <a_bakic@yahoo.com>)
Marco Baringer <mb@bese.it>**20050827193931] 
[cmucl fixs. (Patch by: Mac Chan <emailmac@gmail.com>)
Marco Baringer <mb@bese.it>**20050827112915] 
[Rewrite the sum examples to act as we expect it to in the presence of back tracking
Marco Baringer <mb@bese.it>**20050824170029] 
[Use parenscript instead of (concatenate 'string ...
Marco Baringer <mb@bese.it>**20050824125546] 
[Adde convenience functions to change ucw's logging levels
Marco Baringer <mb@bese.it>**20050824125459] 
[Refactoring in httpd backend
Marco Baringer <mb@bese.it>**20050824125423] 
[Added a logging statement in httpd backend
Marco Baringer <mb@bese.it>**20050824125337] 
[minor updates to TODO
Marco Baringer <mb@bese.it>**20050824125306] 
[Removed have-threads-p from bin/start.lisp. Use the threaded-lisp-p function from control.lisp instead.
Marco Baringer <mb@bese.it>**20050824125007] 
[Fix shutdown-backend method for araneida. (Patch by: Friedrich Dominicus <frido@q-software-solutions.de>) (only two months late...)
Marco Baringer <mb@bese.it>**20050819082155] 
[Use prin1 (instead of the default princ) for printing the admin-repl's values. (Reported by: Pascal Bourguignon <pjb@informatimago.com>)
Marco Baringer <mb@bese.it>**20050818145347] 
[The macro SHOW was being defined in standard-action.lisp, it' already defined with the template component. removed it.
Marco Baringer <mb@bese.it>**20050817100830] 
[Use swank-backend:close-socket to close the httpd backend's socket, not cl:close.
Marco Baringer <mb@bese.it>**20050814163132] 
[Use parenscript. New tag <ucw:script.
Marco Baringer <mb@bese.it>**20050814141501] 
[Added dependency on parenscript
Marco Baringer <mb@bese.it>**20050814135145] 
[Fix typos in README
Marco Baringer <mb@bese.it>**20050814135114] 
[Make the transaction-example component a task-component
Marco Baringer <mb@bese.it>**20050814111842] 
[standard-session-frame depends on macros defined in request-loop-error
Marco Baringer <mb@bese.it>**20050814111809] 
[Wrap calls to transaction continuations in with-call/cc, used kall and not funcall to continue a continuation.
Marco Baringer <mb@bese.it>**20050814111715] 
[The class is not called arnesi::cps-closure anymore, it's closure/cc
Marco Baringer <mb@bese.it>**20050812174701] 
[Added the Status header to the mod_lisp backend
Marco Baringer <mb@bese.it>**20050812122805] 
[Use arnesi:+cr-lf+ to get a CR-LF string
Marco Baringer <mb@bese.it>**20050812122742] 
[Change the logging statements so they're clearer and so that +info+ gives decent information
Marco Baringer <mb@bese.it>**20050812122701] 
[indentation fixup
Marco Baringer <mb@bese.it>**20050812114933] 
[form-component's submit action needs to use defaction, not just defmethod
Marco Baringer <mb@bese.it>**20050812114907] 
[Deal with method qualifiers in defaction forms
Marco Baringer <mb@bese.it>**20050812114752] 
[When serving files we try to infer the file type from the file's extension
Marco Baringer <mb@bese.it>**20050812114718] 
[Added a few debugging statements to the httpd backend
Marco Baringer <mb@bese.it>**20050812114647] 
[The Status header isn't really a header and the httpd backend needs to deal with it differently
Marco Baringer <mb@bese.it>**20050812113758] 
[Implement publish-directory for the httpd backend. Changed how handlers work in this backend.
Marco Baringer <mb@bese.it>**20050812090052] 
[The www-root for the damin app is "/ucw/admin/", not "/ucw/examples/" :(
Marco Baringer <mb@bese.it>**20050812071421] 
[Fix hint text for when yaclml is missing a required feature
Marco Baringer <mb@bese.it>**20050810053746] 
[Fix bug in DEFCOMPONENT's handling of :metaclass option (Reported by: Friedrich Dominicus <frido@q-software-solutions.de>)
Marco Baringer <mb@bese.it>**20050809130342] 
[fix bug in ensure-system-has-feature
Marco Baringer <mb@bese.it>**20050809122624] 
[Added hint parameter to ensure-system-has-feature
Marco Baringer <mb@bese.it>**20050809112951] 
[Fix bug in log messages in araneida backend (Reported by: Friedrich Dominicus <frido@q-software-solutions.de>)
Marco Baringer <mb@bese.it>**20050809064728] 
[When a component-slot is passed the :component keyword we need to setup the slot for backtracking
Marco Baringer <mb@bese.it>**20050809055756] 
[Minor refactoring in initialize-backtracking
Marco Baringer <mb@bese.it>**20050809054005] 
[Minor formatting touchup in generate-backtrace-for-emacs
Marco Baringer <mb@bese.it>**20050807140906] 
[Setup *current-condition* and *current-backtrace* in the server's handler-bind (the one which takes care of internal ucw errors)
Marco Baringer <mb@bese.it>**20050807135042] 
[Added the generate-backtrace-for-emacs restart
Marco Baringer <mb@bese.it>**20050807134832
 
 This new restart requires some really hacky stuff that we'll probably
 need to redo later on (we pass the condition and the backtrace from
 the handler to the restart via two special variables).
 
] 
[Rework error handling methods
Marco Baringer <mb@bese.it>**20050807122844
 
 We've changed the API of handle-request-error and handle-action-error
 from (condition request response) to (conndition backtrace). we now
 collect the backtrace as soon as the error handler kicks, this removes
 some useless frames whcih were previously being inserted.
 
 we've also introduced the with-action-error-handler macro and a
 defgeneric form for handle-action-error.
 
 the methods on handle-request-error have been rewritten to use the new
 with-error-page macro.
 
] 
[Use DEFCOMPONENT's new options in the examples
Marco Baringer <mb@bese.it>**20050807122639] 
[Extend and refactor the DEFCOMPONENT macro. (see new docstring for details)
Marco Baringer <mb@bese.it>**20050807121844] 
[Added a few logging statements 
Marco Baringer <mb@bese.it>**20050807091151] 
[Don't use ITERATE around <ucw:input tags.
Marco Baringer <mb@bese.it>**20050807075849] 
[Don't copy backtrack values in save-backtrack (this isn't neccessary for proper backtracking)
Marco Baringer <mb@bese.it>**20050806093402] 
[Fix backtracking on non immediate objects
Marco Baringer <mb@bese.it>**20050806090550
 
 This changes the times when values are copied in the backtracking
 stuff. Previously we'd copy when saving the bt list and when cloning
 it, we now copy when saving, when restoring, but not when cloning. The
 previous implementation caused already stored backtracked values to be
 modified, when they'd later be restorted they'd have values which
 didn't reflect what the user (and the developer) expects (this is
 bad).
 
] 
[Added, and initialized, the generating-frame slot to standard-session-frame.
Marco Baringer <mb@bese.it>**20050806090059] 
[removed standard-application's service :after method
Marco Baringer <mb@bese.it>**20050806085933
 
 The method was just calling save-backtracked, standard-session-frame
 already does that and is the 'proper' place for thaht stuff.
 
] 
[Fix various typos/thinkos on control.lisp
Marco Baringer <mb@bese.it>**20050806082907] 
[Make the inspector output more readable (Patch by: William Halliburton <whalliburton@gmail.com>)
Marco Baringer <mb@bese.it>**20050806054207] 
[Fix slot options for deleteablep in list-presentation (Reported by: Pascal Bourguignon <pjb@informatimago.com>)
Marco Baringer <mb@bese.it>**20050805073024] 
[Properly deal with the backtracking of unbound slots
Marco Baringer <mb@bese.it>**20050803095347] 
[Remove the update.sh script
Marco Baringer <mb@bese.it>**20050802161726] 
[Change API of MAKE-BACKEND
Marco Baringer <mb@bese.it>**20050802111231] 
[Another type in the defgeneric form for make-backend
Marco Baringer <mb@bese.it>**20050802110327] 
[Fix typo and change error message in the default method for MAKE-BACKEND
Marco Baringer <mb@bese.it>**20050802110151] 
[Need to wrap the form passed on <:select :on-change in a with-call/cc 
Marco Baringer <mb@bese.it>**20050729105241] 
[Since call-inspector is a /cc method we need to call it within a with-call/cc form
Marco Baringer <mb@bese.it>**20050726095455] 
[Since the getter/setter of a PLACE object can be cps-closure objects we need to treat them explicitly
Marco Baringer <mb@bese.it>**20050726095425] 
[Even window components must use KALL and not FUNCALL for their continutation :)
Marco Baringer <mb@bese.it>**20050726095333] 
[Removed call to arnesi:assert-cc
Marco Baringer <mb@bese.it>**20050725121348] 
[Wrap call to the cc method START in a with-call/cc
Marco Baringer <mb@bese.it>**20050723133329] 
[Continuations are now called using ARNESI:KALL, not FUNCALL
Marco Baringer <mb@bese.it>**20050723133311] 
[Actions need to be wrapped in with-call/cc
Marco Baringer <mb@bese.it>**20050723113039] 
[Rename GET-BACKEND to MAKE-BACKEND
Marco Baringer <mb@bese.it>**20050801143643] 
[Edit CREATE-SERVER so that it properly updates *debug-on-error* and *inspect-components*
Marco Baringer <mb@bese.it>**20050801143254] 
[Remove spurious double lines between method definitions
Marco Baringer <mb@bese.it>**20050801142440] 
[Minor doc string fixups to GET-BACKEND
Marco Baringer <mb@bese.it>**20050801142247] 
[Added copyright notice to src/control.lisp
Marco Baringer <mb@bese.it>**20050801134638] 
[Lisp startable UCW
Robert Marlow <bobstopper@bobturf.org>**20050801050720
 
 This should allow UCW to be easily startable from within lisp rather than 
 from loading lisp start.lisp. The function for doing this is named
 create-server. ucwctl has been changed to make use of the new functionality
 but should work as it did before.
 
 defentry-point can now be used before its application has been attached 
 to a server - when the application is attached to a server its entry 
 points will then automatically be added. This makes it possible to load 
 up system definitions containing defentry-points without having a running 
 server beforehand. Thus lisp images can then be dumped containing full
 applications rather than just UCW.
 
 A get-backend method has been defined which creates a backend according
 to its arguments. It is also able to automatically choose a sensible
 default from currently loaded backends. It can also accept an existing,
 running server as a backend in which case it simply wraps it with a
 sensible UCW backend and returns it. This allows UCW applications to be
 attached to already running HTTP servers rather than requiring fresh
 servers be started by UCW. So far it's only been implemented for Araneida.
 
 I've only really tested the araneida and (briefly) HTTPD backends but the 
 method of starting the backends should be similar to how start.lisp worked
 so I'm hoping I haven't broken anything. 
 
] 
[bash -> sh
Julian Stecklina <der_julian@web.de>**20050731145119] 
[Use defcomponent instead of defclass for simple-template-component
Marco Baringer <mb@bese.it>**20050726095406] 
[When creating the string for request paramteers use the same element-type as the raw-uri array
Marco Baringer <mb@bese.it>**20050730114429] 
[Instead of looking for a property named VERSIONS we now call it :FEATURES. Updated the error message accordingly
Marco Baringer <mb@bese.it>**20050729103158] 
[Renamed 'version' to 'feature' in asdf property check. added check for cps-interpreter
Marco Baringer <mb@bese.it>**20050728120322] 
[Changes to the stylesheet
Marco Baringer <mb@bese.it>**20050728120129] 
[Added the "top-level" retry render-on restart
Marco Baringer <mb@bese.it>**20050726122803] 
[When printing the 'retry rendering' restart added the component object which caused the error
Marco Baringer <mb@bese.it>**20050726122740] 
[template-component-environment methods must always return a fresh list
Marco Baringer <mb@bese.it>**20050725121551] 
[Make the wiki example use the show-window macro
Marco Baringer <mb@bese.it>**20050725121447] 
[Added SHOW and SHOW-WINDOW macros
Marco Baringer <mb@bese.it>**20050725121421] 
[Post method for login component
matley@innerloop.it**20050724142609] 
[Added initarg to client-value (form-component)
matley@innerloop.it**20050723142419] 
[Little typo bugfix
matley@innerloop.it**20050722200835] 
[Change the CALL macro to check for window-component'ness when used in entry-points
Marco Baringer <mb@bese.it>**20050723102841] 
[Fix the upload example
Marco Baringer <mb@bese.it>**20050721155417] 
[Only create a mime-part object for those mime-parts which have headers other than just "name"
Marco Baringer <mb@bese.it>**20050721155338] 
[Only use copy-seq on the request parameters if thay are strings (as opposed to mime-part objects)
Marco Baringer <mb@bese.it>**20050721154259] 
[Export the mime-part accessors
Marco Baringer <mb@bese.it>**20050721154124] 
[Update component slots and backtrack slots when reinitializing component classes
Marco Baringer <mb@bese.it>**20050718172834] 
[Allow defcomponent slot forms to be symbols (some effect as with defclass)
Marco Baringer <mb@bese.it>**20050718171831] 
[More accurate information regarding versions and how to get the software.
José Pablo Ezequiel Fernández <pupeno@pupeno.com>**20050718033950] 
[More changes regarding dependencies.
José Pablo Ezequiel Fernández <pupeno@pupeno.com>**20050717214720] 
[Some clear statements about the dependencies (more is still neede).
José Pablo Ezequiel Fernández <pupeno@pupeno.com>**20050717213407] 
[Make ucw's installation directory an explicit configuration variable in make-image.lisp
Marco Baringer <mb@bese.it>**20050717191936] 
[Remove useless debugging code from ucw-tags.lisp
Marco Baringer <mb@bese.it>**20050717191301] 
[Fix handling of HTTR response status codes in aserve backend (Patch by: Antonio Menezes Leitao <aml@gia.ist.utl.pt>)
Marco Baringer <mb@bese.it>**20050717190254] 
[Fix handling of HTTP request/respons headers in aserve backend. (Patch by: Antonio Menezes Leitao <aml@gia.ist.utl.pt>)
Marco Baringer <mb@bese.it>**20050717185826] 
[Initial Import from arch
Marco Baringer <mb@bese.it>**20050706133829
 This patch is exactly equal to ucw-2004@common-lisp.net/ucw--dev--0.3--patch-426 it simply
 represents the move over to darcs.
] 
[Added boring file
Marco Baringer <mb@bese.it>**20050706132641] 
Patch bundle hash:
d557cad8ea5e4b07b7751617c31e02c64099f8d8

