Skip to main content

GlobalBuffer

Cross-platform, cross-process named shared-memory buffer for Python.

import global_buffer as gb

A writer publishes samples by name; any process on the same host attaches by name and reads — either the newest sample or every sample in order, by blocking call or background callback. Built for streams that mix high frequency (e.g. 200 Hz numeric arrays) and low frequency (e.g. 1 Hz structured status messages) without burning CPU on either end.

It fills the gap between multiprocessing.shared_memory (too low-level), UltraDict (dated, pickle-based), and iceoryx2/eCAL (heavy native installs): a pip-installable, pydantic-native, callback-driven buffer with a clean API and a lock-free Cython hot path.

Status

v1.1.3. Core is stable and covered by 76 tests (including a cross-process no-torn-reads stress test), verified on macOS / CPython 3.14. Linux, Windows and aarch64 (Jetson) are supported and wheels are configured, with broad CI verification on those platforms in progress. See CHANGELOG.md for known limitations.

Features

  • Two stream kinds, one API
    • Array streams — fixed dtype + shape numpy data, written and read zero-copy.
    • Message streams — pydantic models use msgspec (msgpack), while protobuf schemas use native protobuf serialization on the wire.
  • Last-value or in-order reads — latest() jumps to the newest sample; next() consumes every sample in order and reports overruns if a reader falls behind.
  • Lock-free, tear-free — single-writer / multi-reader ring with a spare slot (capacity + 1) plus a per-slot seqlock implemented with C11 atomics. No torn reads even at high rate.
  • Near-0-CPU wakeups — readers block on an adaptive poll of the shared commit counter; idle readers cost roughly one atomic load every couple of milliseconds.
  • Cross-platform — Linux, macOS, Windows; ships as compiled wheels.

Install

pip install global_buffer

Wheels are published for CPython 3.9–3.13 on manylinux x86_64 / aarch64, macOS (x86_64 + arm64) and Windows amd64. A source build needs a C11 compiler.

Quickstart

Array stream (200 Hz, zero-copy)

import global_buffer as gb
import numpy as np

# writer / owner
csi = gb.create(name="csi", schema=gb.ArraySpec(dtype="complex64", shape=(64, 4)),
                capacity=8)

with csi.reserve() as slot:      # slot is an ndarray view directly into shm
    slot[:] = frame              # fill in place — no copy
# or: csi.write(frame)           # single-memcpy convenience form

# reader (any other process)
r = gb.attach("csi")             # schema discovered from the segment
frame = r.latest()               # newest committed sample
r.on_data(lambda sample, seq: process(sample), mode="latest")  # bg thread

Message stream (1 Hz, pydantic)

import pydantic, global_buffer as gb

class Status(pydantic.BaseModel):
    gain: float
    cam_on: bool

status = gb.create(name="status", schema=Status, capacity=4, max_bytes=512)
status.write(Status(gain=1.2, cam_on=True))

rs = gb.attach("status", model=Status)   # schema mismatch -> raises on attach
msg = rs.next(timeout=1.0)               # -> validated Status instance

Protobuf message classes are also accepted as schemas. They use protobuf's native binary serializer without a dict conversion:

from my_proto_pb2 import Status

status = gb.create(name="status", schema=Status, capacity=4, max_bytes=512)
status.write(Status(gain=1.2, cam_on=True))
reader = gb.attach("status", model=Status)
msg = reader.next(timeout=1.0)

For a protobuf stream, attaching without model= returns serialized bytes; pass the generated message class to decode directly into a protobuf object.

OO consumer

class CsiConsumer(gb.Consumer):
    def callback(self):                  # framework sets self.data / self.seq
        self.processed = heavy_process(self.data)

ob = CsiConsumer.attach("csi", mode="latest")
ob.start()
...
ob.stop()

Semantics

  • capacity is the number of logical slots; the core allocates capacity + 1 so the writer never overwrites the slot a reader could currently be reading.
  • A reader created with attach() starts at the newest sample present at attach time.
  • latest() returns None on an empty buffer. next(timeout=...) raises gb.Empty on timeout; without a timeout it blocks.
  • next() accumulates reader.overruns when the writer laps the reader by more than capacity samples (the reader then jumps to the oldest still-available sample).
  • reader.writer_alive reflects the writer heartbeat (automatic stamps default to every 100 ms; a writer silent for >2 s reads as not alive).

Lifecycle

buf.close()    # detach this handle (segment stays alive)
buf.unlink()   # owner removes the segment
gb.unlink(name)  # remove a segment by name (e.g. clean up after a crash)

GlobalBuffer manages segment lifetime explicitly (it opts out of the multiprocessing resource_tracker where supported, Python 3.13+), so a reader exiting never unlinks the owner's segment.

Platform support

OS Segment Notification
Linux multiprocessing.shared_memory (POSIX shm) adaptive poll on commit counter
macOS multiprocessing.shared_memory (POSIX shm) adaptive poll on commit counter
Windows multiprocessing.shared_memory (mem-mapped) adaptive poll on commit counter

Verification status. Behaviour is verified on macOS today; the Linux/Windows CI matrix and aarch64 wheels are configured and will be exercised before those platforms are declared production-verified.

Note on notifications. The current release uses adaptive polling of the shared commit counter for wakeups — fully portable, reliable on all three OSes, and near-0 CPU when idle (the poll interval backs off to ~2 ms). A true 0-CPU kernel-blocking backend (Linux eventfd / process-shared pthread condvar, Windows named semaphore) fits behind the same interface and is planned once it can be verified per-OS in CI. POSIX named semaphores were evaluated and dropped: they behave unreliably on macOS.

Build from source

python -m pip install -U pip setuptools wheel Cython numpy msgspec pydantic protobuf
python setup.py build_ext --inplace
PYTHONPATH=src python -c "import global_buffer as gb; print(gb.__version__)"

Performance and efficiency

The hot path keeps a persistent Cython binding to the shared-memory segment, avoiding repeated Python buffer-export setup. Writes also publish the writer heartbeat in the same bound operation. For high-rate array consumers, next_into() reuses caller-owned numpy storage and next_batch_into() drains multiple samples without allocating a bytes object per sample. The reader continues to use adaptive polling, so idle CPU stays low without adding a busy-spin phase.

Run the rate sweep on an otherwise idle machine:

PYTHONPATH=src python benchmarks/benchmark_hz.py \
  --rates 10 30 60 120 200 500 1000 --duration 2

For a 32 KiB int8 payload, use 32,768 elements:

PYTHONPATH=src python benchmarks/benchmark_hz.py \
  --dtype int8 --elements 32768 \
  --rates 10 30 60 120 200 500 1000 --duration 2

The benchmark reports requested rate, achieved write/read rate, callback overruns, combined process CPU percentage, and CPU microseconds per written sample. It uses one writer and one callback reader in the same process; use it for relative comparisons on the same machine, not as a cross-machine score.

On the Windows CPython 3.14 development machine, a 64-float32 sample sweep completed without overruns through 1000 Hz. The optimized path measured about 0.76 microseconds per write at the median of repeated 20,000-sample runs, versus about 0.83 microseconds for the upstream revision; read cost stayed near 1.2 microseconds per latest() call.

Representative 2-second sweep (capacity=256, one callback reader):

Target Write rate Read rate Overruns Combined CPU
10 Hz 10.0 Hz 10.0 Hz 0 0.78%
30 Hz 30.0 Hz 30.0 Hz 0 1.56%
60 Hz 60.5 Hz 60.0 Hz 0 3.15%
120 Hz 120.0 Hz 120.0 Hz 0 2.34%
200 Hz 200.5 Hz 200.0 Hz 0 2.35%
500 Hz 499.8 Hz 499.8 Hz 0 2.34%
1000 Hz 1000.4 Hz 999.9 Hz 0 9.38%

These numbers are machine- and scheduler-dependent; rerun the command above for production hardware and payload sizes.

32 KiB int8 sweep on the same machine:

Target Write rate Read rate Overruns Combined CPU
10 Hz 10.0 Hz 10.0 Hz 0 1.56%
30 Hz 30.0 Hz 30.0 Hz 0 3.12%
60 Hz 60.5 Hz 60.0 Hz 0 0.79%
120 Hz 120.0 Hz 120.0 Hz 0 1.56%
200 Hz 200.5 Hz 200.0 Hz 0 4.70%
500 Hz 499.9 Hz 499.9 Hz 0 8.59%
1000 Hz 1000.3 Hz 999.8 Hz 0 14.07%

At 1000 Hz this is 32.768 MB/s of payload in each direction; the benchmark still delivered 1,999 of 2,000 callbacks with zero ring overruns.

The allocation-free API comparison at 1000 Hz for 5 seconds was:

Reader API Delivered Overruns Combined CPU
next() 4,999 / 5,000 0 12.50%
next_into() 5,000 / 5,000 0 12.81%
next_batch_into() 5,000 / 5,000 0 13.75%
latest() 4,381 / 5,000 0 13.13%

For a paced stream with one sample available per wakeup, the 32 KiB memcpy dominates, so next_into() mainly removes per-sample allocation and makes latency/CPU more predictable. Batch reads help more when the writer publishes bursts; latest() intentionally skips intermediate frames.

Run the tests

PYTHONPATH=src python -m pytest tests -v                 # full suite
PYTHONPATH=src python -m pytest tests -m "not crossproc_slow"   # skip the long stress test

Or in Docker:

docker build -t globalbuffer . && docker run --rm globalbuffer
docker compose up   # two-process writer/reader demo

Jetson / aarch64

Wheels are built for manylinux aarch64. Atomics and process spawn behaviour can differ from x86; run the suite on the target device once as a smoke test.

Design

Full documentation is in docs/; design rationale and the on-disk segment layout are in docs/design.md.

License

MIT © 2026 Izzet Sezer

Metadata

Release files for global-buffer 1.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for global-buffer 1.1.3
File Size Uploaded
global_buffer-1.1.3.tar.gz 144.9 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for global-buffer 1.1.3
File
global_buffer-1.1.3-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
global_buffer-1.1.3-cp313-cp313-musllinux_1_2_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-64 Details
global_buffer-1.1.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64 Details
global_buffer-1.1.3-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
global_buffer-1.1.3-cp313-cp313-macosx_10_13_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.13+ x86-64 Details
global_buffer-1.1.3-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
global_buffer-1.1.3-cp312-cp312-musllinux_1_2_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-64 Details
global_buffer-1.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64 Details
global_buffer-1.1.3-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
global_buffer-1.1.3-cp312-cp312-macosx_10_13_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.13+ x86-64 Details
global_buffer-1.1.3-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
global_buffer-1.1.3-cp311-cp311-musllinux_1_2_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-64 Details
global_buffer-1.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64 Details
global_buffer-1.1.3-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
global_buffer-1.1.3-cp311-cp311-macosx_10_9_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.9+ x86-64 Details
global_buffer-1.1.3-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
global_buffer-1.1.3-cp310-cp310-musllinux_1_2_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ x86-64 Details
global_buffer-1.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64 Details
global_buffer-1.1.3-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
global_buffer-1.1.3-cp310-cp310-macosx_10_9_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.9+ x86-64 Details
global_buffer-1.1.3-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
global_buffer-1.1.3-cp39-cp39-musllinux_1_2_x86_64.whl CPython 3.9 CPython 3.9 Linux musl 1.2+ x86-64 Details
global_buffer-1.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ x86-64 Details
global_buffer-1.1.3-cp39-cp39-macosx_11_0_arm64.whl CPython 3.9 CPython 3.9 macOS 11.0+ ARM64 Details
global_buffer-1.1.3-cp39-cp39-macosx_10_9_x86_64.whl CPython 3.9 CPython 3.9 macOS 10.9+ x86-64 Details

Total release size: 7.6 MB

Release files / global_buffer-1.1.3.tar.gz

Download URL global_buffer-1.1.3.tar.gz
Size 144.9 kB
Tags Source
SHA-256 checksum
How to use checksums
9b648efa21658e26d3da650034fd35980f2219fd11ebbfa453be23c499663145
BLAKE2b-256 checksum
How to use checksums
16bdb1a4a1cc45fa6501470433f7e94c5b3283bb582dd4188681b029aa989618
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp313-cp313-win_amd64.whl

Download URL global_buffer-1.1.3-cp313-cp313-win_amd64.whl
Size 184.6 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
9d414fe16ecb4092a50d16104e6e07bab4e891cf92a8e1e5ef8a9c8e5b103604
BLAKE2b-256 checksum
How to use checksums
759afe18f3c642253f5d129783cec637c28dbcdc46aacf85729d1beef1465cb9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp313-cp313-musllinux_1_2_x86_64.whl

Download URL global_buffer-1.1.3-cp313-cp313-musllinux_1_2_x86_64.whl
Size 461.1 kB
Tags CPython 3.13 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
d9d0fcae4c55a792d93c7cd41926273dc735a185dbb0121e14704fd90add093e
BLAKE2b-256 checksum
How to use checksums
3ed72c251d3c4c0aa39b37b57a554bf8f561576123b87bba24da378cbb8b7868
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL global_buffer-1.1.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 457.2 kB
Tags CPython 3.13 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
255e36c42c99007fc7610cb5d2207e04ca7ede22c502df23c039594e389dea4d
BLAKE2b-256 checksum
How to use checksums
3a9b2c933066bbc234557c74fb5a0731dfb43bb89dfd6042fd99da5f9dda5489
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp313-cp313-macosx_11_0_arm64.whl

Download URL global_buffer-1.1.3-cp313-cp313-macosx_11_0_arm64.whl
Size 191.2 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
33d30ba051e3860f1dc56c0674b5daf7bd4f9925559bf6b612f4bb878b9a2e07
BLAKE2b-256 checksum
How to use checksums
d103a58154fdf9fddc3deb479e91b2afd12dd8843133528fb165ebfb1845f873
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp313-cp313-macosx_10_13_x86_64.whl

Download URL global_buffer-1.1.3-cp313-cp313-macosx_10_13_x86_64.whl
Size 193.6 kB
Tags CPython 3.13 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
ae39d1b8418c55a12fcc00aaeae559b1e1e975838446392d87b87d1310a7fd5d
BLAKE2b-256 checksum
How to use checksums
c06dcb10dc7563210ea3d820ae68f59995729f831751a8a01ddaa6398bd9e5a9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp312-cp312-win_amd64.whl

Download URL global_buffer-1.1.3-cp312-cp312-win_amd64.whl
Size 185.5 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
d4ac9fff59e5d6dcc0028a76375a51790b71749351a25a574e8896e03d46639a
BLAKE2b-256 checksum
How to use checksums
59c4d4dd1e329023ee244459eafc5aa137bafbe0d8805efce6a888b57ecb814e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp312-cp312-musllinux_1_2_x86_64.whl

Download URL global_buffer-1.1.3-cp312-cp312-musllinux_1_2_x86_64.whl
Size 465.9 kB
Tags CPython 3.12 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
cf921a09fb3f0dcf08dfcadd40327a1963e77cb0e1fd0ccc18879f1dcb66d044
BLAKE2b-256 checksum
How to use checksums
028529a09f2940f3c2d9212d112264a42fbfbe7d96a3eac00d16f297461ad0c7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL global_buffer-1.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 460.2 kB
Tags CPython 3.12 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
06efb46c409cf163da2d4e54fff14626ee6f24ca91a0fc8b21a24bce7e95f7f2
BLAKE2b-256 checksum
How to use checksums
018590fbf71271d6200593a70f9485c1e6700183570051dc54888065bfa39698
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp312-cp312-macosx_11_0_arm64.whl

Download URL global_buffer-1.1.3-cp312-cp312-macosx_11_0_arm64.whl
Size 191.9 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
a710ba4dad5bbd794ec9ada1e571cb406e6db21808673dfac0fe441fc3f06107
BLAKE2b-256 checksum
How to use checksums
1e3eea880709c1e6d70ac9f64769ad527e2ebbf32660373d72726ecea66f4078
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp312-cp312-macosx_10_13_x86_64.whl

Download URL global_buffer-1.1.3-cp312-cp312-macosx_10_13_x86_64.whl
Size 194.3 kB
Tags CPython 3.12 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
2e157af0d644953425b211bf8a6fbe027d436ce3aba77ce555ab4d0fae7fef62
BLAKE2b-256 checksum
How to use checksums
75972f07e80d5d44a52218d688303e056aa04aed5aee589ab9f53e05e5945117
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp311-cp311-win_amd64.whl

Download URL global_buffer-1.1.3-cp311-cp311-win_amd64.whl
Size 183.9 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
1518490ebfdbb61c36bd0285bae825df35347651698de7d8012a847acb7d9a0a
BLAKE2b-256 checksum
How to use checksums
b63df976e21109255f240ae26c41f91661553f0c04f450eeb95800b6223af847
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp311-cp311-musllinux_1_2_x86_64.whl

Download URL global_buffer-1.1.3-cp311-cp311-musllinux_1_2_x86_64.whl
Size 476.1 kB
Tags CPython 3.11 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
9425623f7052609deb4ca063fbef5c9303cc5df5e9fc955f72b52d146f95cc1c
BLAKE2b-256 checksum
How to use checksums
742c913b2f7b13dda8016ac451214c4a28c18cc07175c9cf8e25aa324bb9807a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL global_buffer-1.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 473.1 kB
Tags CPython 3.11 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
6dbe28ab30dca51d4315648aee067a6d912bcc3b1c291c2438dab602ac7744f4
BLAKE2b-256 checksum
How to use checksums
62f92d001876f8fe90356944a622d31aa6bbf53da03e8496a77704ca50fc953d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp311-cp311-macosx_11_0_arm64.whl

Download URL global_buffer-1.1.3-cp311-cp311-macosx_11_0_arm64.whl
Size 191.9 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
50655a72fdae6816c31ef3f48aef544957168ba26e72cc547fe16d37353762b7
BLAKE2b-256 checksum
How to use checksums
766b08de7cdeba51cf0ec972f746bb5aebff13f521f603e4d7794dc56c4ae4c8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp311-cp311-macosx_10_9_x86_64.whl

Download URL global_buffer-1.1.3-cp311-cp311-macosx_10_9_x86_64.whl
Size 193.7 kB
Tags CPython 3.11 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
1929c026a7a36591ff86c51e10ee01205bffd9d7589ca014660448dc38c744f4
BLAKE2b-256 checksum
How to use checksums
4d4b86c31b86947382dcb2322ea920d7000174db39b19110bf887d66ffe4dec9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp310-cp310-win_amd64.whl

Download URL global_buffer-1.1.3-cp310-cp310-win_amd64.whl
Size 184.1 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
2b8663098db58fbf351746f236519d835ca6a2e50da15dd71a1c861451e833cb
BLAKE2b-256 checksum
How to use checksums
64cede80c43f486061061ba900d7360e969f0d6140e811be808d37ad26688272
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp310-cp310-musllinux_1_2_x86_64.whl

Download URL global_buffer-1.1.3-cp310-cp310-musllinux_1_2_x86_64.whl
Size 464.8 kB
Tags CPython 3.10 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
ea20764151f3121a79fda1f3b714ebeb57fe33acb1734ed6eb16a3be1ae76188
BLAKE2b-256 checksum
How to use checksums
b146ad201876101e962da577b2b72fb028f48e2c2598b3e66c110b33dc963f71
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL global_buffer-1.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 459.7 kB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
b05be609e897b97c426d48006c16ed531e5be675173f0a1fb24ec035c8038b38
BLAKE2b-256 checksum
How to use checksums
333945e662cf823c260c849cd9b308f233b6b70729cfdb34b558bc1c313fadd3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp310-cp310-macosx_11_0_arm64.whl

Download URL global_buffer-1.1.3-cp310-cp310-macosx_11_0_arm64.whl
Size 192.5 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
0cd0c8151a5739119fd1a49fedd505f51be7763b7e7770186ab72aa3da778af5
BLAKE2b-256 checksum
How to use checksums
5fb79344c86e40fd9ca31068131361ca8a3ae0ac4d153f6e27551a1ef0d0f6f7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp310-cp310-macosx_10_9_x86_64.whl

Download URL global_buffer-1.1.3-cp310-cp310-macosx_10_9_x86_64.whl
Size 194.0 kB
Tags CPython 3.10 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
48623e9b37259d2d9bb449171c1af60dc08f84ec726500866f9678941c99ad5a
BLAKE2b-256 checksum
How to use checksums
1f93574f89970866d0b843b8d3bcff9f4b145054daca0ed6763573831fed660c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp39-cp39-win_amd64.whl

Download URL global_buffer-1.1.3-cp39-cp39-win_amd64.whl
Size 184.5 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
dacc66b5fb7be6d31421a00d1c02c26052761a61d0c0c0e2b6ce056ab8d261ad
BLAKE2b-256 checksum
How to use checksums
96fe0842976680270849bc7a4e9bc5cd3ab59cf473e9a9fefe04e8129ca6404c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp39-cp39-musllinux_1_2_x86_64.whl

Download URL global_buffer-1.1.3-cp39-cp39-musllinux_1_2_x86_64.whl
Size 463.5 kB
Tags CPython 3.9 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
328ec1759247aadf67b67e3aae33864892cdfcbf46193eac6e6001b9231ad496
BLAKE2b-256 checksum
How to use checksums
f8dd9b472f87af8f1d97127bd35cf969045a2153a84528cc24a8ecbbe8f6ce9e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL global_buffer-1.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 458.1 kB
Tags CPython 3.9 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
58bcfcf1804051b91040a4b599fe73a6a6960a0bdc5171371aeb4242cfb465ea
BLAKE2b-256 checksum
How to use checksums
87fd48bbd6499a4d1b46ec313626845247c1dea1800d59c9f1d59565d68e846f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp39-cp39-macosx_11_0_arm64.whl

Download URL global_buffer-1.1.3-cp39-cp39-macosx_11_0_arm64.whl
Size 192.9 kB
Tags CPython 3.9 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
f397b3828d00615ecd3601f4ea82736ef4ebec0bd5bbf0911387c30ab8b6b9b6
BLAKE2b-256 checksum
How to use checksums
a713c213b86cd35bf4ada713645c0c1638ed180129049aae776d8251d43cc767
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / global_buffer-1.1.3-cp39-cp39-macosx_10_9_x86_64.whl

Download URL global_buffer-1.1.3-cp39-cp39-macosx_10_9_x86_64.whl
Size 194.4 kB
Tags CPython 3.9 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
3c4ecf5d9375584ccf46ec2fc63b6e51fc086c5729f01cd0d187c0e9a47e348d
BLAKE2b-256 checksum
How to use checksums
700025ec2cb19ba0034a1362ea64e00948637fd8af9d586686da5f01174106e1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

1.1.3 This release

26 release files

1.0.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page