> Comments:
> load_response:
> - insured that output array exists

Just to note, you are breaking compatibility here.  Previously one could rely 
on ![info exists response] to test whether any response had, in fact, been 
loaded.  I'm not a backward compatibility nut, but change for the sake of 
change is bad.  Is there a compelling reason for this?

> form.tcl:
> - return -> return ""
>  May have side effects otherwise, as last result is returned

There is no difference between [return] and [return ""].  A return with no 
arguments returns an empty string.

>  There were many issues when default values were treated as lists.
>  Now, they are treated as lists if "__$name" exists (as outputted by
>  load_response).
>  The following widgets require lists:
>    radiobuttons checkboxes select -multiple
>  and all others require values.
>  The first element is used if a value is required and a list is given.
>  - Capsulated Default value processing internally be the protected
>    methods default_*
>  - enhanced public method default_value by option "-list" to get/set a
>    list of default values.
>    This is specially important to set the current value of the list
>    widgets (because there is no such option prevued):
>       my_form default_value -list -- "option check default" {"o 2" "o 3"}
>       my_form checkboxes "option check default"\
>                       -values {"o 1" "o 2" "o 3" "o 4"}\
>                       -labels {"l 1" "l 2" "l 3" "l 4"}
> - Use uuid package only if it is loaded.
>  I personally didn't like that. In addition, there was no
>  "package require uuid".
>  IMHO the code should export the uuid values, if they are generated
>  on the fly. It is "half taken".

Don't use the uuid package.  There's no need for it.  Just use a simple, unique 
number within the request.  There's no need for the overhead of generating a 
UUID (small though it may be), and there's definitely no need to add a 
requirement for tcllib to Rivet.  If you want to ship Rivet with tcllib 
included, I could be persuaded for that, but don't make me get tcllib just to 
get a unique name for an HTML form element.

## If you don't mind creating a variable in the request namespace
autogen_[incr ::request::__formElemCount]

OR

autogen_[info cmdcount]

OR

autogen_[clock microseconds]

would all work just fine without the requirement of another package.


> Footnote:
> for me, form "my form" raises an Itcl error.
> I have forwarded this to Arnulf Wiedemann.

Being that there are many bug fixes but also MANY incompatibilities in this 
version of the form package, we might consider moving these changes to a 
form2.tcl file and giving it a [package provide form 2.0] label.  This would 
leave the old one in place, and anyone running into compatibility issues could 
simply change [package require form] to [package require form 1.0] to get the 
old one and keep running without all the pain in the ass.

I'm not disagreeing with the changes here.  They look good, and they do fix 
bugs.  But give people a temporary migration path.

D
---------------------------------------------------------------------
To unsubscribe, e-mail: rivet-dev-unsubscr...@tcl.apache.org
For additional commands, e-mail: rivet-dev-h...@tcl.apache.org

Reply via email to