Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

file 429 lines (300 sloc) 13.13 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429
==========
Changlelog
==========

0.9.0-alpha
-----------

 * Updated documentation
 * Added better defaults for schema types
 * Updated JQuery in testish
 * RadioChoice no longer emits a none_option by default
 * Overhauled the missing/empty strategies
   In order to allow a user to represent both an empty string and a None value
   at the same time, a few updates had to be made to how the widgets worked.
   Hopefully most of these will be backward comptaible but we can't assure this
   without a lot of checking. We now have a none_value attribute which
   represents the value that is shown to a user to represent None. We also have
   the old empty attribute which is used if the widget produces data which
   matches the none_value. Have a look in testish for InputNoneValue for an
   example and also InputDateNoneValue. Another example is
   SelectChoiceWithEmptyString which shows how to allow both '' and None to be
   selected.
   

0.8.8
-----

BUGFIX: error introduced in _get_error function

0.8.7
-----

 * Added support for schemaish's default property. Forms use the defaults from
   the schema if no explcit ones are passed

0.8.6
-----

BUGFIX: too many error classes in the form tag if multiple validation errors

0.8.5
-----

 * required marker to templates
 * 'allow_remove' flag on fileupload tempalte

BUGFIX: contains_errors should not fire if the container has an error
BUGFIX: problem with text area sequences not showing errors
BUGFIX: name error in classes_from_vars

0.8.4c
------

 * Added an example in the testish block for the restish embedded example

0.8.4b
------

BUGFIX: contains_error was reporting errors at the self level. Should only
        report if child fields had errors

0.8.4
------

BUGFIX: Sequences represented as textareas were not showing contained errors
        (although they were failing validation). Fields and Collections
        now have 'contains_error' and 'contained_errors' properties.

0.8.3b
------

 * Added the ability to pass vars into templates.
   The only templates that currently use this are the Input and Textarea
   widgets. f.widget(classes='myclass yourclass') will add this class
   attribute to the input/textarea element

0.8.3
-----

BUGFIX: Many javascript changes to simplify sequence handling and to ensure
        sequences work when using custom templates and also when multiple
        forms are on a page.


0.8.2b
------

BUGFIX: When using custom templates, the generated 'blob' of data that
        represents the 'new item' template was not working correctly. This
        should not have affected normal uses of formish

0.8.2
-----

 * Rewritten formish javascript for sequences to use class name hooks instead
   of relative paths. Add SequenceOfSequence support

BUGFIX: Sequence of Sequence javascript manipulation did not work correctly at all.

0.8.1c
------

BUGFIX: Enctype wasn't being encoded correctly hence file uploads didn't work

0.8.1b
------

 * changed behaviour of enctype so that multi-part is only used if there is a
   file upload on the form

0.8.1a
------

BUGFIX: Sequences were using base64 encoding to store new items. This wasn't
        handling unicode correctly. Changed to use urlencode
        decodeURIComponent. The JQuery base64 library is now not needed.
BUGFIX: Structures were emitting metadata when they are only needed for
        sequences

0.8.1
-----

 * Add the ability to emit form fields using field names which will alow
   emission of 'slices' of form fields.

0.8f
----

 * added 'crop' flag to the fileresource handler that instead of resizing to
   bounds, resizes to fill bounds and crops excess.

0.8e
----

BUGFIX: CheckboxMultiChoiceTree wasn't handling empty data
BUGFIX: Form method names should be lower case in templates

0.8d
----

 * Remove remains of restish element code

0.8c
----

 * Added an empty attribute to the form to allow global backup setting for
   widget empty value

0.8a
----

BUGFIX: The request_data was not being set on the form as a dotted_dict post
        0.8, hence deep sequences were not working correctly

0.8
---

 * Added 'readonly' attribute to widget that does not put data on the form.
   This allows the creation of forms based on parts of a schema (i.e. mark the
   rest of the schema widgets as 'readonly')

 * Allow sparse request data (missing request data is now interpreted as the
   default value for that widget (see default_value class attribute)

 * Refactored the CachedTempFilestores api to only specify the cache tag and
   headers.

 * CachedTempFilestore now has a FileSystemHeaderedFilestore backend (by
   default).

 * Improved FileResource store initialisation and handling

  - FileResource is now configured using a single filestore or dict of
    filestores where the dict keys are the filestore's name. Filestores now
    need no name attribute. The filestore with a None key is considered
    unnamed, and is the default application filestore.
  - The name of the filestore is now encoded in the URL and is used to select
    the exact filestore to use.
  - FileUpload widget now specifies the exact filestore (unnamed or 'tmp') to
    use to display a preview.
  - formish.util has some functions to help encode/decode FileResource paths

 * Added formish.js and formish.css to the module

 * Add min_start_fields, min_empty_start_fields to SequenceDefault widget. This
   allows a sequence to always show a spare or only show a spare when no data
   entered or to show many spares.

 * Added batch_add_count which specifies how many empty fields to add when
   'add' is clicked

 * Added empty_checker to SequenceDefault so that it can throw away excess
   fields left because of min_start_fields (for instance).

 * Changed the FileResource initialiser to assume nothing about where the
   contents of the cache are stored (defaults could cause a security problem if
   file cache and other caches collided). It now needs explicit filestores.
   However a quickstart class method has been added that should provide handy
   testing fileresources.

 * Changed widget from and to request data methods to actively call child
   fields methods. Widgets are now soleley in charge of managing the return of
   request data/data from themselves and their children.

 * Changed to use the new, vastly simplified, dottedish module. The old
   dottedish module should no longer be used.

 * Charset field can now be disabled. Names on action fields are optional. Form
   name is optional (If you omit the name, it won't appear on the form element
   or as a prefix for the other html elements).

 * A check_form_name keyword argument can be passed to the validate function to
   disable form name checking

API CHANGES:

 - FileResource and FileUpload filestores now handled differently
 - to_request_data, form_request_data and pre_process_incoming_request now take
   field instead of attr and explicitly call their child field's methods and
   also return data (i.e. Widgets are now soleley in charge of managing the
   return of request data/data from themselves and their children).

BUG FIXES:

 - bug in CheckBox repr
 - added missing error_list block to the form (form level errors were not
   shown)
 - added styling to ensure all blocks with error class are #900 (dk red)
 - generated files now use 0660 as base permissions
 - problem with convertor_options.delimiter not being correctly handled
 - replaced 'for each' instances with 'for' in formish.js
 - SelectChoice selected method failed for complex sub-schemas


0.7.1
-----

API CHANGES:

 * Action init argument changes and add_action argument changes. Also, a
   default form now has an action in form.actions
  
   A form now has a 'add_default_action' keyword argument that defaults to True.
   Action init now takes (name, value=None, callback=None).
   The default action on a form has a value of 'Submit' and a name of 'submit'.
   You can manage the list of actions explicitly. A value of None removes the
   value html attribute.

0.7e
----

Relase didn't include any template files (caused by missing gitlsfiles when
building)

0.7d
----

BUG FIX: Fixed problem with checkbox multi choice tree widget not applying
         css_class correctly and not nesting html ul/li's correctly

0.7c
-----
BUG FIX: Nested structures were using the sequence template

0.7b
-----
BUG FIX: Fixed one last remaining use of widget.convert in CheckboxMultiChoiceTree

0.7a
-----
BUG FIX: Missed replacing a reference to _template in formish.validation

0.7
------

 * Input widgets can be used for sequence data (csv input field)
 * Added support for GET forms
 * Included css template in main formish module
 * Made success/failure form callback more flexible and intuitive
 * Reviewed use of css class and id names and added prefixes to field, widget
   and type to prevent clashes
 * Added ability to apply a default value to a single form element
 * Updated testish example/test app to use new restish templating
 * Better reprs for widgets and form definitions
 * Documentation improvements
   - Started adding doctests to documentation
   - Reduced the weight of the documentation (simplify styling/templates)
 * Lots of changes to the way file uploads are handled - will document before a
   tagged release
   - Using a 'headered' filestore that allows meta information to be stored
     with the file
   - this means cached files are not browseable on the filesystem anymore
   - fixed bugs in thumbnail preview
   - lots more tests around cacheing and file store
     
BUG FIX: There were some errors in the previous file upload system but the
         replacement of the file upload system has improved the whole file
         upload system
 
0.6.6 (2009-01-29)
------------------

 * Added the errors property to allow a user to get hold of the full list of
   errors (including the original validator settings)

0.6.5 (2009-01-23)
----------------

BUG FIX: convert error if a choice type is given bad request data.

0.6.4a (2009-01-22)
----------------

 * Added object base class to enable 2.4 comptibility

BUG FIX: made sure the 'empty' attribute worked symettrically (goes with
    removing empty string checking from convertish)
BUG FIX: none_option default was empty string which broke when using datetype.
BUG FIX: sequences could not be used as values in select choice

0.6.3 (2009-01-19)
----------------

BUG FIX: Success and Failure callbacks didn't work

0.6.2 (2009-01-19)
----------------

* Added testish tests for default values using radio choice and check box as
  booleans

BUG FIX: Radio choice type conversion was broken

0.6.1 (2009-01-17)
----------------

* Added the 'empty' attribute to allow empty values to come back as anything
  you like (normally they return None)
* Reviewed the way conversion works and added extra tests.. picked up on a
  couple of edge cases

BUG FIX: bugs in the conversion of none_option values


0.6 (2009-01-16)
----------------

Hopefully we're over the backward incompatible api changes.

* added ``sortable`` option to sequence widget
* renamed the default form id back to 'form' (it temporarily got set as
  'formish'). js and css might need changing in your projects..
* Added ReCAPTCHA widget and enhanced the testish self documenting site
* big introduction page to docs

0.5.9 (2009-01-13)
------------------

* added a TextArea csv example and cleaned up fileresource handlers

BUG FIX: resizing when only with or height given was not working

0.5.8 (2009-01-12)
------------------

* added a SelectWithOther choice and enhanced unit and func test capabilities
  in testish

0.5.7 (2009-01-11)
------------------

BUG FIX: Fixed various problems with File uploads.

* added a default file acccessor that uses python tempfile with a 'store-' file
  prefix.

0.5.6 (2009-01-09)
------------------

BUG FIX: Fixed bug when using multi part widgets (e.g. Date Parts) inside a
  sequence. Added example test case.

* changes to handle new schemaish Invalid exception format
* added a contains-error class to container classes that do.

0.5.5 (2009-01-08)
------------------

* Add a granular template rendering system (have a look at
  http://ish.io:8891/CustomisedFormLayout)

0.5.4 (2009-01-06)
------------------

* Removed all * imports apart from those at the module level. Checked against
  pyflakes.

0.5.3 (2009-01-06)
------------------

!! API CHANGES !!

* dateFirst becomes date_first (on dateParts widget)
* allowClear becomes allow_clear (on fileUpload widget)
* fileHandler becomes filehandler (on fileUpload widget)
* showImagePreview becomes show_image_preview (on fileUpload widget)
* noneOption becomes none_option (on select widgets)

Cleaned up repo and fixed bad style in some method attributes and method names

* Added files recommended by pypi including license


0.5.2 (2009-01-05)
------------------

BUG FIX: Added an import except wrapper around the default mako import


0.5.1 (2009-01-05)
------------------

BUG FIX: Problem with redisplayed empty checkboxes after validation


0.5 (2009-01-05)
----------------

NOTE: First External Release
Something went wrong with that request. Please try again.