Skip to main content

Automatically generate Cython pxd files from C headers

Project description

python-autopxd2

A friendly fork of autopxd https://github.com/tarruda/python-autopxd

It generates .pxd files automatically from .h files.

Tested against:

  • Python 3.6
  • Python 3.7
  • Python 3.8
  • Python 3.9
  • PEP8

Test Lint

installation:

pip install autopxd2

usage:

Usage: autopxd [OPTIONS] [INFILE] [OUTFILE]

  Generate a Cython pxd file from a C header file.

Options:
  -v, --version                   Print program version and exit.
  -I, --include-dir <dir>         Allow the C preprocessor to search for files
                                  in <dir>.

  -D, --compiler-directive <directive>
                                  Additional directives for the C compiler.
  --debug / --no-debug            Dump preprocessor output to stderr.
  -h, --help                      Show this message and exit.

release history:

v2.1.1 - 2022-05-24

  • Add --regex for arbitrary conversions
  • Various other fixes and improvements from Mads Ynddal in #38

v2.0.4 - 2021-11-23

  • fix: Windows CRLF issue (#24)

v2.0.3 - 2021-10-08

  • fix: remove unnecessary importlib_resources from install_requires

v2.0.2 - 2021-10-07

v2.0.1 - 2021-10-06

  • Add --compiler-directive option to pass along to the compiler
  • Add some type annotations (nodes.py)
  • Drop support for Python 2
  • Add linting, format with black
  • Migrate from Travis CI to Github Actions

v1.1.0 - 2020-01-03

  • Support for OSX

roadmap:

  • Refactoring of the code DONE
  • Adding tests for PEP8 DONE
  • Uploading to PyPi DONE
  • Check that the generated code is correct by comparing it to the libc in Cython
  • More tests
  • Merge it into Cython so that the .pxd files aren't necessary anymore? Maybe.

Please raise an issue if the generated code isn't correct.

It's difficult to catch all the corner cases.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

autopxd2-2.1.1.tar.gz (58.5 kB view details)

Uploaded Source

Built Distribution

autopxd2-2.1.1-py3-none-any.whl (283.1 kB view details)

Uploaded Python 3

File details

Details for the file autopxd2-2.1.1.tar.gz.

File metadata

  • Download URL: autopxd2-2.1.1.tar.gz
  • Upload date:
  • Size: 58.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.10

File hashes

Hashes for autopxd2-2.1.1.tar.gz
Algorithm Hash digest
SHA256 56e6d1af6f2c8b6d8b51fa4a86897f3076760692a05585f673887de2d49b942c
MD5 24bf3e8fa3c09834e814e81c58157b01
BLAKE2b-256 257176cdcc8e59df05c447445605dd20c218f0c4003c1a294c111521cb06c197

See more details on using hashes here.

File details

Details for the file autopxd2-2.1.1-py3-none-any.whl.

File metadata

  • Download URL: autopxd2-2.1.1-py3-none-any.whl
  • Upload date:
  • Size: 283.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.10

File hashes

Hashes for autopxd2-2.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5de62eda43a1867de23836d41da5d0a5c025d8c2aa0c66fbd7235824f1345f76
MD5 e07ecfee1a2906196a3e9a216dfa79c8
BLAKE2b-256 2eeaf51692a4b021f6080e3a000aeb9a920c439bb2aff0284c67f45f6b4306e4

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page