| + Version 2.09 (??) |
| |
| - pycparser now carries its PLY dependency along. The pycparser/ply directory |
| contains the source of PLY for the currently supported version. This makes |
| distribution and testing easier. |
| - The pycparser project has moved to Bitbucket. |
| |
| + Version 2.08 (10.08.2012) |
| |
| - Issue 73: initial support for #pragma directives. Consume them without |
| errors and ignore (no tokens are returned). Line numbers are preserved. |
| - Issue 68: more correct handling of source files without any actual content. |
| - Issue 69: running all tests will now set appropriate return code. |
| - Better error reporting in case where multiple type specifiers are provided. |
| Also fixes Issue 60. |
| - Issue 63: line endings cleanup for consistent LF ending. |
| - Issues 64 & 65: added some more headers and typedefs to fake includes. |
| - Refactoring the cpp invocation in parse_file into a separate function, which |
| can also be used as a utility. |
| - Issue 74: some Windows include paths were handled incorrectly. |
| |
| + Version 2.07 (16.06.2012) |
| |
| - Issue 54: added an optional parser argument to parse_file |
| - Issue 59: added some more fake headers for C99 |
| - Issue 62: correct coord for Ellipsis nodes |
| - Issue 57: support for C99 hexadecimal float constants |
| - Made running tests that call on 'cpp' a bit more robust. |
| |
| + Version 2.06 (04.02.2012) |
| |
| - Issue 48: gracefully handle parsing of empty files |
| - Issues 49 & 50: handle more escaped chars in paths to #line - "..\..\test.h". |
| - Support for C99 _Complex type. |
| - CGenerator moves from examples/ to pycparser/ as a first-class citizen, and |
| added some fixes to it. examples/c-to-c.py still stays as a convenience |
| wrapper. |
| - Fix problem with parsing a file in which the first statement is just a |
| semicolon. |
| - Improved the AST created for switch statements, making it closer to the |
| semantic meaning than to the grammar. |
| |
| + Version 2.05 (16.10.2011) |
| |
| - Added support for the C99 ``_Bool`` type and ``stdbool.h`` header file |
| - Expanded ``examples/explore_ast.py`` with more details on working with the |
| AST |
| - Relaxed the rules on parsing unnamed struct members (helps parse ``windows.h``) |
| - Bug fixes: |
| |
| * Fixed spacing issue for some type declarations |
| * Issue 47: display empty statements (lone ';') correctly after parsing |
| |
| + Version 2.04 (21.05.2011) |
| |
| - License changed from LGPL to BSD |
| - Bug fixes: |
| |
| * Issue 31: constraining the scope of typedef definitions |
| * Issues 33, 35: fixes for the c-to-c.py example |
| |
| - Added C99 integer types to fake headers |
| - Added unit tests for the c-to-c.py example |
| |
| + Version 2.03 (06.03.2011) |
| |
| - Bug fixes: |
| |
| * Issue 17: empty file-level declarations |
| * Issue 18: empty statements and declarations in functions |
| * Issue 19: anonymous structs & union fields |
| * Issue 23: fix coordinates of Cast nodes |
| |
| - New example added (``examples/c-to-c.py``) for translating ASTs generated by ``pycparser`` back into C code. |
| - ``pycparser`` is now on PyPI (Python Package Index) |
| - Created `FAQ <http://code.google.com/p/pycparser/wiki/FAQ>`_ on the ``pycparser`` project page |
| - Removed support for Python 2.5. ``pycparser`` supports Python 2 from 2.6 and on, and Python 3. |
| |
| + Version 2.02 (10.12.2010) |
| |
| * The name of a ``NamedInitializer`` node was turned into a sequence of nodes |
| instead of an attribute, to make it discoverable by the AST node visitor. |
| * Documentation updates |
| |
| + Version 2.01 (04.12.2010) |
| |
| * Removed dependency on YAML. Parsing of the AST node configuration file is done with a simple parser. |
| * Fixed issue 12: installation problems |
| |
| + Version 2.00 (31.10.2010) |
| |
| * Support for C99 (read `this wiki page <http://code.google.com/p/pycparser/wiki/C99support>`_ for more information). |
| |
| + Version 1.08 (09.10.2010) |
| |
| * Bug fixes: |
| |
| + Correct handling of ``do{} ... while`` statements in some cases |
| + Issues 6 & 7: Concatenation of string literals |
| + Issue 9: Support for unnamed bitfields in structs |
| |
| + Version 1.07 (18.05.2010) |
| |
| * Python 3.1 compatibility: ``pycparser`` was modified to run on Python 3.1 as well as 2.6 |
| |
| + Version 1.06 (10.04.2010) |
| |
| * Bug fixes: |
| |
| + coord not propagated to FuncCall nodes |
| + lexing of the ^= token (XOREQUALS) |
| + parsing failed on some abstract declarator rules |
| |
| * Linux compatibility: fixed end-of-line and ``cpp`` path issues to allow all tests and examples run on Linux |
| |
| |
| + Version 1.05 (16.10.2009) |
| |
| * Fixed the ``parse_file`` auxiliary function to handle multiple arguments to ``cpp`` correctly |
| |
| + Version 1.04 (22.05.2009) |
| |
| * Added the ``fake_libc_include`` directory to allow parsing of C code that uses standard C library include files without dependency on a real C library. |
| * Tested with Python 2.6 and PLY 3.2 |
| |
| + Version 1.03 (31.01.2009) |
| |
| * Accept enumeration lists with a comma after the last item (C99 feature). |
| |
| + Version 1.02 (16.01.2009) |
| |
| * Fixed problem of parsing struct/enum/union names that were named similarly to previously defined ``typedef`` types. |
| |
| + Version 1.01 (09.01.2009) |
| |
| * Fixed subprocess invocation in the helper function parse_file - now it's more portable |
| |
| + Version 1.0 (15.11.2008) |
| |
| * Initial release |
| * Support for ANSI C89 |
| |
| |
| |
| |