FastCarto database bindings
Project description
fastdb
A C++ local database library with Python bindings (via SWIG). Designed as a fast, lightweight, and easy-to-use data communication layer for RPC and coupled modeling in scientific computing.
Core design goals:
- Zero-copy columnar access — field data is exposed directly as NumPy arrays backed by C++ memory, no serialization overhead
- Ref-graph support — Features can reference other Features across tables, forming typed object graphs
- Shared memory IPC — publish a database to POSIX/Windows shared memory and read it from other processes with zero-copy
- File persistence — save and load databases as compact binary files
What's new
- 2026-03-17 (Release 0.1.13): Fixed two C++ correctness bugs in the batch field read/write API: (1)
getFieldsAsDoublesnow correctly handles U8/U16/U32/I32 fields (previously returned NAN); (2)set_field_value_tnow correctly writes U16N normalized fields (missingmemcpycaused silent data loss). Also added batch scalar field API (read_all_scalars/write_all_scalars) with up to 12× speedup over per-field access. - 2026-03-04 (Release 0.1.12): Fixed a critical issue where loading large database files (> 2GB) on Linux/Unix systems would fail to read the complete file, leading to missing tables or data corruption. The file reading logic has been improved to correctly handle partial reads for large files. (PR #23)
- 2026-03-04 (Memory Overflow Improvement): Enhanced the
MemoryStreamimplementation to handle large data sizes exceeding 4GB without causing size overflow inchunk_data_t.size(u32). This improvement allows for more robust handling of large datasets in memory. (PR #22) - 2026-02-28 (Release Improvement): Fix bugs related to build process in Windows. (PR #20)
- 2025-12-31 (Bug Fix): Fixed an issue where shared memory segments were not being properly unregistered from the resource tracker upon closing, which could lead to resource leaks. (PR #17)
- 2025-12-15 (Release Improvement): Enabled distribution of pre-compiled binary wheels for macOS (Intel/Apple Silicon) and Linux (x86_64/aarch64), eliminating the need for local compilation tools during installation. (PR #15)
- 2025-12-10 (Bug Fix): Fixed the data type mapping for
U32fields in Python bindings to ensure correct representation as unsigned 32-bit integers in NumPy arrays. (PR #13) - 2025-12-10 (Bug Fix): Fixed an out-of-bounds access issue in
FastVectorDbLayer::Impl::getFieldOffset()when the field index is equal to the field count. (PR #12) - 2025-12-10 (Performance Improvement): Modified
ORM.truncate()to support directly allocating features without initializing them for performance consideration. Note that this change may have side effects; please test thoroughly. (PR #11)
Installation
pip install fastdb4py
Pre-compiled binary wheels are provided for major platforms (macOS Intel/Apple Silicon, Linux x86_64/aarch64, Windows AMD64). For other systems, the package builds from source and requires a C++ compiler, CMake, and SWIG.
Quick Start
import fastdb4py as fx
import numpy as np
# 1. Define schema
class Point(fx.Feature):
x: fx.F64
y: fx.F64
z: fx.F64
# 2. Create a fixed-size table and fill via NumPy (fastest path)
N = 10_000
db = fx.ORM.truncate([fx.TableDefn(Point, N)])
tbl = db[Point][Point]
tbl.column.x[:] = np.linspace(0, 1, N)
tbl.column.y[:] = np.zeros(N)
tbl.column.z[:] = np.ones(N)
# 3. Read back as NumPy arrays (zero-copy)
xs = tbl.column.x # numpy array backed by C++ memory
print(xs[:5])
# 4. Save and reload
db.save("my_data")
db2 = fx.ORM.load("my_data", from_file=True)
Field Types
| Python type | C++ storage | Description |
|---|---|---|
fx.U8 |
uint8_t |
Unsigned 8-bit integer |
fx.U16 |
uint16_t |
Unsigned 16-bit integer |
fx.U32 |
uint32_t |
Unsigned 32-bit integer |
fx.I32 |
int32_t |
Signed 32-bit integer |
fx.F32 |
float |
32-bit float |
fx.F64 |
double |
64-bit float |
fx.STR |
string table index | Short ASCII string |
fx.WSTR |
string table index | Unicode string |
fx.BYTES |
blob | Raw bytes / geometry chunk |
fx.U8N |
uint8_t |
Normalized float in [vmin, vmax], stored as u8 |
fx.U16N |
uint16_t |
Normalized float in [vmin, vmax], stored as u16 |
OtherFeature |
ref | Cross-table reference to another Feature |
Usage
Creating a Database
Fixed-size tables (ORM.truncate)
Use ORM.truncate when you know the number of rows up front. This pre-allocates the full table in one shot and enables the fastest columnar write path.
import fastdb4py as fx
import numpy as np
class Particle(fx.Feature):
x: fx.F64
y: fx.F64
vx: fx.F64
vy: fx.F64
mass: fx.F32
N = 100_000
db = fx.ORM.truncate([fx.TableDefn(Particle, N)])
tbl = db[Particle][Particle]
# Vectorized write — 1 memcpy per column, ~1000× faster than row-wise push
tbl.column.x[:] = np.random.uniform(-1, 1, N)
tbl.column.y[:] = np.random.uniform(-1, 1, N)
tbl.column.vx[:] = np.zeros(N)
tbl.column.vy[:] = np.zeros(N)
tbl.column.mass[:] = np.ones(N, dtype=np.float32)
Multiple tables with different schemas can be created in one call:
class Cell(fx.Feature):
id: fx.U32
temperature: fx.F64
db = fx.ORM.truncate([
fx.TableDefn(Particle, 50_000),
fx.TableDefn(Cell, 1_000),
])
Dynamic tables (ORM.create + push)
Use ORM.create when the number of rows is not known in advance.
import fastdb4py as fx
class LogEntry(fx.Feature):
level: fx.U8
code: fx.U32
message: fx.STR
db = fx.ORM.create()
db.push(LogEntry(level=1, code=200, message="ok"))
db.push(LogEntry(level=3, code=500, message="internal error"))
db._combine() # finalize: serialize + reload as immutable db
Reading Data
Columnar access (zero-copy NumPy)
The fastest read path. table.column.field_name returns a NumPy array that is a direct view of the underlying C++ memory — no copy, no allocation.
db = fx.ORM.load("my_data", from_file=True)
tbl = db[Particle][Particle]
xs = tbl.column.x # np.ndarray, dtype=float64, shape=(N,)
ys = tbl.column.y
# Vectorized operations in-place
xs += 0.01 * tbl.column.vx
ys += 0.01 * tbl.column.vy
# NumPy aggregations
print(f"Mean x: {xs.mean():.4f}")
print(f"Max speed: {np.sqrt(tbl.column.vx**2 + tbl.column.vy**2).max():.4f}")
Row-wise iteration
# Standard iterator — allocates a new Feature wrapper per row
for p in tbl:
print(f"x={p.x:.3f} y={p.y:.3f}")
# High-performance iterator — reuses the same wrapper (no per-row allocation)
# Do NOT hold references to the yielded object across loop iterations.
for p in tbl.iter_reuse():
print(f"x={p.x:.3f} y={p.y:.3f}")
Index access
first = tbl[0]
print(f"Particle 0: x={first.x}, mass={first.mass}")
Feature References (Object Graphs)
Features can store typed references to features in other tables. Assign a Feature instance to a ref field; cross-table links are resolved automatically on read.
import fastdb4py as fx
class Point(fx.Feature):
x: fx.F64
y: fx.F64
z: fx.F64
class Triangle(fx.Feature):
a: Point # ref field — links to a Point feature
b: Point
c: Point
db = fx.ORM.truncate([
fx.TableDefn(Point, 6),
fx.TableDefn(Triangle, 2, 'TriA'),
fx.TableDefn(Triangle, 2, 'TriB'),
])
points = db[Point][Point]
for i in range(6):
points[i].x = float(i)
points[i].y = float(i) * 0.5
points[i].z = 0.0
tri = db[Triangle]['TriA'][0]
tri.a = points[0]
tri.b = points[1]
tri.c = points[2]
# Read back — ref is resolved transparently
print(tri.a.x, tri.b.x, tri.c.x) # 0.0 1.0 2.0
File Persistence
# Save to disk
db.save("simulation_state")
# Load from disk
db = fx.ORM.load("simulation_state", from_file=True)
tbl = db[Particle][Particle]
# Access, modify, then save again
tbl.column.x[:] += 1.0
db.save("simulation_state")
Shared Memory IPC
Share a database across processes with zero-copy. The publisher writes once; all readers map the same physical memory.
# --- Process A: publisher ---
import fastdb4py as fx
class Signal(fx.Feature):
t: fx.F64
value: fx.F64
db = fx.ORM.create()
db.push(Signal(t=0.0, value=3.14))
db.push(Signal(t=0.1, value=2.71))
db.share("my_signals", close_after=True) # publish and release local handle
# --- Process B: reader (runs concurrently) ---
import fastdb4py as fx
class Signal(fx.Feature):
t: fx.F64
value: fx.F64
db = fx.ORM.load("my_signals") # load from shared memory
tbl = db[Signal][Signal]
for s in tbl:
print(f"t={s.t} value={s.value}")
db.unlink() # release shared memory segment when done
Batch Scalar Access
For db-mapped Features (e.g. from table[i] or table.iter_reuse()), you can read or write all scalar fields in a single C++ call instead of one SWIG call per field. This is especially useful in tight loops or when building custom row-processing kernels.
import numpy as np
class Point(fx.Feature):
x: fx.F64
y: fx.F64
z: fx.F64
# ... (db setup as above) ...
feat = tbl[0]
# Read all scalar fields into a float64 array (1 SWIG call)
out = np.empty(3, dtype=np.float64)
feat.read_all_scalars(out) # fills out in-place; returns out
# out[0] = x, out[1] = y, out[2] = z
# Write all scalar fields from a float64 array (1 SWIG call)
feat.write_all_scalars(np.array([1.0, 2.0, 3.0]))
Field order in the array follows the order they are declared in the Feature class.
Performance Notes
| Pattern | Throughput | Notes |
|---|---|---|
table.column.x[:] columnar read/write |
~100 ns for any N | Zero-copy NumPy view, 1 SWIG call |
Table.fill(field, array) |
~2 µs per column | 1 SWIG call + memcpy |
feature.read_all_scalars() |
~200 ns for 3 fields | 1 SWIG call for all scalar fields |
table.iter_reuse() row access |
~350 ns/row | Reuses Feature wrapper, no allocation |
for feat in table row access |
~1.2 µs/row | Allocates Feature wrapper per row |
feat.x single field read (db-mapped) |
~420 ns | 1 SWIG call |
Recommended patterns by use case:
- Bulk read/write of one field across all rows →
table.column.x(columnar, zero-copy) - Bulk fill all fields from arrays →
ORM.truncate+table.column.field[:] = array - Iterate and process all fields per row →
table.iter_reuse()+feat.read_all_scalars() - Sparse random access →
table[i].field
Development
This project uses DevContainer for the development environment. See .devcontainer/devcontainer.example.json for configuration details. Requires Docker/Podman and the VSCode DevContainer extension.
The py_utils.sh script handles common development tasks:
./py_utils.sh --clean # remove C++ build artifacts and SWIG-generated bindings
./py_utils.sh --build # build C++ core + Python bindings
./py_utils.sh --test # run Python unit tests
Build requirements: C++17 compiler, CMake >= 3.16, SWIG >= 4.0, NumPy.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file fastdb4py-0.1.13.tar.gz.
File metadata
- Download URL: fastdb4py-0.1.13.tar.gz
- Upload date:
- Size: 605.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
edb1244304636658090b6b48128600709d5bee8f98b8b65ecbd55eac7c28b401
|
|
| MD5 |
ae462ade3fc829fc5a15cfc57c258b00
|
|
| BLAKE2b-256 |
428663ecbf8c23b80d9032743416931ff7267f91f4f3917ce6811eb4ffed6471
|
File details
Details for the file fastdb4py-0.1.13-cp314-cp314-win_amd64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp314-cp314-win_amd64.whl
- Upload date:
- Size: 196.9 kB
- Tags: CPython 3.14, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3ea7c5013826e02973948d7cbb4b2c278e3ce32c4b479edb3362e6f12e59d49b
|
|
| MD5 |
49e38432c3955cdc97b160d0ad63311c
|
|
| BLAKE2b-256 |
9dd5f2427b7e0541c0290610e8c7a04414bdc641161ec98eb036a239c4ecac37
|
File details
Details for the file fastdb4py-0.1.13-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 628.0 kB
- Tags: CPython 3.14, manylinux: glibc 2.24+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4c95f1fe0bb1c9210d1af29080bdaad54d4d516eabadec1ef02c367787d033c5
|
|
| MD5 |
6362fb9ddf6dae1ffbb590126f80fcfd
|
|
| BLAKE2b-256 |
a6ba53bf4fdb86b0d10628f9bf3fee6099edde9321457d200be9b846fdc52b6d
|
File details
Details for the file fastdb4py-0.1.13-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 603.0 kB
- Tags: CPython 3.14, manylinux: glibc 2.24+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e93476a73fde629a09d5d695717374f14257c55394f5bc3369223c287f36a782
|
|
| MD5 |
392d7e32ffab5f835ce318114d881847
|
|
| BLAKE2b-256 |
a13ad07d24e45fb404b1e8ade0c460ffaf77db13e471c6dfea23469db677c728
|
File details
Details for the file fastdb4py-0.1.13-cp314-cp314-macosx_11_0_arm64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp314-cp314-macosx_11_0_arm64.whl
- Upload date:
- Size: 482.7 kB
- Tags: CPython 3.14, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8c67ac0c971c2ec6d0b23d97b94c9872e4eb82260fd33e7362a78d40d0c0f9cc
|
|
| MD5 |
b060b444783659d0bf69563cd2270b1f
|
|
| BLAKE2b-256 |
4c9a22453462daf24fc22876d31eec8f5f337db3595ae8c70aeb6becfece12b2
|
File details
Details for the file fastdb4py-0.1.13-cp314-cp314-macosx_10_15_x86_64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp314-cp314-macosx_10_15_x86_64.whl
- Upload date:
- Size: 536.6 kB
- Tags: CPython 3.14, macOS 10.15+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8be916b4775c7d7f31e5cd61628c63c665bbd26c5b2f05bd71f1c883f40a0196
|
|
| MD5 |
c417a9f47643933eb9cbf807e5d0baf5
|
|
| BLAKE2b-256 |
32ae0131511e00e388447ca984e410434c1dd8e04fdf2c09ef119c22d68c3a4a
|
File details
Details for the file fastdb4py-0.1.13-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 191.6 kB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f43e515b6735a5d1a8aa67bdbb3266062470e12c19b2b7fd00a4db34094a82fd
|
|
| MD5 |
4d7ccbb9fe1d8c64bca9548a4a37120f
|
|
| BLAKE2b-256 |
a464d30043d8b4bc1ade526acd6617103a76d87deac2174f9a5c641ecad9ea83
|
File details
Details for the file fastdb4py-0.1.13-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 627.8 kB
- Tags: CPython 3.13, manylinux: glibc 2.24+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b64caa7b6dc81e73bb2b5978d3f156bfc6bd27326c5b7de932018b9917c90fd2
|
|
| MD5 |
fbc428f6133ada2a95cd331d2ac232a5
|
|
| BLAKE2b-256 |
289bc1537951ceccfaf88e29200cad2a491855ccb8013f60ae4a83e60754ad85
|
File details
Details for the file fastdb4py-0.1.13-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 602.7 kB
- Tags: CPython 3.13, manylinux: glibc 2.24+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
26e8028e4cb98537624f606f331f6379accae3dcc5e47f112cfbc67cf3f21868
|
|
| MD5 |
5cb60ebe08b6a7664f4228d4f34e82df
|
|
| BLAKE2b-256 |
40d65dc97e0f010fa91aae498b1b74fc04b6f0536928eee5fd6584cd8edfe7b5
|
File details
Details for the file fastdb4py-0.1.13-cp313-cp313-macosx_11_0_arm64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp313-cp313-macosx_11_0_arm64.whl
- Upload date:
- Size: 482.5 kB
- Tags: CPython 3.13, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
490344523e2951581604eb54c023ab6dccb21a1347ef3410d3b5d16ee5811d40
|
|
| MD5 |
bbed2e0edcac55aa8795e3a34001786a
|
|
| BLAKE2b-256 |
0725b47471f54885efc8faff1481ef8994062e61b8ae27c6f4d64b99a2a2e48e
|
File details
Details for the file fastdb4py-0.1.13-cp313-cp313-macosx_10_13_x86_64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp313-cp313-macosx_10_13_x86_64.whl
- Upload date:
- Size: 535.9 kB
- Tags: CPython 3.13, macOS 10.13+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0c897d133bfe8fbc61f2418243e0dd02b730ade69260738bff03123c7e948303
|
|
| MD5 |
8f59c2dd1e9d73d50503d83363cfc72b
|
|
| BLAKE2b-256 |
4a1c2ace37285c97d3290687efe6cf4bddd54e55cd6a8816925f0b10fa1938ee
|
File details
Details for the file fastdb4py-0.1.13-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 192.2 kB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d18f9dd0c881e8486495206113832b1e215c17d9ad52e791d83de618d0cc073c
|
|
| MD5 |
7c4d17153cf30f2760df55e7bc5e71be
|
|
| BLAKE2b-256 |
6a30ab76e7f684a92e97fdb97f833f4fb7fa61ccf7f3b0265c2baee407a7827c
|
File details
Details for the file fastdb4py-0.1.13-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 628.3 kB
- Tags: CPython 3.12, manylinux: glibc 2.24+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
05e55e324d4ee6806296d316f75d8c0930eb9c0743c6f4473f861ab06fc363ad
|
|
| MD5 |
686092803f799d6f5bd718b2932c7b37
|
|
| BLAKE2b-256 |
95ada774712552729d0b73cf008d87845083cc56dd1eb1194d8d6bc11affd0f9
|
File details
Details for the file fastdb4py-0.1.13-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 603.0 kB
- Tags: CPython 3.12, manylinux: glibc 2.24+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0d1b90a14c526c75c1e5a7679fa569e1b5b6de3b98cdb039affa82b1f5d7112d
|
|
| MD5 |
b2bf941c689d1ddbca0f83f439a6b2c3
|
|
| BLAKE2b-256 |
11e5a2ed2fbf9a37849ac351bdc35d56de6f7cd9b4a956f238044f4d4e35b0ea
|
File details
Details for the file fastdb4py-0.1.13-cp312-cp312-macosx_11_0_arm64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 483.1 kB
- Tags: CPython 3.12, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f0689f96eb624b87a4e6abbdb1b3a0ec9bf6b6115a3e4fd21d2a72e5ba12ebcb
|
|
| MD5 |
b3aedb61fba9544231fab664b99796f6
|
|
| BLAKE2b-256 |
76d6eb82252ba4ebf6043cde20bc6adbe529de398e56653c1d9a9705bfd6f777
|
File details
Details for the file fastdb4py-0.1.13-cp312-cp312-macosx_10_13_x86_64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp312-cp312-macosx_10_13_x86_64.whl
- Upload date:
- Size: 536.5 kB
- Tags: CPython 3.12, macOS 10.13+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2d85b9527a7335454a57c450a5125deb1a56bfce428dfa51be5a071f1dfc31c2
|
|
| MD5 |
50439db53451196bec167463b0c46753
|
|
| BLAKE2b-256 |
172bc9f59944f4526e377445f87126ba721532228f5aaf753aab079bb2f08ae6
|
File details
Details for the file fastdb4py-0.1.13-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 191.2 kB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
90a23c5e6342863acc05f85c3392413d598f0593c74461220e28539676b779ff
|
|
| MD5 |
c3908b6eb3694861d19d1eb6e9382c19
|
|
| BLAKE2b-256 |
b9728fcd506588d73f4800a6cf300993b81582f58b24279e02c12ea694898447
|
File details
Details for the file fastdb4py-0.1.13-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 628.5 kB
- Tags: CPython 3.11, manylinux: glibc 2.24+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f03f45f8402432cfd2da357bbf0d15a885025e0dc46ce86a18fbf75c36f9a825
|
|
| MD5 |
6ad8cd74257f00d7f2ada944468b6ce2
|
|
| BLAKE2b-256 |
ee58bb208d27934150b9f98ca3b8e934515f4d5f9937f2fb4fc0eaace0de1eca
|
File details
Details for the file fastdb4py-0.1.13-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 603.0 kB
- Tags: CPython 3.11, manylinux: glibc 2.24+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7c05592fd0f73e5fc9c05fd05304a8a0a473fd8511f9dacd4ad160133c55cdf8
|
|
| MD5 |
74ab51fa272623c75f2594bf6723d926
|
|
| BLAKE2b-256 |
40001c9cdc52018e7b6b3755a8010c99eee3937e05d8507cc53ede833f25fe35
|
File details
Details for the file fastdb4py-0.1.13-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 482.8 kB
- Tags: CPython 3.11, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
24967a7e5733c7dec4cd30ed9e13a9037eb3879eb2c9fd15f6ca025cbb7fe4b0
|
|
| MD5 |
93568a451a7ac06da7cd2f90a98af62d
|
|
| BLAKE2b-256 |
d32712b8d84bfeeef010390e61a0a1a62bec6a4ea953c8feb3a53de1480c9268
|
File details
Details for the file fastdb4py-0.1.13-cp311-cp311-macosx_10_9_x86_64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp311-cp311-macosx_10_9_x86_64.whl
- Upload date:
- Size: 537.0 kB
- Tags: CPython 3.11, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a06c150106075efb97d7f8f9111a859b4c0a31401e75c5d81b637ae8c8e3e52d
|
|
| MD5 |
b9ed119b9be5316f75f7c363c187eda1
|
|
| BLAKE2b-256 |
53c7749fad39ac928c34e2bad5b3d67be28dd3459d254bc717f0b619fa04ebf1
|
File details
Details for the file fastdb4py-0.1.13-cp310-cp310-win_amd64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp310-cp310-win_amd64.whl
- Upload date:
- Size: 190.9 kB
- Tags: CPython 3.10, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
482a76af8bc9e0d65fcd76e9c9e3cb07b73269fd6ece3f4592b525655c8287c9
|
|
| MD5 |
08b1cf4818dfbce6d94735fba74598c5
|
|
| BLAKE2b-256 |
07b04ed666a21098ceef00bc3c72e382fb22a3450b4f3aa03849865ddf5dd229
|
File details
Details for the file fastdb4py-0.1.13-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 628.4 kB
- Tags: CPython 3.10, manylinux: glibc 2.24+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5648d56b21d2033a46c8a92280c452be13b7c1bdd87d83725c1fe367b7a2ce2d
|
|
| MD5 |
737bede64151f596f9064f55d18c145d
|
|
| BLAKE2b-256 |
2e40278d6c18d9c788fba32ac25ad18d8651f1344729b90629de5aedc71468b8
|
File details
Details for the file fastdb4py-0.1.13-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 603.0 kB
- Tags: CPython 3.10, manylinux: glibc 2.24+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
53794d23db325be29ad7266c546980d452737ccdced15a654b35756cf7b36cd7
|
|
| MD5 |
fd72d32a99166cc8ad683385acec919d
|
|
| BLAKE2b-256 |
c6d501fd72aff7c2b1b8e3d996ad89c7e4c387e954139be9c5c602b7a8043a0e
|
File details
Details for the file fastdb4py-0.1.13-cp310-cp310-macosx_11_0_arm64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp310-cp310-macosx_11_0_arm64.whl
- Upload date:
- Size: 482.8 kB
- Tags: CPython 3.10, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e4b54fb4c68a11b83653041db9d59ce9d82ee3dfd260adf9f44b10d62a5d0dac
|
|
| MD5 |
efeb942b0e12991a0078f3130f56c545
|
|
| BLAKE2b-256 |
7403557a9396ac94fa3ece340e3ffb877b2cc819f516daa461e972d82c7ed934
|
File details
Details for the file fastdb4py-0.1.13-cp310-cp310-macosx_10_9_x86_64.whl.
File metadata
- Download URL: fastdb4py-0.1.13-cp310-cp310-macosx_10_9_x86_64.whl
- Upload date:
- Size: 537.0 kB
- Tags: CPython 3.10, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9e607b2ebec6672b40412ff9e157831da066c9f630f495166e4b3580e9a8ec5b
|
|
| MD5 |
afe4ed5a1896101713ccb171b34eeecc
|
|
| BLAKE2b-256 |
994930b35de98e4bdb58fac1c238f6e9ddadf35a95c1ed44e5e0c7d0340538f0
|