Edgewall Software

Changes between Version 3 and Version 4 of TracDev/ReleaseNotes/1.0


Ignore:
Timestamp:
Apr 7, 2010, 9:25:44 PM (14 years ago)
Author:
Christian Boos
Comment:

add #Jinja2Support topic

Legend:

Unmodified
Added
Removed
Modified
  • TracDev/ReleaseNotes/1.0

    v3 v4  
    1 Hey, it's a bit early for 0.13 Release Notes, no?
     1Hey, it's a bit early for 0.13 Release Notes, no? Let's use this page for the planning stage.
    22
    3 However, we can start to seriously think about '''the code name for the next release'''.
     3Here are a few topics that needs a bit of discussion and preparation. As each topic grows, we'll probably get a page for each, but for now a single page is enough.
     4
     5== Code Name
     6
     7First and foremost, we can start to seriously think about '''the code name for the next release'''.
    48
    59The [milestone:0.11] release was dubbed "Genshi" and [milestone:0.12] "Babel",
     
    1822(the winner will get a slot in the THANKS file, a free copy of Trac 0.13, or some other equally useful gift ;-) )
    1923
     24== Jinja2 Support
     25
     26We've decided some time ago to remove support for the ClearSilver template engine, in 0.12, but this didn't happen yet. Clearsilver had its share of inconveniences, enough that we decided to switch to the nicer Genshi template engine in 0.12, but it was **very** fast and memory lenient. While we managed to keep Genshi memory usage somewhat in control (remember #6614), the speed was never really adequate, especially for big changesets and for displaying source files over a few thousand lines of code (see TracDev/Performance#Genshi for details).
     27
     28So one solution would be to switch once again, to a template engine that would combine the advantages of Genshi (pure Python, nice templates, flexible) and ClearSilver (speed!). Such a beast seems to exist now: **[http://jinja.pocoo.org/2/documentation/ Jinja2]**.
     29
     30The switch can happen progressively, instead of removing support for ClearSilver we could substitute that code by the support for Jinja2 (well, maybe, remains to be seen if that still makes sense while coding it).
     31
     32Several points remain to be clarified: what will be the upgrade path for plugins that came to rely on `IStreamFilter`s, how to handle themeing, should we rewrite tag builders or use lightweight string templates, etc.
     33
     34See also: googlegroups:trac-dev:fc8d8c0447140110