# pycparser changelog > pycparser release notes. - Vendor: pycparser - Category: Frameworks & Libraries - Official site: https://github.com/eliben/pycparser - Tracked by: What's New (https://whatsnew.fyi/product/pycparser) - Harvested from: GitHub (eliben/pycparser) - Entries below: 3 (newest first) What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. ## Releases ### release_v3.00 - Date: 2026-01-21 - Version: release_v3.00 - Original notes: https://github.com/eliben/pycparser/releases/tag/release_v3.00 - Permalink: https://whatsnew.fyi/product/pycparser/releases/release-v3.00 ##### What's Changed * Removed dependency on PLY, by rewriting pycparser to use a hand-written lexer and recursive-descent parser for C. No API changes / functionality changes intended - the same AST is produced. * Add support for Python 3.14 and drop EOL 3.8 by @hugovk in https://github.com/eliben/pycparser/pull/581 * Update _ast_gen.py to be in sync with c_ast.py by @simonlindholm in https://github.com/eliben/pycparser/pull/582 **Full Changelog**: https://github.com/eliben/pycparser/compare/release_v2.23...release_v3.00 ### release_v2.23 - Date: 2025-09-09 - Version: release_v2.23 - Original notes: https://github.com/eliben/pycparser/releases/tag/release_v2.23 - Permalink: https://whatsnew.fyi/product/pycparser/releases/release-v2.23 ##### What's Changed * Allow abstract declarator "static" (GH issue #539) by @gperciva in https://github.com/eliben/pycparser/pull/545 * Add support for Python 3.13 by @hugovk in https://github.com/eliben/pycparser/pull/550 * Add dirent and socket typedefs. by @MegaManSec in https://github.com/eliben/pycparser/pull/558 * Support for labels with no statement by @ignatirabo in https://github.com/eliben/pycparser/pull/562 * Accept empty 'case' or 'default' labels by @ignatirabo in https://github.com/eliben/pycparser/pull/564 * fix: preserve parentheses for statement exprs by @zawan-ila in https://github.com/eliben/pycparser/pull/566 * fix: hex float types by @zawan-ila in https://github.com/eliben/pycparser/pull/567 * Explicit error for comments, with README link by @cellularmitosis in https://github.com/eliben/pycparser/pull/569 * showemptyattrs option on Node.show() by @cellularmitosis in https://github.com/eliben/pycparser/pull/570 * Add fake typedefs for GNU Extension 128-bit integers. by @dj-wednesday in https://github.com/eliben/pycparser/pull/577 * Typedef for __kernel_sa_family_t in linux/socket.h by @crosser in https://github.com/eliben/pycparser/pull/578 ##### New Contributors * @gperciva made their first contribution in https://github.com/eliben/pycparser/pull/545 * @MegaManSec made their first contribution in https://github.com/eliben/pycparser/pull/558 * @ignatirabo made their first contribution in https://github.com/eliben/pycparser/pull/562 * @zawan-ila made their first contribution in https://github.com/eliben/pycparser/pull/566 * @cellularmitosis made their first contribution in https://github.com/eliben/pycparser/pull/569 * @dj-wednesday made their first contribution in https://github.com/eliben/pycparser/pull/577 * @crosser made their first contribution in https://github.com/eliben/pycparser/pull/578 **Full Changelog**: https://github.com/eliben/pycparser/compare/release_v2.22...release_v2.23 ### release_v2.22 - Date: 2024-03-30 - Version: release_v2.22 - Original notes: https://github.com/eliben/pycparser/releases/tag/release_v2.22 - Permalink: https://whatsnew.fyi/product/pycparser/releases/release-v2.22 ##### What's Changed * Add missing SCHAR limit defines by @matamegger in https://github.com/eliben/pycparser/pull/449 * Use proper SPDX identifier by @Shortfinga in https://github.com/eliben/pycparser/pull/474 * Add Python 3.11 as a supported version by @erlend-aasland in https://github.com/eliben/pycparser/pull/469 * Fix multi-pragma/single statement blocks (#479) by @ldore in https://github.com/eliben/pycparser/pull/480 * Add an encoding parameter to parse_file by @jordr in https://github.com/eliben/pycparser/pull/486 * Feature/add pragma support by @jordr in https://github.com/eliben/pycparser/pull/487 * Set up permissions to ci.yml by @joycebrum in https://github.com/eliben/pycparser/pull/492 * _build_tables: Invalidate cache before importing generated modules by @mgorny in https://github.com/eliben/pycparser/pull/494 * Upgrade GitHub Actions by @cclauss in https://github.com/eliben/pycparser/pull/500 * Create a Security Policy by @joycebrum in https://github.com/eliben/pycparser/pull/499 * New example to generate AST from scratch by @Andree37 in https://github.com/eliben/pycparser/pull/507 * Add support for Python 3.12 by @hugovk in https://github.com/eliben/pycparser/pull/515 * ply: Make generated lextab.py deterministic by @jackrosenthal in https://github.com/eliben/pycparser/pull/531 ##### New Contributors * @matamegger made their first contribution in https://github.com/eliben/pycparser/pull/449 * @Shortfinga made their first contribution in https://github.com/eliben/pycparser/pull/474 * @erlend-aasland made their first contribution in https://github.com/eliben/pycparser/pull/469 * @jordr made their first contribution in https://github.com/eliben/pycparser/pull/486 * @joycebrum made their first contribution in https://github.com/eliben/pycparser/pull/492 * @mgorny made their first contribution in https://github.com/eliben/pycparser/pull/494 * @cclauss made their first contribution in https://github.com/eliben/pycparser/pull/500 * @Andree37 made their first contribution in https://github.com/eliben/pycparser/pull/507 * @jackrosenthal made their first contribution in https://github.com/eliben/pycparser/pull/531 **Full Changelog**: https://github.com/eliben/pycparser/compare/release_v2.21...release_v2.22