-
Notifications
You must be signed in to change notification settings - Fork 0
Build from Source
numba-cfunc-compiler is written in Python. While prebuilt wheels are provided for end users, it is also straightforward to build numba-cfunc-compiler from either the Python source distribution or the GitHub repository.
As a convenience, numba-cfunc-compiler uses a Makefile for commonly used commands. You can print the main available commands by running make with no arguments
> make
build build the library
clean clean the repository
fix run autofixers
install install library
lint run lints
test run the testsnumba-cfunc-compiler has a few system-level dependencies which you can install from your machine package manager. Other package managers like conda, nix, etc, should also work fine.
Clone the repo with:
git clone https://github.com/Point72/numba-cfunc-compiler.git
cd numba-cfunc-compilerPython build and develop dependencies are specified in the pyproject.toml, but you can manually install them:
make requirementsNote that these dependencies would otherwise be installed normally as part of PEP517 / PEP518.
Build the python project in the usual manner:
make buildnumba-cfunc-compiler has linting and auto formatting.
| Language | Linter | Autoformatter | Description |
|---|---|---|---|
| Python | ruff |
ruff |
Style |
| C++ | clang-format |
clang-format |
Style |
| Markdown | mdformat |
mdformat |
Style |
| Markdown | codespell |
Spelling |
Python Linting
make lint-pyPython Autoformatting
make fix-pyC++ Linting
make lint-cppC++ Autoformatting
make fix-cppDocumentation Linting
make lint-docsDocumentation Autoformatting
make fix-docsnumba-cfunc-compiler has extensive Python tests. The tests can be run via pytest. First, install the Python development dependencies with
make developPython
make testThis wiki is autogenerated. To made updates, open a PR against the original source file in docs/wiki.