Skip to main content

CythonBuilder; automated compiling and packaging of Cython code

Project description

CythonBuilder

CythonBuilder; automated compiling and packaging of Cython code

PythonVersion Version PyPiStatus Downloads Badge

Installation

pip install cythonbuilder

How to use

CythonBuilder makes it easy to use Cython in your Python project by automating the compilation, building and packaging process. You can use CythonBuilder from the commandline or import it as a package in Python.

Commandline Demonstration:

  1. Initialize
    In your project directory, call cybuilder init. This creates the /ext folder.

  2. Organize
    Place all of your Cython files in /ext/pyxfiles

  3. Compile and package
    Simply call cybuilder build to build all Cythonfiles in /ext/pyxfiles. Alternatively call cybuilder build filename to package specific files (no .pyx needed)

  4. Import All packages en up in /ext so you can simply from ext import yourfilename.

Python demonstration

import cythonbuilder as cybuilder
cybuilder.init()
cybuilder.build(targetfilenames=["my_cy_package"])

from ext import my_cy_package

my_cy_package.some_function()

In-depth, step by step Explanation

I've written a few articles that explain why Python is slow, why we need Cython and how CythonBuilder helps us develop fast code easily:

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

cythonbuilder-0.0.8.tar.gz (7.8 kB view details)

Uploaded Source

File details

Details for the file cythonbuilder-0.0.8.tar.gz.

File metadata

  • Download URL: cythonbuilder-0.0.8.tar.gz
  • Upload date:
  • Size: 7.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.1

File hashes

Hashes for cythonbuilder-0.0.8.tar.gz
Algorithm Hash digest
SHA256 bfca0cbf873474811f3af462ec689653f593240e7b204860b5a1d2a160a863f1
MD5 691489cf78b410ae54bd350447bef093
BLAKE2b-256 a0e39d0f78928c04a441a122f96fa091626ab88f46c1c332403521aff0eef1cc

See more details on using hashes here.

Supported by

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