Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python.announce > #1190

ANN: EmPy 3.3.2 released (Python 3.x compatibility)

Path csiph.com!usenet.pasdenom.info!weretis.net!feeder4.news.weretis.net!rt.uk.eu.org!newsfeed.xs4all.nl!newsfeed1.news.xs4all.nl!xs4all!post.news.xs4all.nl!not-for-mail
Return-Path <poster@giganews.com>
X-Original-To python-announce@python.org
Delivered-To python-announce-list@mail.python.org
X-Spam-Status OK 0.000
X-Spam-Evidence '*H*': 1.00; '*S*': 0.00; 'python.': 0.02; 'explicitly': 0.05; 'subject:Python': 0.06; 'assignment': 0.07; 'context': 0.07; 'expressions': 0.07; 'indicated': 0.07; 'purpose.': 0.07; 'subject:ANN': 0.07; 'subject:released': 0.07; 'variables': 0.07; 'string': 0.09; 'delimited': 0.09; 'escape': 0.09; 'literal': 0.09; 'output,': 0.09; 'prefix': 0.09; 'repeated': 0.09; 'statements': 0.09; 'subject:skip:c 10': 0.09; 'thrown': 0.09; 'trailing': 0.09; 'url:software': 0.09; 'python': 0.11; 'jan': 0.12; 'language.': 0.14; 'template': 0.14; 'changes': 0.15; '1.x': 0.16; '3.0.': 0.16; 'abbreviated': 0.16; 'conditional': 0.16; 'dynamic,': 0.16; 'erik': 0.16; 'expands': 0.16; 'filters.': 0.16; 'newline)': 0.16; 'sign,': 0.16; 'sign.': 0.16; 'tarball': 0.16; 'templating': 0.16; 'url:gz': 0.16; 'url:tar': 0.16; 'variations': 0.16; 'followed': 0.16; 'fix': 0.17; 'variable': 0.18; 'file,': 0.19; 'command': 0.22; 'header :User-Agent:1': 0.23; '(by': 0.24; '2.x': 0.24; 'forms.': 0.24; 'parse': 0.24; 'specify': 0.24; 'source': 0.25; 'options': 0.25; 'supported': 0.26; 'header:X-Complaints-To:1': 0.27; 'rest': 0.29; 'character': 0.29; 'expansion': 0.30; 'specified': 0.30; 'code': 0.31; 'getting': 0.31; 'comments': 0.31; 'accomplished': 0.31; 'embedding': 0.31; 'exceptions': 0.31; 'markup': 0.31; 'produces': 0.31; 'summary': 0.32; 'text': 0.33; '(including': 0.33; 'subject: (': 0.35; 'version': 0.36; 'ca,': 0.36; 'sequence': 0.36; 'done': 0.36; 'should': 0.36; 'requirements': 0.37; 'handle': 0.38; 'ability': 0.39; 'san': 0.39; 'embedded': 0.39; 'flow': 0.39; 'release': 0.40; 'easy': 0.60; 'simple': 0.61; 'here:': 0.62; 'information': 0.63; 'name': 0.63; 'finally': 0.65; 'phone': 0.66; 'license': 0.66; 'latest': 0.67; 'between': 0.67; 'line,': 0.68; 'usa': 0.69; 'default': 0.69; 'to:addr:comp-lang-python-announce': 0.70; 'received:130': 0.73; 'special': 0.74; 'to:addr:moderators.isc.org': 0.77; '.....': 0.78; 'received:130.133': 0.83; 'received:130.133.4': 0.83; 'received:130.133.4.7': 0.83; 'received:individual.net': 0.83; 'received:moderators.individual.net': 0.83; '24.': 0.84; 'commands.': 0.84; 'sitting': 0.91
X-Authentication-Warning serv2.gc.lax.giganews.com: news set sender to poster@giganews.com using -f
Date Tue, 28 Jan 2014 01:19:20 -0800
From Erik Max Francis <max@alcyone.com>
Organization Alcyone Systems
User-Agent Mozilla/5.0 (X11; Linux i686; rv:24.0) Gecko/20100101 Thunderbird/24.2.0
MIME-Version 1.0
Subject ANN: EmPy 3.3.2 released (Python 3.x compatibility)
Content-Type text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding 7bit
X-DF-Seen-By ms
X-Usenet-Provider http://www.giganews.com
X-DMCA-Notifications http://www.giganews.com/info/dmca.html
X-Abuse-and-DMCA-Info Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info Otherwise we will be unable to process your complaint properly
X-Postfilter 1.3.40
Newsgroups comp.lang.python.announce, comp.lang.python
To comp-lang-python-announce@moderators.isc.org
X-Mailman-Approved-At Tue, 28 Jan 2014 11:32:37 +0100
X-BeenThere python-announce-list@python.org
X-Mailman-Version 2.1.15
Precedence list
Reply-To python-list@python.org
List-Id Announcement-only list for the Python programming language <python-announce-list.python.org>
List-Unsubscribe <https://mail.python.org/mailman/options/python-announce-list>, <mailto:python-announce-list-request@python.org?subject=unsubscribe>
List-Archive <http://mail.python.org/pipermail/python-announce-list/>
List-Post <mailto:python-announce-list@python.org>
List-Help <mailto:python-announce-list-request@python.org?subject=help>
List-Subscribe <https://mail.python.org/mailman/listinfo/python-announce-list>, <mailto:python-announce-list-request@python.org?subject=subscribe>
Approved python-announce-list@python.org
Message-ID <mailman.6070.1390905159.18130.python-announce-list@python.org> (permalink)
Lines 79
NNTP-Posting-Host 2001:888:2000:d::a6
X-Trace 1390905159 news.xs4all.nl 2860 [2001:888:2000:d::a6]:43625
X-Complaints-To abuse@xs4all.nl
Xref csiph.com comp.lang.python.announce:1190 comp.lang.python:64902

Cross-posted to 2 groups.

Show key headers only | View raw


Summary

     A powerful and robust templating system for Python.


Overview

     EmPy is a system for embedding Python expressions and statements
     in template text; it takes an EmPy source file, processes it, and
     produces output.  This is accomplished via expansions, which are
     special signals to the EmPy system and are set off by a special
     prefix (by default the at sign, '@').  EmPy can expand arbitrary
     Python expressions and statements in this way, as well as a
     variety of special forms.  Textual data not explicitly delimited
     in this way is sent unaffected to the output, allowing Python to
     be used in effect as a markup language.  Also supported are
     callbacks via hooks, recording and playback via diversions, and
     dynamic, chainable filters.  The system is highly configurable via
     command line options and embedded commands.

     Expressions are embedded in text with the '@(...)' notation;
     variations include conditional expressions with '@(...?...!...)'
     and the ability to handle thrown exceptions with '@(...$...)'.  As
     a shortcut, simple variables and expressions can be abbreviated as
     '@variable', '@object.attribute', '@function(arguments)',
     '@sequence' [index], and combinations.  Full-fledged statements
     are embedded with '@{...}'.  Control flow in terms of conditional
     or repeated expansion is available with '@[...]'.  A '@' followed
     by a whitespace character (including a newline) expands to
     nothing, allowing string concatenations and line continuations.
     Comments are indicated with '@#' and consume the rest of the line,
     up to and including the trailing newline.  '@%' indicate
     "significators," which are special forms of variable assignment
     intended to specify per-file identification information in a
     format which is easy to parse externally.  Context name and line
     number changes can be done with '@?' and '@!' respectively.
     '@<...>' markups are customizeable by the user and can be used for
     any desired purpose.  Escape sequences analogous to those in C can
     be specified with '@\...', and finally a '@@' sequence expands to
     a single literal at sign.


Getting the software

     The current version of empy is 3.3.2.

     The latest version of the software is available in a tarball here:
     http://www.alcyone.com/software/empy/empy-latest.tar.gz.

     The official URL for this Web site is
     http://www.alcyone.com/software/empy/.


Requirements

     EmPy should work with any version of Python from 2.4 onward,
     including 3.x.


License

     This code is released under the LGPL.

....

Release history [since 3.3]

     - 3.3.2; 2014 Jan 24.  Additional fix for source compatibility
       between 2.x and 3.0.

     - 3.3.1; 2014 Jan 22.  Source compatibility for 2.x and 3.0;
       1.x and Jython compatibility dropped.


-- 
Erik Max Francis && max@alcyone.com && http://www.alcyone.com/max/
  San Jose, CA, USA && 37 18 N 121 57 W && AIM/Y!M/Jabber erikmaxfrancis
   Sitting in the den and / Looking at the phone as if it owed / Owed me
    a favor -- Blu Cantrell

Back to comp.lang.python.announce | Previous | Next | Find similar | Unroll thread


Thread

ANN: EmPy 3.3.2 released (Python 3.x compatibility) Erik Max Francis <max@alcyone.com> - 2014-01-28 01:19 -0800

csiph-web