Tensorstore Based Backend for BFIO
Project Links
Meta
Author: Sameeul Bashir Samee
Requires Python: >=3.8
Classifiers
This is the new backend for bfio, using Tensorstore and other high-throughput IO library
Build Requirements
bfiocpp uses Tensorstore for reading and writing OME Tiff and OME Zarr files. So Tensorstore build requirements are needed to be satisfied for bfiocpp also.
For Linux, these are the requirements:
GCC10 or laterClang8 or laterPython3.8 or laterCMake3.24 or laterPerl, for building libaom from source (default). Must be inPATH. Not required if-DTENSORSTORE_USE_SYSTEM_LIBAOM=ONis specified.NASM, for building libjpeg-turbo, libaom, and dav1d from source (default). Must be inPATH.Not required if-DTENSORSTORE_USE_SYSTEM_{JPEG,LIBAOM,DAV1D}=ONis specified.GNU Patchor equivalent. Must be inPATH.
Since Tensorstore requires MACOSX_DEPLOYMENT_TARGET to be 10.14 or higher (to support sized/aligned operator new/delete.), bfiocpp needs the same.
Building and Installing
Here is an example of building and installing bfiocpp in a Python virtual environment.
python -m venv build_venv
source build_venv/bin/activate
git clone https://github.com/PolusAI/bfiocpp.git
cd bfiocpp
mkdir build_deps
cd build_deps
../ci-utils/install_prereq_linux.sh
cd ..
export BFIOCPP_DEP_DIR=./build_deps/local_install
python setup.py install -vv
0.4.0
Feb 06, 2026
0.3.3
Dec 02, 2025
0.3.2
Feb 04, 2025
0.3.1
Aug 27, 2024
0.3.0
Jul 18, 2024
0.2.3
Jun 28, 2024
0.2.2
Jun 12, 2024
0.2.1
Jun 12, 2024
0.2.0
May 28, 2024
0.1.0
Apr 15, 2024
Wheel compatibility matrix
| Platform | CPython 3.10 | CPython 3.11 | CPython 3.12 | CPython 3.13 |
|---|---|---|---|---|
| macosx_11_0_arm64 | ||||
| macosx_11_0_x86_64 | ||||
| manylinux_2_27_x86_64 | ||||
| manylinux_2_28_x86_64 | ||||
| win_amd64 |
Files in release
bfiocpp-0.4.0-cp310-cp310-macosx_11_0_arm64.whl (12.7MiB)
bfiocpp-0.4.0-cp310-cp310-macosx_11_0_x86_64.whl (15.2MiB)
bfiocpp-0.4.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (20.0MiB)
bfiocpp-0.4.0-cp310-cp310-win_amd64.whl (15.4MiB)
bfiocpp-0.4.0-cp311-cp311-macosx_11_0_arm64.whl (12.7MiB)
bfiocpp-0.4.0-cp311-cp311-macosx_11_0_x86_64.whl (15.2MiB)
bfiocpp-0.4.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (20.0MiB)
bfiocpp-0.4.0-cp311-cp311-win_amd64.whl (15.4MiB)
bfiocpp-0.4.0-cp312-cp312-macosx_11_0_arm64.whl (12.7MiB)
bfiocpp-0.4.0-cp312-cp312-macosx_11_0_x86_64.whl (15.2MiB)
bfiocpp-0.4.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (20.0MiB)
bfiocpp-0.4.0-cp312-cp312-win_amd64.whl (15.4MiB)
bfiocpp-0.4.0-cp313-cp313-macosx_11_0_arm64.whl (12.7MiB)
bfiocpp-0.4.0-cp313-cp313-macosx_11_0_x86_64.whl (15.2MiB)
bfiocpp-0.4.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (20.0MiB)
bfiocpp-0.4.0-cp313-cp313-win_amd64.whl (15.4MiB)
Extras:
None
Dependencies:
numpy