Skip to content

BiocPy/assorthead

Repository files navigation

PyPI-Server Unit tests

Assorted C++ headers

assorthead vendors an assortment of header-only C++ libraries for compilation of downstream packages. This centralizes the acquisition and versioning of these libraries for a smoother development experience. Downstream dependencies include mattress, knncolle, scranpy and singler, to name a few.

Developers can install assorthead via the usual pip commands:

pip install assorthead

We add all headers to the compiler's search path using the include_dirs argument in the setup() command in our setup.py:

setup(
    use_scm_version={"version_scheme": "no-guess-dev"},
    ext_modules=[
        Extension(
            "foo.core",
            [
                "src/lib/foo.cpp",
                "src/lib/bar.cpp",
            ],
            include_dirs=[
                assorthead.includes(),
            ],
            language="c++",
            extra_compile_args=[
                "-std=c++17",
            ],
        )
    ],
)

See extern/manifest.csv for the list of vendored libraries and their versions. Licenses are available in the directory returned by the licenses() function.

About

Assorted C++ headers, vendored into a Python package.

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Languages