[Checkins] Re: SVN: z3c.pt/trunk/ Move history to top-level and rename it to changes. I've been looking for it too many times now.

Philipp von Weitershausen philipp at weitershausen.de
Sun Jul 6 18:26:30 EDT 2008


Hanno Schlichting wrote:
> Log message for revision 88074:
>   Move history to top-level and rename it to changes. I've been looking for it too many times now.
>   

Good job! The file layout you've chosen now also complies with the guide 
for software that's maintained in the Zope.org repository:

http://svn.zope.org/*checkout*/Sandbox/philikon/foundation/maintaining-software.txt


> Changed:
>   A   z3c.pt/trunk/CHANGES.txt
>   D   z3c.pt/trunk/docs/
>   U   z3c.pt/trunk/setup.py
> 
> -=-
> Copied: z3c.pt/trunk/CHANGES.txt (from rev 88073, z3c.pt/trunk/docs/HISTORY.txt)
> ===================================================================
> --- z3c.pt/trunk/CHANGES.txt	                        (rev 0)
> +++ z3c.pt/trunk/CHANGES.txt	2008-07-06 17:31:13 UTC (rev 88074)
> @@ -0,0 +1,155 @@
> +Changelog
> +---------
> +
> +Version 0.8.x
> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> +
> +- Added persistent file cache functionality. If the environment variable is
> +  set, each file system based template will add a directory to the cache
> +  (currently a SHA-1 of the file's absolute path is used as the folder name)
> +  and in the folder one file per params for the template (cache filename is
> +  the hash of the params). Once a template file is initialized, an instance
> +  local registry is added, which then looks up all cached files and
> +  pre-populates the registry with the render functions.
> +
> +- Fixed interpolation edge case bugs.
> +  [malthe]
> +
> +- Added new `Z3C_PT_FILECACHE` environment variable pointing to a directory.
> +  If set, this will be used to cache the compiled files.
> +
> +- Added a second variation of the repeat clause, using a simple for loop. It
> +  doesn't support the repeatdict, though and is therefor not used yet. Also
> +  began work to add introspection facilities to clauses about the variables
> +  being used in them. The simpler loop causes the benchmarks to go up to a
> +  10.5 (old 9.5) for path expressions and 14.5 (12.5) for python expressions.
> +  So the next step is to introduce an optimization phase, that can decide
> +  which variant of the loops to use.
> +
> +- Made the debug mode independent from the Python debug mode. You can now
> +  specify an environment variable called `Z3C_PT_DEBUG` to enable it.
> +
> +- Added some code in a filecache module that can later be used to write out
> +  and reload the compiled Python code to and from the file system. We should
> +  be able to avoid reparsing on Python process restart.
> +
> +- Simplified the generated _escape code. cgi.escape's second argument is a
> +  simple boolean and not a list of characters to quote.
> +
> +- Use a simple list based BufferIO class instead of a cStringIO for the out
> +  stream. Avoiding the need to encode Unicode data is a bigger win. We do
> +  not support arbitrarily mixing of Unicode and non-ascii inside the engine.
> +
> +- Merged two adjacent writes into one inside the Tag clause.
> +
> +- Applied a bunch of micro-optimizations. ''.join({}) is slightly faster
> +  than ''.join({}.keys()) and does the same. Avoid a try/except for error
> +  handling in non-debug mode. Test against 'is None' instead of a boolean
> +  check for the result of the template registry lookup. Made PROD_MODE
> +  available defined as 'not DEBUG_MODE' in config.py, so we avoid the 'not'
> +  in every cook-check.
> +
> +- Added more benchmark tests for the file variants.
> +
> +- Optimized 'is None' handling in Tag clause similar to the Write clause.
> +
> +- Made the _out.write method directly available as _write in all scopes, so
> +  we avoid the method lookup call each time.
> +
> +- Optimized 'is None' handling in Write clause.
> +
> +- Slightly refactored benchmark tests and added tests for the file variants.
> +
> +- In debug mode the actual source code for file templates is written out to
> +  a <filename>.source file, to make it easier to inspect it.
> +
> +- Make debug mode setting explicit in a config.py. Currently it is bound to
> +  Python's __debug__, which is False when run with -O and otherwise True.
> +
> +- Use a simplified UnicodeWrite clause for the result of _translate calls,
> +  as the result value is guaranteed to be Unicode.
> +
> +- Added benchmark tests for i18n handling.
> +
> +- Added more tests for i18n attributes handling.
> +
> +- Don't generate empty mappings for expressions with a trailing semicolon.
> +
> +- Fixed undefined name 'static' error in i18n attributes handling and added
> +  quoting to i18n attributes.
> +
> +- Added condition to the valid attributes on tags in the tal namespace.
> +
> +- Made sure the traceback from the *first* template exception
> +  is carried over to __traceback_info__
> +
> +- Added template source annotations on exceptions raised while
> +  rendering a template.
> +
> +Version 0.8 - March 19, 2008
> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> +
> +- Added support for 'nocall' and 'not' (for path-expressions).
> +
> +- Added support for path- and string-expressions.
> +
> +- Abstracted expression translation engine. Expression implementations
> +  are now pluggable. Expression name pragmas are supported throughout.
> +
> +- Formalized expression types
> +
> +- Added support for 'structure'-keyword for replace and content.
> +
> +- Result of 'replace' and 'content' is now escaped by default.
> +
> +- Benchmark is now built as a custom testrunner
> +
> +Version 0.7 - March 10, 2008
> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> +
> +- Added support for comments; expressions are allowed
> +  inside comments, i.e.
> +
> +     <!-- ${'Hello World!'} -->
> +
> +  Comments are always included.
> +  
> +Version 0.6 - February 24, 2008
> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> +
> +- Added support for text templates; these allow expression
> +  interpolation in non-XML documents like CSS stylesheets and
> +  javascript files.
> +
> +Version 0.5 - February 23, 2008
> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> +
> +- Expression interpolation implemented.
> +
> +Version 0.4 - February 22, 2008
> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> +
> +- Engine now uses cStringIO yielding a 2.5x performance
> +  improvement. Unicode is now handled correctly.
> +
> +Version 0.3 - December 23, 2007
> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> +
> +- Code optimization; bug fixing spree  
> +
> +- Added ``ViewPageTemplateFile`` class
> +  
> +- Added support for i18n
> +  
> +- Engine rewrite; improved code generation abstractions 
> +  
> +Version 0.2 - December 5, 2007
> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> +
> +- Major optimizations to the generated code  
> +
> +Version 0.1 - December 3, 2007
> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> +
> +- First public release
> +
> 
> Modified: z3c.pt/trunk/setup.py
> ===================================================================
> --- z3c.pt/trunk/setup.py	2008-07-06 17:28:53 UTC (rev 88073)
> +++ z3c.pt/trunk/setup.py	2008-07-06 17:31:13 UTC (rev 88074)
> @@ -5,7 +5,7 @@
>  setup(name='z3c.pt',
>        version=version,
>        description="An implementation of the TAL template language.",
> -      long_description=open("README.txt").read() + open("docs/HISTORY.txt").read(),
> +      long_description=open("README.txt").read() + open("CHANGES.txt").read(),
>        classifiers=[
>          "Programming Language :: Python",
>          "Topic :: Text Processing :: Markup :: HTML",



More information about the Checkins mailing list