Path: csiph.com!fu-berlin.de!uni-berlin.de!not-for-mail From: nospam.=?UTF-8?Q?Juancarlo_A=C3=B1ez?= (=?UTF-8?Q?Juancarlo_A=C3=B1ez?=) Newsgroups: comp.lang.python.announce Subject: TatSu v4.2.5 released Date: Sun, 26 Nov 2017 18:35:00 +1200 Organization: Agency BBS, Dunedin - New Zealand | bbs.geek.nz Lines: 47 Approved: python-announce-list@python.org Message-ID: References: <1660907850@f38.n261.z1.binkp.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 8bit X-Trace: news.uni-berlin.de XtORe0xGcB+rTU2sUTsapAEBQZlMACgQJgz534KAERYw== Return-Path: X-Original-To: python-announce@python.org Delivered-To: python-announce-list@mail.python.org X-Spam-Status: OK 0.002 X-Spam-Evidence: '*H*': 1.00; '*S*': 0.00; 'subject:released': 0.07; 'url-ip:192.30.253.112/32': 0.07; 'url-ip:192.30.253.113/32': 0.07; 'url-ip:192.30.253/24': 0.07; 'url:github': 0.07; '---------': 0.09; '<>)': 0.09; 'input,': 0.09; 'outputs': 0.09; 'parsers': 0.09; 'rename': 0.09; 'url-ip:162.242.198.235/32': 0.09; 'url-ip:162.242.198/24': 0.09; 'url-ip:162.242/16': 0.09; 'url:issues': 0.09; 'python': 0.10; 'advance': 0.11; 'url- ip:192.30/16': 0.13; 'python.': 0.15; 'stored': 0.15; '#include': 0.16; 'ast': 0.16; 'bootstrap.py': 0.16; 'determining': 0.16; 'expressions,': 0.16; 'implements': 0.16; 'optional': 0.16; 'parser.': 0.16; 'successor': 0.16; 'algorithm': 0.18; 'string': 0.21; 'import': 0.21; 'module': 0.22; 'fix': 0.25; 'header:User- Agent:1': 0.25; 'parse': 0.26; 'defined': 0.26; 'url:io': 0.28; '(the': 0.28; 'files': 0.30; 'code': 0.31; 'url:en': 0.31; 'expected': 0.31; 'compile': 0.33; 'incorrect': 0.33; 'whitespace': 0.33; 'rules': 0.35; 'charset:us-ascii': 0.37; 'rule': 0.38; 'url-ip:192/8': 0.39; 'tool': 0.40; 'fully': 0.60; 'care': 0.61; 'over': 0.61; 'received:edu': 0.62; 'grammar': 0.62; 'received:18': 0.62; 'received:18.181': 0.62; 'received:18.181.2': 0.62; 'received:18.181.2.90': 0.62; 'received:mit.edu': 0.62; 'received:mod-relay.xvm.mit.edu': 0.62; 'received:xvm.mit.edu': 0.62; 'received:nz': 0.63; 'name': 0.64; 'generation': 0.66; 'to:addr:comp-lang-python-announce': 0.70; 'sample': 0.72; 'to:addr:moderators.isc.org': 0.78; 'received:103': 0.84; 'received:xtra.co.nz': 0.84; 'variation': 0.84; 'received:219': 0.91; 'received:co.nz': 0.91; 'url:54': 0.91 Delivered-To: comp-lang-python-announce@moderators.isc.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=news.bbs.geek.nz; s=default; h=Content-Transfer-Encoding:Content-Type: Mime-Version:Message-ID:Date:Subject:From:To:Sender:Reply-To:Cc:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=8iHJPTSB4l4FtA+6+W1GFWP+7cu7lexOg85TzBKj91U=; b=GYNa2n5puK1cxhNJJGU+HLPRCd cGVauhPNcByBjAe080E6EbmY3/oEE9cziAvQN3NAeyykBXWzGXhmES1DDT4063BOoZzRKt619Axew TqP4taas35QKhodP5HVK3GlnO7ycOyIwAmvVB5JAFOWvsoVSdrVC5oPFRY5DfGpNvWgsYq5HzJ0gf KWG3tWSSOpjsDEEyHYu2B8++oNoFPoo8DfTDZL8CGFHPZDfCwfMrIRALP4Q2Roo8v3qsq4PVp2OGN 2cLp7/XNMTLzDy/RG7N4Uy9/b7fiTTJm5RCQMmE79Ma6cls11ZuXqEXSW6oacMECh/Lxw/CPtPZvX AZGU/JJA==; User-Agent: VSoup v1.2.9.47Beta [95/NT] X-Comment-To: All X-MailConverter: SoupGate-Win32 v1.05 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - aoraki.webslice.co.nz X-AntiAbuse: Original Domain - moderators.isc.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - news.bbs.geek.nz X-Get-Message-Sender-Via: aoraki.webslice.co.nz: authenticated_id: usenet@news.bbs.geek.nz X-Authenticated-Sender: aoraki.webslice.co.nz: usenet@news.bbs.geek.nz X-Source: X-Source-Args: X-Source-Dir: X-Mailman-Approved-At: Tue, 28 Nov 2017 03:33:13 -0500 X-BeenThere: python-announce-list@python.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: Announcement-only list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Mailman-Original-Message-ID: <1660907850@f38.n261.z1.binkp.net> Xref: csiph.com comp.lang.python.announce:2697 竣 TatSu (the successor to Grako) is a tool that takes grammars in a variation of EBNF as input, and outputs memoizing (Packrat) PEG parsers in Python. 竣 TatSu can compile a grammar stored in a string into a tatsu.grammars.Grammar object that can be used to parse any given input, much like the re module does with regular expressions, or it can generate a Python module that implements the parser. 竣 TatSu fully supports left-recursive rules in PEG grammars using the algorithm by Laurent and Mens. The generated AST has the expected left associativity. https://github.com/neogeny/TatSu http://tatsu.readthedocs.io/en/stable/ v4.2.5 -------- * #42 Rename vim files from grako.vim to tatsu.vim (@fcoelho ) * #51 Fix inconsistent code generation for whitespace (@fpom ) * #54 Only care about case of first letter of rule name for determining advance over whitespace (@acw1251 ) v4.2.4 --------- * #40 Make the start rule default to the first rule defined in the grammar (@hariedo) * #43 Import re from tatsu.util to support optional regex-only features (@azazel75) * #47 Fix incorrect sample code in documentation v4.2.3 -------- * #37 Regression: The #include pragma works by using the EBNFBuffer from grammars.py. Somehow the default EBNFBootstrapBuffer from bootstrap.py has been used instead (@gegenschall). * #38 Documentation: Use of json.dumps() requires ast.asjson() (@davidchen). -- Juancarlo *Aıez*