durusmail: quixote-users: RELEASED: Quixote 2.8b1
RELEASED: Quixote 2.8b1
RELEASED: Quixote 2.8b1
Neil Schemenauer
2012-01-02
Happy New Year!  I decided to do some cleanup on Quixote.  This list
of changes since version 2.7 follows.  Please let me know if you
test this version and it works for you.


Author: Neil Schemenauer 
Date:   Mon Jan 2 13:49:37 2012 -0600

    Remove generated HTML docs from the version control system.

Author: Neil Schemenauer 
Date:   Mon Jan 2 13:38:24 2012 -0600

    Update documentation for 2.8 changes.

    Mention the export() decorator.  Simplify the explaination of
    the mini demo.  Suggest starting the server using python -m
     since that avoids platform dependant paths.  Explain
    how to make simple_server listen on a public interface.  Include
    the latest docutils stylesheet.

Author: Neil Schemenauer 
Date:   Mon Jan 2 13:30:23 2012 -0600

    Use the export() and subdir() decorators for the demo.

Author: Neil Schemenauer 
Date:   Mon Jan 2 13:24:00 2012 -0600

    Improve the formatting of Quixote generated pages.

    Introduce the errors.format_page() function and use it to generate
    all HTML pages produced by Quixote.  It provides a single location
    to "monkey-patch" if applications want to customize the look of the
    pages.  Improve the wording of the messages on some of the error
    pages.  Provide some basic CSS rules to make the pages look a little
    more modern.  Use the HTML 5 doctype.

Author: Neil Schemenauer 
Date:   Mon Jan 2 13:19:06 2012 -0600

    Enable stricter HTTP request method checking.

    By default, only allow GET, HEAD, and POST.  Allowed methods
    can be set by the ALLOWED_METHODS config.  All methods can
    be allowed by setting ALLOWED_METHODS to None.

Author: Neil Schemenauer 
Date:   Mon Jan 2 01:04:17 2012 -0600

    Add export() and subdir() decorators for managing _q_exports.

Author: Neil Schemenauer 
Date:   Sun Jan 1 22:22:28 2012 -0600

    Have simple_server.py use Quixote access logger.

Author: Neil Schemenauer 
Date:   Sun Jan 1 22:21:10 2012 -0600

    Increase resolution of elapsed time in access log.

    To save space, prepend 's', instead of 'sec'.

Author: Neil Schemenauer 
Date:   Sun Jan 1 22:18:21 2012 -0600

    Add js_escape() utility.

Author: Neil Schemenauer 
Date:   Sun Jan 1 21:24:09 2012 -0600

    Use Form.is_submitted() to check if Widget should parse.

    Pass a reference to the form object to widgets.  Use
    Form.is_submitted() to check if form has been submitted.  This
    allows query strings to be provided to forms with a POST method
    while preventing them from erroneously parsing themselves.
    Previously the query string would cause them to think the form
    was submitted.

Author: Neil Schemenauer 
Date:   Sun Jan 1 20:51:11 2012 -0600

    Set 'id' attribute on form input elements.

    This is useful when using Javascript to manipulate the form.  It
    also now seems to be standard practice.

Author: Neil Schemenauer 
Date:   Sun Jan 1 20:46:10 2012 -0600

    Don't auto-set 'Expires' header if it already exists.

Author: Neil Schemenauer 
Date:   Sun May 1 15:43:05 2011 -0600

    Add the format() method to htmltext.

Author: Neil Schemenauer 
Date:   Sun May 1 13:28:06 2011 -0600

    Change HTTPRequest to always consume request body.

    Some clients and middleware expect that the body is always consumed.
    Previous to this change, raising a PublishError exception (for
    example) could result in a response being sent without the body
    being consumed.  Requiring the application code to ensure that the
    body is always consumed seems burdensome.  Using a temporary file
    or StringIO object seems simplest and should not significantly
    affect performance.
reply