------------------
This is an alpha release of Deform v2. Deform v2 is backwards incompatible
with Deform v1. It requires the use of Twitter Bootstrap v3, whereas
deform v1 did not require Bootstrap.
A demonstration site that shows Deform 2 in action exists at
https://deformdemo.pylonsproject.org.
Both Deform 1 and Deform 2 will be maintained going forward. If you wish
to continue using Deform 1, because you cannot upgrade, or cannot depend on
Bootstrap 3, please pin your deform distribution requirement to
something below 2.0a1, e.g. ``deform<=1.999``.
This first alpha release is missing formal documentation updates. Apologies,
we needed to get a release out onto PyPI, as not having one is holding back
the development of a number of platforms and applications that depend on the
changes in v2+. Documentation updates will be forthcoming over the lifetime
of future alpha/beta releases. However, below is a list of known issues that
need to be addressed to make a final release of Deform 2, as well as
information about new features, and migration notes. You may also be
able to make use of the demo site at https://deformdemo.pylonsproject.org to
divine how things have changed, and what CSS and JavaScript resources you'll
need to include in your pages to make use of this release.
TODO
- docs
- decide how to explain form.css (include in requirements or?)
- horizontal/inline forms + structural things
- assets for templates: deform should provide a tool to resolve that?
- placeholder support for all textual inputs (and required/maxlength
see also https://github.com/Pylons/deform/pull/116)
- display help-blocks for readonly fields?
- maybe readonly should be a property of the schema, not the widget.
- consider whether "style"/"css_class" on multi-input widgets should apply to
a container or each element.
- audit use of e.g. string:${css_class} so we don't see unexpected class="None"
in widget rendering output.
- some sort of test for mapping_item input_prepend/input_append
- Currently description shows up as both tooltip of label and as help-block.
Maybe make these two things separate or at least don't show them both using
the same value.
- normalize CSS class names to deform-foo rather than deformFoo
- sequence_of_sequences: js that processes close/order buttons has to
be less promiscuous (it uses e.g. "find"); symptom: buttons
appear/disappear, act on the wrong element, etc... ugh 2013/10/05
cannot replicate, but still believe there may be an issue, but
maybe iElectric fixed it
NICE TO HAVE
- structural widget (mapping_item.pt) - do we need that or not or what? +
add a demo
- prepend/append t.bootstrap stuff
- https://github.com/Pylons/deform/pull/116issuecomment-23210460
- group demos by widget type
- handle ajax demo more UX friendly
- Put drag handles in panel headers: https://github.com/Pylons/deform/issues/180
NEW FEATURES:
- input_prepend/input_append in mapping_item widget.
- field.parent
- field.get_root
- inline attr of checkboxchoice and radiochoice widgets (see
https://github.com/Pylons/deform/pull/182)
- https://deformdemo.pylonsproject.org/
MIGRATION NOTES:
- removed deprecated `height, width, skin, theme` parameters from RichTextWidget
(use "options" instead)
- removed deprecated `render_initial_item` from SequenceWidget
- removed deprecated deform.Set (use colander.Set instead)
- DateInputWidget renamed parameter `dateFormat` to `format` (dateFormat
now unsupported).
- DateTimeInputWidget now renders as two fields: one for a date and one
for a time, using pickadate.
- We no longer bother trying to use the native datetimeinput widget on any
browser, because the support is so spotty.
- DateTimeInputWidget takes two options now: date_options and time_options
instead of a single options dictionary. The options are pickadate
date/time options respectively.
- It is no longer possible to do DateTimeWidget().options['a'] = 'foo'
or DateTimeWidget().date_options['a'] = 'foo'. If you need to change
options imperatively, set the entire .options/.date_options dictionary.
- merged TypeaheadInputWidget to AutocompleteInputWidget (removed delay
parameter)
- AutocompleteInputWidget now accepts string type for "values"
- widgets no longer accepts "size" (instead use style="width: x"), except
SelectWidget (it means the size of the dropdown)
- get_widget_resources now returns asset specifications rather than
deform-static-relative paths
- deform 2.0 requires users to manually load TB 3.0 and jquery 2.0
- required labels no longer insert an asterisk inside a <span class="req">
inside themselves. instead the label element has a required class
if the field is required; use form.css to display this as an asterisk.
- min_length of AutocompleteInputWidget now defaults to 1 (was 2)