./devel/py-cparser, C parser in Python

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ]


Branch: CURRENT, Version: 3.0, Package name: py313-cparser-3.0, Maintainer: pkgsrc-users

pycparser is a parser for the C language, written in pure Python.
It is a module designed to be easily integrated into applications
that need to parse C source code.


Required to run:
[devel/py-setuptools] [lang/python37]

Required to build:
[pkgtools/cwrappers]

Master sites:

Filesize: 101.066 KB

Version history: (Expand)


CVS history: (Expand)


   2026-01-26 00:11:06 by Thomas Klausner | Files touched by this commit (3) | Package updated
Log message:
py-cparser: update to 3.0.

    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 #581
    Update _ast_gen.py to be in sync with c_ast.py by @simonlindholm in #582
   2025-09-21 17:35:47 by Thomas Klausner | Files touched by this commit (2) | Package updated
Log message:
py-cparser: update to 2.23.

    Allow abstract declarator "static" (GH issue #539) by @gperciva in #545
    Add support for Python 3.13 by @hugovk in #550
    Add dirent and socket typedefs. by @MegaManSec in #558
    Support for labels with no statement by @ignatirabo in #562
    Accept empty 'case' or 'default' labels by @ignatirabo in #564
    fix: preserve parentheses for statement exprs by @zawan-ila in #566
    fix: hex float types by @zawan-ila in #567
    Explicit error for comments, with README link by @cellularmitosis in #569
    showemptyattrs option on Node.show() by @cellularmitosis in #570
    Add fake typedefs for GNU Extension 128-bit integers. by @dj-wednesday in #577
    Typedef for __kernel_sa_family_t in linux/socket.h by @crosser in #578
   2025-04-12 12:02:37 by Adam Ciarcinski | Files touched by this commit (9) | Package updated
Log message:
Fix PLIST after py-setuptools update; bump depends and revision
   2024-11-11 08:29:31 by Thomas Klausner | Files touched by this commit (862)
Log message:
py-*: remove unused tool dependency

py-setuptools includes the py-wheel functionality nowadays
   2024-05-05 22:25:53 by Thomas Klausner | Files touched by this commit (2)
Log message:
py-cparser: convert to wheel.mk.

Bump PKGREVISION.
   2024-04-05 12:34:02 by Thomas Klausner | Files touched by this commit (2) | Package updated
Log message:
py-cparser: update to 2.22.

What's Changed

    Add missing SCHAR limit defines by @matamegger in #449
    Use proper SPDX identifier by @Shortfinga in #474
    Add Python 3.11 as a supported version by @erlend-aasland in #469
    Fix multi-pragma/single statement blocks (#479) by @ldore in #480
    Add an encoding parameter to parse_file by @jordr in #486
    Feature/add pragma support by @jordr in #487
    Set up permissions to ci.yml by @joycebrum in #492
    _build_tables: Invalidate cache before importing generated modules by \ 
@mgorny in #494
    Upgrade GitHub Actions by @cclauss in #500
    Create a Security Policy by @joycebrum in #499
    New example to generate AST from scratch by @Andree37 in #507
    Add support for Python 3.12 by @hugovk in #515
    ply: Make generated lextab.py deterministic by @jackrosenthal in #531
   2022-01-04 21:55:40 by Thomas Klausner | Files touched by this commit (1595)
Log message:
*: bump PKGREVISION for egg.mk users

They now have a tool dependency on py-setuptools instead of a DEPENDS
   2021-12-14 09:56:07 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-cparser: updated to 2.21

Version 2.21
- Much improved support for C11 (multiple PRs)
- Support for parehthesized compount statements
- Support for modern Python versions (3.9 and 3.10)
- Fix support for structs with nested enums
- Multiple small bug fixes