[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