Guitheg / cythonbuilder

CythonBuilder; automated compilation of Cython code

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CythonBuilder

CythonBuilder; automated compiling and packaging of Cython code

Version version
Package PythonVersion Platform License implementation
Status status DependencyStatus
Stats DownloadsCount
Social tweet twitterfollow

Installation

pip install cythonbuilder

How to use

CythonBuilder makes it easy to use Cython in your Python project by automating the building process. You can use CythonBuilder from the commandline or import it as a package in Python. Generated files can be imported in Python directly

With Commandline

Add -v (verbose) for more information

  1. Listing files with and without filter
cybuilder list
cybuilder list file1 file2.pyx
  1. Build with and without optional build arguments
cybuilder build
cybuilder build --include-numpy --no-annotation --no-cleanup
  1. Clean
cybuilder clean 
cybuilder clean --no-cleanup

With python

  1. Listing files with and without filter
import cythonbuilder as cybuilder

print(cybuilder.cy_list())                                  # without a filter
print(cybuilder.cy_list(target_files=['some_name.pyx']))    # with a filter
  1. Build with and without optional build arguments (cleans automatically afterwards)
import cythonbuilder as cybuilder

cybuilder.cy_build()

found_files = cybuilder.cy_build(target_files=['some_name'])
cybuilder.cy_build(target_files=found_files, include_numpy=False, create_annotations=False)
  1. Clean
import cythonbuilder as cybuilder

cybuilder.cy_clean()

found_files = cybuilder.cy_build(target_files=['some_name'])
cybuilder.cy_clean(target_files=['some_name'])
  1. Setting debug level for verbose logging
from cythonbuilder import logger
from cythonbuilder import set_logger_debug_mode

set_logger_debug_mode(logger=logger)

In-depth, step by step Explanation

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

About

CythonBuilder; automated compilation of Cython code

License:MIT License


Languages

Language:HTML 87.0%Language:Python 13.0%