[Zope-dev] z3c.form 2.0

Dan Korostelev nadako at gmail.com
Mon Feb 9 13:08:13 EST 2009


So here's a little review on current status of z3c.form. Mostly based
on items from CHANGES.txt for 2.0 release :) I may forget something,
so I'll reply to myself if something suddenly comes in my mind. And
sorry for my English, i'm quite in hurry now. :-)

FileWidget - It doesn't clear the bytes value if no new file is
uploaded now, which is nice. But there's also should be a way to clear
current value if the field is not required. I've added that to the
TODOS.txt. I think that should be done before release to make the
widget actually functional out of box.

TextLinesWidget - Works. I've fixed a case when a field has tuple in
its _type, so it hopefully will work in any case now.

MultiWidget - Probably needs some review as it does the updateWidgets
thing on "value" property setting, which seems fishy to me. It works
however. I've added the check for min_length and max_length and
conditional buttons in the browser version. One thing I'd like to see
is that it generate a default number of input rows based on field's
minimal length if there's any. Also, another thing that would be nice
is to have a way to reorder values for orderable fields. However this
can wait for next release. I've added that to the TODOS.txt.

ObjectWidget/ObjectMultiWidget - ??? I didn't checked that out, so it
would be nice if its author reviewied it and wrote here about its
status.

Source support - Seems to work fine. I've checked that out in my
sandbox instance with zc.sourcefactory's context-less and
context-based sources. However, there was some backward-incompatible
refactorings (class renames) done to sequence data converters that
breaks the z3c.pt benchmarking suite. This may also break end-users'
code so we probably want to fix the compatibility.

z3c.pt support - ??? I don't use the z3c.pt myself, so I didn't really
checked that out. As I said before, the benchmarking suite is borked.
Also, there's a strange bug with macros (see below). Also, we need to
migrate to z3c.ptcompat instead of z3c.pt.compat (UPDATE: the merge
was done while I was writing this).

Tests - All are passing. However there was a failure with z3c.pt, I've
described before. I don't know what's wrong there, but found a little
workaround. See my comment in the tests/simple_groupedit.pt file.
(UPDATE: tests are now borked again as a result of merging
z3c.ptcompat branch while I was writing this).

Translations - I've updated the template and the russian translation
to be complete. I don't expect any msgid changes, so I think
translators should review their translations and commit them right now
:)

Also, I wanted to add browser widget attributes like "klass" or
"onclick" to adaptable values. This will require some work to make
browser widgets automatically add their adaptable values to
_adapterValueAttributes before calling parent's "update" method. I'm
not sure that I'll be doing that very soon as it isn't very important.
So this is definetely not a reason to wait with the release.

One more thing I'd like to do is to add "klass" and "id" to the forms
themselves so one could easily customize the visual appeal of the
forms. But it's probably should be done in z3c.formui's subclasses and
not in z3c.form's base classes. I'd like to hear the community opinion
on that though.

-- 
WBR, Dan Korostelev


More information about the Zope-Dev mailing list