Permalink
Commits on Oct 25, 2009
  1. Merge branch 'master' into maint

    rtyler committed Oct 25, 2009
  2. Update manifest

    rtyler committed Oct 25, 2009
  3. tweak changes for release

    rtyler committed Oct 25, 2009
Commits on Oct 18, 2009
  1. remove unnecessary encoding in the default filters, now that everythi…

    mikebonnet committed with rtyler Oct 16, 2009
    …ng is a unicode object internally
    
    There is no longer any value in having the filters return encoded str objects,
    since they need to be decoded back to unicode before they can be combined with
    the rest of the template text (which is managed as a unicode object).  This
    patch maintains API compatibility but fundamentally changes the behavior of
    some of the filters.  RawOrEncodedUnicode and EncodeUnicode should be
    deprecated and removed from the API.
    
    Signed-off-by: R. Tyler Ballance <tyler@monkeypox.org>
  2. Add Template.__unicode__() to return unicode() objects, while Templat…

    rtyler committed Oct 16, 2009
    …e.__str__() returns encoded str() objects
    
    Per my discussion in #cheetah on IRC with mikeb@ regarding the following issue:
    	https://bugzilla.redhat.com/show_bug.cgi?id=529332
    
    This, in addition to recent patches to cheetah/DummyTransaction.py should alleviate
    migration issues for users still passing a mishmash of unicode()/str() objects into
    Templates. __str__() should return a str() object, whereas __unicode__() should
    return a unicode() object.
    
    No-op the EncodeUnicode filter when it encounters a unicode() object.
Commits on Oct 15, 2009
  1. Revert "Bump the version to Cheetah 2.4.0"

    rtyler committed Oct 15, 2009
    This reverts commit 8237cf4.
  2. Merge branch 'next'

    rtyler committed Oct 15, 2009
    Conflicts:
    	cheetah/Template.py
    	cheetah/Tests/Performance.py
    	cheetah/Version.py
  3. Bump the version to Cheetah 2.4.0

    rtyler committed Oct 15, 2009
    Starting the 2.4.xx series to denote base-compatibility with Python 2.4
    and up
  4. Remove unnecessary dir()/set() calls in Template.__init__()

    rtyler committed Oct 13, 2009
    When running cheetah.Tests.Performance.DynamicMethodCompilationTest
    with 100000 iterations set, Template.__init__() is the most performance
    sensitive call.
    
    Prior to this commit:
        ncalls  tottime  percall  cumtime  percall filename:lineno(function)
        100000   12.558    0.000   15.274    0.000 Template.py:1025(__init__)
    
    After this commit:
        ncalls  tottime  percall  cumtime  percall filename:lineno(function)
        100000    1.263    0.000    3.541    0.000 Template.py:1025(__init__)
    
    That code need not execute every time __init__ is called
  5. Remove the encode/decode calls in DummyResponse.write()/getvalue() an…

    rtyler committed Oct 15, 2009
    …d take a more optimistic approach
    
    Borrowing some concepts from the "slide-compat" branch that I maintain
    for Slide, Inc. for gracefully handling less-than-ideal string-encoding
    situations (as is the case for Slide).
    
    Making DummyResponse.getvalue() optimistic in trying to u''.join() a
    list of random string (unicode, str (various encodings)) objects
    and then only on a UnicodeDecodeError, run through the "safeConvert"
    function (blech) to handle encoded str() objects
  6. Revert "Use cStringIO instead of array in DummyTransaction"

    rtyler committed Oct 15, 2009
    This reverts commit 9ac5e4c.
    
    Left some of my previous changes in place; self._outputChunks
    will deal with only utf-8 encoded strings and then decode them all
    at the very end
    
    Conflicts:
    
    	cheetah/DummyTransaction.py
  7. Correctly use cStringIO which only deals in bytestrings.

    rtyler committed Oct 15, 2009
    I'm uncertain if there's any lossiness in encoding a unicode()
    object 'utf-8' prior to writing to the stream, but this does
    appear to inadvertantly fix another issue we had with mixing UTF-8
    encoded strings and unicode() objects when filling a template.
  8. Use cStringIO instead of array in DummyTransaction

    arunk committed with rtyler Oct 14, 2009
    Signed-off-by: R. Tyler Ballance <tyler@monkeypox.org>
Commits on Oct 13, 2009
  1. Push Reserved_SearchList onto the Template class object

    rtyler committed Oct 13, 2009
    Suggested by: aahz@
  2. Update the printing of the Performance tests

    rtyler committed Oct 13, 2009
    I want to print out the directories to ensure that I'm actually
    testing the code I think I'm testing (*facepalm*)
  3. Cleanup some of this "type()" muckery that's been bugging me.

    rtyler committed Oct 13, 2009
    The amount of type-checking here is absurd for a duck-typed language
  4. Remove unnecessary dir()/set() calls in Template.__init__()

    rtyler committed Oct 13, 2009
    When running cheetah.Tests.Performance.DynamicMethodCompilationTest
    with 100000 iterations set, Template.__init__() is the most performance
    sensitive call.
    
    Prior to this commit:
        ncalls  tottime  percall  cumtime  percall filename:lineno(function)
        100000   12.558    0.000   15.274    0.000 Template.py:1025(__init__)
    
    After this commit:
        ncalls  tottime  percall  cumtime  percall filename:lineno(function)
        100000    1.263    0.000    3.541    0.000 Template.py:1025(__init__)
    
    That code need not execute every time __init__ is called
  5. implement the popen2.Popen4 interface using the subprocess.Popen back…

    mikebonnet committed with rtyler Sep 15, 2009
    …end, to avoid DeprecationWarnings when running the tests on python >= 2.6
    
    Finally got tired of 'em. :)
  6. Bump the version in /next/ to 2.3.0

    R. Tyler Ballance committed with rtyler Sep 17, 2009
Commits on Sep 20, 2009
  1. Merge branch 'master' into next

    rtyler committed Sep 20, 2009
Commits on Sep 17, 2009
  1. implement the popen2.Popen4 interface using the subprocess.Popen back…

    mikebonnet committed with R. Tyler Ballance Sep 15, 2009
    …end, to avoid DeprecationWarnings when running the tests on python >= 2.6
    
    Finally got tired of 'em. :)
  2. Bump the version in /next/ to 2.3.0

    R. Tyler Ballance committed Sep 17, 2009
Commits on Sep 14, 2009